diff --git a/addons/l10n_it_edi/models/__init__.py b/addons/l10n_it_edi/models/__init__.py
index e2f3f69717a5f54c5076e5e2867c27c1a4fe383c..c29c131a927dcfde56994bc90f4e16892cba60d6 100644
--- a/addons/l10n_it_edi/models/__init__.py
+++ b/addons/l10n_it_edi/models/__init__.py
@@ -5,5 +5,6 @@ from . import res_partner
 from . import res_company
 from . import account_invoice
 from . import account_edi_format
+from . import account_chart_template
 from . import ir_mail_server
 from . import ddt
diff --git a/addons/l10n_it_edi/models/account_chart_template.py b/addons/l10n_it_edi/models/account_chart_template.py
new file mode 100644
index 0000000000000000000000000000000000000000..9bd1d1c7b2a1cfcf97c723340b54b9879abafbc6
--- /dev/null
+++ b/addons/l10n_it_edi/models/account_chart_template.py
@@ -0,0 +1,20 @@
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from odoo import models
+
+
+class AccountChartTemplate(models.Model):
+
+    _inherit = 'account.chart.template'
+
+    def _load(self, sale_tax_rate, purchase_tax_rate, company):
+        res = super()._load(sale_tax_rate, purchase_tax_rate, company)
+        if self == self.env.ref('l10n_it.l10n_it_chart_template_generic', raise_if_not_found=False):
+            tax = self.env.ref(f'l10n_it.{company.id}_00eu', raise_if_not_found=False)
+            if tax:
+                tax.write({
+                    'l10n_it_has_exoneration': True,
+                    'l10n_it_kind_exoneration': 'N3.2',
+                    'l10n_it_law_reference': 'Art. 41, DL n. 331/93',
+                })
+        return res
diff --git a/addons/website_slides/views/website_slides_templates_course.xml b/addons/website_slides/views/website_slides_templates_course.xml
index 10587ef55a55b57772728184be1e3175b3a16c30..ac81035283644330b067888738f08ec9e5babdc9 100644
--- a/addons/website_slides/views/website_slides_templates_course.xml
+++ b/addons/website_slides/views/website_slides_templates_course.xml
@@ -8,7 +8,7 @@
             <div class="row align-items-center justify-content-between">
                 <!-- Desktop Mode -->
                 <nav aria-label="breadcrumb" class="col-md-8 d-none d-md-flex">
-                    <ol class="breadcrumb bg-transparent mb-0 pl-0 py-0">
+                    <ol class="breadcrumb bg-transparent mb-0 pl-0 py-0 overflow-hidden">
                         <li class="breadcrumb-item">
                             <a href="/slides">Courses</a>
                         </li>
@@ -28,7 +28,7 @@
                         <li t-att-class="breadcrumb_class" t-att-aria-current="'page' and search_slide_type" t-if="search_slide_type">
                             <a t-att-href="'/slides/%s?slide_type=%s' % (slug(channel), search_slide_type)"><span t-esc="slide_types[search_slide_type]"/></a>
                         </li>
-                        <li t-if="slide" class="breadcrumb-item active">
+                        <li t-if="slide" class="breadcrumb-item active text-truncate text-white">
                             <a t-att-href="'/slides/slide/%s' % slug(slide)"><span t-esc="slide.name"/></a>
                         </li>
                     </ol>
diff --git a/addons/website_slides/views/website_slides_templates_lesson.xml b/addons/website_slides/views/website_slides_templates_lesson.xml
index 8fd7575d1c8635e1ca7e8622cb1b1b711c4db80f..d1927eec8a00d470922e334fb811c4a001619402 100644
--- a/addons/website_slides/views/website_slides_templates_lesson.xml
+++ b/addons/website_slides/views/website_slides_templates_lesson.xml
@@ -208,8 +208,8 @@
     <t t-set="is_training_channel" t-value="slide.channel_id.channel_type == 'training'"/>
     <div class="row align-items-center my-3">
         <div class="col-12 col-md order-2 order-md-1 d-flex">
-            <div class="d-flex align-items-center">
-                <h1 class="h4 my-0">
+            <div class="d-flex align-items-center overflow-hidden">
+                <h1 class="h4 my-0 text-truncate">
                     <t t-call="website_slides.slide_icon">
                         <t t-set="icon_class" t-valuef="mr-1"/>
                     </t>
diff --git a/addons/website_slides/views/website_slides_templates_lesson_fullscreen.xml b/addons/website_slides/views/website_slides_templates_lesson_fullscreen.xml
index 3d8d405908e7b0cb5d554f2e4f62858a7c1ba709..12a601be6bceb7c68fe55f17f9415aa96e6e585e 100644
--- a/addons/website_slides/views/website_slides_templates_lesson_fullscreen.xml
+++ b/addons/website_slides/views/website_slides_templates_lesson_fullscreen.xml
@@ -105,18 +105,18 @@
                         <i t-if="slide_completed and is_member" class="o_wslides_slide_completed fa fa-check fa-fw text-success" t-att-data-slide-id="slide.id"/>
                         <i t-if="not slide_completed and is_member" class="fa fa-circle-thin fa-fw" t-att-data-slide-id="slide.id"/>
                     </span>
-                    <div class="ml-2">
+                    <div class="ml-2 overflow-hidden">
                         <a t-if="can_access" class="d-block pt-1" href="#">
                             <div class="d-flex ">
                                 <t t-call="website_slides.slide_icon"/>
-                                <div class="o_wslides_fs_slide_name" t-esc="slide.name"/>
+                                <div class="o_wslides_fs_slide_name text-truncate" t-esc="slide.name"/>
                             </div>
                         </a>
                         <span t-else="" class="d-block pt-1" href="#">
                             <div class="d-flex ">
                                 <t t-set="icon_class" t-value="'mr-2 text-600'"/>
                                 <t t-call="website_slides.slide_icon"/>
-                                <div class="o_wslides_fs_slide_name text-600" t-esc="slide.name"/>
+                                <div class="o_wslides_fs_slide_name text-600 text-truncate" t-esc="slide.name"/>
                             </div>
                         </span>
                         <ul class="list-unstyled w-100 pt-2 small" t-if="slide.link_ids or slide._has_additional_resources() or (slide.question_ids and not slide.slide_type =='quiz')" >
diff --git a/odoo/tools/_monkeypatches.py b/odoo/tools/_monkeypatches.py
index 6bfc1cf18eb9a4c88182885ebe242d609a78dc92..fc51f63a195ecb40fb58fbd74b909aaa91c59182 100644
--- a/odoo/tools/_monkeypatches.py
+++ b/odoo/tools/_monkeypatches.py
@@ -1,8 +1,10 @@
 import ast
 import os
 from shutil import copyfileobj
+from types import CodeType
 
 from werkzeug.datastructures import FileStorage
+from werkzeug.routing import Rule
 from werkzeug.wrappers import Request, Response
 
 from .json import scriptsafe
@@ -30,6 +32,14 @@ FileStorage.save = lambda self, dst, buffer_size=1<<20: copyfileobj(self.stream,
 
 Request.json_module = Response.json_module = scriptsafe
 
+get_func_code = getattr(Rule, '_get_func_code', None)
+if get_func_code:
+    @staticmethod
+    def _get_func_code(code, name):
+        assert isinstance(code, CodeType)
+        return get_func_code(code, name)
+    Rule._get_func_code = _get_func_code
+
 orig_literal_eval = ast.literal_eval
 
 def literal_eval(expr):