diff --git a/content/00.front-matter.md b/content/00.front-matter.md
index 25da50d..881f493 100644
--- a/content/00.front-matter.md
+++ b/content/00.front-matter.md
@@ -30,24 +30,32 @@ Published: {{manubot.date_long}}
## Authors
{## Template for listing authors ##}
+{% set affiliationCounter = namespace(value=0) %}
+{% set affiliationMap = namespace(value={}) %}
{% for author in manubot.authors %}
-**{{author.name}}**
-{% if author.corresponding is defined and author.corresponding == true -%}^[✉](#correspondence)^{%- endif -%}
-{%- if author.orcid is defined and author.orcid is not none %}
+**{{author.name}}**
+{%- if author.corresponding is defined and author.corresponding == true %}\*{% endif %}
+{%- if author.orcid is defined and author.orcid is not none -%}
[![ORCID icon](images/orcid.svg){.inline_icon width=16 height=16}](https://orcid.org/{{author.orcid}})
-{%- endif %}
-{% endfor %}
+{%- endif -%}
-
-
+{%- if author.affiliations is defined and author.affiliations|length -%}
+^
+{%- for affiliation in author.affiliations -%}
+{%- if affiliation not in affiliationMap.value %}
+{%- set affiliationCounter.value = affiliationCounter.value + 1 %}
+{%- set x=affiliationMap.value .__setitem__(affiliation, affiliationCounter.value) %}
+{%- endif -%}
+{{affiliationMap.value[affiliation]}}{{ ", " if not loop.last}}
+{%- endfor -%}
+^
+{%- endif -%}
-{% for author in manubot.authors %}
-{%- if author.affiliations is defined and author.affiliations|length %}
-{% for affiliation in author.affiliations %}
-{{affiliation}}
-
-{% endfor %}
-{%- endif %}
+{{ ", " if not loop.last else "." }}
+{%- endfor %}
+
+{% for affiliation in affiliationMap.value -%}
+^{{loop.index}}^ {{affiliation}}
{% endfor %}
::: {#correspondence}