changed structure to add i18n possibility