summaryrefslogtreecommitdiffstats
path: root/l10n-pt-BR/calendar
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--l10n-pt-BR/calendar/README.txt3
-rw-r--r--l10n-pt-BR/calendar/calendar/calendar-context-menus.ftl7
-rw-r--r--l10n-pt-BR/calendar/calendar/calendar-ics-file-dialog.ftl31
-rw-r--r--l10n-pt-BR/calendar/calendar/calendar-summary-dialog.ftl15
-rw-r--r--l10n-pt-BR/calendar/calendar/calendar-uri-redirect-dialog.ftl11
-rw-r--r--l10n-pt-BR/calendar/calendar/calendar-widgets.ftl6
-rw-r--r--l10n-pt-BR/calendar/calendar/category-dialog.ftl7
-rw-r--r--l10n-pt-BR/calendar/calendar/preferences.ftl186
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/calendar-alarms.properties39
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/calendar-event-dialog-attendees.properties15
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/calendar-event-dialog.dtd428
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/calendar-event-dialog.properties541
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/calendar-extract.properties294
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/calendar-invitations-dialog.dtd19
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/calendar-invitations-dialog.properties10
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/calendar-occurrence-prompt.dtd7
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/calendar-occurrence-prompt.properties63
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/calendar-subscriptions-dialog.dtd14
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/calendar.dtd411
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/calendar.properties818
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/calendarCreation.dtd51
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/calendarCreation.properties6
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/categories.properties7
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/dateFormat.properties146
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd19
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/global.dtd54
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/menuOverlay.dtd50
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/migration.dtd9
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/migration.properties13
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/provider-uninstall.dtd12
-rw-r--r--l10n-pt-BR/calendar/chrome/calendar/timezones.properties488
-rw-r--r--l10n-pt-BR/calendar/chrome/lightning/lightning-toolbar.dtd51
-rw-r--r--l10n-pt-BR/calendar/chrome/lightning/lightning.dtd110
-rw-r--r--l10n-pt-BR/calendar/chrome/lightning/lightning.properties165
-rw-r--r--l10n-pt-BR/calendar/extra-jar.mn8
-rw-r--r--l10n-pt-BR/calendar/lightning-l10n.js23
-rw-r--r--l10n-pt-BR/calendar/sunbird-l10n.js23
37 files changed, 4160 insertions, 0 deletions
diff --git a/l10n-pt-BR/calendar/README.txt b/l10n-pt-BR/calendar/README.txt
new file mode 100644
index 0000000000..610ea51f1f
--- /dev/null
+++ b/l10n-pt-BR/calendar/README.txt
@@ -0,0 +1,3 @@
+Para informações sobre instalação, uso e configuração do Sunbird,
+incluindo uma lista de problemas conhecidos e informações de diagnóstico,
+consulte: http://www.mozilla.org/projects/calendar/
diff --git a/l10n-pt-BR/calendar/calendar/calendar-context-menus.ftl b/l10n-pt-BR/calendar/calendar/calendar-context-menus.ftl
new file mode 100644
index 0000000000..990839b536
--- /dev/null
+++ b/l10n-pt-BR/calendar/calendar/calendar-context-menus.ftl
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-item-context-menu-modify-menuitem =
+ .label = Editar
+ .accesskey = E
diff --git a/l10n-pt-BR/calendar/calendar/calendar-ics-file-dialog.ftl b/l10n-pt-BR/calendar/calendar/calendar-ics-file-dialog.ftl
new file mode 100644
index 0000000000..6a736e3556
--- /dev/null
+++ b/l10n-pt-BR/calendar/calendar/calendar-ics-file-dialog.ftl
@@ -0,0 +1,31 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-ics-file-window-2 =
+ .title = Importar eventos e tarefas da agenda
+calendar-ics-file-dialog-import-event-button-label = Importar eventos
+calendar-ics-file-dialog-import-task-button-label = Importar tarefas
+calendar-ics-file-dialog-2 =
+ .buttonlabelaccept = Importar tudo
+calendar-ics-file-accept-button-ok-label = OK
+calendar-ics-file-cancel-button-close-label = Fechar
+calendar-ics-file-dialog-message-2 = Importar de arquivo:
+calendar-ics-file-dialog-calendar-menu-label = Importar para a agenda:
+calendar-ics-file-dialog-items-loading-message =
+ .value = Carregando itens…
+calendar-ics-file-dialog-progress-message = Importando…
+calendar-ics-file-import-success = Importado com sucesso!
+calendar-ics-file-import-error = Houve um erro e a importação falhou.
+calendar-ics-file-import-complete = Importação concluída.
+calendar-ics-file-import-duplicates =
+ { $duplicatesCount ->
+ [one] Um item foi ignorado porque já existe na agenda de destino.
+ *[other] { $duplicatesCount } itens foram ignorados porque já existem na agenda de destino.
+ }
+calendar-ics-file-import-errors =
+ { $errorsCount ->
+ [one] Falhou a importação de um item. Veja detalhes no console de erros.
+ *[other] Falhou a importação de { $errorsCount } itens. Veja detalhes no console de erros.
+ }
+calendar-ics-file-dialog-no-calendars = Não há agendas que possam importar eventos ou tarefas.
diff --git a/l10n-pt-BR/calendar/calendar/calendar-summary-dialog.ftl b/l10n-pt-BR/calendar/calendar/calendar-summary-dialog.ftl
new file mode 100644
index 0000000000..cfe84e6607
--- /dev/null
+++ b/l10n-pt-BR/calendar/calendar/calendar-summary-dialog.ftl
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-summary-dialog-edit-button =
+ .label = Editar
+ .accesskey = E
+calendar-summary-dialog-edit-menu-button =
+ .label = Editar
+edit-button-context-menu-this-occurrence =
+ .label = Editar somente esta ocorrência
+ .accesskey = s
+edit-button-context-menu-all-occurrences =
+ .label = Editar todas as ocorrências
+ .accesskey = o
diff --git a/l10n-pt-BR/calendar/calendar/calendar-uri-redirect-dialog.ftl b/l10n-pt-BR/calendar/calendar/calendar-uri-redirect-dialog.ftl
new file mode 100644
index 0000000000..7e87c8f967
--- /dev/null
+++ b/l10n-pt-BR/calendar/calendar/calendar-uri-redirect-dialog.ftl
@@ -0,0 +1,11 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-uri-redirect-window =
+ .title = Redirecionamento de URI da agenda
+calendar-uri-redirect-description =
+ O servidor está redirecionando o URI da agenda "{ $calendarName }".
+ Aceita o redirecionamento, passando a usar o novo URI desta agenda?
+calendar-uri-redirect-original-uri-label = URI atual:
+calendar-uri-redirect-target-uri-label = Redirecionando para o novo URI:
diff --git a/l10n-pt-BR/calendar/calendar/calendar-widgets.ftl b/l10n-pt-BR/calendar/calendar/calendar-widgets.ftl
new file mode 100644
index 0000000000..70f636b15c
--- /dev/null
+++ b/l10n-pt-BR/calendar/calendar/calendar-widgets.ftl
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-deactivated-notification-events = Todas as agendas estão desativadas no momento. Ative uma agenda existente ou adicione uma nova para criar e editar eventos.
+calendar-deactivated-notification-tasks = Todas as agendas estão desativadas no momento. Ative uma agenda existente ou adicione uma nova para criar e editar tarefas.
diff --git a/l10n-pt-BR/calendar/calendar/category-dialog.ftl b/l10n-pt-BR/calendar/calendar/category-dialog.ftl
new file mode 100644
index 0000000000..761093d870
--- /dev/null
+++ b/l10n-pt-BR/calendar/calendar/category-dialog.ftl
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+category-name-label = Nome
+category-color-label =
+ .label = Usar Cor
diff --git a/l10n-pt-BR/calendar/calendar/preferences.ftl b/l10n-pt-BR/calendar/calendar/preferences.ftl
new file mode 100644
index 0000000000..588ec92dae
--- /dev/null
+++ b/l10n-pt-BR/calendar/calendar/preferences.ftl
@@ -0,0 +1,186 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-title = Agenda
+calendar-title-reminder = Lembretes
+calendar-title-category = Categorias
+dateformat-label =
+ .value = Formato de data:
+ .accesskey = F
+# $date (String) - the formatted example date
+dateformat-long =
+ .label = Longo: { $date }
+# $date (String) - the formatted example date
+dateformat-short =
+ .label = Curto: { $date }
+timezone-label =
+ .value = Fuso horário:
+weekstart-label =
+ .value = Começar a semana em:
+ .accesskey = C
+day-1-name =
+ .label = Domingo
+day-2-name =
+ .label = Segunda
+day-3-name =
+ .label = Terça
+day-4-name =
+ .label = Quarta
+day-5-name =
+ .label = Quinta
+day-6-name =
+ .label = Sexta
+day-7-name =
+ .label = Sábado
+show-weeknumber-label =
+ .label = Mostrar número da semana em exibições e mini-mês
+ .accesskey = r
+workdays-label =
+ .value = Dias de trabalho na semana:
+day-1-checkbox =
+ .label = Dom
+ .accesskey = D
+day-2-checkbox =
+ .label = Seg
+ .accesskey = S
+day-3-checkbox =
+ .label = Ter
+ .accesskey = T
+day-4-checkbox =
+ .label = Qua
+ .accesskey = Q
+day-5-checkbox =
+ .label = Qui
+ .accesskey = u
+day-6-checkbox =
+ .label = Sex
+ .accesskey = e
+day-7-checkbox =
+ .label = Sáb
+ .accesskey = b
+dayweek-legend = Visualizações de dia e semana
+visible-hours-label =
+ .value = Mostrar:
+ .accesskey = M
+visible-hours-end-label =
+ .value = horas simultaneamente
+day-start-label =
+ .value = Dia começa às:
+ .accesskey = o
+day-end-label =
+ .value = Dia acaba às:
+ .accesskey = i
+midnight-label =
+ .label = Meia-noite
+noon-label =
+ .label = Meio-dia
+location-checkbox =
+ .label = Exibir localização
+ .accesskey = l
+multiweek-legend = Visão semanal
+number-of-weeks-label =
+ .value = Número de semanas a exibir (incluindo anteriores):
+ .accesskey = a
+week-0-label =
+ .label = nenhuma
+week-1-label =
+ .label = 1 semana
+week-2-label =
+ .label = 2 semanas
+week-3-label =
+ .label = 3 semanas
+week-4-label =
+ .label = 4 semanas
+week-5-label =
+ .label = 5 semanas
+week-6-label =
+ .label = 6 semanas
+previous-weeks-label =
+ .value = Semanas anteriores a exibir:
+ .accesskey = n
+todaypane-legend = Painel hoje
+# Note: "Upcoming" is the name of a section and the translation must match the
+# translation of that section name (calendar.upcoming.button.label). Also,
+# it should be upper case (as a proper name) if the target language permits.
+soon-label =
+ .value = A seção Seguintes exibe:
+ .accesskey = S
+event-task-legend = Eventos e tarefas
+default-length-label =
+ .value = Duração padrão de eventos e tarefas:
+ .accesskey = e
+task-start-label =
+ .value = Data inicial:
+task-start-1-label =
+ .label = Nenhum
+task-start-2-label =
+ .label = Início do dia
+task-start-3-label =
+ .label = Fim do dia
+task-start-4-label =
+ .label = Amanhã
+task-start-5-label =
+ .label = Próxima semana
+task-start-6-label =
+ .label = Relativo à hora atual
+task-start-7-label =
+ .label = Relativo ao início
+task-start-8-label =
+ .label = Relativo à próxima hora
+task-due-label =
+ .value = Data de conclusão:
+edit-intab-label =
+ .label = Editar eventos e tarefas em uma nova aba ao invés de em uma nova janela.
+ .accesskey = t
+accessibility-legend = Acessibilidade
+accessibility-colors-label =
+ .label = Otimizar as cores para acessibilidade
+ .accesskey = c
+reminder-legend = Quando um alarme dispara:
+reminder-play-checkbox =
+ .label = Tocar som
+ .accesskey = T
+reminder-play-alarm-button =
+ .label = Reproduzir
+ .accesskey = p
+reminder-default-sound-label =
+ .label = Usar som padrão
+ .accesskey = U
+reminder-custom-sound-label =
+ .label = Usar o seguinte arquivo de som
+ .accesskey = U
+reminder-browse-sound-label =
+ .label = Procurar…
+ .accesskey = P
+reminder-dialog-label =
+ .label = Mostrar aviso
+ .accesskey = M
+missed-reminder-label =
+ .label = Mostrar lembretes perdidos de agendas com permissão de alteração
+ .accesskey = v
+reminder-default-legend = Padrões de lembretes
+default-snooze-label =
+ .value = Duração padrão da soneca:
+ .accesskey = s
+event-alarm-label =
+ .value = Configuração padrão de alarmes para eventos:
+ .accesskey = C
+alarm-on-label =
+ .label = Ativado
+alarm-off-label =
+ .label = Desativado
+task-alarm-label =
+ .value = Configuração padrão de alarmes para tarefas:
+ .accesskey = f
+event-alarm-time-label =
+ .value = Antecedência padrão de alarmes para eventos:
+ .accesskey = A
+task-alarm-time-label =
+ .value = Antecedência padrão de alarmes para tarefas:
+ .accesskey = n
+category-new-label = Nova categoria
+category-edit-label = Editar categoria
+category-overwrite-title = Aviso: nome já existe
+category-overwrite = Já há uma categoria com este nome. Substituir?
+category-blank-warning = Digite um nome para a categoria.
diff --git a/l10n-pt-BR/calendar/chrome/calendar/calendar-alarms.properties b/l10n-pt-BR/calendar/chrome/calendar/calendar-alarms.properties
new file mode 100644
index 0000000000..31efc89359
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/calendar-alarms.properties
@@ -0,0 +1,39 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (reminderCustomTitle):
+# %1$S = unit, %2$S = reminderCustomOrigin
+# Example: "3 minutes" "before the task starts"
+reminderCustomTitle=%1$S %2$S
+reminderTitleAtStartEvent=No momento do início do evento
+reminderTitleAtStartTask=No momento do início da tarefa
+reminderTitleAtEndEvent=No momento do término do evento
+reminderTitleAtEndTask=No momento do término da tarefa
+
+# LOCALIZATION NOTE (reminderSnoozeOkA11y)
+# This string is not seen in the UI, it is read by screen readers when the user
+# focuses the "OK" button in the "Snooze for..." popup of the alarm dialog.
+# %1$S = any of unit*
+reminderSnoozeOkA11y=Adiar lembrete em %1$S
+
+reminderCustomOriginBeginBeforeEvent=antes do início do evento
+reminderCustomOriginBeginAfterEvent=depois do início do evento
+reminderCustomOriginEndBeforeEvent=antes do término do evento
+reminderCustomOriginEndAfterEvent=depois do término do evento
+reminderCustomOriginBeginBeforeTask=antes do início da tarefa
+reminderCustomOriginBeginAfterTask=depois do início da tarefa
+reminderCustomOriginEndBeforeTask=antes do término da tarefa
+reminderCustomOriginEndAfterTask=depois do término da tarefa
+
+reminderErrorMaxCountReachedEvent=A agenda selecionada tem limite de #1 lembrete por evento.;A agenda selecionada tem limite de #1 lembretes por evento.
+reminderErrorMaxCountReachedTask=A agenda selecionada tem limite de #1 lembrete por tarefa.;A agenda selecionada tem limite de #1 lembretes por tarefa.
+
+# LOCALIZATION NOTE (reminderReadonlyNotification)
+# This notification will be presented in the alarm dialog if reminders for not
+# writable items/calendars are displayed.
+# %1$S - localized value of calendar.alarm.snoozeallfor.label (defined in calendar.dtd)
+reminderReadonlyNotification=Lembretes para agendas somente-leitura atualmente não podem ser silenciados, somente dispensados - o botão '%1$S' só irá silenciar lembretes em calendários com permissão de escrita.
+# LOCALIZATION NOTE (reminderDisabledSnoozeButtonTooltip)
+# This tooltip is only displayed, if the button is disabled
+reminderDisabledSnoozeButtonTooltip=Silenciar um lembrete não é suportado em agendas somente-leitura
diff --git a/l10n-pt-BR/calendar/chrome/calendar/calendar-event-dialog-attendees.properties b/l10n-pt-BR/calendar/chrome/calendar/calendar-event-dialog-attendees.properties
new file mode 100644
index 0000000000..b4c81b1677
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/calendar-event-dialog-attendees.properties
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+event.attendee.role.required = Participante requerido
+event.attendee.role.optional = Participante opcional
+event.attendee.role.nonparticipant = Não participante
+event.attendee.role.chair = Presidente
+event.attendee.role.unknown = Participante desconhecido (%1$S)
+
+event.attendee.usertype.individual = Individual
+event.attendee.usertype.group = Grupo
+event.attendee.usertype.resource = Recurso
+event.attendee.usertype.room = Sala
+event.attendee.usertype.unknown = Tipo desconhecido (%1$S)
diff --git a/l10n-pt-BR/calendar/chrome/calendar/calendar-event-dialog.dtd b/l10n-pt-BR/calendar/chrome/calendar/calendar-event-dialog.dtd
new file mode 100644
index 0000000000..6d2d2e2d95
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/calendar-event-dialog.dtd
@@ -0,0 +1,428 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY event.title.label "Editar item" >
+
+<!ENTITY event.dialog.keepDurationButton.tooltip "Mantenha a duração ao alterar a data final">
+<!ENTITY event.dialog.keepDurationButton.accesskey "M">
+
+<!ENTITY newevent.from.label "De" >
+<!ENTITY newevent.to.label "Para" >
+
+<!ENTITY newevent.status.label "Posição" >
+<!ENTITY newevent.status.accesskey "P" >
+<!ENTITY newevent.eventStatus.none.label "Não especificada" >
+<!ENTITY newevent.eventStatus.none.accesskey "o" >
+<!ENTITY newevent.todoStatus.none.label "Não especificada" >
+<!ENTITY newevent.eventStatus.cancelled.label "Cancelada" >
+<!ENTITY newevent.eventStatus.cancelled.accesskey "n" >
+<!ENTITY newevent.todoStatus.cancelled.label "Cancelada" >
+<!ENTITY newevent.status.tentative.label "Tentativa" >
+<!ENTITY newevent.status.tentative.accesskey "T" >
+<!ENTITY newevent.status.confirmed.label "Confirmado" >
+<!ENTITY newevent.status.confirmed.accesskey "C" >
+<!ENTITY newevent.status.needsaction.label "Requer ação" >
+<!ENTITY newevent.status.inprogress.label "Em andamento" >
+<!ENTITY newevent.status.completed.label "Completado em" >
+
+<!-- The following entity is for New Task dialog only -->
+<!ENTITY newtodo.percentcomplete.label "&#037; completada">
+
+<!-- LOCALIZATON NOTE(event.attendees.notify.label,event.attendees.notifyundisclosed.label,
+ event.attendees.disallowcounter.label)
+ - These three labels are displayed side by side in the event dialog, make sure
+ - they still fit in. -->
+<!ENTITY event.attendees.notify.label "Notificar participantes">
+<!ENTITY event.attendees.notify.accesskey "f">
+<!ENTITY event.attendees.notifyundisclosed.label "Convite separado por participante">
+<!ENTITY event.attendees.notifyundisclosed.accesskey "x">
+<!ENTITY event.attendees.notifyundisclosed.tooltip "Esta opção envia um email de convite por participante. Cada convite contém apenas o participante destinatário para que as identidades dos participantes não sejam divulgadas.">
+<!ENTITY event.attendees.disallowcounter.label "Anular o contador">
+<!ENTITY event.attendees.disallowcounter.accesskey "a">
+<!ENTITY event.attendees.disallowcounter.tooltip "Indica que você não aceitará contrapropostas">
+
+<!-- Keyboard Shortcuts -->
+<!ENTITY event.dialog.new.event.key2 "I">
+<!ENTITY event.dialog.new.task.key2 "D">
+<!ENTITY event.dialog.new.message.key2 "N">
+<!ENTITY event.dialog.close.key "W">
+<!ENTITY event.dialog.save.key "S">
+<!ENTITY event.dialog.saveandclose.key "L">
+<!ENTITY event.dialog.print.key "P">
+<!ENTITY event.dialog.undo.key "Z">
+<!ENTITY event.dialog.redo.key "Y">
+<!ENTITY event.dialog.cut.key "X">
+<!ENTITY event.dialog.copy.key "C">
+<!ENTITY event.dialog.paste.key "V">
+<!ENTITY event.dialog.select.all.key "A">
+
+<!-- Menubar -->
+<!ENTITY event.menu.item.new.label "Novo">
+<!ENTITY event.menu.item.new.accesskey "N">
+<!ENTITY event.menu.item.new.event.label "Evento">
+<!ENTITY event.menu.item.new.event.accesskey "E">
+<!ENTITY event.menu.item.new.task.label "Tarefa">
+<!ENTITY event.menu.item.new.task.accesskey "T">
+<!ENTITY event.menu.item.new.message.label "Mensagem">
+<!ENTITY event.menu.item.new.message.accesskey "M">
+<!ENTITY event.menu.item.new.contact.label "Contato do catálogo de endereços">
+<!ENTITY event.menu.item.new.contact.accesskey "C">
+<!ENTITY event.menu.item.close.label "Fechar">
+<!ENTITY event.menu.item.close.accesskey "c">
+
+<!-- LOCALIZATION NOTE
+ - event.menu.item.save.accesskey is used for the "Save" menu item
+ - when editing events/tasks in a dialog window.
+ - event.menu.item.save.tab.accesskey is used for the "Save" menu item
+ - when editing events/tasks in a tab. -->
+<!ENTITY event.menu.item.save.label "Salvar">
+<!ENTITY event.menu.item.save.accesskey "S">
+<!ENTITY event.menu.item.save.tab.accesskey "a">
+
+<!-- LOCALIZATION NOTE
+ - event.menu.item.saveandclose.accesskey is used for "Save and Close"
+ - menu item when editing events/tasks in a dialog window.
+ - event.menu.item.saveandclose.tab.accesskey is used for "Save and Close"
+ - when editing events/tasks in a tab. -->
+<!ENTITY event.menu.item.saveandclose.label "Salvar e fechar">
+<!ENTITY event.menu.item.saveandclose.accesskey "l">
+<!ENTITY event.menu.item.saveandclose.tab.accesskey "z">
+
+<!ENTITY event.menu.item.delete.label "Excluir…">
+<!ENTITY event.menu.item.delete.accesskey "E">
+<!ENTITY event.menu.item.page.setup.label "Configuração de página">
+<!ENTITY event.menu.item.page.setup.accesskey "C">
+<!ENTITY event.menu.item.print.label "Imprimir">
+<!ENTITY event.menu.item.print.accesskey "I">
+
+<!ENTITY event.menu.edit.label "Editar">
+<!ENTITY event.menu.edit.accesskey "E">
+<!ENTITY event.menu.edit.undo.label "Desfazer">
+<!ENTITY event.menu.edit.undo.accesskey "D">
+<!ENTITY event.menu.edit.redo.label "Refazer">
+<!ENTITY event.menu.edit.redo.accesskey "R">
+<!ENTITY event.menu.edit.cut.label "Cortar">
+<!ENTITY event.menu.edit.cut.accesskey "t">
+<!ENTITY event.menu.edit.copy.label "Copiar">
+<!ENTITY event.menu.edit.copy.accesskey "C">
+<!ENTITY event.menu.edit.paste.label "Colar">
+<!ENTITY event.menu.edit.paste.accesskey "o">
+<!ENTITY event.menu.edit.select.all.label "Selecionar tudo">
+<!ENTITY event.menu.edit.select.all.accesskey "S">
+
+<!ENTITY event.menu.view.label "Ver">
+<!ENTITY event.menu.view.accesskey "V">
+<!ENTITY event.menu.view.toolbars.label "Barras de ferramentas">
+<!ENTITY event.menu.view.toolbars.accesskey "B">
+<!ENTITY event.menu.view.toolbars.event.label "Barra de evento">
+<!ENTITY event.menu.view.toolbars.event.accesskey "B">
+<!ENTITY event.menu.view.toolbars.customize.label "Personalizar…">
+<!ENTITY event.menu.view.toolbars.customize.accesskey "P">
+<!ENTITY event.menu.view.showlink.label "Exibir atalho relacionado">
+<!ENTITY event.menu.view.showlink.accesskey "E">
+
+<!ENTITY event.menu.options.label "Opções">
+<!ENTITY event.menu.options.accesskey "O">
+<!ENTITY event.menu.options.attendees.label "Convidar participantes…">
+<!ENTITY event.menu.options.attendees.accesskey "C">
+<!ENTITY event.menu.options.timezone2.label "Mostrar o fuso horário">
+<!ENTITY event.menu.options.timezone2.accesskey "f">
+<!ENTITY event.menu.options.priority2.label "Prioridade">
+<!ENTITY event.menu.options.priority2.accesskey "P">
+<!ENTITY event.menu.options.priority.notspecified.label "Não especificada">
+<!ENTITY event.menu.options.priority.notspecified.accesskey "s">
+<!ENTITY event.menu.options.priority.low.label "Baixa">
+<!ENTITY event.menu.options.priority.low.accesskey "B">
+<!ENTITY event.menu.options.priority.normal.label "Normal">
+<!ENTITY event.menu.options.priority.normal.accesskey "N">
+<!ENTITY event.menu.options.priority.high.label "Alta">
+<!ENTITY event.menu.options.priority.high.accesskey "A">
+<!ENTITY event.menu.options.privacy.label "Privacidade">
+<!ENTITY event.menu.options.privacy.accesskey "r">
+<!ENTITY event.menu.options.privacy.public.label "Evento público">
+<!ENTITY event.menu.options.privacy.public.accesskey "E">
+<!ENTITY event.menu.options.privacy.confidential.label "Exibir apenas data e hora">
+<!ENTITY event.menu.options.privacy.confidential.accesskey "x">
+<!ENTITY event.menu.options.privacy.private.label "Evento particular">
+<!ENTITY event.menu.options.privacy.private.accesskey "v">
+<!ENTITY event.menu.options.show.time.label "Exibir horário como">
+<!ENTITY event.menu.options.show.time.accesskey "E">
+<!ENTITY event.menu.options.show.time.busy.label "Ocupado">
+<!ENTITY event.menu.options.show.time.busy.accesskey "O">
+<!ENTITY event.menu.options.show.time.free.label "Livre">
+<!ENTITY event.menu.options.show.time.free.accesskey "L">
+
+<!ENTITY event.invite.attendees.label "Convidar participantes…">
+<!ENTITY event.invite.attendees.accesskey "C">
+<!ENTITY event.email.attendees.label "Criar mensagem a todos os participantes…">
+<!ENTITY event.email.attendees.accesskey "m">
+<!ENTITY event.email.tentative.attendees.label "Criar mensagem aos participantes indecisos…">
+<!ENTITY event.email.tentative.attendees.accesskey "i">
+<!ENTITY event.remove.attendees.label2 "Remover todos os participantes">
+<!ENTITY event.remove.attendees.accesskey "r">
+<!ENTITY event.remove.attendee.label "Remover participante">
+<!ENTITY event.remove.attendee.accesskey "e">
+
+<!-- Toolbar -->
+<!ENTITY event.toolbar.save.label2 "Salvar">
+<!ENTITY event.toolbar.saveandclose.label "Salvar e fechar">
+<!ENTITY event.toolbar.delete.label "Excluir">
+<!ENTITY event.toolbar.attendees.label "Convidar participantes">
+<!ENTITY event.toolbar.privacy.label "Privacidade">
+
+<!ENTITY event.toolbar.save.tooltip2 "Salvar">
+<!ENTITY event.toolbar.saveandclose.tooltip "Salvar e fechar">
+<!ENTITY event.toolbar.delete.tooltip "Excluir">
+<!ENTITY event.toolbar.attendees.tooltip "Convidar participantes">
+<!ENTITY event.toolbar.attachments.tooltip "Adicionar anexos">
+<!ENTITY event.toolbar.privacy.tooltip "Alterar privacidade">
+<!ENTITY event.toolbar.priority.tooltip "Alterar prioridade">
+<!ENTITY event.toolbar.status.tooltip "Alterar status">
+<!ENTITY event.toolbar.freebusy.tooltip "Alterar tempo livre/ocupado">
+
+<!-- Counter box -->
+<!-- LOCALIZATON NOTE(counter.button.*)
+ - This is only visible in the UI if you have received a counterproposal before and are going to
+ - reschedule the event from the imipbar in the email view. Clicking on the buttons will only
+ - populate the form fields in the dialog, there's no other immediate action on clicking like with
+ - the imip bar. Rescheduling will happen after clicking on save&close as usual. This screenshot
+ - illustrates how it might look like: https://bugzilla.mozilla.org/attachment.cgi?id=8810121 -->
+<!ENTITY counter.button.proposal.label "Aplicar a sugestão">
+<!ENTITY counter.button.proposal.accesskey "p">
+<!ENTITY counter.button.proposal.tooltip2 "Os campos dos eventos serão preenchidos com as informações da sugestão, salvando com ou sem alterações adicionais todos os participantes serão notificados">
+<!ENTITY counter.button.original.label "Aplicar dados originais">
+<!ENTITY counter.button.original.accesskey "r">
+<!ENTITY counter.button.original.tooltip2 "Os campos serão preenchidos com as informações do evento original, antes de a sugestão ter sido feita">
+
+<!-- Main page -->
+<!ENTITY event.title.textbox.label "Título:" >
+<!ENTITY event.title.textbox.accesskey "T">
+<!ENTITY event.location.label "Local:" >
+<!ENTITY event.location.accesskey "L">
+<!ENTITY event.categories.label "Categoria:">
+<!ENTITY event.categories.accesskey "g">
+<!ENTITY event.categories.textbox.label "Adicionar uma nova categoria" >
+<!ENTITY event.calendar.label "Agenda:" >
+<!ENTITY event.calendar.accesskey "A">
+<!ENTITY event.attendees.label "Participantes:" >
+<!ENTITY event.attendees.accesskey "P">
+<!ENTITY event.alldayevent.label "Dia inteiro" >
+<!ENTITY event.alldayevent.accesskey "D">
+<!ENTITY event.from.label "Início:" >
+<!ENTITY event.from.accesskey "I">
+<!ENTITY task.from.label "Início:" >
+<!ENTITY task.from.accesskey "I">
+<!ENTITY event.to.label "Término:" >
+<!ENTITY event.to.accesskey "m">
+<!ENTITY task.to.label "Término:" >
+<!ENTITY task.to.accesskey "m">
+<!ENTITY task.status.label "Posição:" >
+<!ENTITY task.status.accesskey "o">
+<!ENTITY event.repeat.label "Repetir:" >
+<!ENTITY event.repeat.accesskey "R">
+<!ENTITY event.until.label "Até:">
+<!ENTITY event.until.accesskey "t">
+<!ENTITY event.reminder.label "Lembrete:" >
+<!ENTITY event.reminder.accesskey "b">
+<!ENTITY event.description.label "Descrição:" >
+<!ENTITY event.description.accesskey "s">
+<!ENTITY event.attachments.label "Anexos:" >
+<!ENTITY event.attachments.accesskey "A" >
+<!ENTITY event.attachments.menubutton.label "Anexar">
+<!ENTITY event.attachments.menubutton.accesskey "A">
+<!ENTITY event.attachments.url.label "Página web…">
+<!ENTITY event.attachments.url.accesskey "w">
+<!ENTITY event.attachments.popup.remove.label "Remove" >
+<!ENTITY event.attachments.popup.remove.accesskey "R" >
+<!ENTITY event.attachments.popup.open.label "Abrir" >
+<!ENTITY event.attachments.popup.open.accesskey "b" >
+<!ENTITY event.attachments.popup.removeAll.label "Remover tudo" >
+<!ENTITY event.attachments.popup.removeAll.accesskey "t" >
+<!ENTITY event.attachments.popup.attachPage.label "Anexar página da internet…" >
+<!ENTITY event.attachments.popup.attachPage.accesskey "x" >
+<!ENTITY event.url.label "Atalho relacionado:" >
+<!ENTITY event.priority2.label "Prioridade:">
+
+<!ENTITY event.reminder.none.label "Sem lembrete " >
+<!ENTITY event.reminder.0minutes.before.label "0 minutos antes" >
+<!ENTITY event.reminder.5minutes.before.label "5 minutos antes" >
+<!ENTITY event.reminder.15minutes.before.label "15 minutos antes" >
+<!ENTITY event.reminder.30minutes.before.label "30 minutos antes" >
+<!ENTITY event.reminder.1hour.before.label "1 hora antes" >
+<!ENTITY event.reminder.2hours.before.label "2 horas antes" >
+<!ENTITY event.reminder.12hours.before.label "12 horas antes" >
+<!ENTITY event.reminder.1day.before.label "1 dia antes" >
+<!ENTITY event.reminder.2days.before.label "2 dias antes" >
+<!ENTITY event.reminder.1week.before.label "1 semana antes" >
+<!ENTITY event.reminder.custom.label "Personalizado…" >
+
+<!ENTITY event.reminder.multiple.label "Lembretes múltiplos…" >
+
+<!ENTITY event.statusbarpanel.freebusy.label "Duração:">
+<!ENTITY event.statusbarpanel.privacy.label "Privacidade:">
+
+<!-- Recurrence dialog -->
+<!ENTITY recurrence.title.label "Editar recorrência">
+
+<!ENTITY event.repeat.does.not.repeat.label "Não repete">
+<!ENTITY event.repeat.daily.label "Diariamente">
+<!ENTITY event.repeat.weekly.label "Semanalmente">
+<!ENTITY event.repeat.every.weekday.label "A cada dia útil">
+<!ENTITY event.repeat.bi.weekly.label "A cada duas semanas">
+<!ENTITY event.repeat.monthly.label "Mensalmente">
+<!ENTITY event.repeat.yearly.label "Anualmente">
+<!ENTITY event.repeat.custom.label "Personalizada…">
+
+<!ENTITY event.recurrence.pattern.label "Padrão de recorrência">
+<!ENTITY event.recurrence.occurs.label "Repete" >
+<!ENTITY event.recurrence.day.label "diariamente" >
+<!ENTITY event.recurrence.week.label "semanalmente" >
+<!ENTITY event.recurrence.month.label "mensalmente" >
+<!ENTITY event.recurrence.year.label "anualmente" >
+
+<!ENTITY event.recurrence.pattern.every.label "A cada" >
+<!ENTITY repeat.units.days.both "Dia(s)" >
+<!ENTITY event.recurrence.pattern.every.weekday.label "A cada dia útil" >
+
+<!ENTITY event.recurrence.pattern.weekly.every.label "A cada" >
+<!ENTITY repeat.units.weeks.both "Semana(s)" >
+<!ENTITY event.recurrence.on.label "No:" >
+
+<!ENTITY event.recurrence.pattern.monthly.every.label "A cada" >
+<!ENTITY repeat.units.months.both "Mês(es)" >
+<!ENTITY event.recurrence.monthly.every.label "A cada" >
+<!ENTITY event.recurrence.monthly.first.label "No(a) primeiro(a)">
+<!ENTITY event.recurrence.monthly.second.label "No(a) segundo(a)">
+<!ENTITY event.recurrence.monthly.third.label "No(a) terceiro(a)">
+<!ENTITY event.recurrence.monthly.fourth.label "No(a) quarto(a)">
+<!ENTITY event.recurrence.monthly.fifth.label "No(a) quinto(a)">
+<!ENTITY event.recurrence.monthly.last.label "No(a) último(a)">
+<!ENTITY event.recurrence.pattern.monthly.week.1.label "Domingo" >
+<!ENTITY event.recurrence.pattern.monthly.week.2.label "Segunda-feira" >
+<!ENTITY event.recurrence.pattern.monthly.week.3.label "Terça-feira" >
+<!ENTITY event.recurrence.pattern.monthly.week.4.label "Quarta-feira" >
+<!ENTITY event.recurrence.pattern.monthly.week.5.label "Quinta-feira" >
+<!ENTITY event.recurrence.pattern.monthly.week.6.label "Sexta-feira" >
+<!ENTITY event.recurrence.pattern.monthly.week.7.label "Sábado" >
+<!ENTITY event.recurrence.repeat.dayofmonth.label "Dia do mês">
+<!ENTITY event.recurrence.repeat.recur.label "Repete nos dia(s)">
+
+<!ENTITY event.recurrence.every.label "A cada:" >
+<!ENTITY repeat.units.years.both "Ano(s)" >
+<!ENTITY event.recurrence.pattern.yearly.every.month.label "A cada" >
+
+<!-- LOCALIZATON NOTE
+ Some languages use a preposition when describing dates:
+ Portuguese: 6 de Setembro
+ English: 6 [of] September
+ event.recurrence.pattern.yearly.of.label is "of" in
+ Edit recurrence window -> Recurrence pattern -> Repeat yearly
+-->
+<!ENTITY event.recurrence.pattern.yearly.of.label "" >
+
+<!ENTITY event.recurrence.pattern.yearly.month.1.label "Janeiro" >
+<!ENTITY event.recurrence.pattern.yearly.month.2.label "Fevereiro" >
+<!ENTITY event.recurrence.pattern.yearly.month.3.label "Março" >
+<!ENTITY event.recurrence.pattern.yearly.month.4.label "Abril" >
+<!ENTITY event.recurrence.pattern.yearly.month.5.label "Maio" >
+<!ENTITY event.recurrence.pattern.yearly.month.6.label "Junho" >
+<!ENTITY event.recurrence.pattern.yearly.month.7.label "Julho" >
+<!ENTITY event.recurrence.pattern.yearly.month.8.label "Agosto" >
+<!ENTITY event.recurrence.pattern.yearly.month.9.label "Setembro" >
+<!ENTITY event.recurrence.pattern.yearly.month.10.label "Outubro" >
+<!ENTITY event.recurrence.pattern.yearly.month.11.label "Novembro" >
+<!ENTITY event.recurrence.pattern.yearly.month.12.label "Dezembro" >
+<!ENTITY event.recurrence.yearly.every.label "A cada">
+<!ENTITY event.recurrence.yearly.first.label "No(a) primeiro(a)">
+<!ENTITY event.recurrence.yearly.second.label "No(a) segundo(a)">
+<!ENTITY event.recurrence.yearly.third.label "No(a) terceiro(a)">
+<!ENTITY event.recurrence.yearly.fourth.label "No(a) quarto(a)">
+<!ENTITY event.recurrence.yearly.fifth.label "No(a) quinto(a)">
+<!ENTITY event.recurrence.yearly.last.label "No(a) último(a)">
+<!ENTITY event.recurrence.pattern.yearly.week.1.label "Domingo" >
+<!ENTITY event.recurrence.pattern.yearly.week.2.label "Segunda" >
+<!ENTITY event.recurrence.pattern.yearly.week.3.label "Terça" >
+<!ENTITY event.recurrence.pattern.yearly.week.4.label "Quarta" >
+<!ENTITY event.recurrence.pattern.yearly.week.5.label "Quinta" >
+<!ENTITY event.recurrence.pattern.yearly.week.6.label "Sexta" >
+<!ENTITY event.recurrence.pattern.yearly.week.7.label "Sábado" >
+<!ENTITY event.recurrence.pattern.yearly.day.label "dia" >
+<!ENTITY event.recurrence.of.label "de" >
+<!ENTITY event.recurrence.pattern.yearly.month2.1.label "janeiro" >
+<!ENTITY event.recurrence.pattern.yearly.month2.2.label "fevereiro" >
+<!ENTITY event.recurrence.pattern.yearly.month2.3.label "março" >
+<!ENTITY event.recurrence.pattern.yearly.month2.4.label "abril" >
+<!ENTITY event.recurrence.pattern.yearly.month2.5.label "maio" >
+<!ENTITY event.recurrence.pattern.yearly.month2.6.label "junho" >
+<!ENTITY event.recurrence.pattern.yearly.month2.7.label "julho" >
+<!ENTITY event.recurrence.pattern.yearly.month2.8.label "agosto" >
+<!ENTITY event.recurrence.pattern.yearly.month2.9.label "setembro" >
+<!ENTITY event.recurrence.pattern.yearly.month2.10.label "outubro" >
+<!ENTITY event.recurrence.pattern.yearly.month2.11.label "novembro" >
+<!ENTITY event.recurrence.pattern.yearly.month2.12.label "dezembro" >
+
+<!ENTITY event.recurrence.range.label "Período de recorrência">
+<!ENTITY event.recurrence.forever.label "Indefinidamente" >
+<!ENTITY event.recurrence.repeat.for.label "Criar" >
+<!ENTITY event.recurrence.appointments.label "Compromissos(s)" >
+<!ENTITY event.repeat.until.label "Repetir até" >
+<!ENTITY event.recurrence.preview.label "Visualizar">
+
+<!-- Attendees dialog -->
+<!ENTITY invite.title.label "Convidar participantes">
+<!ENTITY event.organizer.label "Organizador">
+<!ENTITY event.freebusy.suggest.slot "Sugerir tempo disponível:">
+<!ENTITY event.freebusy.button.next.slot "Próximo slot">
+<!ENTITY event.freebusy.button.previous.slot "Slot anterior">
+<!ENTITY event.freebusy.zoom "Zoom:">
+<!ENTITY event.freebusy.legend.free "Disponível" >
+<!ENTITY event.freebusy.legend.busy "Ocupado" >
+<!ENTITY event.freebusy.legend.busy_tentative "Tentativa" >
+<!ENTITY event.freebusy.legend.busy_unavailable "Fora do escritório" >
+<!ENTITY event.freebusy.legend.unknown "Sem informação" >
+<!ENTITY event.attendee.role.required "Participante requerido">
+<!ENTITY event.attendee.role.optional "Participante opcional">
+<!ENTITY event.attendee.role.chair "Presidente">
+<!ENTITY event.attendee.role.nonparticipant "Não participante">
+<!ENTITY event.attendee.usertype.individual "Individual">
+<!ENTITY event.attendee.usertype.group "Grupo">
+<!ENTITY event.attendee.usertype.resource "Recurso">
+<!ENTITY event.attendee.usertype.room "Sala">
+<!ENTITY event.attendee.usertype.unknown "Desconhecido">
+
+<!-- Timezone dialog -->
+<!ENTITY timezone.title.label "Favor especificar o fuso horário">
+<!ENTITY event.timezone.custom.label "Mais fusos horários…">
+
+<!-- Read-Only dialog -->
+<!ENTITY read.only.general.label "Geral">
+<!ENTITY read.only.title.label "Título:">
+<!ENTITY read.only.calendar.label "Agenda:">
+<!ENTITY read.only.event.start.label "Data inicial:">
+<!ENTITY read.only.task.start.label "Data inicial:">
+<!ENTITY read.only.event.end.label "Data final:">
+<!ENTITY read.only.task.due.label "Data de conclusão:">
+<!ENTITY read.only.repeat.label "Repete:">
+<!ENTITY read.only.location.label "Local:">
+<!ENTITY read.only.category.label "Categoria:">
+<!ENTITY read.only.organizer.label "Organizador:">
+<!ENTITY read.only.reminder.label "Lembrete:">
+<!ENTITY read.only.attachments.label "Anexos:">
+<!ENTITY read.only.attendees.label "Participantes">
+<!ENTITY read.only.description.label "Descrição">
+<!ENTITY read.only.link.label "Atalho relacionado">
+
+<!-- Summary dialog -->
+<!ENTITY summary.dialog.saveclose.label "Salvar e fechar">
+<!ENTITY summary.dialog.saveclose.tooltiptext "Salvar as alterações e fechar a janela sem alterar o estado de participação e enviar uma resposta">
+<!ENTITY summary.dialog.accept.label "Aceitar">
+<!ENTITY summary.dialog.accept.tooltiptext "Aceitar o convite">
+<!ENTITY summary.dialog.tentative.label "Provisório">
+<!ENTITY summary.dialog.tentative.tooltiptext "Aceitar o convite provisoriamente">
+<!ENTITY summary.dialog.decline.label "Recusar">
+<!ENTITY summary.dialog.decline.tooltiptext "Recusar o convite">
+<!ENTITY summary.dialog.dontsend.label "Não enviar uma resposta">
+<!ENTITY summary.dialog.dontsend.tooltiptext "Altere o seu estado de participação sem enviar uma resposta ao organizador e fechar a janela">
+<!ENTITY summary.dialog.send.label "Enviar uma resposta agora">
+<!ENTITY summary.dialog.send.tooltiptext "Envia uma resposta ao organizador e fecha a janela">
diff --git a/l10n-pt-BR/calendar/chrome/calendar/calendar-event-dialog.properties b/l10n-pt-BR/calendar/chrome/calendar/calendar-event-dialog.properties
new file mode 100644
index 0000000000..ff46da851a
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/calendar-event-dialog.properties
@@ -0,0 +1,541 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (dailyEveryNth):
+# Edit recurrence window -> Recurrence pattern -> Daily repeat rules
+# #1 - number
+# e.g. "every 4 days"
+dailyEveryNth=todo dia;a cada #1 dias
+repeatDetailsRuleDaily4=a cada dia útil
+
+# LOCALIZATION NOTE (weeklyNthOnNounclass...)
+# Edit recurrence window -> Recurrence pattern -> Weekly repeat rules
+# Translate these strings according to noun class/gender of weekday (%1$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - weekday (one or more)
+# #2 - week interval
+# e.g. "every 3 weeks on Tuesday, Wednesday and Thursday
+weeklyNthOnNounclass1=a cada %1$S;a cada #2 semanas no %1$S
+weeklyNthOnNounclass2=a cada %1$S;a cada #2 semanas na %1$S
+
+# LOCALIZATION NOTE (weeklyEveryNth):
+# Edit recurrence window -> Recurrence pattern -> Weekly repeat rules
+# #1 - interval
+# e.g. "every 5 weeks"
+weeklyEveryNth=a cada semana;a cada #1 semanas
+
+# LOCALIZATION NOTE ('repeatDetailsDay...' and 'repeatDetailsDay...Nounclass'):
+# Week days names and week days noun classes (feminine/masculine grammatical
+# gender) for languages that need different localization when weekdays nouns
+# have different noun classes (genders).
+# For every weekday, in 'repeatDetailsDay...Nounclass' strings write:
+# "nounclass1" for languages with grammatical genders -> MASCULINE gender;
+# for languages with noun classes -> a noun class;
+# for languages without noun classes or grammatical gender.
+#
+# "nounclass2" for languages with grammatical genders -> FEMININE gender;
+# for languages with noun classes -> a different noun class.
+#
+# "nounclass3", "nounclass4" and so on for languages that need more than two
+# noun classes for weekdays. In this case add corresponding
+# rule string with "Nounclass..." suffix and ordinal string
+# "repeatOrdinalxNounclass..."
+# Will be used rule strings with "Nounclass..." suffix corresponding to the
+# following strings if there is a weekday in the rule string.
+repeatDetailsDay1=Domingo
+repeatDetailsDay1Nounclass=nounclass1
+repeatDetailsDay2=Segunda
+repeatDetailsDay2Nounclass=nounclass2
+repeatDetailsDay3=Terça
+repeatDetailsDay3Nounclass=nounclass2
+repeatDetailsDay4=Quarta
+repeatDetailsDay4Nounclass=nounclass2
+repeatDetailsDay5=Quinta
+repeatDetailsDay5Nounclass=nounclass2
+repeatDetailsDay6=Sexta
+repeatDetailsDay6Nounclass=nounclass2
+repeatDetailsDay7=Sábado
+repeatDetailsDay7Nounclass=nounclass1
+
+# LOCALIZATION NOTE (repeatDetailsAnd)
+# Used to show a number of weekdays in a list
+# i.e. "Sunday, Monday, Tuesday " + and + " Wednesday"
+repeatDetailsAnd=e
+
+# LOCALIZATION NOTE (monthlyRuleNthOfEveryNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# Translate these strings according to noun class/gender of weekday (%2$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - list of weekdays with ordinal, article and noun class/gender
+# (ordinal and weekday of every element in the list follow the order
+# and the rule of ordinalWeekdayOrder string)
+# #2 - interval
+# e.g. "the first Monday and the last Friday of every 3 months"
+monthlyRuleNthOfEveryNounclass1=%1$S de cada mês;%1$S a cada #2 meses
+monthlyRuleNthOfEveryNounclass2=%1$S de cada mês;%1$S a cada #2 meses
+
+# LOCALIZATION NOTE (ordinalWeekdayOrder):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# This string allows to change the order of the elements "ordinal" and
+# "weekday" (or to insert a word between them) for the argument %1$S of the
+# string monthlyRuleNthOfEveryNounclass...
+# Without changing this string, the order is that one required from most
+# languages: ordinal + weekday (e.g. "'the first' 'Monday' of every 2 months").
+# %1$S - ordinal with article
+# %2$S - weekday noun
+# e.g. "'the first' 'Monday'"
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+ordinalWeekdayOrder=%1$S %2$S
+
+# LOCALIZATION NOTE (monthlyEveryOfEveryNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# Translate these strings according to noun class/gender of weekday (%1$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - list of single weekdays and/or weekdays with ordinal, article and
+# noun class/gender when rule contains also specific day in the month
+# #2 - interval
+# e.g. "every Monday, Tuesday and the second Sunday of every month"
+monthlyEveryOfEveryNounclass1=todo %1$S de cada mês;todo %1$S a cada #2 meses
+monthlyEveryOfEveryNounclass2=toda %1$S de cada mês;toda %1$S a cada #2 meses
+
+# LOCALIZATION NOTE (monthlyDaysOfNth_day):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# %1$S - day of month or a sequence of days of month, possibly followed by an ordinal symbol
+# (depending on the string dayOrdinalSymbol in dateFormat.properties) separated with commas;
+# e.g. "days 3, 6 and 9" or "days 3rd, 6th and 9th"
+monthlyDaysOfNth_day=dia %1$S;dias %1$S
+
+# LOCALIZATION NOTE (monthlyDaysOfNth):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# %1$S - it's the string monthlyDaysOfNth_day: day of month or a sequence of days
+# of month, possibly followed by an ordinal symbol, separated with commas;
+# #2 - monthly interval
+# e.g. "days 3, 6, 9 and 12 of every 3 months"
+monthlyDaysOfNth=%1$S de cada mês;%1$S de cada #2 meses
+
+# LOCALIZATION NOTE (monthlyLastDayOfNth):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# %1$S - day of month
+# #2 - month interval
+# e.g. "the last day of every 3 months"
+monthlyLastDayOfNth=no último dia do mês; no último dia a cada #1 meses
+
+# LOCALIZATION NOTE (monthlyEveryDayOfNth):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# #2 - month interval
+# e.g. "every day of the month every 4 months"
+monthlyEveryDayOfNth=todo dia de todo mês;todo dia do mês a cada #2 meses
+
+# LOCALIZATION NOTE (repeatOrdinal...Nounclass...):
+# Ordinal numbers nouns for every noun class (grammatical genders) of weekdays
+# considered in 'repeatDetailsDayxNounclass' strings. For languages that need
+# localization according to genders or noun classes.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add 'repeatOrdinal...Nounclass' strings with suffix 3, 4 and so on for
+# languages with more than two noun classes for weekdays. In this case
+# must be added corresponding rule strings with 'Nounclass...' suffix and
+# corresponding values "nounclass..." must be written in
+# 'repeatDetailsDayxNounclass' strings.
+repeatOrdinal1Nounclass1=no primeiro
+repeatOrdinal2Nounclass1=no segundo
+repeatOrdinal3Nounclass1=no terceiro
+repeatOrdinal4Nounclass1=no quarto
+repeatOrdinal5Nounclass1=no quinto
+repeatOrdinal-1Nounclass1=no último
+repeatOrdinal1Nounclass2=na primeira
+repeatOrdinal2Nounclass2=na segunda
+repeatOrdinal3Nounclass2=na terceira
+repeatOrdinal4Nounclass2=na quarta
+repeatOrdinal5Nounclass2=na quinta
+repeatOrdinal-1Nounclass2=na última
+
+# LOCALIZATION NOTE (yearlyNthOn):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# %1$S - month name
+# %2$S - day of month possibly followed by an ordinal symbol (depending on the string
+# dayOrdinalSymbol in dateFormat.properties)
+# #3 - yearly interval
+# e.g. "every 3 years on December 14"
+# "every 2 years on December 8th"
+yearlyNthOn=a cada %1$S %2$S;a cada #3 anos em %1$S %2$S
+
+# LOCALIZATION NOTE (yearlyNthOnNthOfNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# Translate these strings according to noun class/gender of weekday (%2$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - ordinal with article and noun class/gender corresponding to weekday
+# %2$S - weekday
+# %3$S - month
+# #4 - yearly interval
+# e.g. "the second Monday of every March"
+# e.g "every 3 years the second Monday of March"
+yearlyNthOnNthOfNounclass1=%1$S %2$S de cada %3$S;cada #4 anos no %1$S %2$S of %3$S
+yearlyNthOnNthOfNounclass2=%1$S %2$S de cada %3$S;cada #4 anos na %1$S %2$S of %3$S
+
+# LOCALIZATION NOTE (yearlyOnEveryNthOfNthNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# Translate these strings according to noun class/gender of weekday (%1$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - weekday
+# %2$S - month
+# #3 - yearly interval
+# e.g. "every Thursday of March"
+# e.g "every 3 years on every Thursday of March"
+yearlyOnEveryNthOfNthNounclass1=todo %1$S de %2$S;a cada #3 anos todo %1$S de %2$S
+yearlyOnEveryNthOfNthNounclass2=toda %1$S de %2$S;a cada #3 anos toda %1$S of %2$S
+
+#LOCALIZATION NOTE (yearlyEveryDayOf):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# This string describes part of a yearly rule which includes every day of a month.
+# %1$S - month
+# #2 - yearly interval
+# e.g. "every day of December"
+# e.g. "every 3 years every day of December"
+yearlyEveryDayOf=todos os dias de %1$S;a cada #2 anos todos os dias de %1$S
+
+repeatDetailsMonth1=Janeiro
+repeatDetailsMonth2=Fevereiro
+repeatDetailsMonth3=Março
+repeatDetailsMonth4=Abril
+repeatDetailsMonth5=Maio
+repeatDetailsMonth6=Junho
+repeatDetailsMonth7=Julho
+repeatDetailsMonth8=Agosto
+repeatDetailsMonth9=Setembro
+repeatDetailsMonth10=Outubro
+repeatDetailsMonth11=Novembro
+repeatDetailsMonth12=Dezembro
+
+# LOCALIZATION NOTE (repeatCount):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event start time (e.g. hh:mm (PM/AM))
+# %4$S - event end time (e.g. hh:mm (PM/AM))
+# #5 - event occurence times: number
+# e.g. with monthlyRuleNthOfEvery:
+# "Occurs the first Sunday of every 3 month
+# only on 1/1/2009"
+# from 5:00 PM to 6:00 PM"
+# "Occurs the first Sunday of every 3 month
+# effective 1/1/2009 for 5 times
+# from 5:00 PM to 6:00 PM"
+repeatCount=Ocorre %1$S\na partir de %2$S #5 vez\nde %3$S a %4$S.;Ocorre %1$S\na partir de %2$S de #5 vezes\nde %3$S a %4$S.
+
+# LOCALIZATION NOTE (repeatCountAllDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# #3 - event occurence times: number
+# e.g. with monthlyRuleNthOfEvery:
+# "Occurs the first Sunday of every 3 month
+# only on 1/1/2009"
+# "Occurs the first Sunday of every 3 month
+# effective 1/1/2009 for 5 times"
+repeatCountAllDay=Ocorre %1$S\na partir de %2$S por #3 vez.;Ocorre %1$S\na partir de %2$S por #3 vezes.
+
+# LOCALIZATION NOTE (repeatDetailsUntil):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event end date (e.g. mm/gg/yyyy)
+# %4$S - event start time (e.g. hh:mm (PM/AM))
+# %5$S - event end time (e.g. hh:mm (PM/AM))
+# e.g. with weeklyNthOn:
+# "Occurs every 2 weeks on Sunday and Friday
+# effective 1/1/2009 until 1/1/2010
+# from 5:00 PM to 6:00 PM"
+repeatDetailsUntil=Ocorre %1$S\na partir de %2$S até %3$S\nde %4$S a %5$S.
+
+# LOCALIZATION NOTE (repeatDetailsUntilAllDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event end date (e.g. mm/gg/yyyy)
+# e.g. with monthlyDaysOfNth and all day event:
+# "Occurs day 3 of every 5 month
+# effective 1/1/2009 until 1/1/2010"
+repeatDetailsUntilAllDay=Ocorre %1$S\na partir de %2$S até %3$S.
+
+# LOCALIZATION NOTE (repeatDetailsInfinite):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event start time (e.g. hh:mm (PM/AM))
+# %4$S - event end time (e.g. hh:mm (PM/AM))
+# e.g. with monthlyDaysOfNth:
+# "Occurs day 3 of every 5 month
+# effective 1/1/2009
+# from 5:00 PM to 6:00 PM"
+repeatDetailsInfinite=Ocorre %1$S\na partir de %2$S\nde %3$S a %4$S.
+
+# LOCALIZATION NOTE (repeatDetailsInfiniteAllDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# e.g. with monthlyDaysOfNth and all day event:
+# "Occurs day 3 of every 5 month
+# effective 1/1/2009"
+repeatDetailsInfiniteAllDay=Ocorre %1$S\na partir de %2$S.
+
+# LOCALIZATION NOTE (monthlyLastDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# A monthly rule with one or more days of the month (monthlyDaysOfNth) and the
+# string "the last day" of the month.
+# e.g.: "Occurs day 15, 20, 25 and the last day of every 3 months"
+monthlyLastDay=o último dia
+
+# LOCALIZATION NOTE (ruleTooComplex):
+# This string is shown in the repeat details area if our code can't handle the
+# complexity of the recurrence rule yet.
+ruleTooComplex=Clique aqui para ver detalhes
+
+# LOCALIZATION NOTE (ruleTooComplexSummary):
+# This string is shown in the event summary dialog if our code can't handle the
+# complexity of the recurrence rule yet.
+ruleTooComplexSummary=Detalhes da repetição desconhecidos
+
+# differences between the dialog for an Event or a Task
+newEvent=Novo evento
+newTask=Nova tarefa
+itemMenuLabelEvent=Evento
+itemMenuAccesskeyEvent2=F
+itemMenuLabelTask=Tarefa
+itemMenuAccesskeyTask2=F
+
+emailSubjectReply=Res: %1$S
+
+# Link Location Dialog
+specifyLinkLocation=Favor especificar local do atalho
+enterLinkLocation=Digite uma página da internet, ou local de documento.
+
+summaryDueTaskLabel=Vencimento:
+
+# Attach File Dialog
+attachViaFilelink=Arquivo usando %1$S
+selectAFile=Favor selecionar arquivo(s) para anexar
+removeCalendarsTitle=Remover anexos
+
+# LOCALIZATION NOTE (removeAttachmentsText): Semi-colon list of plural forms for
+# prompting attachment removal.
+# See http://developer.mozilla.org/en/Localization_and_Plurals
+removeAttachmentsText=Você realmente deseja remover #1 anexo?;Você realmente deseja remover #1 anexos?
+
+# Recurrence Dialog Widget Order
+# LOCALIZATION NOTE: You can change the order of below params
+# Edit recurrence window -> Recurrence pattern -> Repeat monthly
+# %1$S - ordinal with article, %2$S - weekday
+# e.g. "the First Saturday"
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+monthlyOrder=%1$S %2$S
+
+# Edit recurrence window -> Recurrence pattern -> Repeat yearly
+# %1$S - day of month, %2$S - of, %3$S - month
+# e.g. "6 [of] September"
+# If you don't need %2$S in your locale - please put this on the third place.
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+yearlyOrder=%1$S %3$S %2$S
+
+# Edit recurrence window -> Recurrence pattern -> Repeat yearly
+# %1$S - ordinal with article, %2$S - weekday, %3$S - of, %4$S - month
+# e.g. "the First Saturday of September"
+# If you don't need %3$S in your locale - please put this on the third place.
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+yearlyOrder2=%1$S %2$S %3$S %4$S
+
+# LOCALIZATION NOTE (pluralForWeekdays):
+# This string allows to set the use of weekdays nouns in plural form for
+# languages that need them in sentences like "every Monday" or "every Sunday
+# of March" etc.
+# Rule strings involved by this setting are:
+# - weeklyNthOn (only the first part) e.g. "every Sunday"
+# - monthlyEveryOfEvery
+# e.g. "every Monday of every month;every Monday every 2 months"
+# - yearlyOnEveryNthOfNth
+# e.g. "every Friday of March;every 2 years on every Friday of March"
+# In your local write:
+# "true" if sentences like those above need weekday in plural form;
+# "false" if sentences like those above don't need weekday in plural form;
+pluralForWeekdays=false
+
+# LOCALIZATION NOTE (repeatDetailsDayxxxPlural):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# Weekdays in plural form used inside sentences like "every Monday" or
+# "every Sunday of May" etc. for languages that need them.
+# These plurals will be used inside the following rule strings only if string
+# 'pluralForWeekdays' (see above) is set to "true":
+# - weeklyNthOn (only the first part) e.g. "every Sunday"
+# - monthlyEveryOfEvery
+# e.g. "every Monday of every month;every Monday every 2 months"
+# - yearlyOnEveryNthOfNth
+# e.g. "every Friday of March;every 2 years on every Friday of March"
+repeatDetailsDay1Plural=Domingos
+repeatDetailsDay2Plural=Segundas
+repeatDetailsDay3Plural=Terças
+repeatDetailsDay4Plural=Quartas
+repeatDetailsDay5Plural=Quintas
+repeatDetailsDay6Plural=Sextas
+repeatDetailsDay7Plural=Sábados
+
+# LOCALIZATION NOTE (eventRecurrenceForeverLabel):
+# Edit/New Event dialog -> datepicker that sets the until date.
+# For recurring rules that repeat forever, this labels appears in the
+# datepicker, below the minimonth, as an option for the until date.
+eventRecurrenceForeverLabel=Sempre
+
+# LOCALIZATION NOTE (eventRecurrenceMonthlyLastDayLabel):
+# Edit dialog recurrence -> Monthly Recurrence pattern -> Monthly daypicker
+# The label on the monthly daypicker's last button that allows to select
+# the last day of the month inside a BYMONTHDAY rule.
+eventRecurrenceMonthlyLastDayLabel=Último dia
+
+# LOCALIZATION NOTE (counterSummaryAccepted) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryAccepted=%1$S aceitou o convite, mas fez uma sugestão:
+
+# LOCALIZATION NOTE (counterSummaryDeclined) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryDeclined=%1$S recusou o convite, mas fez uma sugestão:
+
+# LOCALIZATION NOTE (counterSummaryDelegated) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryDelegated=%1$S delegou o convite, mas fez uma sugestão:
+
+# LOCALIZATION NOTE (counterSummaryNeedsAction) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryNeedsAction=%1$S não decidiu se participará e fez uma sugestão:
+
+# LOCALIZATION NOTE (counterSummaryTentative) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryTentative=%1$S aceitou o convite apenas temporariamente e fez uma sugestão:
+
+# LOCALIZATION NOTE (counterOnPreviousVersionNotification) - this is only visible when opening the
+# dialog from the email summary view after receiving a counter message
+counterOnPreviousVersionNotification=Essa é uma sugestão da versão anterior deste evento.
+
+# LOCALIZATION NOTE (counterOnCounterDisallowedNotification) - this is only visible when opening the
+# dialog from the email summary view after receiving a counter message
+counterOnCounterDisallowedNotification=Você não permitiu sugestões quando enviou o convite.
+
+# LOCALIZATION NOTE (eventAccepted) - this will be displayed as notification
+# in the summary dialog if the user has accepted the event invitation
+eventAccepted=Você aceitou este convite
+
+# LOCALIZATION NOTE (eventTentative) - this will be displayed as notification
+# in the summary dialog if the user has accepted the event invitation tentatively
+eventTentative=Você aceitou este convite provisoriamente
+
+# LOCALIZATION NOTE (eventDeclined) - this will be displayed as notification
+# in the summary dialog if the user has declined the event invitation
+eventDeclined=Você recusou este convite
+
+# LOCALIZATION NOTE (eventDelegated) - this will be displayed as notification
+# in the summary dialog if the user has delegated his/her participation to one
+# or more other participants (without attending / working on it his/herself)
+eventDelegated=Você delegou este convite
+
+# LOCALIZATION NOTE (eventNeedsAction) - this will be displayed as notification
+# in the summary dialog if the user hasn't yet responded to an invitation
+eventNeedsAction=Você ainda não respondeu a este convite
+
+# LOCALIZATION NOTE (taskAccepted) - this will be displayed as notification
+# in the summary dialog if the user has accepted the assigned task
+taskAccepted=Você aceitou trabalhar nesta tarefa
+
+# LOCALIZATION NOTE (taskTentative) - this will be displayed as notification
+# in the summary dialog if the user has accepted tentatively the assigned task
+taskTentative=Você aceitou trabalhar nesta tarefa provisoriamente
+
+# LOCALIZATION NOTE (taskDeclined) - this will be displayed as notification
+# in the summary dialog if the user has declined the assigned task
+taskDeclined=Você recusou trabalhar nesta tarefa
+
+# LOCALIZATION NOTE (taskDelegated) - this will be displayed as notification
+# in the summary dialog if the user has delegated his/her assignement to one or
+# more others (without attending / working on it his/herself)
+taskDelegated=Você delegou o trabalho desta tarefa
+
+# LOCALIZATION NOTE (taskNeedsAction) - this will be displayed as notification
+# in the summary dialog if the user hasn't yet responded to the task assignment
+taskNeedsAction=Você ainda não respondeu a atribuição desta tarefa
+
+# LOCALIZATION NOTE (taskInProgress) - this will be displayed as notification
+# in the summary dialog if the user is working on an assigned task
+taskInProgress=Você começou a trabalhar nesta tarefa atribuída
+
+# LOCALIZATION NOTE (taskCompleted) - this will be displayed as notification
+# in the summary dialog if the user has completed the work on this assigned task
+taskCompleted=Você completou seu trabalho nesta tarefa atribuída
+
+# LOCALIZATION NOTE (sendandcloseButtonLabel) - this is a runtime replacement for
+# event.toolbar.saveandclose.label in the event dialog/tab toolbar if attendees
+# will be notified on saving & closing
+sendandcloseButtonLabel=Enviar e fechar
+
+# LOCALIZATION NOTE (sendandcloseButtonTooltip) - this is a runtime replacement for
+# event.toolbar.saveandclose.tooltip in the event dialog/tab toolbar if attendees
+# will be notified on saving & closing
+sendandcloseButtonTooltip=Notificar participantes e fechar
+
+# LOCALIZATION NOTE (saveandsendButtonLabel) - this is a runtime replacement for
+# event.toolbar.save.label2 in the event dialog/tab toolbar if attendees
+# will be notified on saving
+saveandsendButtonLabel=Salvar e enviar
+
+# LOCALIZATION NOTE (saveandsendButtonTooltip) - this is a runtime replacement
+# for event.toolbar.save.tooltip2 in the event dialog/tab toolbar if attendees
+# will be notified on saving
+saveandsendButtonTooltip=Salvar e notificar participantes
+
+# LOCALIZATION NOTE (saveandsendMenuLabel) - this is a runtime replacement for
+# event.menu.item.save.label in the event dialog/tab toolbar if attendees
+# will be notified on saving
+saveandsendMenuLabel=Salvar e enviar
+
+# LOCALIZATION NOTE (sendandcloseMenuLabel) - this is a runtime replacement for
+# event.menu.item.saveandclose.label in the event dialog/tab toolbar if attendees
+# will be notified on saving
+sendandcloseMenuLabel=Salvar e fechar
+
+# LOCALIZATION NOTE (attendeesTabLabel) - this is a runtime replacement for
+# event.attendees.label defined in calendar-event-dialog.dtd and used in the
+# event dialog/tab as attendee tab label if an event has at least one attendee
+# %1$S - the number of attendee (1-n)
+attendeesTabLabel=Participantes (%1$S):
+
+# LOCALIZATION NOTE (attachmentsTabLabel) - this is a runtime replacement for
+# event.attachments.label defined in calendar-event-dialog.dtd and used in the
+# event dialog/tab as attendee tab label if an event has at least one attachment
+# %1$S - the number of attachments (1-n)
+attachmentsTabLabel=Anexos (%1$S):
diff --git a/l10n-pt-BR/calendar/chrome/calendar/calendar-extract.properties b/l10n-pt-BR/calendar/chrome/calendar/calendar-extract.properties
new file mode 100644
index 0000000000..526273e4dc
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/calendar-extract.properties
@@ -0,0 +1,294 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE:
+# Strings here are used to create events and tasks with start and end times
+# based on email content.
+# None of the strings are displayed in the user interface.
+#
+# You don't have to fill all from.*, until.*, *.prefix and *.suffix patterns.
+# It's ok to leave some empty.
+# Please consider declensions and gender if your language has them.
+# Don't just translate directly. The number of variants doesn't have to be
+# the same as in en-US. All of 0, 1, 2, etc is allowed in patterns except alphabet
+# pattern. You can and should add language specific variants.
+#
+# There are two different ways to find a start time text in email:
+# 1) it matches a from.* pattern and does not have end.prefix or end.suffix next to it
+# 2) it matches until.* pattern and has start.prefix or start.suffix next to it
+# Similar inverse logic applies to end times.
+# These rules enable using prefix and suffix values with only start.* or only until.*
+# patterns localized for some languages and thus not having to repeat the same
+# values in both.
+#
+# Patterns are partially space-insensitive.
+# "deadline is" pattern will find both "deadlineis" and "deadline is"
+# but "deadlineis" won't find "deadline is" or "deadline is".
+# Therefore you should include all spaces that are valid within a pattern.
+
+# LOCALIZATION NOTE (start.prefix):
+# datetimes with these in front are extracted as start times
+# can be a list of values, separate variants by |
+start.prefix =
+
+# LOCALIZATION NOTE (start.suffix):
+# datetimes followed by these are extracted as start times
+start.suffix = por | até | a | - | e
+
+# LOCALIZATION NOTE (end.prefix):
+# datetimes with these in front are extracted as end times
+end.prefix = até | para | - | até | até | e | devido: | devido | termina | prazo é | prazo:
+
+# LOCALIZATION NOTE (end.suffix):
+# datetimes followed by these are extracted as end times
+# can be a list of values, separate variants by |
+end.suffix =
+
+# LOCALIZATION NOTE (no.datetime.prefix):
+# datetimes with these in front won't be used
+# specify full words here
+no.datetime.prefix = semana passada | enviado | email | e-mail | ao invés de | > | infelizmente | não | última semana | anteriormente em | realizado em | terminado | terminado em
+
+# LOCALIZATION NOTE (no.datetime.suffix):
+# datetimes followed by these won't be used
+no.datetime.suffix = floor | flr | : | email | e-mail | > | % | usd | dollars | $
+
+# LOCALIZATION NOTE (from.*):
+# can be a list of values, separate variants by |
+
+# LOCALIZATION NOTE (from.today):
+# must not be empty!
+from.today = hoje
+
+from.tomorrow = amanhã
+# LOCALIZATION NOTE (until.*):
+# can be a list of values, separate variants by |
+until.tomorrow =
+
+# LOCALIZATION NOTE (from.ordinal.date):
+# #1 = matches numbers 1-31 and number.x
+# should not have "#1" as this would match any single number in email to a time
+from.ordinal.date = %1$Sº
+
+# LOCALIZATION NOTE (until.ordinal.date):
+# #1 = matches numbers 1-31 and number.x
+until.ordinal.date =
+
+from.noon = meio-dia
+until.noon =
+
+# LOCALIZATION NOTE (from.hour):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should not have "#1" as this would match any single number in email to a time
+from.hour = às %1$S | em torno de %1$S | %1$S - | %1$S para
+
+# LOCALIZATION NOTE (until.hour):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should also list how to find end of a timeframe
+until.hour = - %1$S | a %1$S | até %1$S | por %1$S
+
+# LOCALIZATION NOTE (from.hour.am):
+# #1 = matches numbers 0-23 and number.0-number.23
+from.hour.am = %1$S am | %1$S a.m
+
+# LOCALIZATION NOTE (until.hour.am):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should also list how to find end of a timeframe
+until.hour.am =
+
+# LOCALIZATION NOTE (from.hour.pm):
+# #1 = matches numbers 0-23 and number.0-number.23
+from.hour.pm = %1$S pm | %1$S p.m | %1$S p
+
+# LOCALIZATION NOTE (until.hour.pm):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should also list how to find end of a timeframe
+until.hour.pm =
+
+# LOCALIZATION NOTE (from.half.hour.before):
+# denotes times 30 minutes before next full hour
+from.half.hour.before = meia hora antes das %1$S
+
+# LOCALIZATION NOTE (until.half.hour.before):
+# denotes times 30 minutes before next full hour
+until.half.hour.before =
+
+# LOCALIZATION NOTE (from.half.hour.after):
+# denotes times 30 minutes after last full hour
+from.half.hour.after = %1$S e meia
+
+# LOCALIZATION NOTE (until.half.hour.after):
+# denotes times 30 minutes after last full hour
+until.half.hour.after =
+
+# LOCALIZATION NOTE (from.hour.minutes):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+from.hour.minutes = %1$S:%2$S | às %1$S%2$S
+
+# LOCALIZATION NOTE (until.hour.minutes):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+until.hour.minutes =
+
+# LOCALIZATION NOTE (from.hour.minutes.am):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+from.hour.minutes.am = %1$S:%2$S am | %1$S:%2$S a.m
+
+# LOCALIZATION NOTE (until.hour.minutes.am):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+until.hour.minutes.am =
+
+# LOCALIZATION NOTE (from.hour.minutes.pm):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+from.hour.minutes.pm = %1$S:%2$S pm | %1$S:%2$S p.m | %1$S:%2$S p
+
+# LOCALIZATION NOTE (until.hour.minutes.pm):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+until.hour.minutes.pm =
+
+# LOCALIZATION NOTE (from.monthname.day):
+# #1 = matches numbers 1-31 and number.x
+# #2 = matches monthname
+from.monthname.day = %1$S %2$S | %2$S %1$S | %2$S %1$Sº | %1$Sº de %2$S
+
+# LOCALIZATION NOTE (until.monthname.day):
+# #1 = matches numbers 1-31
+# #2 = matches monthname
+until.monthname.day =
+
+# LOCALIZATION NOTE (from.month.day):
+# #1 = matches numbers 1-31
+# #2 = matches numbers 1-12
+from.month.day = %2$S/%1$S
+
+# LOCALIZATION NOTE (until.month.day):
+# #1 = matches numbers 1-31 and number.x
+# #2 = matches numbers 1-12
+until.month.day =
+
+# LOCALIZATION NOTE (from.year.month.day):
+# #1 = matches numbers 1-31
+# #2 = matches numbers 1-12
+# #3 = matches 2/4 numbers
+from.year.month.day = %1$S/%2$S/%3$S | %3$S/%2$S/%1$S | %3$S-%2$S-%1$S
+
+# LOCALIZATION NOTE (until.year.month.day):
+# #1 = matches numbers 1-31
+# #2 = matches numbers 1-12
+# #3 = matches 2/4 numbers
+until.year.month.day =
+
+# LOCALIZATION NOTE (from.year.monthname.day):
+# #1 = matches numbers 1-31
+# #2 = matches monthname
+# #3 = matches 2/4 numbers
+from.year.monthname.day = %1$S %2$S %3$S | %1$Sº %2$S %3$S | %2$S %1$S, %3$S | %3$S-%2$S-%1$S
+
+# LOCALIZATION NOTE (until.year.monthname.day):
+# #1 = matches numbers 1-31
+# #2 = matches monthname
+# #3 = matches 2/4 numbers
+until.year.monthname.day =
+
+# LOCALIZATION NOTE (duration.*):
+# can be a list of values, separate variants by |
+
+# LOCALIZATION NOTE (duration.minutes):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+duration.minutes = %1$S minutos | %1$S min
+
+# LOCALIZATION NOTE (duration.hours):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+duration.hours = %1$S hora | %1$S horas
+
+# LOCALIZATION NOTE (duration.days):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+duration.days = %1$S dias
+
+# LOCALIZATION NOTE (month.*):
+# can be a list of values, separate variants by |
+month.1 = janeiro | jan | jan.
+month.2 = fevereiro | fev | fev.
+month.3 = março | mar | mar.
+month.4 = abril | abr | abr.
+month.5 = maio
+month.6 = junho | jun | jun.
+month.7 = julho | jul | jul.
+month.8 = agosto | ago | ago.
+month.9 = setembro | set | set.
+month.10 = outubro | out | out.
+month.11 = novembro | nov | nov.
+month.12 = dezembro | dez | dez.
+
+# LOCALIZATION NOTE (from.weekday.*):
+# used to derive start date based on weekdays mentioned
+# can be a list of values, separate variants by |
+# LOCALIZATION NOTE (from.weekday.0):
+# Regardless of what the first day of the week is in your country, 0 is Sunday here.
+from.weekday.0 = domingo | domingos
+from.weekday.1 = segunda-feira | segundas-feiras
+from.weekday.2 = terça-feira | terças-feiras
+from.weekday.3 = quarta-feira | quartas-feiras
+from.weekday.4 = quinta-feira | quintas-feiras
+from.weekday.5 = sexta-feira | sextas-feiras
+from.weekday.6 = sábado | sábados
+
+# LOCALIZATION NOTE (until.weekday.*):
+# used to derive end date based on weekdays mentioned
+# can be a list of values, separate variants by |
+# LOCALIZATION NOTE (until.weekday.0):
+# Regardless of what the first day of the week is in your country, 0 is Sunday here.
+until.weekday.0 =
+until.weekday.1 =
+until.weekday.2 =
+until.weekday.3 =
+until.weekday.4 =
+until.weekday.5 =
+until.weekday.6 =
+
+# LOCALIZATION NOTE (number.*):
+# used within other patterns to understand dates where day of month isn't written with digits
+# can be a list of values, separate variants by |
+number.0 = zero
+number.1 = um | primeiro
+number.2 = dois | segundo
+number.3 = três | terceiro
+number.4 = quatro | quarto
+number.5 = cinco | quinto
+number.6 = seis | sexto
+number.7 = sete | sétimo
+number.8 = oito | oitavo
+number.9 = nove | nono
+number.10 = dez | décimo
+number.11 = onze | décimo primeiro
+number.12 = doze | décimo segundo
+number.13 = treze | décimo terceiro
+number.14 = catorze | décimo quarto | quatorze
+number.15 = quinze | décimo quinto
+number.16 = dezesseis | décimo sexto
+number.17 = dezessete | décimo sétimo
+number.18 = dezoito | décimo oitavo
+number.19 = dezenove | décimo nono
+number.20 = vinte | vigésimo
+number.21 = vinte e um | vigésimo primeiro
+number.22 = vinte e dois | vigésimo segundo
+number.23 = vinte e três | vigésimo terceiro
+number.24 = vinte e quatro | vigésimo quarto
+number.25 = vinte e cinco | vigésimo quinto
+number.26 = vinte e seis | vigésimo sexto
+number.27 = vinte e sete | vigésimo sétimo
+number.28 = vinte e oito | vigésimo oitavo
+number.29 = vinte e nove | vigésimo nono
+number.30 = trinta | trigésimo
+number.31 = trinta e um | trigésimo primeiro
+
+# LOCALIZATION NOTE (alphabet):
+# list all lower and uppercase letters if your language has an alphabet
+# otherwise leave it empty
+alphabet = abcdefghijlmnopqrstuvxzABCDEFGHIJLMNOPQRSTUVXZ
diff --git a/l10n-pt-BR/calendar/chrome/calendar/calendar-invitations-dialog.dtd b/l10n-pt-BR/calendar/chrome/calendar/calendar-invitations-dialog.dtd
new file mode 100644
index 0000000000..ca9e473ac7
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/calendar-invitations-dialog.dtd
@@ -0,0 +1,19 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/.
+-->
+
+<!-- Calendar Invitations Dialog -->
+<!ENTITY calendar.invitations.dialog.invitations.text "Convites">
+<!ENTITY calendar.invitations.dialog.statusmessage.updating.text "Atualizando lista de convites.">
+<!ENTITY calendar.invitations.dialog.statusmessage.noinvitations.text "Nenhum convite não confirmado foi encontrado.">
+
+<!-- Calendar Invitations List -->
+<!ENTITY calendar.invitations.list.accept.button.label "Aceitar">
+<!ENTITY calendar.invitations.list.decline.button.label "Recusar">
+<!ENTITY calendar.invitations.list.recurrentevent.text "Evento recorrente">
+<!ENTITY calendar.invitations.list.alldayevent.text "Dia inteiro">
+<!ENTITY calendar.invitations.list.location.text "Local: ">
+<!ENTITY calendar.invitations.list.organizer.text "Organizador: ">
+<!ENTITY calendar.invitations.list.attendee.text "Participante: ">
+<!ENTITY calendar.invitations.list.none.text "Nenhum">
diff --git a/l10n-pt-BR/calendar/chrome/calendar/calendar-invitations-dialog.properties b/l10n-pt-BR/calendar/chrome/calendar/calendar-invitations-dialog.properties
new file mode 100644
index 0000000000..8f6006f556
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/calendar-invitations-dialog.properties
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+allday-event=Evento o dia todo
+recurrent-event=Evento recorrente
+location=Local: %S
+organizer=Organizador: %S
+attendee=Participante: %S
+none=Nenhum
diff --git a/l10n-pt-BR/calendar/chrome/calendar/calendar-occurrence-prompt.dtd b/l10n-pt-BR/calendar/chrome/calendar/calendar-occurrence-prompt.dtd
new file mode 100644
index 0000000000..5864a9335f
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/calendar-occurrence-prompt.dtd
@@ -0,0 +1,7 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY buttons.occurrence.accesskey "t">
+<!ENTITY buttons.allfollowing.accesskey "f">
+<!ENTITY buttons.parent.accesskey "a">
diff --git a/l10n-pt-BR/calendar/chrome/calendar/calendar-occurrence-prompt.properties b/l10n-pt-BR/calendar/chrome/calendar/calendar-occurrence-prompt.properties
new file mode 100644
index 0000000000..b42a104481
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/calendar-occurrence-prompt.properties
@@ -0,0 +1,63 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+header.isrepeating.event.label=é evento recorrente
+header.isrepeating.task.label=é tarefa recorrente
+
+header.containsrepeating.event.label=contém eventos recorrentes
+header.containsrepeating.task.label=contém tarefas recorrentes
+header.containsrepeating.mixed.label=contém itens recorrentes de diferentes tipos
+
+windowtitle.event.copy=Copiar evento recorrente
+windowtitle.task.copy=Copiar tarefa recorrente
+windowtitle.mixed.copy=Copiar itens recorrentes
+windowtitle.event.cut=Cortar evento recorrente
+windowtitle.task.cut=Cortar tarefa recorrente
+windowtitle.mixed.cut=Cortar itens recorrentes
+windowtitle.event.delete=Excluir evento recorrente
+windowtitle.task.delete=Excluir tarefa recorrente
+windowtitle.mixed.delete=Excluir itens recorrentes
+windowtitle.event.edit=Editar evento recorrente
+windowtitle.task.edit=Editar tarefa recorrente
+
+buttons.occurrence.delete.label=Excluir apenas esta ocorrência
+buttons.occurrence.edit.label=Editar apenas esta ocorrência
+
+buttons.allfollowing.delete.label=Excluir esta e todas as ocorrências futuras
+buttons.allfollowing.edit.label=Editar esta e todas as ocorrências futuras
+
+buttons.parent.delete.label=Excluir todas as ocorrências
+buttons.parent.edit.label=Editar todas as ocorrências
+windowtitle.mixed.edit=Editar itens recorrentes
+windowtitle.multipleitems=Itens selecionados
+
+buttons.single.occurrence.copy.label=Copiar somente esta ocorrência
+buttons.single.occurrence.cut.label=Cortar somente esta ocorrência
+buttons.single.occurrence.delete.label=Excluir somente esta ocorrência
+buttons.single.occurrence.edit.label=Editar somente esta ocorrência
+
+buttons.multiple.occurrence.copy.label=Copiar somente as ocorrências selecionadas
+buttons.multiple.occurrence.cut.label=Cortar somente as ocorrências selecionadas
+buttons.multiple.occurrence.delete.label=Excluir somente as ocorrências selecionadas
+buttons.multiple.occurrence.edit.label=Editar somente as ocorrências selecionadas
+
+buttons.single.allfollowing.copy.label=Copiar esta e todas as ocorrências futuras
+buttons.single.allfollowing.cut.label=Cortar esta e todas as ocorrências futuras
+buttons.single.allfollowing.delete.label=Excluir esta e todas as ocorrências futuras
+buttons.single.allfollowing.edit.label=Editar esta e todas as ocorrências futuras
+
+buttons.multiple.allfollowing.copy.label=Copiar as ocorrências selecionadas e todas as futuras
+buttons.multiple.allfollowing.cut.label=Cortar as ocorrências selecionadas e todas as futuras
+buttons.multiple.allfollowing.delete.label=Excluir as ocorrências selecionadas e todas as futuras
+buttons.multiple.allfollowing.edit.label=Editar as ocorrências selecionadas e todas as futuras
+
+buttons.single.parent.copy.label=Copiar todas as ocorrências
+buttons.single.parent.cut.label=Cortar todas as ocorrências
+buttons.single.parent.delete.label=Excluir todas as ocorrências
+buttons.single.parent.edit.label=Editar todas as ocorrências
+
+buttons.multiple.parent.copy.label=Copiar todas as ocorrências dos itens selecionados
+buttons.multiple.parent.cut.label=Cortar todas as ocorrências dos itens selecionados
+buttons.multiple.parent.delete.label=Excluir todas as ocorrências dos itens selecionados
+buttons.multiple.parent.edit.label=Editar todas as ocorrências dos itens selecionados
diff --git a/l10n-pt-BR/calendar/chrome/calendar/calendar-subscriptions-dialog.dtd b/l10n-pt-BR/calendar/chrome/calendar/calendar-subscriptions-dialog.dtd
new file mode 100644
index 0000000000..8b4562c598
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/calendar-subscriptions-dialog.dtd
@@ -0,0 +1,14 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/.
+-->
+
+<!-- Calendar Subscriptions Dialog -->
+<!ENTITY calendar.subscriptions.dialog.title "Inscrever-se em agendas">
+<!ENTITY calendar.subscriptions.dialog.search.label.value "Exibir agendas que contenham:">
+<!ENTITY calendar.subscriptions.dialog.search.button.label "Pesquisar">
+<!ENTITY calendar.subscriptions.dialog.select.label.value "Selecionar agendas para se inscrever:">
+<!ENTITY calendar.subscriptions.dialog.subscribe.button.label "Inscrever">
+<!ENTITY calendar.subscriptions.dialog.unsubscribe.button.label "Cancelar inscrição">
+<!ENTITY calendar.subscriptions.dialog.statusmessage.busy.label "Pesquisar…">
+<!ENTITY calendar.subscriptions.dialog.statusmessage.nomatches.label "Nenhum resultado encontrado.">
diff --git a/l10n-pt-BR/calendar/chrome/calendar/calendar.dtd b/l10n-pt-BR/calendar/chrome/calendar/calendar.dtd
new file mode 100644
index 0000000000..bcd95ed70e
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/calendar.dtd
@@ -0,0 +1,411 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- General -->
+<!ENTITY calendar.calendar.label "Agenda">
+<!ENTITY calendar.calendar.accesskey "A">
+
+<!ENTITY calendar.newevent.button.tooltip "Criar novo evento" >
+<!ENTITY calendar.newtask.button.tooltip "Criar nova tarefa" >
+
+<!ENTITY calendar.unifinder.todoitems.label "Tarefas" >
+
+<!ENTITY calendar.unifinder.showcompletedtodos.label "Exibir tarefas concluídas">
+
+<!ENTITY calendar.today.button.label "Hoje">
+<!ENTITY calendar.tomorrow.button.label "Amanhã">
+<!ENTITY calendar.upcoming.button.label "Seguintes">
+
+<!ENTITY calendar.events.filter.all.label "Todos os eventos">
+<!ENTITY calendar.events.filter.today.label "Eventos de hoje">
+<!ENTITY calendar.events.filter.future.label "Todos os eventos futuros">
+<!ENTITY calendar.events.filter.current.label "Dia selecionado">
+<!ENTITY calendar.events.filter.currentview.label "Eventos na visão atual">
+<!ENTITY calendar.events.filter.next7Days.label "Eventos nos próximos 7 dias">
+<!ENTITY calendar.events.filter.next14Days.label "Eventos nos próximos 14 dias">
+<!ENTITY calendar.events.filter.next31Days.label "Eventos nos próximos 31 dias">
+<!ENTITY calendar.events.filter.thisCalendarMonth.label "Eventos neste mês">
+
+<!-- LOCALIZATION NOTE(calendar.unifinder.tree.done.tooltip)
+ - This label and tooltip is used for the column with the checkbox in the
+ - task tree view. -->
+<!ENTITY calendar.unifinder.tree.done.label "Concluída">
+<!ENTITY calendar.unifinder.tree.done.tooltip2 "Ordenar por finalização">
+<!ENTITY calendar.unifinder.tree.priority.label "Prioridade">
+<!ENTITY calendar.unifinder.tree.priority.tooltip2 "Ordenar por prioridade">
+<!ENTITY calendar.unifinder.tree.title.label "Título">
+<!ENTITY calendar.unifinder.tree.title.tooltip2 "Ordenar por título">
+<!ENTITY calendar.unifinder.tree.percentcomplete.label "&#037; completada">
+<!ENTITY calendar.unifinder.tree.percentcomplete.tooltip2 "Ordenar por &#037; completo">
+<!ENTITY calendar.unifinder.tree.startdate.label "Início">
+<!ENTITY calendar.unifinder.tree.startdate.tooltip2 "Ordenar por data de início">
+<!ENTITY calendar.unifinder.tree.enddate.label "Fim">
+<!ENTITY calendar.unifinder.tree.enddate.tooltip2 "Ordenar por data de término">
+<!ENTITY calendar.unifinder.tree.duedate.label "Prazo">
+<!ENTITY calendar.unifinder.tree.duedate.tooltip2 "Ordenar pelo prazo">
+<!ENTITY calendar.unifinder.tree.completeddate.label "Concluída">
+<!ENTITY calendar.unifinder.tree.completeddate.tooltip2 "Ordenar por data de conclusão">
+<!ENTITY calendar.unifinder.tree.categories.label "Categoria">
+<!ENTITY calendar.unifinder.tree.categories.tooltip2 "Ordenar por categoria">
+<!ENTITY calendar.unifinder.tree.location.label "Local">
+<!ENTITY calendar.unifinder.tree.location.tooltip2 "Ordenar por local">
+<!ENTITY calendar.unifinder.tree.status.label "Estado">
+<!ENTITY calendar.unifinder.tree.status.tooltip2 "Ordenar por estado">
+<!ENTITY calendar.unifinder.tree.calendarname.label "Nome da agenda">
+<!ENTITY calendar.unifinder.tree.calendarname.tooltip2 "Ordenar por nome da agenda">
+<!ENTITY calendar.unifinder.tree.duration.label "Vencimento">
+<!ENTITY calendar.unifinder.tree.duration.tooltip2 "Ordenar por tempo até o vencimento">
+<!ENTITY calendar.unifinder.close.tooltip "Fecha a busca e a lista de eventos">
+
+<!ENTITY calendar.today.button.tooltip "Vai para hoje" >
+<!ENTITY calendar.todaypane.button.tooltip "Exibe painel hoje" >
+
+<!ENTITY calendar.day.button.tooltip "Muda para visão do dia" >
+<!ENTITY calendar.week.button.tooltip "Muda para visão da semana" >
+<!ENTITY calendar.month.button.tooltip "Muda para visão do mês" >
+<!ENTITY calendar.multiweek.button.tooltip "Muda para visão semanal" >
+
+<!ENTITY calendar.nextday.label "Próximo dia" >
+<!ENTITY calendar.prevday.label "Dia anterior" >
+<!ENTITY calendar.nextday.accesskey "x" >
+<!ENTITY calendar.prevday.accesskey "s" >
+<!ENTITY calendar.nextweek.label "Próxima semana" >
+<!ENTITY calendar.prevweek.label "Semana anterior" >
+<!ENTITY calendar.nextweek.accesskey "x" >
+<!ENTITY calendar.prevweek.accesskey "S" >
+<!ENTITY calendar.nextmonth.label "Próximo mês" >
+<!ENTITY calendar.prevmonth.label "Mês anterior" >
+<!ENTITY calendar.nextmonth.accesskey "x" >
+<!ENTITY calendar.prevmonth.accesskey "s" >
+
+<!ENTITY calendar.navigation.nextday.tooltip "Avança um dia" >
+<!ENTITY calendar.navigation.prevday.tooltip "Recua um dia" >
+<!ENTITY calendar.navigation.nextweek.tooltip "Avança uma semana" >
+<!ENTITY calendar.navigation.prevweek.tooltip "Recua uma semana" >
+<!ENTITY calendar.navigation.nextmonth.tooltip "Avança um mês" >
+<!ENTITY calendar.navigation.prevmonth.tooltip "Recua um mês" >
+
+<!ENTITY calendar.newevent.button.label "Novo evento" >
+<!ENTITY calendar.newtask.button.label "Nova tarefa" >
+<!ENTITY calendar.print.button.label "Imprimir" >
+<!ENTITY calendar.print.button.accesskey "p">
+
+<!ENTITY calendar.day.button.label "Dia" >
+<!ENTITY calendar.week.button.label "Semana" >
+<!ENTITY calendar.month.button.label "Mês" >
+<!ENTITY calendar.multiweek.button.label "Semanal" >
+<!ENTITY calendar.onlyworkday.checkbox.label "Somente dias úteis" >
+<!ENTITY calendar.onlyworkday.checkbox.accesskey "o" >
+<!ENTITY calendar.displaytodos.checkbox.label "Ver tarefas" >
+<!ENTITY calendar.displaytodos.checkbox.accesskey "t" >
+<!ENTITY calendar.completedtasks.checkbox.label "Exibir tarefas concluídas" >
+<!ENTITY calendar.completedtasks.checkbox.accesskey "c" >
+
+<!ENTITY calendar.orientation.label "Alternar visão" >
+<!ENTITY calendar.orientation.accesskey "G" >
+
+<!ENTITY calendar.search.options.searchfor " contém">
+
+<!ENTITY calendar.list.header.label "Agenda">
+
+<!ENTITY calendar.task.filter.title.label "Exibir">
+<!ENTITY calendar.task.filter.all.label "Todas">
+<!ENTITY calendar.task.filter.all.accesskey "T">
+<!ENTITY calendar.task.filter.today.label "Hoje">
+<!ENTITY calendar.task.filter.today.accesskey "H">
+<!ENTITY calendar.task.filter.next7days.label "Próximos 7 dias">
+<!ENTITY calendar.task.filter.next7days.accesskey "P">
+<!ENTITY calendar.task.filter.notstarted.label "Tarefas não iniciadas">
+<!ENTITY calendar.task.filter.notstarted.accesskey "n">
+<!ENTITY calendar.task.filter.overdue.label "Tarefas vencidas">
+<!ENTITY calendar.task.filter.overdue.accesskey "v">
+<!ENTITY calendar.task.filter.completed.label "Tarefas concluídas">
+<!ENTITY calendar.task.filter.completed.accesskey "c">
+<!ENTITY calendar.task.filter.open.label "Tarefas incompletas">
+<!ENTITY calendar.task.filter.open.accesskey "i">
+
+<!-- LOCALIZATION NOTE(calendar.task.filter.current.label)
+ "Current Tasks" will show all tasks, except those with a start date set
+ that is after today and after the selected date. If a task repeats, a
+ separate entry will be shown for each of the occurrences that happen on or
+ before today (or the selected date, whichever is later). -->
+<!ENTITY calendar.task.filter.current.label "Tarefas atuais">
+<!ENTITY calendar.task.filter.current.accesskey "u">
+
+<!ENTITY calendar.task-details.title.label "título">
+<!ENTITY calendar.task-details.organizer.label "de">
+<!ENTITY calendar.task-details.priority.label "prioridade">
+<!ENTITY calendar.task-details.priority.low.label "Baixa">
+<!ENTITY calendar.task-details.priority.normal.label "Normal">
+<!ENTITY calendar.task-details.priority.high.label "Alta">
+<!ENTITY calendar.task-details.status.label "estado">
+<!ENTITY calendar.task-details.category.label "categoria">
+<!ENTITY calendar.task-details.repeat.label "repete">
+<!ENTITY calendar.task-details.attachments.label "anexos">
+<!ENTITY calendar.task-details.start.label "data inicial">
+<!ENTITY calendar.task-details.due.label "data de conclusão">
+
+<!ENTITY calendar.task.category.button.tooltip "Categorizar tarefas">
+<!ENTITY calendar.task.complete.button.tooltip "Marcar tarefas selecionadas como concluídas">
+<!ENTITY calendar.task.priority.button.tooltip "Alterar prioridade">
+
+<!ENTITY calendar.task.text-filter.textbox.emptytext.base1 "Filtrar tarefas #1">
+<!ENTITY calendar.task.text-filter.textbox.emptytext.keylabel.nonmac "&lt;Ctrl+Shift+K&gt;">
+<!ENTITY calendar.task.text-filter.textbox.emptytext.keylabel.mac "&lt;&#x21E7;&#x2318;K&gt;">
+
+<!-- Context Menu -->
+<!ENTITY calendar.context.modifyorviewitem.label "Abrir">
+<!ENTITY calendar.context.modifyorviewitem.accesskey "A">
+<!ENTITY calendar.context.modifyorviewtask.label "Abrir tarefa…">
+<!ENTITY calendar.context.modifyorviewtask.accesskey "A">
+<!ENTITY calendar.context.newevent.label "Novo evento…">
+<!ENTITY calendar.context.newevent.accesskey "e">
+<!ENTITY calendar.context.newtodo.label "Nova tarefa…">
+<!ENTITY calendar.context.newtodo.accesskey "o">
+<!ENTITY calendar.context.deletetask.label "Excluir tarefa">
+<!ENTITY calendar.context.deletetask.accesskey "E">
+<!ENTITY calendar.context.deleteevent.label "Excluir evento">
+<!ENTITY calendar.context.deleteevent.accesskey "x">
+<!ENTITY calendar.context.cutevent.label "Cortar">
+<!ENTITY calendar.context.cutevent.accesskey "r">
+<!ENTITY calendar.context.copyevent.label "Copiar">
+<!ENTITY calendar.context.copyevent.accesskey "a">
+<!ENTITY calendar.context.pasteevent.label "Colar">
+<!ENTITY calendar.context.pasteevent.accesskey "l">
+<!ENTITY calendar.context.button.label "Painel hoje">
+<!ENTITY calendar.context.button.accesskey "h">
+
+<!ENTITY calendar.context.attendance.menu.label "Participação">
+<!ENTITY calendar.context.attendance.menu.accesskey "P">
+<!ENTITY calendar.context.attendance.occurrence.label "Esta ocorrência">
+<!ENTITY calendar.context.attendance.all2.label "Série completa">
+<!ENTITY calendar.context.attendance.send.label "Enviar uma notificação agora">
+<!ENTITY calendar.context.attendance.send.accesskey "E">
+<!ENTITY calendar.context.attendance.dontsend.label "Não enviar uma notificação">
+<!ENTITY calendar.context.attendance.dontsend.accesskey "N">
+
+<!ENTITY calendar.context.attendance.occ.accepted.accesskey "A">
+<!ENTITY calendar.context.attendance.occ.accepted.label "Aceito">
+<!ENTITY calendar.context.attendance.occ.tentative.accesskey "i">
+<!ENTITY calendar.context.attendance.occ.tentative.label "Aceito provisoriamente">
+<!ENTITY calendar.context.attendance.occ.declined.accesskey "c">
+<!ENTITY calendar.context.attendance.occ.declined.label "Recusado">
+<!ENTITY calendar.context.attendance.occ.delegated.accesskey "g">
+<!ENTITY calendar.context.attendance.occ.delegated.label "Delegado">
+<!ENTITY calendar.context.attendance.occ.needsaction.accesskey "s">
+<!ENTITY calendar.context.attendance.occ.needsaction.label "Ainda precisa de ação">
+<!ENTITY calendar.context.attendance.occ.inprogress.accesskey "E">
+<!ENTITY calendar.context.attendance.occ.inprogress.label "Em andamento">
+<!ENTITY calendar.context.attendance.occ.completed.accesskey "C">
+<!ENTITY calendar.context.attendance.occ.completed.label "Concluído">
+
+<!ENTITY calendar.context.attendance.all.accepted.accesskey "e">
+<!ENTITY calendar.context.attendance.all.accepted.label "Aceito">
+<!ENTITY calendar.context.attendance.all.tentative.accesskey "v">
+<!ENTITY calendar.context.attendance.all.tentative.label "Aceito provisoriamente">
+<!ENTITY calendar.context.attendance.all.declined.accesskey "d">
+<!ENTITY calendar.context.attendance.all.declined.label "Recusado">
+<!ENTITY calendar.context.attendance.all.delegated.accesskey "l">
+<!ENTITY calendar.context.attendance.all.delegated.label "Delegado">
+<!ENTITY calendar.context.attendance.all.needsaction.accesskey "s">
+<!ENTITY calendar.context.attendance.all.needsaction.label "Ainda precisa de uma ação">
+<!ENTITY calendar.context.attendance.all.inprogress.accesskey "a">
+<!ENTITY calendar.context.attendance.all.inprogress.label "Em andamento">
+<!ENTITY calendar.context.attendance.all.completed.accesskey "n">
+<!ENTITY calendar.context.attendance.all.completed.label "Concluído">
+
+<!-- Task Context Menu -->
+<!ENTITY calendar.context.progress.label "Andamento">
+<!ENTITY calendar.context.progress.accesskey "n">
+<!ENTITY calendar.context.priority.label "Prioridade">
+<!ENTITY calendar.context.priority.accesskey "P">
+<!ENTITY calendar.context.postpone.label "Adiar tarefa">
+<!ENTITY calendar.context.postpone.accesskey "d">
+
+<!ENTITY percnt "&#38;#37;" ><!--=percent sign-->
+
+<!ENTITY calendar.context.markcompleted.label "Marcar como concluída">
+<!ENTITY calendar.context.markcompleted.accesskey "r">
+
+<!ENTITY progress.level.0 "0&percnt;">
+<!ENTITY progress.level.0.accesskey "0">
+<!ENTITY progress.level.25 "25&percnt;">
+<!ENTITY progress.level.25.accesskey "2">
+<!ENTITY progress.level.50 "50&percnt;">
+<!ENTITY progress.level.50.accesskey "5">
+<!ENTITY progress.level.75 "75&percnt;">
+<!ENTITY progress.level.75.accesskey "7">
+<!ENTITY progress.level.100 "100&percnt;">
+<!ENTITY progress.level.100.accesskey "1">
+
+<!ENTITY priority.level.none "Não especificada">
+<!ENTITY priority.level.none.accesskey "s">
+<!ENTITY priority.level.low "Baixa">
+<!ENTITY priority.level.low.accesskey "B">
+<!ENTITY priority.level.normal "Normal">
+<!ENTITY priority.level.normal.accesskey "N">
+<!ENTITY priority.level.high "Alta">
+<!ENTITY priority.level.high.accesskey "A">
+
+<!ENTITY calendar.context.postpone.1hour.label "1 Hora">
+<!ENTITY calendar.context.postpone.1hour.accesskey "H">
+<!ENTITY calendar.context.postpone.1day.label "1 Dia">
+<!ENTITY calendar.context.postpone.1day.accesskey "D">
+<!ENTITY calendar.context.postpone.1week.label "1 Semana">
+<!ENTITY calendar.context.postpone.1week.accesskey "S">
+
+<!ENTITY calendar.copylink.label "Copiar endereço do link">
+<!ENTITY calendar.copylink.accesskey "C">
+
+<!-- Task View -->
+<!-- Note that the above *.context.* strings are currently used for the other
+ task action buttons -->
+<!ENTITY calendar.taskview.delete.label "Excluir">
+
+<!-- Server Context Menu -->
+<!ENTITY calendar.context.newserver.label "Nova agenda…">
+<!ENTITY calendar.context.newserver.accesskey "N">
+<!ENTITY calendar.context.findcalendar.label "Procurar agenda…" >
+<!ENTITY calendar.context.findcalendar.accesskey "c" >
+<!ENTITY calendar.context.deleteserver2.label "Excluir agenda…">
+<!ENTITY calendar.context.deleteserver2.accesskey "x">
+
+<!-- LOCALIZATION NOTE (calendar.context.removeserver.label): Removing the
+ calendar is the general action of removing it, while deleting means to
+ clear the data and unsubscribing means just taking it out of the calendar
+ list. -->
+<!ENTITY calendar.context.removeserver.label "Remover agenda…">
+<!ENTITY calendar.context.removeserver.accesskey "R">
+<!ENTITY calendar.context.unsubscribeserver.label "Cancelar inscrição em agenda…">
+<!ENTITY calendar.context.unsubscribeserver.accesskey "n">
+<!ENTITY calendar.context.synccalendars.label "Sincronizar agendas">
+<!ENTITY calendar.context.synccalendars.accesskey "S">
+<!ENTITY calendar.context.publish.label "Publicar agenda…">
+<!ENTITY calendar.context.publish.accesskey "u">
+<!ENTITY calendar.context.export.label "Exportar agenda…">
+<!ENTITY calendar.context.export.accesskey "E">
+<!ENTITY calendar.context.properties.label "Propriedades">
+<!ENTITY calendar.context.properties.accesskey "P">
+
+<!-- LOCALIZATION NOTE (calendar.context.showcalendar.accesskey)
+ This is the access key used for the showCalendar string -->
+<!ENTITY calendar.context.showcalendar.accesskey "h">
+
+<!-- LOCALIZATION NOTE (calendar.context.hidecalendar.accesskey)
+ This is the access key used for the hideCalendar string -->
+<!ENTITY calendar.context.hidecalendar.accesskey "H">
+
+<!-- LOCALIZATION NOTE (calendar.context.showonly.accesskey)
+ This is the access key used for the showOnlyCalendar string -->
+<!ENTITY calendar.context.showonly.accesskey "O">
+<!ENTITY calendar.context.showall.label "Mostrar todas agendas">
+<!ENTITY calendar.context.showall.accesskey "a">
+
+<!ENTITY calendar.context.convertmenu.label "Converter para">
+<!ENTITY calendar.context.convertmenu.accesskey.mail "C">
+<!ENTITY calendar.context.convertmenu.accesskey.calendar "C">
+<!ENTITY calendar.context.convertmenu.event.label "Evento…">
+<!ENTITY calendar.context.convertmenu.event.accesskey "E">
+<!ENTITY calendar.context.convertmenu.message.label "Mensagem…">
+<!ENTITY calendar.context.convertmenu.message.accesskey "M">
+<!ENTITY calendar.context.convertmenu.task.label "Tarefa…">
+<!ENTITY calendar.context.convertmenu.task.accesskey "T">
+
+<!ENTITY calendar.tasks.view.minimonth.label "Minimês">
+<!ENTITY calendar.tasks.view.minimonth.accesskey "i">
+
+<!ENTITY calendar.tasks.view.calendarlist.label "Lista de agendas">
+<!ENTITY calendar.tasks.view.calendarlist.accesskey "L">
+
+<!ENTITY calendar.tasks.view.filtertasks.label "Filtrar tarefas">
+<!ENTITY calendar.tasks.view.filtertasks.accesskey "F">
+
+<!-- Calendar Alarm Dialog -->
+
+<!ENTITY calendar.alarm.location.label "Local:" >
+<!ENTITY calendar.alarm.details.label "Detalhes…" >
+
+<!ENTITY calendar.alarm.snoozefor.label "Silenciar por" >
+<!ENTITY calendar.alarm.snoozeallfor.label "Silenciar tudo por" >
+<!ENTITY calendar.alarm.title.label "Lembretes da agenda" >
+<!ENTITY calendar.alarm.dismiss.label "Descartar" >
+<!ENTITY calendar.alarm.dismissall.label "Descartar todos" >
+
+<!ENTITY calendar.alarm.snooze.5minutes.label "5 minutos" >
+<!ENTITY calendar.alarm.snooze.10minutes.label "10 minutos" >
+<!ENTITY calendar.alarm.snooze.15minutes.label "15 minutos" >
+<!ENTITY calendar.alarm.snooze.30minutes.label "30 minutos" >
+<!ENTITY calendar.alarm.snooze.45minutes.label "45 minutos" >
+<!ENTITY calendar.alarm.snooze.1hour.label "1 hora" >
+<!ENTITY calendar.alarm.snooze.2hours.label "2 horas" >
+<!ENTITY calendar.alarm.snooze.1day.label "1 dia" >
+
+<!-- LOCALIZATION NOTE (calendar.alarm.snooze.cancel)
+ This string is not seen in the UI, it is read by screen readers when the
+ user focuses the "Cancel" button in the "Snooze for..." popup of the alarm
+ dialog. -->
+<!ENTITY calendar.alarm.snooze.cancel "Cancelar soneca">
+
+<!-- Calendar Server Dialog -->
+<!ENTITY calendar.server.dialog.title.edit "Editar agenda">
+<!ENTITY calendar.server.dialog.name.label "Nome da agenda:">
+
+<!-- Calendar Properties -->
+<!ENTITY calendarproperties.color.label "Cor:">
+<!ENTITY calendarproperties.webdav.label "iCalendar (ICS)">
+<!ENTITY calendarproperties.caldav.label "CalDAV">
+<!ENTITY calendarproperties.wcap.label "Sun Java System Calendar Server (WCAP)">
+<!ENTITY calendarproperties.format.label "Formato:">
+<!ENTITY calendarproperties.location.label "Local:">
+<!ENTITY calendarproperties.refreshInterval.label "Atualizar agenda:">
+<!ENTITY calendarproperties.refreshInterval.manual.label "Manualmente">
+<!ENTITY calendarproperties.name.label "Nome:">
+<!ENTITY calendarproperties.readonly.label "Somente leitura">
+<!ENTITY calendarproperties.firealarms.label "Exibir lembretes">
+<!ENTITY calendarproperties.cache3.label "Suporte offline">
+<!ENTITY calendarproperties.enabled.label "Ativar esta agenda">
+<!ENTITY calendarproperties.enabled2.label "Ativar esta agenda">
+<!ENTITY calendarproperties.forceDisabled.label "O provedor desta agenda não foi encontrado. Isto normalmente ocorre quando você desativa ou desinstala certas extensões.">
+<!ENTITY calendarproperties.unsubscribe.label "Cancelar inscrição">
+<!ENTITY calendarproperties.unsubscribe.accesskey "C">
+
+<!-- Calendar Publish Dialog -->
+<!ENTITY calendar.publish.dialog.title "Publicar agenda">
+<!ENTITY calendar.publish.url.label "URL para publicação">
+<!ENTITY calendar.publish.publish.button "Publicar">
+<!ENTITY calendar.publish.close.button "Fechar">
+
+<!ENTITY calendar.publish.example.url.description "Algo como http://www.meuservidor.com/webdav/teste.ics">
+
+<!-- Select Calendar Dialog -->
+<!ENTITY calendar.select.dialog.title "Selecionar agenda">
+
+<!-- Calendar Printing -->
+<!ENTITY calendar.print.window.title "Imprimir uma agenda">
+<!ENTITY calendar.print.title.label "Título:">
+<!ENTITY calendar.print.layout.label "Modelo:">
+<!ENTITY calendar.print.range.label "O que imprimir">
+<!ENTITY calendar.print.currentView2.label "Visão atual">
+<!ENTITY calendar.print.selectedEventsAndTasks.label "Eventos/tarefas selecionados">
+<!ENTITY calendar.print.tasks.label "Tarefas">
+<!ENTITY calendar.print.events.label "Eventos">
+<!ENTITY calendar.print.custom.label "Período personalizado:">
+<!ENTITY calendar.print.from.label "De:">
+<!ENTITY calendar.print.to.label "Até:">
+<!ENTITY calendar.print.settingsGroup.label "Configuração de impressão">
+<!ENTITY calendar.print.optionsGroup.label "Opções">
+<!ENTITY calendar.print.taskswithnoduedate.label "Tarefas sem data de vencimento">
+<!ENTITY calendar.print.completedtasks.label "Tarefas concluídas">
+
+<!-- Error reporting -->
+<!ENTITY calendar.error.detail "Detalhes…">
+<!ENTITY calendar.error.code "Código de erro:">
+<!ENTITY calendar.error.description "Descrição:">
+<!ENTITY calendar.error.title "Ocorreu um erro">
+
+<!-- Extract buttons in message header -->
+<!ENTITY calendar.extract.event.button "Adicionar como evento">
+<!ENTITY calendar.extract.task.button "Adicionar como tarefa">
+<!ENTITY calendar.extract.event.button.tooltip "Extrair informações de agenda a partir da mensagem e adicionar à sua agenda como um evento">
+<!ENTITY calendar.extract.task.button.tooltip "Extrair informações de agenda a partir da mensagem e adicionar à sua agenda como uma tarefa">
diff --git a/l10n-pt-BR/calendar/chrome/calendar/calendar.properties b/l10n-pt-BR/calendar/chrome/calendar/calendar.properties
new file mode 100644
index 0000000000..a13b89570c
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/calendar.properties
@@ -0,0 +1,818 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Misc. strings in JS
+
+# LOCALIZATION NOTE (PrintPreviewWindowTitle):
+# %1$S will be replaced with the title of a html frame
+PrintPreviewWindowTitle=Visualizando impressão de %1$S
+Untitled=Sem título
+
+# Default name for new events
+newEvent=Novo evento
+
+# Titles for the event/task dialog
+newEventDialog=Novo evento
+editEventDialog=Editar evento
+newTaskDialog=Nova tarefa
+editTaskDialog=Editar tarefa
+
+# Do you want to save changes?
+askSaveTitleEvent=Salvar evento
+askSaveTitleTask=Salvar tarefa
+askSaveMessageEvent=O evento não foi salvo. Deseja salvar agora?
+askSaveMessageTask=A tarefa não foi salva. Deseja salvar agora?
+
+# Event Dialog Warnings
+warningEndBeforeStart=A data de término que você digitou ocorre antes da data de início
+warningUntilDateBeforeStart=A data de término ocorre antes da data de início
+
+# The name of the calendar provided with the application by default
+homeCalendarName=Pessoal
+
+# The name given to a calendar if an opened calendar has an empty filename
+untitledCalendarName=Sem título
+
+# Event status: Tentative, Confirmed, Cancelled
+# ToDo task status: NeedsAction, InProcess, Completed, Cancelled
+statusTentative =Tentativa
+statusConfirmed =Confirmado
+eventStatusCancelled=Cancelado
+todoStatusCancelled =Cancelado
+statusNeedsAction =Requer ação
+statusInProcess =Em andamento
+statusCompleted =Completado
+
+# Task priority, these should match the priority.level.* labels in calendar.dtd
+highPriority=Alta
+normalPriority=Normal
+lowPriority=Baixa
+
+importPrompt=Para qual agenda você quer importar estes itens?
+exportPrompt=De qual agenda você quer exportar?
+pastePrompt=Em qual de suas agendas atualmente editáveis você quer colar?
+publishPrompt=Qual agenda você quer publicar?
+
+# LOCALIZATION NOTE (pasteEventAlso): The users pasting operation includes among
+# others also a meeting invitation - this is used as a affix in
+# pasteNotifyAbout
+pasteEventAlso=Sua colagem inclui uma reunião
+# LOCALIZATION NOTE (pasteEventsAlso): The users pasting operation includes among
+# others also several meeting invitations - this is used as a affix in
+# pasteNotifyAbout
+pasteEventsAlso=Sua colagem inclui reuniões
+# LOCALIZATION NOTE (pasteTaskAlso): The users pasting operation includes among
+# others also an assigned task - this is used as a affix in pasteNotifyAbout
+pasteTaskAlso=A sua colagem inclui uma tarefa atribuída
+# LOCALIZATION NOTE (pasteTasksAlso): The users pasting operation include among
+# others also several assigned tasks - this is used as a affix in
+# pasteNotifyAbout
+pasteTasksAlso=A sua colagem inclui tarefas atribuídas
+# LOCALIZATION NOTE (pasteItemsAlso): The users pasting operation includes among
+# others also assigned task(s) and meeting invitation(s) - this is used as a affix
+# in pasteNotifyAbout
+pasteItemsAlso=A sua colagem inclui reuniões e tarefas atribuídas
+# LOCALIZATION NOTE (pasteEventOnly): The users is pasting a meeting -
+# this is used as a affix in pasteNotifyAbout
+pasteEventOnly=Você fixou uma reunião
+# LOCALIZATION NOTE (pasteEventsOnly): The users is pasting several meetings -
+# this is used as a affix in pasteNotifyAbout
+pasteEventsOnly=Você fixou reuniões
+# LOCALIZATION NOTE (pasteEventOnly): The users is pasting an assigned task -
+# this is used as a affix in pasteNotifyAbout
+pasteTaskOnly=Você fixou uma tarefa atribuída
+# LOCALIZATION NOTE (pasteEventsOnly): The users is pasting several assigned
+# tasks - this is used as a affix in pasteNotifyAbout
+pasteTasksOnly=Você fixou tarefas atribuídas
+# LOCALIZATION NOTE (pasteEventsOnly): The users is pasting assigned task(s) and
+# meeting(s) - this is used as a affix in pasteNotifyAbout
+pasteItemsOnly=Você fixou reuniões e tarefas atribuídas
+
+# LOCALIZATION NOTE (pasteNotifyAbout): Text displayed if pasting an invitation
+# or assigned task
+# %1$S - pasteEvent* or pasteTask*
+pasteNotifyAbout=%1$S - você deseja enviar uma atualização para todos os envolvidos?
+
+# LOCALIZATION NOTE (pasteAndNotifyLabel): button label used in calendar prompt
+# of the pasted item has attendees
+pasteAndNotifyLabel=Colar e enviar agora
+# LOCALIZATION NOTE (pasteDontNotifyLabel): button label used in calendar prompt
+# of the pasted item has attendees
+pasteDontNotifyLabel=Colar sem enviar
+
+# LOCALIZATION NOTE (importItemsFailed):
+# %1$S will be replaced with number of failed items
+# %2$S will be replaced with last error code / error string
+importItemsFailed=A importação de %1$S itens falhou. O último erro foi: %2$S
+# LOCALIZATION NOTE (noItemsInCalendarFile):
+# %1$S will be replaced with file path
+noItemsInCalendarFile=Falha ao importar de %1$S. Não há itens que se possa importar neste arquivo.
+
+# LOCALIZATION NOTE (noItemsInCalendarFile2):
+# %1$S will be replaced with file path
+noItemsInCalendarFile2=Não foi possível importar de %1$S. Nenhum item a ser importado neste arquivo.
+
+#spaces needed at the end of the following lines
+eventDescription=Descrição:
+
+unableToRead=Impossível ler do arquivo:
+unableToWrite=Impossível escrever no arquivo:
+defaultFileName=MozillaCalEvents
+HTMLTitle=Agenda Mozilla
+
+# LOCALIZATION NOTE (timezoneError):
+# used for an error message like 'An unknown and undefined timezone was found while reading c:\Mycalendarfile.ics'
+# %1$S will be replaced with the path to a file
+timezoneError=Encontrado fuso horário desconhecido e indefinido ao ler %1$S.
+
+# LOCALIZATION NOTE (duplicateError):
+# %1$S will be replaced with number of duplicate items
+# %2$S will be replaced with a file path pointing to a calendar
+duplicateError=%1$S item(ns) foi(ram) ignorado(s) por existir(em) tanto na agenda de destino como em %2$S.
+
+unableToCreateProvider=Erro ao preparar para uso a agenda localizada em %1$S. Ela não ficará disponível.
+unknownTimezonesError=Erro ao preparar para uso a agenda localizada em %1$S. A agenda pode referenciar fusos horários desconhecidos. Favor instalar o calendar-timezones.xpi mais atual.
+missingCalendarTimezonesError=Nenhum fuso horário foi encontrado! Favor instalar o calendar-timezones.xpi.
+
+# Sample: Unknown timezone "USPacific" in "Dentist Appt". Using the 'floating' local timezone instead: 2008/02/28 14:00:00
+unknownTimezoneInItem=Fuso horário desconhecido "%1$S" em "%2$S". No lugar deste, será tratado como fuso 'flutuante': %3$S
+TimezoneErrorsAlertTitle=Erros de fuso horário
+TimezoneErrorsSeeConsole=Veja console de erros: fusos desconhecidos tratados como fuso local 'flutuante'.
+
+# The following strings are for the prompt to delete/unsubscribe from the calendar
+removeCalendarTitle=Remover agenda
+removeCalendarButtonDelete=Excluir agenda
+removeCalendarButtonUnsubscribe=Cancelar inscrição
+
+# LOCALIZATION NOTE (removeCalendarMessageDeleteOrUnsubscribe): Shown for
+# calendar where both deleting and unsubscribing is possible.
+# %1$S: The name of a calendar
+removeCalendarMessageDeleteOrUnsubscribe=Deseja remover a agenda "%1$S"? Cancelando a inscrição, a agenda será removida da lista. Se excluir, seus dados serão apagados permanentemente.
+
+# LOCALIZATION NOTE (removeCalendarMessageDelete): Shown for calendar where
+# deleting is the only option.
+# %1$S: The name of a calendar
+removeCalendarMessageDelete=Deseja excluir permanentemente a agenda "%1$S"?
+
+# LOCALIZATION NOTE (removeCalendarMessageUnsubscribe): Shown for calendar
+# where unsubscribing is the only option.
+# %1$S: The name of a calendar
+removeCalendarMessageUnsubscribe=Deseja cancelar a inscrição na agenda "%1$S"?
+
+WeekTitle=Semana %1$S
+None=Nenhuma
+
+# Error strings
+## @name UID_NOT_FOUND
+## @loc none
+tooNewSchemaErrorBoxTitle=Os dados da sua agenda são incompatíveis com esta versão do %1$S
+
+# LOCALIZATION NOTE (tooNewSchemaErrorBoxTextLightning):
+# %1$S will be replaced with the name of the calendar application e.g. 'Lightning'
+# %2$S will be replaced with the name of the host application 'calendar'
+tooNewSchemaErrorBoxTextLightning=Os dados de agenda no seu perfil foram atualizados para uma versão mais recente do %1$S. Se continuar, as informações provavelmente serão perdidas ou corrompidas. O %1$S será desativado e o %2$S reiniciado.
+
+# LOCALIZATION NOTE (tooNewSchemaButtonRestart):
+# %1$S will be replaced with the name of the host application 'Calendar'
+tooNewSchemaButtonRestart=Reiniciar o %1$S
+
+# LOCALIZATION NOTE (tooNewSchemaButtonQuit):
+# %1$S will be replaced with the name of the host application 'Calendar'
+tooNewSchemaButtonQuit=Sair do %1$S
+
+# Error strings
+## @name UID_NOT_FOUND
+## @loc none
+
+# LOCALIZATION NOTE (tooNewSchemaErrorText):
+# %1$S will be replaced with the name of the host application, e.g. 'Thunderbird'
+# %2$S will be replaced with the name of the new copy of the file, e.g. 'local-2020-05-11T21-30-17.sqlite'
+tooNewSchemaErrorText=Os dados da sua agenda não são compatíveis com esta versão do %1$S. Os dados da agenda em seu perfil foram atualizados por uma versão mais recente do %1$S. Foi criado um backup do arquivo de dados, com nome "%2$S". Continuando com um arquivo de dados recém-criado.
+
+# List of events or todos (unifinder)
+eventUntitled=Sem título
+
+# Tooltips of events or todos
+tooltipTitle=Título:
+tooltipLocation=Local:
+# event date, usually an interval, such as
+# Date: 7:00--8:00 Thu 9 Oct 2011
+# Date: Thu 9 Oct 2000 -- Fri 10 Oct 2000
+tooltipDate=Data:
+# event calendar name
+tooltipCalName=Nome da agenda:
+# event status: tentative, confirmed, cancelled
+tooltipStatus=Posição:
+# event organizer
+tooltipOrganizer=Organizador:
+# task/todo fields
+# start date time, due date time, task priority number, completed date time
+tooltipStart=Início:
+tooltipDue=Vencimento:
+tooltipPriority=Prioridade:
+tooltipPercent=% completada:
+tooltipCompleted=Completada:
+
+# Tooltips for attendees and organizer in event and summary dialog
+
+# LOCALIZATION_NOTE(dialog.tooltip.attendee.combined): tooltip for itip icon in summary/event dialog.
+# Given an attendee loungeexample.org of type room is a mandatory participant and has accepted the
+# invitation, the tooltip would be:
+# lounge@example.org (room) is a required participant. lounge@example.org has confirmed attendance.
+# %1$S - value of dialog.tooltip.attendeeRole2.*
+# %2$S - value of dialog.tooltip.attendeePartStat2.*
+dialog.tooltip.attendee.combined=%1$S %2$S
+
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeRole2.CHAIR): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - value of dialog.tooltip.attendeeUserType2.*
+dialog.tooltip.attendeeRole2.CHAIR=%1$S preside o evento.
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeRole2.NON-PARTICIPANT): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - value of dialog.tooltip.attendeeUserType2.*
+dialog.tooltip.attendeeRole2.NON-PARTICIPANT=%1$S não é um participante.
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeRole2.OPT-PARTICIPANT): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - value of dialog.tooltip.attendeeUserType2.*
+dialog.tooltip.attendeeRole2.OPT-PARTICIPANT=%1$S é um participante opcional.
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeRole2.REQ-PARTICIPANT): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - value of dialog.tooltip.attendeeUserType2.*
+dialog.tooltip.attendeeRole2.REQ-PARTICIPANT=%1$S é um participante obrigatório.
+
+# LOCALIZATION_NOTE(dialog.tooltip.attendeePartStat2.ACCEPTED): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - common name or email address of the attendee
+dialog.tooltip.attendeePartStat2.ACCEPTED=%1$S confirmou presença.
+# LOCALIZATION_NOTE(dialog.tooltip.attendeePartStat2.DECLINED): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - common name or email address of the attendee
+dialog.tooltip.attendeePartStat2.DECLINED=%1$S recusou a participação.
+# LOCALIZATION_NOTE(dialog.tooltip.attendeePartStat2.DELEGATED): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - common name or email address of the attendee
+dialog.tooltip.attendeePartStat2.DELEGATED=%1$S delegou a presença.
+# LOCALIZATION_NOTE(dialog.tooltip.attendeePartStat2.NEEDS-ACTION): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - common name or email address of the attendee
+dialog.tooltip.attendeePartStat2.NEEDS-ACTION=%1$S ainda precisa responder.
+# LOCALIZATION_NOTE(dialog.tooltip.attendeePartStat2.TENTATIVE): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - common name or email address of the attendee
+dialog.tooltip.attendeePartStat2.TENTATIVE=%1$S confirmou presença provisoriamente.
+
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeUserType2.INDIVIDUAL): used to compose
+# dialog.tooltip.attendeeRole2.*
+# %1$S - email address or common name <email address> representing individual attendee
+dialog.tooltip.attendeeUserType2.INDIVIDUAL=%1$S
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeUserType2.GROUP): used to compose
+# dialog.tooltip.attendeeRole2.*
+# %1$S - email address or common name <email address> representing a group (e.g. a distribution list)
+dialog.tooltip.attendeeUserType2.GROUP=%1$S (grupo)
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeUserType2.RESOURCE): used to compose
+# dialog.tooltip.attendeeRole2.*
+# %1$S - email address or common name <email address> representing a resource (e.g. projector)
+dialog.tooltip.attendeeUserType2.RESOURCE=%1$S (recurso)
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeUserType2.ROOM): used to compose
+# dialog.tooltip.attendeeRole2.*
+# %1$S - email address or common name <email address> representing a room
+dialog.tooltip.attendeeUserType2.ROOM=%1$S (sala)
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeUserType2.UNKNOWN): used to compose
+# dialog.tooltip.attendeeRole2.*
+# %1$S - email address or common name <email address> representing an attendee of unknown type
+dialog.tooltip.attendeeUserType2.UNKNOWN=%1$S
+
+#File commands and dialogs
+New=Novo
+Open=Abrir
+filepickerTitleImport=Importar
+filepickerTitleExport=Exportar
+
+# Filters for export/import/open file picker. %1$S will be replaced with
+# wildmat used to filter files by extension, such as (*.html; *.htm).
+filterIcs=iCalendar (%1$S)
+filterXml=Documento XML (%1$S)
+filterHtml=Página web (%1$S)
+filterOutlookCsv=Valores separados por vírgulas do Outlook (%1$S)
+
+# Remote calendar errors
+genericErrorTitle=Ocorreu um erro
+httpPutError=Erro ao publicar o arquivo da agenda.\nCódigo de status: %1$S: %2$S
+otherPutError=Erro ao publicar o arquivo da agenda.\nCódigo de status: 0x%1$S
+
+# LOCALIZATION NOTE (readOnlyMode):
+# used for an message like 'There has been an error reading data for calendar: Home. It has been...'
+# %1$S will be replaced with the name of a calendar
+readOnlyMode=Erro ao ler dados da agenda: %1$S. Ela foi aberta somente para leitura, já que alterar esta agenda agora provavelmente causará perda de dados. Você pode alterar isto selecionando 'Editar agenda'.
+
+# LOCALIZATION NOTE (disabledMode):
+# used for an message like 'There has been an error reading data for calendar: Home. It has been...'
+# %1$S will be replaced with the name of a calendar
+disabledMode=Erro ao ler dados da agenda: %1$S. Ela foi desativada até que seja seguro usá-la.
+
+# LOCALIZATION NOTE (minorError):
+# used for an message like 'There has been an error reading data for calendar: Home. However this...'
+# %1$S will be replaced with the name of a calendar
+minorError=Erro ao ler dados da agenda: %1$S. Entretanto, o erro não parece ser importante, então o programa tentará continuar.
+
+# LOCALIZATION NOTE (stillReadOnlyError):
+# used for an message like 'There has been an error reading data for calendar: Home.'
+# %1$S will be replaced with the name of a calendar
+stillReadOnlyError=Erro ao ler dados da agenda: %1$S.
+utf8DecodeError=Erro ao decodificar arquivo iCalendar (ics) como UTF-8. Verifique se o arquivo, inclusive símbolos e letras acentuadas, está codificado em UTF-8.
+icsMalformedError=Erro ao processar arquivo iCalendar (ics). Verifique se o arquivo obedece à sintaxe de arquivos iCalendar (ics).
+itemModifiedOnServerTitle=Item alterado no servidor
+itemModifiedOnServer=Este item foi alterado recentemente no servidor.\n
+modifyWillLoseData=Salvar suas alterações causará perda das alterações feitas no servidor.
+deleteWillLoseData=Excluir este item causará perda das alterações feitas no servidor.
+updateFromServer=Descartar minhas alterações e recarregar
+proceedModify=Salvar assim mesmo
+proceedDelete=Excluir assim mesmo
+dav_notDav=O recurso em %1$S não é uma coleção DAV ou está indisponível
+dav_davNotCaldav=O recurso em %1$S é uma coleção DAV mas não é uma agenda CalDAV
+itemPutError=Erro ao armazenar item no servidor.
+itemDeleteError=Erro ao excluir item do servidor.
+caldavRequestError=Erro ao enviar convite.
+caldavResponseError=Erro ao enviar resposta.
+caldavRequestStatusCode=Código do estado: %1$S
+caldavRequestStatusCodeStringGeneric=O pedido não pode ser processado.
+caldavRequestStatusCodeString400=A solicitação contém sintaxe inválida e não pode ser processada.
+caldavRequestStatusCodeString403=O usuário não possui a permissão necessária para realizar a solicitação.
+caldavRequestStatusCodeString404=Recurso não encontrado.
+caldavRequestStatusCodeString409=Conflito de recursos.
+caldavRequestStatusCodeString412=Pré-requisito falhou.
+caldavRequestStatusCodeString500=Erro interno do servidor.
+caldavRequestStatusCodeString502=Gateway defeituoso (configuração de proxy?).
+caldavRequestStatusCodeString503=Erro interno do servidor (interrupção temporária do servidor?).
+caldavRedirectTitle=Atualizar localização da agenda %1$S?
+caldavRedirectText=Os pedidos de %1$S estão sendo redirecionados para um novo local. Gostaria de mudar o local para o seguinte valor?
+caldavRedirectDisableCalendar=Desativar agenda
+
+
+# LOCALIZATION NOTE (likelyTimezone):
+# Translators, please put the most likely timezone(s) where the people using
+# your locale will be. Use the Olson ZoneInfo timezone name *in English*,
+# ie "Europe/Paris", (continent or ocean)/(largest city in timezone).
+# Order does not matter, except if two historically different zones now match,
+# such as America/New_York and America/Toronto, will only find first listed.
+# (Particularly needed to guess the most relevant timezones if there are
+# similar timezones at the same June/December GMT offsets with alphabetically
+# earlier ZoneInfo timezone names. Sample explanations for English below.)
+# for english-US:
+# America/Los_Angeles likelier than America/Dawson
+# America/New_York likelier than America/Detroit (NY for US-EasternTime)
+# for english:
+# Europe/London likelier than Atlantic/Canary
+# Europe/Paris likelier than Africa/Ceuta (for WestEuropeanTime)
+# America/Halifax likelier than America/Glace_Bay (Canada-AtlanticTime)
+# America/Mexico_City likelier than America/Cancun
+# America/Argentina/Buenos_Aires likelier than America/Araguaina
+# America/Sao_Paolo (may not recognize: summer-time dates change every year)
+# Asia/Singapore likelier than Antarctica/Casey
+# Asia/Tokyo likelier than Asia/Dili
+# Africa/Lagos likelier than Africa/Algiers (for WestAfricanTime)
+# Africa/Johannesburg likelier than Africa/Blantyre (for SouthAfricanStdTime)
+# Africa/Nairobi likelier than Africa/Addis_Ababa (for EastAfricanTime)
+# Australia/Brisbane likelier than Antarctica/DumontDUrville
+# Australia/Sydney likelier than Australia/Currie or Australia/Hobart
+# Pacific/Auckland likelier than Antarctica/McMurdo
+likelyTimezone=America/Sao_Paulo, America/Manaus, America/Rio_Branco, America/Noronha
+
+# Guessed Timezone errors and warnings.
+# Testing note:
+# * remove preference for calendar.timezone.default in userprofile/prefs.js
+# * repeat
+# - set OS timezone to a city (windows: click right on clock in taskbar)
+# - restart
+# - observe guess in error console and verify whether guessed timezone city
+# makes sense for OS city.
+#
+# 'Warning: Operating system timezone "E. South America Standard Time"
+# no longer matches ZoneInfo timezone "America/Sao_Paulo".'
+# Testing notes:
+# - Brasil DST change dates are set every year by decree, so likely out of sync.
+# - Only appears on OSes from which timezone can be obtained
+# (windows; or TZ env var, /etc/localtime target path, or line in
+# /etc/timezone or /etc/sysconfig/clock contains ZoneInfo timezone id).
+# - Windows: turning off "Automatically adjust clock for daylight saving time"
+# can also trigger this warning.
+WarningOSTZNoMatch=Aviso: fuso horário do Sistema Operacional "%1$S"\ndeixou de corresponder ao fuso do ZoneInfo "%2$S".
+
+# "Skipping Operating System timezone 'Pacific/New_Country'."
+# Testing note: not easily testable. May occur someday if (non-windows)
+# OS uses different version of ZoneInfo database which has a timezone name
+# that is not included in our current ZoneInfo database (or if the mapping
+# mapping from windows to ZoneInfo timezone ids does).
+SkippingOSTimezone=Ignorando fuso horário do Sistema Operacional '%1$S'.
+
+# "Skipping locale timezone 'America/New_Yawk'."
+# Testing note: Skipping occurs if a likelyTimezone id is unknown or misspelled.
+SkippingLocaleTimezone=Ignorando fuso horário local '%1$S'.
+
+# Testing note: "No match" timezones include Bucharest on W2k.
+# Brazil timezones may be "No match" (change every year, so often out of date,
+# and changes are often more than a week different).
+warningUsingFloatingTZNoMatch=Aviso: usando fuso horário "flutuante".\nNão há fuso no ZoneInfo que corresponda ao fuso do Sistema Operacional.
+
+# "Warning: Using guessed timezone
+# America/New York (UTC-0500/-0400).
+# [rfc2445 summer daylight saving shift rules for timezone]
+# This ZoneInfo timezone almost matches/seems to match..."
+# This ZoneInfo timezone was chosen based on ... "
+WarningUsingGuessedTZ=Aviso: Usando fuso horário estimado\n %1$S (UTC%2$S).\n%3$S\n%4$S
+
+# Testing note: "Almost match" timezones include Cairo on W2k.
+TZAlmostMatchesOSDifferAtMostAWeek=Este fuso horário do ZoneInfo é semelhante ao do Sistema Operacional.\nPara esta regra, as próximas transições entre horário normal e de verão\ndiferem em no máximo uma semana das transições do fuso horário do Sistema Operacional.\nPodem haver discrepâncias na data, como data inicial diferente,\nou regra diferente, ou aproximação para regra de calendário não-Gregoriano.
+
+TZSeemsToMatchOS=Este fuso horário do ZoneInfo parece corresponder ao do Sistema Operacional neste ano.
+
+# LOCALIZATION NOTE (TZFromOS):
+# used for a display of a chosen timezone
+# %1$S will be replaced with the name of a timezone
+TZFromOS=Este fuso horário do ZoneInfo foi selecionado baseado no identifier "%1$S"\n do fuso do Sistema Operacional.
+
+# Localization note (TZFromLocale): Substitute name of your locale language.
+TZFromLocale=Este fuso horário do ZoneInfo foi selecionado baseado based na correspondência do fuso do Sistema Operacional \ntimezone com fusos prováveis para usuários de internet usando português do Brasil.
+
+TZFromKnownTimezones=Este fuso horário do ZoneInfo foi selecionado baseado na correspondência entre o fuso\ndo Sistema Operacional com fusos conhecidos em ordem alfabética de identificadores de fusos.
+
+# Print Layout
+formatListName = Lista
+weekPrinterName = Planejamento semanal
+monthPrinterName = Grade mensal
+tasksWithNoDueDate = Tarefas sem data de vencimento
+
+# Providers
+caldavName=CalDAV
+compositeName=Composto
+icsName=iCalendar (ICS)
+memoryName=Temporária (memória)
+storageName=Local (SQLite)
+
+# Used in created html code for list layout print and html export
+htmlPrefixTitle=Título
+htmlPrefixWhen=Quando
+htmlPrefixLocation=Local
+htmlPrefixDescription=Descrição
+htmlTaskCompleted=%1$S (completada)
+
+# Categories
+addCategory=Adicionar categoria
+multipleCategories=Múltiplas categorias
+
+today=Hoje
+tomorrow=Amanhã
+yesterday=Ontem
+
+#Today pane
+eventsonly=Eventos
+eventsandtasks=Eventos e Tarefas
+tasksonly=Tarefas
+shortcalendarweek=Sem
+
+go=Ir
+
+# Some languages have different conjugations of 'next' and 'last'. If yours
+# does not, simply repeat the value. This will be used with day names, as in
+# 'next Sunday'.
+next1=próximo
+next2=próxima
+last1=último
+last2=última
+
+# Alarm Dialog
+# LOCALIZATION NOTE (alarmWindowTitle.label): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/Localization_and_Plurals
+alarmWindowTitle.label=#1 Lembrete;#1 Lembretes
+
+# LOCALIZATION NOTE (alarmStarts):
+# used for a display the start of an alarm like 'Starts: Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmStarts=Início: %1$S
+
+# LOCALIZATION NOTE (alarmTodayAt):
+# used for a display the date-time of an alarm like 'Today at Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmTodayAt=Hoje às %1$S
+
+# LOCALIZATION NOTE (alarmTomorrowAt):
+# used for a display the date-time of an alarm like 'Tomorrow at Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmTomorrowAt=Amanhã às %1$S
+
+# LOCALIZATION NOTE (alarmYesterdayAt):
+# used for a display the date-time of an alarm like 'Yesterday at Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmYesterdayAt=Ontem às %1$S
+
+# Alarm interface strings
+# LOCALIZATION NOTE: These strings do not get displayed. They are only visible
+# when exporting an item with i.e a DISPLAY alarm, that doesn't have a
+# description set, or an EMAIL alarm that doesn't have a summary set.
+alarmDefaultDescription=Descrição padrão Mozilla
+alarmDefaultSummary=Sumário padrão Mozilla
+
+# LOCALIZATION NOTE (alarmSnoozeLimitExceeded): Semi-colon list of plural
+# forms.
+alarmSnoozeLimitExceeded=Você não pode adiar um alarme por mais de #1 mês.;Você não pode adiar um alarme por mais de #1 meses.
+
+taskDetailsStatusNeedsAction=Requer ação
+
+# LOCALIZATION NOTE (taskDetailsStatusInProgress):
+# used for a display of how much of a task is completed '25% Complete'
+# %1$S will be replaced with the number of percentage completed
+taskDetailsStatusInProgress=%1$S%% completada
+taskDetailsStatusCompleted=Completada
+
+# LOCALIZATION NOTE (taskDetailsStatusCompletedOn):
+# used for a display of completion date like 'Completed on Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with the completion date-time of the task
+taskDetailsStatusCompletedOn=Completada em %1$S
+taskDetailsStatusCancelled=Cancelada
+
+gettingCalendarInfoCommon=Verificando agendas…
+
+# LOCALIZATION NOTE (gettingCalendarInfoDetail):
+# used for a progress-display of processed like 'Checking Calendar 5 of 10'
+# %1$S will be replaced with the index of the currently processed calendar
+# %2$S will be replaced with the total numbers of calendars
+gettingCalendarInfoDetail=Verificando agenda %1$S de %2$S
+
+# LOCALIZATION NOTE (errorCode):
+# %1$S will be replaced with the number of an error code
+errorCode=Código do erro: %1$S
+
+# LOCALIZATION NOTE (errorDescription):
+# %1$S will be replaced with the description of an error
+errorDescription=Descrição: %1$S
+
+# LOCALIZATION NOTE (errorWriting):
+# used for an message like 'An error occurred when writing to the calendar Home!'
+# %1$S will be replaced with the name of a calendar
+errorWriting2=Ocorreu um erro ao escrever na agenda %1$S! Veja mais informações abaixo.
+
+# LOCALIZATION NOTE (errorWritingDetails):
+# This will be displayed in the detail section of the error dialog
+errorWritingDetails=Se está vendo esta mensagem depois de silenciar ou dispensar um lembrete e isso é de uma agenda em que você não quer adicionar ou editar eventos, pode marcar esta agenda como somente-leitura para evitar essa mensagem no futuro. Para isso, acesse as propriedades da agenda clicando com o botão direito nesta agenda na lista, no modo de agenda ou de tarefas.
+
+# LOCALIZATION NOTE (tooltipCalendarDisabled):
+# used for an alert-message like 'The calendar Home is momentarily not available'
+# %1$S will be replaced with the name of a calendar
+tooltipCalendarDisabled=A agenda %1$S está temporariamente indisponível
+
+# LOCALIZATION NOTE (tooltipCalendarReadOnly):
+# used for an message like 'The calendar Home is readonly'
+# %1$S will be replaced with the name of a calendar
+tooltipCalendarReadOnly=A agenda %1$S é somente leitura
+
+taskEditInstructions=Clique aqui para criar nova tarefa
+taskEditInstructionsReadonly=Selecione uma agenda com permissão para alteração
+taskEditInstructionsCapability=Selecione uma agenda que aceite tarefas
+
+eventDetailsStartDate=Início:
+eventDetailsEndDate=Término:
+
+# LOCALIZATION NOTE (datetimeWithTimezone):
+# used for a display of a date-time with timezone 'Thu 2 Oct 2008 13:21', Europe/Paris
+# %1$S will be replaced with the completion date-time
+# %2$S will be replaced with the name of the timezone
+datetimeWithTimezone=%1$S, %2$S
+
+# LOCALIZATION NOTE (singleLongCalendarWeek):
+# used for display of calendar weeks in short form like 'Calendar Week 43'
+# %1$S will be replaced with the index of the week
+singleLongCalendarWeek=Semana: %1$S
+
+# LOCALIZATION NOTE (severalLongCalendarWeeks):
+# used for display of calendar weeks in short form like 'Calendar Weeks 43 - 45'
+# %1$S will be replaced with the index of the start-week
+# %2$S will be replaced with the index of the end-week
+severalLongCalendarWeeks=Semanas %1$S-%2$S
+
+# LOCALIZATION NOTE (singleShortCalendarWeek):
+# used for display of calendar weeks in short form like 'CW 43'
+# %1$S will be replaced with the index of the week
+singleShortCalendarWeek=Sem: %1$S
+
+# LOCALIZATION NOTE (severalShortCalendarWeeks):
+# used for display of calendar weeks in short form like 'CWs 43 - 45'
+# %1$S will be replaced with the index of the start-week
+# %2$S will be replaced with the index of the end-week
+severalShortCalendarWeeks=Sems: %1$S-%2$S
+
+# LOCALIZATION NOTE (abbreviationOfWeek):
+# Used for displaying the week number in the first day box of every week
+# in multiweek and month views.
+# It allows to localize the label with the week number in case your locale
+# requires it.
+# Take into account that this label is placed in the same room of the day label
+# inside the day boxes, exactly on left side, hence a possible string shouldn't
+# be too long otherwise it will create confusion between the week number and
+# the day number other than a possible crop when the window is resized.
+#
+# %1$S is a number from 1 to 53 that represents the week number.
+abbreviationOfWeek=%1$S
+
+# Task tree, "Due In" column.
+# LOCALIZATION NOTE (dueInDays, dueInHours): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/Localization_and_Plurals
+dueInDays=#1 dia;#1 dias
+dueInHours=#1 hora;#1 horas
+dueInLessThanOneHour=< 1 hora
+
+# LOCALIZATION NOTE (monthInYear):
+# used for display of Month-dates like 'December 2008'
+# %1$S will be replaced with name of the month
+# %2$S will be replaced with the year
+monthInYear=%1$S de %2$S
+
+# LOCALIZATION NOTE (monthInYear.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+monthInYear.monthFormat=nominative
+
+# LOCALIZATION NOTE (formatDateLong):
+# used for display dates in long format like 'Mon 15 Oct 2008' when it's
+# impossible to retrieve the formatatted date from the OS.
+# %1$S will be replaced with name of the day in short format;
+# %2$S will be replaced with the day-index of the month, possibly followed by an ordinal symbol
+# (depending on the string dayOrdinalSymbol in dateFormat.properties);
+# %3$S will be replaced with the name of the month in short format;
+# %4$S will be replaced with the year.
+formatDateLong=%1$S às %2$S a %3$S às %4$S
+
+# LOCALIZATION NOTE (dayHeaderLabel):
+# used for display the labels in the header of the days in day/week views in short
+# or long format. For example: 'Monday 6 Oct.' or 'Mon. 6 Oct.'
+# %1$S will be replaced with name of the day in short or long format
+# %2$S will be replaced with the day-index of the month, possibly followed by an ordinal symbol
+# (depending on the string dayOrdinalSymbol in dateFormat.properties), plus the name
+# of the month in short format (the day/month order depends on the OS settings).
+dayHeaderLabel=%1$S de %2$S
+
+# LOCALIZATION NOTE (daysIntervalInMonth):
+# used for display of intervals in the form of 'March 3 - 9, 2008'
+# %1$S will be replaced with name of the month of the start date
+# %2$S will be replaced with the day-index of the start date possibly followed by an ordinal symbol
+# %3$S will be replaced with the day-index of the end date possibly followed by an ordinal symbol
+# %4$S will be replaced with the common year of both dates
+# The presence of the ordinal symbol in the day-indexes depends on the string
+# dayOrdinalSymbol in dateFormat.properties
+daysIntervalInMonth=%2$S a %3$S de %1$S de %4$S
+
+# LOCALIZATION NOTE (daysIntervalInMonth.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+daysIntervalInMonth.monthFormat=nominative
+
+# LOCALIZATION NOTE (daysIntervalBetweenMonths):
+# used for display of intervals in the form 'September 29 - October 5, 2008'
+# %1$S will be replaced with name of the month of the start date
+# %2$S will be replaced with the day-index of the start date possibly followed by an ordinal symbol
+# %3$S will be replaced with name of the month of the end date
+# %4$S will be replaced with the day-index of the end date possibly followed by an ordinal symbol
+# %5$S will be replaced with the common year of both dates
+# The presence of the ordinal symbol in the day-indexes depends on the string
+# dayOrdinalSymbol in dateFormat.properties
+daysIntervalBetweenMonths=%2$S de %1$S a %4$S de %3$S de %5$S
+
+# LOCALIZATION NOTE (daysIntervalBetweenMonths.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+daysIntervalBetweenMonths.monthFormat=nominative
+
+# LOCALIZATION NOTE (daysIntervalBetweenYears):
+# used for display of intervals in the form 'December 29, 2008 - January 4, 2009'
+# %1$S will be replaced with name of the month of the start date
+# %2$S will be replaced with the day-index of the start date possibly followed by an ordinal symbol
+# %3$S will be replaced with the year of the start date
+# %4$S will be replaced with name of the month of the end date
+# %5$S will be replaced with the day-index of the end date possibly followed by an ordinal symbol
+# %6$S will be replaced with the year of the end date
+# The presence of the ordinal symbol in the day-indexes depends on the string
+# dayOrdinalSymbol in dateFormat.properties
+daysIntervalBetweenYears=%2$S de %1$S de %3$S a %5$S de %4$S de %6$S
+
+# LOCALIZATION NOTE (daysIntervalBetweenYears.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+daysIntervalBetweenYears.monthFormat=nominative
+
+# LOCALIZATION NOTE (datetimeIntervalOnSameDateTime):
+# used for intervals where end is equals to start
+# displayed form is '5 Jan 2006 13:00'
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+datetimeIntervalOnSameDateTime=%1$S %2$S
+
+# LOCALIZATION NOTE (datetimeIntervalOnSameDay):
+# used for intervals where end is on the same day as start, so we can leave out the
+# end date but still include end time
+# displayed form is '5 Jan 2006 13:00 - 17:00'
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+# %3$S will be replaced with the time of the end date
+datetimeIntervalOnSameDay=%1$S das %2$S às %3$S
+
+# LOCALIZATION NOTE (datetimeIntervalOnSeveralDays):
+# used for intervals spanning multiple days by including date and time
+# displayed form is '5 Jan 2006 13:00 - 7 Jan 2006 9:00'
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+# %3$S will be replaced with the date of the end date
+# %4$S will be replaced with the time of the end date
+datetimeIntervalOnSeveralDays=%1$S às %2$S a %3$S às %4$S
+
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutDate):
+# used for task without start and due date
+# (showed only in exported calendar in Html format)
+datetimeIntervalTaskWithoutDate= sem data inicial ou final
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutDueDate):
+# used for intervals in task with only start date
+# displayed form is 'start date 5 Jan 2006 13:00'
+# (showed only in exported calendar in Html format)
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+datetimeIntervalTaskWithoutDueDate=início %1$S %2$S
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutStartDate):
+# used for intervals in task with only due date
+# displayed form is 'due date 5 Jan 2006 13:00'
+# (showed only in exported calendar in Html format)
+# %1$S will be replaced with the date of the due date
+# %2$S will be replaced with the time of the due date
+datetimeIntervalTaskWithoutStartDate=término %1$S %2$S
+
+# LOCALIZATION NOTE (dragLabelTasksWithOnlyEntryDate
+# dragLabelTasksWithOnlyDueDate)
+# Labels that appear while dragging a task with only
+# entry date OR due date
+dragLabelTasksWithOnlyEntryDate=Hora inicial
+dragLabelTasksWithOnlyDueDate=Prazo
+
+deleteTaskLabel=Excluir tarefa
+deleteTaskMessage=Deseja realmente excluir esta tarefa?
+deleteTaskAccesskey=l
+deleteItemLabel=Excluir
+deleteItemMessage=Deseja realmente excluir este item?
+deleteItemAccesskey=l
+deleteEventLabel=Excluir evento
+deleteEventMessage=Deseja realmente excluir este evento?
+deleteEventAccesskey=l
+
+calendarPropertiesEveryMinute=A cada minuto;A cada #1 minutos
+
+# LOCALIZATION NOTE (extractUsing)
+# Used in message header
+# %1$S will be replaced with language name from languageNames.properties
+extractUsing=Usando %1$S
+
+# LOCALIZATION NOTE (extractUsingRegion)
+# Used in message header
+# %1$S will be replaced with language name from languageNames.properties
+# %2$S will be replaced with region like US in en-US
+extractUsingRegion=Usando %1$S (%2$S)
+
+# LOCALIZATION NOTE (unit)
+# Used to determine the correct plural form of a unit
+unitMinutes=#1 minuto;#1 minutos
+unitHours=#1 hora;#1 horas
+unitDays=#1 dia;#1 dias
+unitWeeks=#1 semana;#1 semanas
+
+# LOCALIZATION NOTE (showCalendar)
+# Used in calendar list context menu
+# %1$S will be replaced with the calendar name
+# uses the access key calendar.context.togglevisible.accesskey
+showCalendar=Exibir %1$S
+hideCalendar=Ocultar %1$S
+# uses the access key calendar.context.showonly.accesskey
+showOnlyCalendar=Mostrar somente %1$S
+
+# LOCALIZATION NOTE (modifyConflict)
+# Used by the event dialog to resolve item modification conflicts.
+modifyConflictPromptTitle=Conflito na modificação do item
+modifyConflictPromptMessage=O item a ser editado no diálogo foi modificado desde que foi aberto.
+modifyConflictPromptButton1=Substituir as outras alterações
+modifyConflictPromptButton2=Descartar estas alterações
+
+# LOCALIZATION_NOTE(dialog.attendee.append.delegatedFrom): this is appended behind an attendee name
+# in the tooltip and the visible name for an attendee in the event summary dialog - don't add
+# leading or trailing whitespaces here
+# %1$S - a single delegatee or a comma separated list of delegatees
+# delegation is different from simple invitation forwarding - in case of delegation the original
+# invited attendee gets replaced
+dialog.attendee.append.delegatedFrom=(delegado por %1$S)
+# LOCALIZATION_NOTE(dialog.attendee.append.delegatedTo): this is appended behind an attendee name
+# in the tooltip for an attendee in the event summary dialog - don't add leading or trailing
+# whitespaces here
+# delegation is different from simple invitation forwarding - in case of delegation the original
+# invited attendee gets replaced
+dialog.attendee.append.delegatedTo=(delegado a %1$S)
+
+# Accessible description of a grid calendar with no selected date
+minimonthNoSelectedDate=Nenhuma data selecionada
diff --git a/l10n-pt-BR/calendar/chrome/calendar/calendarCreation.dtd b/l10n-pt-BR/calendar/chrome/calendar/calendarCreation.dtd
new file mode 100644
index 0000000000..425e8ca72b
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/calendarCreation.dtd
@@ -0,0 +1,51 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY wizard.title "Criar nova agenda" >
+<!ENTITY wizard.label "Criar uma nova agenda" >
+<!ENTITY wizard.description "Procurar sua agenda" >
+
+<!ENTITY initialpage.description "Sua agenda pode ser armazenada no seu computador, ou em um servidor para acesso remoto ou compartilhamento com seus colegas ou amigos." >
+<!ENTITY initialpage.computer.label "No meu computador">
+<!ENTITY initialpage.network.label "Na rede">
+
+<!ENTITY locationpage.description "Informe o que é necessário para acessar sua agenda remota" >
+<!ENTITY locationpage.login.description "Opcional: insira um nome de usuário e senha" >
+<!ENTITY locationpage.username.label "Nome de usuário:" >
+<!ENTITY locationpage.password.label "Senha:" >
+
+<!ENTITY custompage.shortdescription "Personalizar sua agenda" >
+<!ENTITY custompage.longdescription "Você pode dar um nome para sua agenda e colorir os eventos dela." >
+
+<!ENTITY finishpage.shortdescription "Agenda criada" >
+<!ENTITY finishpage.longdescription "Sua agenda foi criada." >
+
+<!-- Below are new strings for the revised new calendar dialog. The above strings should be
+ removed/renamed later on -->
+
+<!ENTITY sourcetabs.other.label "Outro">
+
+<!ENTITY buttons.create.label "Criar agenda">
+<!ENTITY buttons.create.accesskey "r">
+
+<!ENTITY buttons.find.label "Procurar agendas">
+<!ENTITY buttons.find.accesskey "P">
+
+<!ENTITY buttons.back.label "Voltar">
+<!ENTITY buttons.back.accesskey "V">
+
+<!ENTITY buttons.subscribe.label "Inscrever">
+<!ENTITY buttons.subscribe.accesskey "I">
+
+<!ENTITY calendartype.label "Tipo de agenda:">
+<!ENTITY location.label "Localização:">
+<!ENTITY location.placeholder "URL ou nome do servidor da agenda">
+
+<!ENTITY network.nocredentials.label "Este endereço não requer credenciais">
+<!ENTITY network.loading.description "Aguarde enquanto suas agendas estão sendo descobertas.">
+<!ENTITY network.notfound.description "Não foi possível encontrar agendas neste local. Verifique suas configurações.">
+<!ENTITY network.authfail.description "As credenciais que você inseriu não foram aceitas. Verifique suas configurações.">
+
+<!ENTITY network.subscribe.single.description "Selecione as agendas que deseja se inscrever.">
+<!ENTITY network.subscribe.multiple.description "Vários tipos de agenda estão disponíveis neste local. Selecione um tipo, depois marque as agendas que deseja se inscrever.">
diff --git a/l10n-pt-BR/calendar/chrome/calendar/calendarCreation.properties b/l10n-pt-BR/calendar/chrome/calendar/calendarCreation.properties
new file mode 100644
index 0000000000..3cfcc2f5c2
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/calendarCreation.properties
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+error.invalidUri=Favor digitar um local válido.
+error.alreadyExists=Você já se inscreveu na agenda deste local.
diff --git a/l10n-pt-BR/calendar/chrome/calendar/categories.properties b/l10n-pt-BR/calendar/chrome/calendar/categories.properties
new file mode 100644
index 0000000000..ad9d15b570
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/categories.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# default categories
+
+categories2=Aniversário,Negócios,Telefonemas,Concorrência,Cliente,Favoritos,Conversas,Presentes,Feriados,Ideias,Problemas,Reunião,Miscelânea,Particular,Projetos,Feriados públicos,Posição,Fornecedores,Viagens,Férias
diff --git a/l10n-pt-BR/calendar/chrome/calendar/dateFormat.properties b/l10n-pt-BR/calendar/chrome/calendar/dateFormat.properties
new file mode 100644
index 0000000000..5f6236e272
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/dateFormat.properties
@@ -0,0 +1,146 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# In case you are looking for the note about different declensions on date
+# formats, here it is. If your language doesn't use different declensions of
+# month names, you shouldn't have much work. Just leave the *.monthFormat
+# string on "nominative" and the string month.*.name will be filled in.
+#
+# If you need a different form for a string, you can change the
+# *.monthFormat to a different value. Supported values are currently:
+# nominative (default), genitive
+# The modified month name form will then be filled in accordingly. If this
+# system does not suit your needs, please file a bug!
+
+# LOCALIZATION NOTE (month.*.name):
+# Some languages require different declensions of month names.
+# These values will be used if *.monthFormat is set to "nominative" or in places
+# where using a different declension is not yet supported.
+month.1.name=Janeiro
+month.2.name=Fevereiro
+month.3.name=Março
+month.4.name=Abril
+month.5.name=Maio
+month.6.name=Junho
+month.7.name=Julho
+month.8.name=Agosto
+month.9.name=Setembro
+month.10.name=Outubro
+month.11.name=Novembro
+month.12.name=Dezembro
+
+# LOCALIZATION NOTE (month.*.genitive):
+# Some languages require different declensions of month names.
+# These values will be used if *.monthFormat is set to "genitive"
+# If your language doesn't use different declensions, just set the same
+# values as for month.*.name.
+month.1.genitive=Janeiro
+month.2.genitive=Fevereiro
+month.3.genitive=Março
+month.4.genitive=Abril
+month.5.genitive=Maio
+month.6.genitive=Junho
+month.7.genitive=Julho
+month.8.genitive=Agosto
+month.9.genitive=Setembro
+month.10.genitive=Outubro
+month.11.genitive=Novembro
+month.12.genitive=Dezembro
+
+month.1.Mmm=Jan
+month.2.Mmm=Fev
+month.3.Mmm=Mar
+month.4.Mmm=Abr
+month.5.Mmm=Mai
+month.6.Mmm=Jun
+month.7.Mmm=Jul
+month.8.Mmm=Ago
+month.9.Mmm=Set
+month.10.Mmm=Out
+month.11.Mmm=Nov
+month.12.Mmm=Dez
+
+day.1.name=Domingo
+day.2.name=Segunda
+day.3.name=Terça
+day.4.name=Quarta
+day.5.name=Quinta
+day.6.name=Sexta
+day.7.name=Sábado
+
+day.1.Mmm=Dom
+day.2.Mmm=Seg
+day.3.Mmm=Ter
+day.4.Mmm=Qua
+day.5.Mmm=Qui
+day.6.Mmm=Sex
+day.7.Mmm=Sáb
+
+# Can someone tell me why we're not counting from zero?
+day.1.short=D
+day.2.short=S
+day.3.short=T
+day.4.short=Q
+day.5.short=Q
+day.6.short=S
+day.7.short=S
+
+# Localizable day's date
+day.1.number=1
+day.2.number=2
+day.3.number=3
+day.4.number=4
+day.5.number=5
+day.6.number=6
+day.7.number=7
+day.8.number=8
+day.9.number=9
+day.10.number=10
+day.11.number=11
+day.12.number=12
+day.13.number=13
+day.14.number=14
+day.15.number=15
+day.16.number=16
+day.17.number=17
+day.18.number=18
+day.19.number=19
+day.20.number=20
+day.21.number=21
+day.22.number=22
+day.23.number=23
+day.24.number=24
+day.25.number=25
+day.26.number=26
+day.27.number=27
+day.28.number=28
+day.29.number=29
+day.30.number=30
+day.31.number=31
+
+# LOCALIZATION NOTE (dayOrdinalSymbol):
+# Allows to insert a string, a character or a symbol after the number of a
+# monthday in order to give it the meaning of ordinal number e.g. 1 -> 1st etc.
+# It's mainly used when formatting dates with both monthday and month name. It
+# affects the following localizable strings that hence must be localized *without*
+# any ordinal symbol for the monthday number:
+# dayHeaderLabel, monthlyDaysOfNth_day,
+# yearlyNthOn, daysIntervalBetweenYears,
+# daysIntervalBetweenMonths, daysIntervalInMonth.
+# Write only a single string if the ordinal symbol is the same for every monthday, otherwise
+# write a sequence of _31_ strings (one for each monthday) separated with commas.
+# If your language doesn't require that in the mentioned strings, leave it empty.
+# e.g.
+# dayOrdinalSymbol=.
+# -> daysIntervalInMonth: 'March 3. - 9., 2008'
+# dayOrdinalSymbol=st,nd,rd,th,th,th,th,th,th,th,th,th,th,th,th,
+# th,th,th,th,th,st,nd,rd,th,th,th,th,th,th,th,st
+# -> daysIntervalBetweenMonths: 'September 29th - November 1st, 2008'
+dayOrdinalSymbol=
+
+noon=Meio-dia
+midnight=Meia-noite
+
+AllDay=Dia inteiro
+Repeating=(Repetição)
diff --git a/l10n-pt-BR/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd b/l10n-pt-BR/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd
new file mode 100644
index 0000000000..8964aa73b4
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd
@@ -0,0 +1,19 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY reminderdialog.title "Configurar lembretes">
+<!ENTITY reminder.add.label "Adicionar">
+<!ENTITY reminder.add.accesskey "A">
+<!ENTITY reminder.remove.label "Remover">
+<!ENTITY reminder.remove.accesskey "R">
+
+<!ENTITY reminder.reminderDetails.label "Detalhes do lembrete">
+<!ENTITY reminder.action.label "Selecionar ação do lembrete">
+
+<!ENTITY reminder.action.alert.label "Exibir alerta">
+<!ENTITY reminder.action.email.label "Enviar mensagem">
+
+<!ENTITY alarm.units.minutes "minutos" >
+<!ENTITY alarm.units.hours "horas" >
+<!ENTITY alarm.units.days "dias" >
diff --git a/l10n-pt-BR/calendar/chrome/calendar/global.dtd b/l10n-pt-BR/calendar/chrome/calendar/global.dtd
new file mode 100644
index 0000000000..053e671c1c
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/global.dtd
@@ -0,0 +1,54 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY time.midnight "Meia-noite" >
+<!ENTITY time.noon "Meio-dia" >
+
+<!-- Day Names -->
+<!-- LOCALIZATION NOTE : Accesskeys for day.1.Ddd to day.7.Ddd are currently
+ only used in Preferences > Views > Workweek groupbox -->
+<!ENTITY day.1.Ddd "Dom" >
+<!ENTITY day.1.Ddd.accesskey "D">
+<!ENTITY day.2.Ddd "Seg" >
+<!ENTITY day.2.Ddd.accesskey "S">
+<!ENTITY day.3.Ddd "Ter" >
+<!ENTITY day.3.Ddd.accesskey "T">
+<!ENTITY day.4.Ddd "Qua" >
+<!ENTITY day.4.Ddd.accesskey "Q">
+<!ENTITY day.5.Ddd "Qui" >
+<!ENTITY day.5.Ddd.accesskey "u">
+<!ENTITY day.6.Ddd "Sex" >
+<!ENTITY day.6.Ddd.accesskey "e">
+<!ENTITY day.7.Ddd "Sáb" >
+<!ENTITY day.7.Ddd.accesskey "b">
+
+<!ENTITY day.1.name "Domingo" >
+<!ENTITY day.2.name "Segunda" >
+<!ENTITY day.3.name "Terça" >
+<!ENTITY day.4.name "Quarta" >
+<!ENTITY day.5.name "Quinta" >
+<!ENTITY day.6.name "Sexta" >
+<!ENTITY day.7.name "Sábado" >
+
+<!ENTITY month.1.name "Janeiro" >
+<!ENTITY month.2.name "Fevereiro" >
+<!ENTITY month.3.name "Março" >
+<!ENTITY month.4.name "Abril" >
+<!ENTITY month.5.name "Maio" >
+<!ENTITY month.6.name "Junho" >
+<!ENTITY month.7.name "Julho" >
+<!ENTITY month.8.name "Agosto" >
+<!ENTITY month.9.name "Setembro" >
+<!ENTITY month.10.name "Outubro" >
+<!ENTITY month.11.name "Novembro" >
+<!ENTITY month.12.name "Dezembro" >
+
+<!ENTITY onemonthbackward.tooltip "Mês anterior" >
+<!ENTITY onemonthforward.tooltip "Mês seguinte" >
+<!ENTITY oneyearbackward.tooltip "Voltar um ano" >
+<!ENTITY oneyearforward.tooltip "Avançar um ano" >
+<!ENTITY showToday.tooltip "Ir para hoje">
+<!ENTITY onedayforward.tooltip "Dia anterior">
+<!ENTITY onedaybackward.tooltip "Dia seguinte">
+<!ENTITY showselectedday.tooltip "Exibir eventos do dia selecionado">
diff --git a/l10n-pt-BR/calendar/chrome/calendar/menuOverlay.dtd b/l10n-pt-BR/calendar/chrome/calendar/menuOverlay.dtd
new file mode 100644
index 0000000000..51a4ccc1ba
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/menuOverlay.dtd
@@ -0,0 +1,50 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Event Menu -->
+<!ENTITY event.new.event "Novo evento…">
+<!ENTITY event.new.event.accesskey "N">
+
+<!ENTITY event.new.task "Nova tarefa…">
+<!ENTITY event.new.task.accesskey "r">
+
+<!ENTITY calendar.import.label "Importar…">
+<!ENTITY calendar.import.accesskey "m">
+
+<!ENTITY calendar.export.label "Exportar…">
+<!ENTITY calendar.export.accesskey "E">
+
+<!ENTITY calendar.publish.label "Publicar…">
+<!ENTITY calendar.publish.accesskey "b">
+
+<!ENTITY calendar.deletecalendar.label "Excluir agenda selecionada…">
+<!ENTITY calendar.deletecalendar.accesskey "d">
+<!ENTITY calendar.unsubscribecalendar.label "Cancelar inscrição na agenda selecionada…">
+<!ENTITY calendar.unsubscribecalendar.accesskey "n">
+
+<!-- LOCALIZATION NOTE (calendar.removecalendar.label): Removing the calendar
+ is the general action of removing it, while deleting means to clear the
+ data and unsubscribing means just taking it out of the calendar list. -->
+<!ENTITY calendar.removecalendar.label "Remover agenda selecionada…">
+<!ENTITY calendar.removecalendar.accesskey "R">
+
+
+<!ENTITY calendar.menu.customize.label "Personalizar…">
+<!ENTITY calendar.menu.customize.accesskey "z">
+
+<!ENTITY showUnifinderCmd.label "Procurar eventos">
+<!ENTITY showUnifinderCmd.accesskey "o">
+<!ENTITY showUnifinderCmd.tooltip "Alternar o painel de procurar eventos">
+
+<!ENTITY calendar.displaytodos.checkbox.label "Exibir tarefas na agenda">
+<!ENTITY calendar.displaytodos.checkbox.accesskey "t">
+
+<!ENTITY goTodayCmd.label "Hoje">
+<!ENTITY goTodayCmd.accesskey "H">
+
+<!ENTITY showCurrentView.label "Visão atual">
+<!ENTITY showCurrentView.accesskey "V">
+
+<!ENTITY calendar.properties.label "Propriedades da agenda…">
+<!ENTITY calendar.properties.accesskey "P">
diff --git a/l10n-pt-BR/calendar/chrome/calendar/migration.dtd b/l10n-pt-BR/calendar/chrome/calendar/migration.dtd
new file mode 100644
index 0000000000..f2b2a2f37e
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/migration.dtd
@@ -0,0 +1,9 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY migration.title "&brandFullName;: Importação de dados">
+<!ENTITY migration.welcome "Boas-vindas">
+<!ENTITY migration.importing "Importando">
+<!ENTITY migration.list.description "O &brandShortName; pode importar dados de agenda de vários aplicativos populares. Dados dos seguintes aplicativos foram encontrados no seu computador. Selecione de quais gostaria de importar dados.">
+<!ENTITY migration.progress.description "Importando dados selecionados">
diff --git a/l10n-pt-BR/calendar/chrome/calendar/migration.properties b/l10n-pt-BR/calendar/chrome/calendar/migration.properties
new file mode 100644
index 0000000000..cda340e5f7
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/migration.properties
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+migratingApp = Migrando %1$S…
+
+# The next two lines are duplicated from migration.dtd until there is branding
+# for lightning
+migrationTitle = %1$S: Importação de dados
+migrationDescription=O %1$S pode importar dados de agenda de vários programas populares. Dados dos seguintes programas foram encontrados no seu computador. Selecione de quais você gostaria de importar dados.
+finished = Completado
+disableExtTitle = Extensão incompatível encontrada
+disableExtText = Você tem instalada a extensão Mozilla Calendar antiga, que é incompatível com o Lightning. Ela será desativada e o %1$S reiniciado.
diff --git a/l10n-pt-BR/calendar/chrome/calendar/provider-uninstall.dtd b/l10n-pt-BR/calendar/chrome/calendar/provider-uninstall.dtd
new file mode 100644
index 0000000000..d2599f9fdb
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/provider-uninstall.dtd
@@ -0,0 +1,12 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY providerUninstall.title "Desinstalar provedor">
+<!ENTITY providerUninstall.accept.label "Cancelar inscrição no provedor selecionado">
+<!ENTITY providerUninstall.accept.accesskey "C">
+<!ENTITY providerUninstall.cancel.label "Manter extensão">
+<!ENTITY providerUninstall.cancel.accesskey "M">
+<!ENTITY providerUninstall.preName.label "Você solicitou desinstalar ou desabilitar:">
+<!ENTITY providerUninstall.postName.label "Isto fará com que as agendas abaixo sejam desativadas.">
+<!ENTITY providerUninstall.reinstallNote.label "A menos que pretenda reinstalar este provedor, você pode cancelar a inscrição nas agendas deste provedor.">
diff --git a/l10n-pt-BR/calendar/chrome/calendar/timezones.properties b/l10n-pt-BR/calendar/chrome/calendar/timezones.properties
new file mode 100644
index 0000000000..8c099e5ea8
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/calendar/timezones.properties
@@ -0,0 +1,488 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# extension:
+extensions.calendar-timezones@mozilla.org.name=Definições de fuso horário para o Mozilla Calendar
+extensions.calendar-timezones@mozilla.org.description=Definições de fuso horário necessárias ao Lightning
+extensions.calendar-timezones@mozilla.org.creator=Projeto Mozilla Calendar
+
+pref.timezone.floating=Hora local
+pref.timezone.UTC=UTC/GMT
+
+# I've derived this list out of timezones.dtd
+# - replaced '_' with ' ' on value side
+# - corrected 'St xyz' to 'St. xyz'
+
+# timezone names:
+pref.timezone.Africa.Abidjan=África/Abidjan
+pref.timezone.Africa.Accra=África/Accra
+pref.timezone.Africa.Addis_Ababa=África/Addis_Ababa
+pref.timezone.Africa.Algiers=África/Algiers
+pref.timezone.Africa.Asmara=África/Asmara
+pref.timezone.Africa.Bamako=África/Bamako
+pref.timezone.Africa.Bangui=África/Bangui
+pref.timezone.Africa.Banjul=África/Banjul
+pref.timezone.Africa.Bissau=África/Bissau
+pref.timezone.Africa.Blantyre=África/Blantyre
+pref.timezone.Africa.Brazzaville=África/Brazzaville
+pref.timezone.Africa.Bujumbura=África/Bujumbura
+pref.timezone.Africa.Cairo=África/Cairo
+pref.timezone.Africa.Casablanca=África/Casablanca
+pref.timezone.Africa.Ceuta=África/Ceuta
+pref.timezone.Africa.Conakry=África/Conakry
+pref.timezone.Africa.Dakar=África/Dakar
+pref.timezone.Africa.Dar_es_Salaam=Africa/Dar es Salaam
+pref.timezone.Africa.Djibouti=África/Djibouti
+pref.timezone.Africa.Douala=África/Douala
+pref.timezone.Africa.El_Aaiun=África/El_Aaiun
+pref.timezone.Africa.Freetown=África/Freetown
+pref.timezone.Africa.Gaborone=África/Gaborone
+pref.timezone.Africa.Harare=África/Harare
+pref.timezone.Africa.Johannesburg=África/Johannesburg
+pref.timezone.Africa.Kampala=África/Kampala
+pref.timezone.Africa.Khartoum=África/Khartoum
+pref.timezone.Africa.Kigali=África/Kigali
+pref.timezone.Africa.Kinshasa=África/Kinshasa
+pref.timezone.Africa.Lagos=África/Lagos
+pref.timezone.Africa.Libreville=África/Libreville
+pref.timezone.Africa.Lome=África/Lome
+pref.timezone.Africa.Luanda=África/Luanda
+pref.timezone.Africa.Lubumbashi=África/Lubumbashi
+pref.timezone.Africa.Lusaka=África/Lusaka
+pref.timezone.Africa.Malabo=África/Malabo
+pref.timezone.Africa.Maputo=África/Maputo
+pref.timezone.Africa.Maseru=África/Maseru
+pref.timezone.Africa.Mbabane=África/Mbabane
+pref.timezone.Africa.Mogadishu=África/Mogadishu
+pref.timezone.Africa.Monrovia=África/Monrovia
+pref.timezone.Africa.Nairobi=África/Nairobi
+pref.timezone.Africa.Ndjamena=África/Ndjamena
+pref.timezone.Africa.Niamey=África/Niamey
+pref.timezone.Africa.Nouakchott=África/Nouakchott
+pref.timezone.Africa.Ouagadougou=África/Ouagadougou
+pref.timezone.Africa.Porto-Novo=África/Porto-Novo
+pref.timezone.Africa.Sao_Tome=África/Sao_Tome
+pref.timezone.Africa.Tripoli=África/Tripoli
+pref.timezone.Africa.Tunis=África/Tunis
+pref.timezone.Africa.Windhoek=África/Windhoek
+pref.timezone.America.Adak=América/Adak
+pref.timezone.America.Anchorage=América/Anchorage
+pref.timezone.America.Anguilla=América/Anguilla
+pref.timezone.America.Antigua=América/Antigua
+pref.timezone.America.Araguaina=América/Araguaina
+pref.timezone.America.Argentina.Buenos_Aires=América/Argentina/Buenos_Aires
+pref.timezone.America.Argentina.Catamarca=América/Argentina/Catamarca
+pref.timezone.America.Argentina.Cordoba=América/Argentina/Cordoba
+pref.timezone.America.Argentina.Jujuy=América/Argentina/Jujuy
+pref.timezone.America.Argentina.La_Rioja=América/Argentina/La_Rioja
+pref.timezone.America.Argentina.Mendoza=América/Argentina/Mendoza
+pref.timezone.America.Argentina.Rio_Gallegos=América/Argentina/Rio Gallegos
+pref.timezone.America.Argentina.San_Juan=América/Argentina/San Juan
+pref.timezone.America.Argentina.Tucuman=America/Argentina/Tucuman
+pref.timezone.America.Argentina.Ushuaia=America/Argentina/Ushuaia
+pref.timezone.America.Aruba=America/Aruba
+pref.timezone.America.Asuncion=America/Asuncion
+pref.timezone.America.Atikokan=America/Atikokan
+pref.timezone.America.Bahia=America/Bahia
+pref.timezone.America.Barbados=America/Barbados
+pref.timezone.America.Belem=America/Belem
+pref.timezone.America.Belize=America/Belize
+pref.timezone.America.Blanc-Sablon=America/Blanc-Sablon
+pref.timezone.America.Boa_Vista=America/Boa Vista
+pref.timezone.America.Bogota=America/Bogota
+pref.timezone.America.Boise=America/Boise
+pref.timezone.America.Cambridge_Bay=America/Cambridge Bay
+pref.timezone.America.Campo_Grande=America/Campo Grande
+pref.timezone.America.Cancun=America/Cancun
+pref.timezone.America.Caracas=America/Caracas
+pref.timezone.America.Cayenne=America/Cayenne
+pref.timezone.America.Cayman=America/Cayman
+pref.timezone.America.Chicago=America/Chicago
+pref.timezone.America.Chihuahua=America/Chihuahua
+pref.timezone.America.Costa_Rica=America/Costa Rica
+pref.timezone.America.Cuiaba=America/Cuiaba
+pref.timezone.America.Curacao=America/Curacao
+pref.timezone.America.Danmarkshavn=America/Danmarkshavn
+pref.timezone.America.Dawson=America/Dawson
+pref.timezone.America.Dawson_Creek=America/Dawson Creek
+pref.timezone.America.Denver=America/Denver
+pref.timezone.America.Detroit=America/Detroit
+pref.timezone.America.Dominica=America/Dominica
+pref.timezone.America.Edmonton=America/Edmonton
+pref.timezone.America.Eirunepe=America/Eirunepe
+pref.timezone.America.El_Salvador=America/El Salvador
+pref.timezone.America.Fortaleza=America/Fortaleza
+pref.timezone.America.Glace_Bay=America/Glace Bay
+pref.timezone.America.Godthab=America/Godthab
+pref.timezone.America.Goose_Bay=America/Goose Bay
+pref.timezone.America.Grand_Turk=America/Grand Turk
+pref.timezone.America.Grenada=America/Grenada
+pref.timezone.America.Guadeloupe=America/Guadeloupe
+pref.timezone.America.Guatemala=America/Guatemala
+pref.timezone.America.Guayaquil=America/Guayaquil
+pref.timezone.America.Guyana=America/Guyana
+pref.timezone.America.Halifax=America/Halifax
+pref.timezone.America.Havana=America/Havana
+pref.timezone.America.Hermosillo=America/Hermosillo
+pref.timezone.America.Indiana.Indianapolis=America/Indiana/Indianapolis
+pref.timezone.America.Indiana.Knox=America/Indiana/Knox
+pref.timezone.America.Indiana.Marengo=America/Indiana/Marengo
+pref.timezone.America.Indiana.Petersburg=America/Indiana/Petersburg
+pref.timezone.America.Indiana.Vevay=America/Indiana/Vevay
+pref.timezone.America.Indiana.Vincennes=America/Indiana/Vincennes
+pref.timezone.America.Inuvik=America/Inuvik
+pref.timezone.America.Iqaluit=America/Iqaluit
+pref.timezone.America.Jamaica=America/Jamaica
+pref.timezone.America.Juneau=America/Juneau
+pref.timezone.America.Kentucky.Louisville=America/Kentucky/Louisville
+pref.timezone.America.Kentucky.Monticello=America/Kentucky/Monticello
+pref.timezone.America.La_Paz=America/La Paz
+pref.timezone.America.Lima=America/Lima
+pref.timezone.America.Los_Angeles=America/Los Angeles
+pref.timezone.America.Maceio=America/Maceio
+pref.timezone.America.Managua=America/Managua
+pref.timezone.America.Manaus=America/Manaus
+pref.timezone.America.Martinique=America/Martinique
+pref.timezone.America.Mazatlan=America/Mazatlan
+pref.timezone.America.Menominee=America/Menominee
+pref.timezone.America.Merida=America/Merida
+pref.timezone.America.Mexico_City=America/Mexico City
+pref.timezone.America.Miquelon=America/Miquelon
+pref.timezone.America.Moncton=America/Moncton
+pref.timezone.America.Monterrey=America/Monterrey
+pref.timezone.America.Montevideo=America/Montevideo
+pref.timezone.America.Montreal=America/Montreal
+pref.timezone.America.Montserrat=America/Montserrat
+pref.timezone.America.Nassau=America/Nassau
+pref.timezone.America.New_York=America/New York
+pref.timezone.America.Nipigon=America/Nipigon
+pref.timezone.America.Nome=America/Nome
+pref.timezone.America.Noronha=America/Noronha
+pref.timezone.America.North_Dakota.Center=America/North Dakota/Center
+pref.timezone.America.North_Dakota.New_Salem=America/North Dakota/New Salem
+pref.timezone.America.Panama=America/Panama
+pref.timezone.America.Pangnirtung=America/Pangnirtung
+pref.timezone.America.Paramaribo=America/Paramaribo
+pref.timezone.America.Phoenix=America/Phoenix
+pref.timezone.America.Port-au-Prince=America/Port-au-Prince
+pref.timezone.America.Port_of_Spain=America/Port of Spain
+pref.timezone.America.Porto_Velho=America/Porto Velho
+pref.timezone.America.Puerto_Rico=America/Puerto Rico
+pref.timezone.America.Rainy_River=America/Rainy River
+pref.timezone.America.Rankin_Inlet=America/Rankin Inlet
+pref.timezone.America.Recife=America/Recife
+pref.timezone.America.Regina=America/Regina
+pref.timezone.America.Rio_Branco=America/Rio Branco
+pref.timezone.America.Santiago=America/Santiago
+pref.timezone.America.Santo_Domingo=America/Santo Domingo
+pref.timezone.America.Sao_Paulo=América/São Paulo
+pref.timezone.America.Scoresbysund=America/Scoresbysund
+pref.timezone.America.Shiprock=America/Shiprock
+pref.timezone.America.St_Johns=America/St. Johns
+pref.timezone.America.St_Kitts=America/St. Kitts
+pref.timezone.America.St_Lucia=America/St. Lucia
+pref.timezone.America.St_Thomas=America/St. Thomas
+pref.timezone.America.St_Vincent=America/St. Vincent
+pref.timezone.America.Swift_Current=America/Swift Current
+pref.timezone.America.Tegucigalpa=America/Tegucigalpa
+pref.timezone.America.Thule=America/Thule
+pref.timezone.America.Thunder_Bay=America/Thunder Bay
+pref.timezone.America.Tijuana=America/Tijuana
+pref.timezone.America.Toronto=America/Toronto
+pref.timezone.America.Tortola=America/Tortola
+pref.timezone.America.Vancouver=America/Vancouver
+pref.timezone.America.Whitehorse=America/Whitehorse
+pref.timezone.America.Winnipeg=America/Winnipeg
+pref.timezone.America.Yakutat=America/Yakutat
+pref.timezone.America.Yellowknife=America/Yellowknife
+pref.timezone.Antarctica.Casey=Antarctica/Casey
+pref.timezone.Antarctica.Davis=Antarctica/Davis
+pref.timezone.Antarctica.DumontDUrville=Antarctica/DumontDUrville
+pref.timezone.Antarctica.Mawson=Antarctica/Mawson
+pref.timezone.Antarctica.McMurdo=Antarctica/McMurdo
+pref.timezone.Antarctica.Palmer=Antarctica/Palmer
+pref.timezone.Antarctica.Rothera=Antarctica/Rothera
+pref.timezone.Antarctica.South_Pole=Antarctica/South Pole
+pref.timezone.Antarctica.Syowa=Antarctica/Syowa
+pref.timezone.Antarctica.Vostok=Antarctica/Vostok
+pref.timezone.Arctic.Longyearbyen=Arctic/Longyearbyen
+pref.timezone.Asia.Aden=Asia/Aden
+pref.timezone.Asia.Almaty=Asia/Almaty
+pref.timezone.Asia.Amman=Asia/Amman
+pref.timezone.Asia.Anadyr=Asia/Anadyr
+pref.timezone.Asia.Aqtau=Asia/Aqtau
+pref.timezone.Asia.Aqtobe=Asia/Aqtobe
+pref.timezone.Asia.Ashgabat=Asia/Ashgabat
+pref.timezone.Asia.Baghdad=Asia/Baghdad
+pref.timezone.Asia.Bahrain=Asia/Bahrain
+pref.timezone.Asia.Baku=Asia/Baku
+pref.timezone.Asia.Bangkok=Asia/Bangkok
+pref.timezone.Asia.Beirut=Asia/Beirut
+pref.timezone.Asia.Bishkek=Asia/Bishkek
+pref.timezone.Asia.Brunei=Asia/Brunei
+pref.timezone.Asia.Choibalsan=Asia/Choibalsan
+pref.timezone.Asia.Chongqing=Asia/Chongqing
+pref.timezone.Asia.Colombo=Asia/Colombo
+pref.timezone.Asia.Damascus=Asia/Damascus
+pref.timezone.Asia.Dhaka=Asia/Dhaka
+pref.timezone.Asia.Dili=Asia/Dili
+pref.timezone.Asia.Dubai=Asia/Dubai
+pref.timezone.Asia.Dushanbe=Asia/Dushanbe
+pref.timezone.Asia.Gaza=Asia/Gaza
+pref.timezone.Asia.Harbin=Asia/Harbin
+pref.timezone.Asia.Hong_Kong=Asia/Hong Kong
+pref.timezone.Asia.Hovd=Asia/Hovd
+pref.timezone.Asia.Irkutsk=Asia/Irkutsk
+pref.timezone.Asia.Istanbul=Asia/Istanbul
+pref.timezone.Asia.Jakarta=Asia/Jakarta
+pref.timezone.Asia.Jayapura=Asia/Jayapura
+pref.timezone.Asia.Jerusalem=Asia/Jerusalem
+pref.timezone.Asia.Kabul=Asia/Kabul
+pref.timezone.Asia.Kamchatka=Asia/Kamchatka
+pref.timezone.Asia.Karachi=Asia/Karachi
+pref.timezone.Asia.Kashgar=Asia/Kashgar
+pref.timezone.Asia.Kathmandu=Asia/Kathmandu
+pref.timezone.Asia.Krasnoyarsk=Asia/Krasnoyarsk
+pref.timezone.Asia.Kuala_Lumpur=Asia/Kuala Lumpur
+pref.timezone.Asia.Kuching=Asia/Kuching
+pref.timezone.Asia.Kuwait=Asia/Kuwait
+pref.timezone.Asia.Macau=Asia/Macau
+pref.timezone.Asia.Magadan=Asia/Magadan
+pref.timezone.Asia.Makassar=Asia/Makassar
+pref.timezone.Asia.Manila=Asia/Manila
+pref.timezone.Asia.Muscat=Asia/Muscat
+pref.timezone.Asia.Nicosia=Asia/Nicosia
+pref.timezone.Asia.Novosibirsk=Asia/Novosibirsk
+pref.timezone.Asia.Omsk=Asia/Omsk
+pref.timezone.Asia.Oral=Asia/Oral
+pref.timezone.Asia.Phnom_Penh=Asia/Phnom Penh
+pref.timezone.Asia.Pontianak=Asia/Pontianak
+pref.timezone.Asia.Pyongyang=Asia/Pyongyang
+pref.timezone.Asia.Qatar=Asia/Qatar
+pref.timezone.Asia.Qyzylorda=Asia/Qyzylorda
+pref.timezone.Asia.Rangoon=Asia/Rangoon
+pref.timezone.Asia.Riyadh=Asia/Riyadh
+pref.timezone.Asia.Sakhalin=Asia/Sakhalin
+pref.timezone.Asia.Samarkand=Asia/Samarkand
+pref.timezone.Asia.Seoul=Asia/Seoul
+pref.timezone.Asia.Shanghai=Asia/Shanghai
+pref.timezone.Asia.Singapore=Asia/Singapore
+pref.timezone.Asia.Taipei=Asia/Taipei
+pref.timezone.Asia.Tashkent=Asia/Tashkent
+pref.timezone.Asia.Tbilisi=Asia/Tbilisi
+pref.timezone.Asia.Tehran=Asia/Tehran
+pref.timezone.Asia.Thimphu=Asia/Thimphu
+pref.timezone.Asia.Tokyo=Asia/Tokyo
+pref.timezone.Asia.Ulaanbaatar=Asia/Ulaanbaatar
+pref.timezone.Asia.Urumqi=Asia/Urumqi
+pref.timezone.Asia.Vientiane=Asia/Vientiane
+pref.timezone.Asia.Vladivostok=Asia/Vladivostok
+pref.timezone.Asia.Yakutsk=Asia/Yakutsk
+pref.timezone.Asia.Yekaterinburg=Asia/Yekaterinburg
+pref.timezone.Asia.Yerevan=Asia/Yerevan
+pref.timezone.Atlantic.Azores=Atlantic/Azores
+pref.timezone.Atlantic.Bermuda=Atlantic/Bermuda
+pref.timezone.Atlantic.Canary=Atlantic/Canary
+pref.timezone.Atlantic.Cape_Verde=Atlantic/Cape Verde
+pref.timezone.Atlantic.Faroe=Atlantic/Faroe
+pref.timezone.Atlantic.Madeira=Atlantic/Madeira
+pref.timezone.Atlantic.Reykjavik=Atlantic/Reykjavik
+pref.timezone.Atlantic.South_Georgia=Atlantic/South Georgia
+pref.timezone.Atlantic.St_Helena=Atlantic/St. Helena
+pref.timezone.Atlantic.Stanley=Atlantic/Stanley
+pref.timezone.Australia.Adelaide=Australia/Adelaide
+pref.timezone.Australia.Brisbane=Australia/Brisbane
+pref.timezone.Australia.Broken_Hill=Australia/Broken Hill
+pref.timezone.Australia.Currie=Australia/Currie
+pref.timezone.Australia.Darwin=Australia/Darwin
+pref.timezone.Australia.Eucla=Australia/Eucla
+pref.timezone.Australia.Hobart=Australia/Hobart
+pref.timezone.Australia.Lindeman=Australia/Lindeman
+pref.timezone.Australia.Lord_Howe=Australia/Lord Howe
+pref.timezone.Australia.Melbourne=Australia/Melbourne
+pref.timezone.Australia.Perth=Australia/Perth
+pref.timezone.Australia.Sydney=Australia/Sydney
+pref.timezone.Europe.Amsterdam=Europe/Amsterdam
+pref.timezone.Europe.Andorra=Europe/Andorra
+pref.timezone.Europe.Athens=Europe/Athens
+pref.timezone.Europe.Belgrade=Europe/Belgrade
+pref.timezone.Europe.Berlin=Europe/Berlin
+pref.timezone.Europe.Bratislava=Europe/Bratislava
+pref.timezone.Europe.Brussels=Europe/Brussels
+pref.timezone.Europe.Bucharest=Europe/Bucharest
+pref.timezone.Europe.Budapest=Europe/Budapest
+pref.timezone.Europe.Chisinau=Europe/Chisinau
+pref.timezone.Europe.Copenhagen=Europe/Copenhagen
+pref.timezone.Europe.Dublin=Europe/Dublin
+pref.timezone.Europe.Gibraltar=Europe/Gibraltar
+pref.timezone.Europe.Guernsey=Europe/Guernsey
+pref.timezone.Europe.Helsinki=Europe/Helsinki
+pref.timezone.Europe.Isle_of_Man=Europe/Isle of Man
+pref.timezone.Europe.Istanbul=Europe/Istanbul
+pref.timezone.Europe.Jersey=Europe/Jersey
+pref.timezone.Europe.Kaliningrad=Europe/Kaliningrad
+pref.timezone.Europe.Kiev=Europe/Kiev
+pref.timezone.Europe.Lisbon=Europe/Lisbon
+pref.timezone.Europe.Ljubljana=Europe/Ljubljana
+pref.timezone.Europe.London=Europe/London
+pref.timezone.Europe.Luxembourg=Europe/Luxembourg
+pref.timezone.Europe.Madrid=Europe/Madrid
+pref.timezone.Europe.Malta=Europe/Malta
+pref.timezone.Europe.Mariehamn=Europe/Mariehamn
+pref.timezone.Europe.Minsk=Europe/Minsk
+pref.timezone.Europe.Monaco=Europe/Monaco
+pref.timezone.Europe.Moscow=Europe/Moscow
+pref.timezone.Europe.Nicosia=Europe/Nicosia
+pref.timezone.Europe.Oslo=Europe/Oslo
+pref.timezone.Europe.Paris=Europe/Paris
+pref.timezone.Europe.Podgorica=Europe/Podgorica
+pref.timezone.Europe.Prague=Europe/Prague
+pref.timezone.Europe.Riga=Europe/Riga
+pref.timezone.Europe.Rome=Europe/Rome
+pref.timezone.Europe.Samara=Europe/Samara
+pref.timezone.Europe.San_Marino=Europe/San Marino
+pref.timezone.Europe.Sarajevo=Europe/Sarajevo
+pref.timezone.Europe.Simferopol=Europe/Simferopol
+pref.timezone.Europe.Skopje=Europe/Skopje
+pref.timezone.Europe.Sofia=Europe/Sofia
+pref.timezone.Europe.Stockholm=Europe/Stockholm
+pref.timezone.Europe.Tallinn=Europe/Tallinn
+pref.timezone.Europe.Tirane=Europe/Tirane
+pref.timezone.Europe.Uzhgorod=Europe/Uzhgorod
+pref.timezone.Europe.Vaduz=Europe/Vaduz
+pref.timezone.Europe.Vatican=Europe/Vatican
+pref.timezone.Europe.Vienna=Europe/Vienna
+pref.timezone.Europe.Vilnius=Europe/Vilnius
+pref.timezone.Europe.Volgograd=Europe/Volgograd
+pref.timezone.Europe.Warsaw=Europe/Warsaw
+pref.timezone.Europe.Zagreb=Europe/Zagreb
+pref.timezone.Europe.Zaporozhye=Europe/Zaporozhye
+pref.timezone.Europe.Zurich=Europe/Zurich
+pref.timezone.Indian.Antananarivo=Indian/Antananarivo
+pref.timezone.Indian.Chagos=Indian/Chagos
+pref.timezone.Indian.Christmas=Indian/Christmas
+pref.timezone.Indian.Cocos=Indian/Cocos
+pref.timezone.Indian.Comoro=Indian/Comoro
+pref.timezone.Indian.Kerguelen=Indian/Kerguelen
+pref.timezone.Indian.Mahe=Indian/Mahe
+pref.timezone.Indian.Maldives=Indian/Maldives
+pref.timezone.Indian.Mauritius=Indian/Mauritius
+pref.timezone.Indian.Mayotte=Indian/Mayotte
+pref.timezone.Indian.Reunion=Indian/Reunion
+pref.timezone.Pacific.Apia=Pacific/Apia
+pref.timezone.Pacific.Auckland=Pacific/Auckland
+pref.timezone.Pacific.Chatham=Pacific/Chatham
+pref.timezone.Pacific.Easter=Pacific/Easter
+pref.timezone.Pacific.Efate=Pacific/Efate
+pref.timezone.Pacific.Enderbury=Pacific/Enderbury
+pref.timezone.Pacific.Fakaofo=Pacific/Fakaofo
+pref.timezone.Pacific.Fiji=Pacific/Fiji
+pref.timezone.Pacific.Funafuti=Pacific/Funafuti
+pref.timezone.Pacific.Galapagos=Pacific/Galapagos
+pref.timezone.Pacific.Gambier=Pacific/Gambier
+pref.timezone.Pacific.Guadalcanal=Pacific/Guadalcanal
+pref.timezone.Pacific.Guam=Pacific/Guam
+pref.timezone.Pacific.Honolulu=Pacific/Honolulu
+pref.timezone.Pacific.Johnston=Pacific/Johnston
+pref.timezone.Pacific.Kiritimati=Pacific/Kiritimati
+pref.timezone.Pacific.Kosrae=Pacific/Kosrae
+pref.timezone.Pacific.Kwajalein=Pacific/Kwajalein
+pref.timezone.Pacific.Majuro=Pacific/Majuro
+pref.timezone.Pacific.Marquesas=Pacific/Marquesas
+pref.timezone.Pacific.Midway=Pacific/Midway
+pref.timezone.Pacific.Nauru=Pacific/Nauru
+pref.timezone.Pacific.Niue=Pacific/Niue
+pref.timezone.Pacific.Norfolk=Pacific/Norfolk
+pref.timezone.Pacific.Noumea=Pacific/Noumea
+pref.timezone.Pacific.Pago_Pago=Pacific/Pago Pago
+pref.timezone.Pacific.Palau=Pacific/Palau
+pref.timezone.Pacific.Pitcairn=Pacific/Pitcairn
+pref.timezone.Pacific.Ponape=Pacific/Ponape
+pref.timezone.Pacific.Port_Moresby=Pacific/Port Moresby
+pref.timezone.Pacific.Rarotonga=Pacific/Rarotonga
+pref.timezone.Pacific.Saipan=Pacific/Saipan
+pref.timezone.Pacific.Tahiti=Pacific/Tahiti
+pref.timezone.Pacific.Tarawa=Pacific/Tarawa
+pref.timezone.Pacific.Tongatapu=Pacific/Tongatapu
+pref.timezone.Pacific.Truk=Pacific/Truk
+pref.timezone.Pacific.Wake=Pacific/Wake
+pref.timezone.Pacific.Wallis=Pacific/Wallis
+
+# the following have been missing
+pref.timezone.America.Indiana.Tell_City=America/Indiana/Tell City
+pref.timezone.America.Indiana.Winamac=America/Indiana/Winamac
+pref.timezone.America.Marigot=America/Marigot
+pref.timezone.America.Resolute=America/Resolute
+pref.timezone.America.St_Barthelemy=America/St. Barthelemy
+
+# added with 2008d:
+pref.timezone.America.Argentina.San_Luis=America/Argentina/San Luis
+pref.timezone.America.Santarem=America/Santarem
+pref.timezone.Asia.Ho_Chi_Minh=Asia/Ho Chi Minh
+pref.timezone.Asia.Kolkata=Asia/Kolkata
+
+# added with 2008i:
+pref.timezone.America.Argentina.Salta=America/Argentina/Salta
+
+# added with 2010i
+pref.timezone.America.Matamoros=America/Matamoros
+pref.timezone.America.Ojinaga=America/Ojinaga
+pref.timezone.America.Santa_Isabel=America/Santa Isabel
+pref.timezone.Antarctica.Macquarie=Antarctica/Macquarie
+pref.timezone.Asia.Novokuznetsk=Asia/Novokuznetsk
+
+#added with 2011b
+pref.timezone.America.Bahia_Banderas=América/Bahia
+pref.timezone.America.North_Dakota.Beulah=América/Dakota do norte/Beulah
+pref.timezone.Pacific.Chuuk=Pacífico/Chuuk
+pref.timezone.Pacific.Pohnpei=Pacífico/Pohnpei
+
+#added with 2011n
+pref.timezone.Africa.Juba=África/Juba
+pref.timezone.America.Kralendijk=América/Kralendijk
+pref.timezone.America.Lower_Princes=América/Lower Princes
+pref.timezone.America.Metlakatla=América/Metlakatla
+pref.timezone.America.Sitka=América/Sitka
+pref.timezone.Asia.Hebron=Ásia/Hebron
+
+#added with 2013a
+pref.timezone.America.Creston=América/Creston
+pref.timezone.Asia.Khandyga=Ásia/Khandyga
+pref.timezone.Asia.Ust-Nera=Ásia/Ust-Nera
+pref.timezone.Europe.Busingen=Europa/Busingen
+
+#added with 2014b
+pref.timezone.Antarctica.Troll=Antártica/Troll
+
+#added with 2014j
+pref.timezone.Asia.Chita=Ásia/Chita
+pref.timezone.Asia.Srednekolymsk=Ásia/Srednekolymsk
+pref.timezone.Pacific.Bougainville=Pacífico/Bougainville
+
+#added with 2.2015g
+pref.timezone.America.Fort_Nelson=América/Forte Nelson
+
+#added with 2.2016b
+pref.timezone.Europe.Ulyanovsk=Europa/Ulyanovsk
+pref.timezone.Europe.Astrakhan=Europa/Astrakhan
+pref.timezone.Asia.Barnaul=Ásia/Barnaul
+
+#added with 2.2016i
+pref.timezone.Asia.Yangon=Ásia/Yangon
+pref.timezone.Asia.Tomsk=Ásia/Tomsk
+pref.timezone.Asia.Famagusta=Ásia/Famagusta
+pref.timezone.Europe.Kirov=Europa/Kirov
+
+#added with 2.2016j
+pref.timezone.Europe.Saratov=Europa/Saratov
+pref.timezone.Asia.Atyrau=Ásia/Atyrau
+
+#added with 2.2017b
+pref.timezone.America.Punta_Arenas=América/Punta Arenas
+
+#added with 2.2018i
+pref.timezone.Asia.Qostanay=Ásia/Qostanay
+
+#added with 2.2020a
+pref.timezone.America.Nuuk=América/Nuuk
diff --git a/l10n-pt-BR/calendar/chrome/lightning/lightning-toolbar.dtd b/l10n-pt-BR/calendar/chrome/lightning/lightning-toolbar.dtd
new file mode 100644
index 0000000000..270772df70
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/lightning/lightning-toolbar.dtd
@@ -0,0 +1,51 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY lightning.toolbar.calendar.name "Barra de ferramentas de agenda">
+<!ENTITY lightning.toolbar.calendar.name.accesskey "B">
+<!ENTITY lightning.toolbar.task.name "Barra de ferramentas de tarefas">
+<!ENTITY lightning.toolbar.task.name.accesskey "T">
+
+<!ENTITY lightning.toolbar.sync.label "Sincronizar">
+<!ENTITY lightning.toolbar.sync.tooltip "Recarregar agendas e sincronizar alterações">
+<!ENTITY lightning.toolbar.delete.label "Excluir">
+<!ENTITY lightning.toolbar.delete.tooltip "Excluir eventos ou tarefas selecionadas">
+<!ENTITY lightning.toolbar.edit.label "Editar">
+<!ENTITY lightning.toolbar.edit.tooltip "Editar evento ou tarefa selecionada">
+<!ENTITY lightning.toolbar.gototoday.label "Ir para hoje">
+<!ENTITY lightning.toolbar.gototoday.tooltip "Ir para hoje">
+<!ENTITY lightning.toolbar.print.label "Imprimir">
+<!ENTITY lightning.toolbar.print.tooltip "Imprimir eventos ou tarefas">
+
+<!-- Mode Toolbar -->
+<!ENTITY lightning.toolbar.calendar.label "Agenda">
+<!ENTITY lightning.toolbar.calendar.tooltip "Alterna para a aba de agenda">
+<!ENTITY lightning.toolbar.calendar.accesskey "d">
+<!ENTITY lightning.toolbar.task.label "Tarefas">
+<!ENTITY lightning.toolbar.task.tooltip "Alternar para a aba de tarefas">
+<!ENTITY lightning.toolbar.task.accesskey "T">
+
+<!-- Toolbar write button -->
+<!ENTITY lightning.toolbar.newevent.label "Evento">
+<!ENTITY lightning.toolbar.newevent.tooltip "Criar novo evento">
+<!ENTITY lightning.toolbar.newtask.label "Tarefa">
+<!ENTITY lightning.toolbar.newtask.tooltip "Criar nova tarefa">
+
+<!-- Calendar and Task Mode Toolbar -->
+<!ENTITY lightning.toolbar.day.label "Dia">
+<!ENTITY lightning.toolbar.day.accesskey "D">
+<!ENTITY lightning.toolbar.week.label "Semana">
+<!ENTITY lightning.toolbar.week.accesskey "S">
+<!ENTITY lightning.toolbar.multiweek.label "Semanal">
+<!ENTITY lightning.toolbar.multiweek.accesskey "u">
+<!ENTITY lightning.toolbar.month.label "Mês">
+<!ENTITY lightning.toolbar.month.accesskey "M">
+<!-- LOCALIZATION NOTE: the same as appmenuButton.label and appmenuButton1.tooltip
+ from messenger.dtd -->
+<!ENTITY lightning.toolbar.appmenuButton.label "AppMenu">
+<!ENTITY lightning.toolbar.appmenuButton1.tooltip "Exibir o menu do &brandShortName;">
+<!ENTITY lightning.toolbar.calendarmenu.label "Painel de agenda">
+<!ENTITY lightning.toolbar.calendarmenu.accesskey "P">
+<!ENTITY lightning.toolbar.calendarpane.label "Mostrar o painel de agenda">
+<!ENTITY lightning.toolbar.calendarpane.accesskey "p">
diff --git a/l10n-pt-BR/calendar/chrome/lightning/lightning.dtd b/l10n-pt-BR/calendar/chrome/lightning/lightning.dtd
new file mode 100644
index 0000000000..4e2ba11b2c
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/lightning/lightning.dtd
@@ -0,0 +1,110 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- WARNING! This file contains UTF-8 encoded characters!
+ - If this ==> … <== doesn't look like an ellipsis (three dots in a row),
+ - your editor isn't using UTF-8 encoding and may munge up the document!
+ -->
+
+<!-- Tools menu -->
+<!ENTITY lightning.preferencesLabel "Agenda">
+
+<!-- New menu popup in File menu -->
+<!ENTITY lightning.menupopup.new.event.label "Evento…">
+<!ENTITY lightning.menupopup.new.event.accesskey "E">
+<!ENTITY lightning.menupopup.new.task.label "Tarefa…">
+<!ENTITY lightning.menupopup.new.task.accesskey "T">
+<!ENTITY lightning.menupopup.new.calendar.label "Agenda…">
+<!ENTITY lightning.menupopup.new.calendar.accesskey "n">
+
+<!-- Open menu popup in File menu -->
+<!ENTITY lightning.menupopup.open.calendar.label "Arquivo de agenda…">
+<!ENTITY lightning.menupopup.open.calendar.accesskey "A">
+
+<!-- View Menu -->
+<!ENTITY lightning.menu.view.calendar.label "Agenda">
+<!ENTITY lightning.menu.view.calendar.accesskey "n">
+<!ENTITY lightning.menu.view.tasks.label "Tarefas">
+<!ENTITY lightning.menu.view.tasks.accesskey "r">
+
+<!-- Events and Tasks menu -->
+<!ENTITY lightning.menu.eventtask.label "Eventos e tarefas">
+<!ENTITY lightning.menu.eventtask.accesskey "n">
+
+<!-- properties dialog, calendar creation wizard -->
+<!-- LOCALIZATON NOTE(lightning.calendarproperties.email.label,
+ lightning.calendarproperties.forceEmailScheduling.label)
+ These strings are used in the calendar wizard and the calendar properties dialog, but are only
+ displayed when setting/using a caldav calendar -->
+<!ENTITY lightning.calendarproperties.email.label "Email:">
+<!ENTITY lightning.calendarproperties.forceEmailScheduling.label "Preferir o agendamento de email do lado do cliente">
+<!-- LOCALIZATON NOTE(lightning.calendarproperties.forceEmailScheduling.tooltiptext1,
+ lightning.calendarproperties.forceEmailScheduling.tooltiptext2)
+ - tooltiptext1 is used in the calendar wizard when setting a new caldav calendar
+ - tooltiptext2 is used in the calendar properties dialog for caldav calendars -->
+<!ENTITY lightning.calendarproperties.forceEmailScheduling.tooltiptext1 "Por enquanto, você só pode ativar isso depois de configurar esta agenda em sua caixa de diálogo de propriedades se o servidor da agenda se encarregar do agendamento.">
+<!ENTITY lightning.calendarproperties.forceEmailScheduling.tooltiptext2 "Esta opção só está disponível se o servidor de agenda lidar com agendamento. Ativar isto permitirá retroceder para o agendamento padrão baseado em emails, em vez de deixar por conta do servidor.">
+
+<!-- iMIP Bar (meeting support) -->
+<!ENTITY lightning.imipbar.btnAccept.label "Aceitar">
+<!ENTITY lightning.imipbar.btnAccept2.tooltiptext "Aceitar o convite para o evento">
+<!ENTITY lightning.imipbar.btnAcceptRecurrences.label "Aceitar todos">
+<!ENTITY lightning.imipbar.btnAcceptRecurrences2.tooltiptext "Aceitar convite do evento para todas as ocorrências do evento">
+<!ENTITY lightning.imipbar.btnAdd.label "Adicionar">
+<!ENTITY lightning.imipbar.btnAdd.tooltiptext "Adicionar o evento à agenda">
+<!ENTITY lightning.imipbar.btnDecline.label "Recusar">
+<!ENTITY lightning.imipbar.btnDecline2.tooltiptext "Recusar convite para evento">
+<!ENTITY lightning.imipbar.btnDeclineRecurrences.label "Recusar todos">
+<!ENTITY lightning.imipbar.btnDeclineRecurrences2.tooltiptext "Recusar convite do evento para todas as ocorrências do evento">
+<!ENTITY lightning.imipbar.btnDeclineCounter.label "Recusar">
+<!ENTITY lightning.imipbar.btnDeclineCounter.tooltiptext "Recusar a sugestão">
+<!ENTITY lightning.imipbar.btnDelete.label "Excluir">
+<!ENTITY lightning.imipbar.btnDelete.tooltiptext "Excluir da agenda">
+<!ENTITY lightning.imipbar.btnDetails.label "Detalhes…">
+<!ENTITY lightning.imipbar.btnDetails.tooltiptext "Exibir detalhes do evento">
+<!ENTITY lightning.imipbar.btnDoNotShowImipBar.label "Não mostrar essas mensagens">
+<!ENTITY lightning.imipbar.btnGoToCalendar.label "Agenda">
+<!ENTITY lightning.imipbar.btnGoToCalendar.tooltiptext "Ir para a aba de agenda">
+<!ENTITY lightning.imipbar.btnMore.label "Mais">
+<!ENTITY lightning.imipbar.btnMore.tooltiptext "Clique para mostrar mais opções">
+<!ENTITY lightning.imipbar.btnReconfirm2.label "Reconfirmar">
+<!ENTITY lightning.imipbar.btnReconfirm.tooltiptext "Envia uma reconfirmação ao organizador">
+<!ENTITY lightning.imipbar.btnReschedule.label "Reagendar">
+<!ENTITY lightning.imipbar.btnReschedule.tooltiptext "Reagendar o evento">
+<!ENTITY lightning.imipbar.btnSaveCopy.label "Salvar uma cópia">
+<!ENTITY lightning.imipbar.btnSaveCopy.tooltiptext "Salva uma cópia do evento na agenda, independentemente da resposta ao organizador. A lista de participantes será apagada.">
+<!ENTITY lightning.imipbar.btnTentative.label "Tentativa">
+<!ENTITY lightning.imipbar.btnTentative2.tooltiptext "Aceitar convite do evento provisoriamente">
+<!ENTITY lightning.imipbar.btnTentativeRecurrences.label "Todos provisórios">
+<!ENTITY lightning.imipbar.btnTentativeRecurrences2.tooltiptext "Aceitar convite do evento provisoriamente para todas as ocorrências do evento">
+<!ENTITY lightning.imipbar.btnUpdate.label "Atualizar">
+<!ENTITY lightning.imipbar.btnUpdate.tooltiptext "Atualizar o evento na agenda">
+<!ENTITY lightning.imipbar.description "Esta mensagem contém um convite para um evento.">
+
+<!ENTITY lightning.imipbar.btnSend.label "Enviar uma resposta agora">
+<!ENTITY lightning.imipbar.btnSend.tooltiptext "Enviar uma resposta para o organizador">
+<!ENTITY lightning.imipbar.btnSendSeries.tooltiptext "Enviar uma resposta da série inteira para o organizador">
+<!ENTITY lightning.imipbar.btnDontSend.label "Não enviar uma resposta">
+<!ENTITY lightning.imipbar.btnDontSend.tooltiptext "Alterar o seu estado de participação sem enviar uma resposta ao organizador">
+<!ENTITY lightning.imipbar.btnDontSendSeries.tooltiptext "Alterar o seu estado de participação para as séries sem enviar uma resposta ao organizador">
+
+<!-- Lightning specific keybindings -->
+<!ENTITY lightning.keys.event.showCalendar.key "C">
+<!ENTITY lightning.keys.event.showTasks.key "D">
+<!ENTITY lightning.keys.event.new "I">
+<!ENTITY lightning.keys.todo.new "D">
+
+<!-- Account Central page -->
+<!ENTITY lightning.acctCentral.newCalendar.label "Criar nova agenda">
+
+<!-- today-pane-specific -->
+<!ENTITY todaypane.showMinimonth.label "Exibir minimês">
+<!ENTITY todaypane.showMinimonth.accesskey "m">
+<!ENTITY todaypane.showMiniday.label "Exibir minidia">
+<!ENTITY todaypane.showMiniday.accesskey "d">
+<!ENTITY todaypane.showNone.label "Exibir nenhum">
+<!ENTITY todaypane.showNone.accesskey "n">
+<!ENTITY todaypane.showTodayPane.label "Exibir painel hoje">
+<!ENTITY todaypane.showTodayPane.accesskey "E">
+<!ENTITY todaypane.statusButton.label "Painel hoje">
diff --git a/l10n-pt-BR/calendar/chrome/lightning/lightning.properties b/l10n-pt-BR/calendar/chrome/lightning/lightning.properties
new file mode 100644
index 0000000000..a6e1051f39
--- /dev/null
+++ b/l10n-pt-BR/calendar/chrome/lightning/lightning.properties
@@ -0,0 +1,165 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Task mode title
+taskModeApplicationTitle=Tarefas
+
+# Tab titles
+tabTitleCalendar=Agenda
+tabTitleTasks=Tarefas
+
+# Html event display in message
+imipHtml.header=Convite para evento
+imipHtml.summary=Título:
+imipHtml.location=Local:
+imipHtml.when=Quando:
+imipHtml.organizer=Organizador:
+imipHtml.description=Descrição:
+# LOCALIZATION_NOTE(imipHtml.attachments): This is a label for one or more (additional) links to
+# documents or websites attached to this event.
+imipHtml.attachments=Anexos:
+imipHtml.comment=Comentário:
+imipHtml.attendees=Participantes:
+# LOCALIZATION_NOTE(imipHtml.url): This is a label for a reference to an (alternate) online
+# representation of the event (either directly human readable or not).
+imipHtml.url=Link relacionado:
+imipHtml.canceledOccurrences=Ocorrências canceladas:
+imipHtml.modifiedOccurrences=Ocorrências modificadas
+imipHtml.newLocation=Nova localização: %1$S
+# LOCALIZATION_NOTE(imipHtml.attendeeDelegatedFrom): this is appended behind an attendee name in the
+# email invitation preview - don't add leading/trailing whitespaces here
+# %1$S - a single delegator or a comma separated list of delegators
+imipHtml.attendeeDelegatedFrom=(delegado a %1$S)
+# LOCALIZATION_NOTE(imipHtml.attendeeDelegatedTo): this is appended behind an attendee name in the
+# email invitation preview - don't add leading/trailing whitespaces here
+# %1$S - a single delegatee or a comma separated list of delegatees
+imipHtml.attendeeDelegatedTo=(delegado a %1$S)
+
+# LOCALIZATION_NOTE(imipHtml.attendee.combined): tooltip for itip icon in email invitation preview.
+# Given an attendee loungeexample.org of type room is a mandatory participant and has accepted the
+# invitation, the tooltip would be:
+# lounge@example.org (room) is a required participant. lounge@example.org has confirmed attendance.
+# %1$S - value of imipHtml.attendeeRole2.*
+# %2$S - value of imipHtml.attendeePartStat2.*
+imipHtml.attendee.combined=%1$S %2$S
+
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.CHAIR): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.CHAIR=%1$S preside o evento.
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.NON-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.NON-PARTICIPANT=%1$S não é um participante.
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.OPT-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.OPT-PARTICIPANT=%1$S é um participante opcional.
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.REQ-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.REQ-PARTICIPANT=%1$S é um participante obrigatório.
+
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.ACCEPTED): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.ACCEPTED=%1$S confirmou presença.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.DECLINED): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.DECLINED=%1$S recusou a participação.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.DELEGATED): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+# %2$S - single delegatee or comma separated list of delegatees
+# delegation is different from invitation forwarding - in case of the former the original attendee
+# is replaced, while on the latter the receiver may take part additionally
+imipHtml.attendeePartStat2.DELEGATED=%1$S delegou a presença para %2$S.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.NEEDS-ACTION): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.NEEDS-ACTION=%1$S ainda precisa responder.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.TENTATIVE): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.TENTATIVE=%1$S confirmou presença provisoriamente.
+
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.INDIVIDUAL): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name <email address> representing an individual attendee
+imipHtml.attendeeUserType2.INDIVIDUAL=%1$S
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.GROUP): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name <email address> representing a group (e.g. a distribution list)
+imipHtml.attendeeUserType2.GROUP=%1$S (grupo)
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.RESOURCE): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name <email address> representing a resource (e.g. projector)
+imipHtml.attendeeUserType2.RESOURCE=%1$S (recurso)
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.ROOM): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name <email address> representing a room
+imipHtml.attendeeUserType2.ROOM=%1$S (sala)
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.UNKNOWN): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name <email address> representing an attendee of unknown type
+imipHtml.attendeeUserType2.UNKNOWN=%1$S
+
+imipAddedItemToCal2=O evento foi adicionado na sua agenda.
+imipCanceledItem2=O evento foi excluído da sua agenda.
+imipUpdatedItem2=O evento foi atualizado.
+imipBarCancelText=Esta mensagem contém um cancelamento de evento.
+imipBarCounterErrorText=Essa mensagem contém uma sugestão para um convite que não pode ser processado.
+imipBarCounterPreviousVersionText=Essa mensagem contém uma sugestão para uma versão anterior de um convite.
+imipBarCounterText=Essa mensagem contém uma sugestão para um convite.
+imipBarDisallowedCounterText=Essa mensagem contém uma sugestão, embora você não tenha permitido sugestões para este evento.
+imipBarDeclineCounterText=Essa mensagem contém uma resposta à sua sugestão.
+imipBarRefreshText=Esta mensagem solicita uma atualização de evento.
+imipBarPublishText=Esta mensagem contém um evento.
+imipBarRequestText=Esta mensagem contém um convite para um evento.
+imipBarSentText=Esta mensagem contém um evento enviado.
+imipBarSentButRemovedText=Esta mensagem contém um evento enviado que não está mais na sua agenda.
+imipBarUpdateText=Esta mensagem contém uma atualização para um evento existente.
+imipBarUpdateMultipleText=Esta mensagem contém atualizações para múltiplos eventos existentes.
+imipBarUpdateSeriesText=Esta mensagem contém uma atualização para uma série de eventos existentes.
+imipBarAlreadyProcessedText=Esta mensagem contém um evento já processado.
+imipBarProcessedNeedsAction=Esta mensagem contém um evento que você ainda não respondeu.
+imipBarProcessedMultipleNeedsAction=Esta mensagem contém múltiplos eventos que você ainda não respondeu.
+imipBarProcessedSeriesNeedsAction=Esta mensagem contém uma série de eventos que você ainda não respondeu.
+imipBarReplyText=Esta mensagem contém uma resposta a um convite.
+imipBarReplyToNotExistingItem=Esta mensagem contém uma resposta referindo-se a um evento que não está na sua agenda.
+# LOCALIZATION_NOTE(imipBarReplyToRecentlyRemovedItem):
+# %1$S - datetime of deletion
+imipBarReplyToRecentlyRemovedItem=Esta mensagem contém uma resposta referindo-se a um evento que foi removido da sua agenda em %1$S.
+imipBarUnsupportedText2=Esta mensagem contém um evento que esta versão do %1$S não consegue processar.
+imipBarProcessingFailed=Falha a processar a mensagem. Posição: %1$S.
+imipBarCalendarDeactivated=Esta mensagem contém informações do evento. Ative uma agenda para lidar com isso.
+imipBarNotWritable=Nenhuma agenda com permissão para alteração está configurada para receber convites, verifique as propriedades de agendas.
+imipSendMail.title=Notificações por email
+imipSendMail.text=Quer enviar mensagem de notificação agora?
+imipNoIdentity=Nenhuma
+imipNoCalendarAvailable=Não há agendas alteráveis disponíveis.
+
+itipReplySubject2=Resposta ao convite: %1$S
+itipReplyBodyAccept=%1$S aceitou seu convite para evento.
+itipReplyBodyDecline=%1$S recusou seu convite para evento.
+itipReplySubjectAccept2=Aceito: %1$S
+itipReplySubjectDecline2=Convite recusado: %1$S
+itipReplySubjectTentative2=Tentativa: %1$S
+itipRequestSubject2=Convite: %1$S
+itipRequestUpdatedSubject2=Atualizado: %1$S
+itipRequestBody=%1$S convidou você para %2$S
+itipCancelSubject2=Cancelado: %1$S
+itipCancelBody=%1$S cancelou este evento: « %2$S »
+itipCounterBody=%1$S fez uma sugestão para « %2$S »:
+itipDeclineCounterBody=%1$S recusou sua sugestão para « %2$S ».
+itipDeclineCounterSubject=Sugestão recusada: %1$S
+
+confirmProcessInvitation=Recentemente você excluiu este item, está certo de que quer processar este convite?
+confirmProcessInvitationTitle=Processar convite?
+
+invitationsLink.label=Convites: %1$S
+
+# LOCALIZATION NOTE(noIdentitySelectedNotification):
+noIdentitySelectedNotification=Se você quer usar esta agenda para armazenar convites de ou para outras pessoas, deve atribuir abaixo uma identidade de email.
diff --git a/l10n-pt-BR/calendar/extra-jar.mn b/l10n-pt-BR/calendar/extra-jar.mn
new file mode 100644
index 0000000000..ec41831ebf
--- /dev/null
+++ b/l10n-pt-BR/calendar/extra-jar.mn
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# this is an empty file
+# locales can ship "extra" files from here, to ship a custom set
+# of files for the help system
+# do not put any blank lines in this file
diff --git a/l10n-pt-BR/calendar/lightning-l10n.js b/l10n-pt-BR/calendar/lightning-l10n.js
new file mode 100644
index 0000000000..2f636626ee
--- /dev/null
+++ b/l10n-pt-BR/calendar/lightning-l10n.js
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#filter substitution
+
+# the default day to start the week on
+#0=Sunday 1=Monday 2=Tuesday 3=Wednesday 4=Thursday 5=Friday 6=Saturday
+pref("calendar.week.start", 0);
+
+# default days off (not in work week)
+pref("calendar.week.d0sundaysoff", true);
+pref("calendar.week.d1mondaysoff", false);
+pref("calendar.week.d2tuesdaysoff", false);
+pref("calendar.week.d3wednesdaysoff", false);
+pref("calendar.week.d4thursdaysoff", false);
+pref("calendar.week.d5fridaysoff", false);
+pref("calendar.week.d6saturdaysoff", true);
+
+pref("general.useragent.locale", "@AB_CD@");
+
+# categories
+pref("calendar.categories.names", "Bodas,Aniversário,Negócios,Ligações,Clientes,Concorrência,Favoritos,Retornos,Presentes,Feriados,Ideias,Problemas,Reunião,Miscelânea,Pessoal,Projetos,Feriado público,Posição,Fornecedores,Viagem,Férias");
diff --git a/l10n-pt-BR/calendar/sunbird-l10n.js b/l10n-pt-BR/calendar/sunbird-l10n.js
new file mode 100644
index 0000000000..c2870af04b
--- /dev/null
+++ b/l10n-pt-BR/calendar/sunbird-l10n.js
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#filter substitution
+
+# the default day to start the week on
+#0=Sunday 1=Monday 2=Tuesday 3=Wednesday 4=Thursday 5=Friday 6=Saturday
+pref("calendar.week.start", 0);
+
+# default days off (not in work week)
+pref("calendar.week.d0sundaysoff", true);
+pref("calendar.week.d1mondaysoff", false);
+pref("calendar.week.d2tuesdaysoff", false);
+pref("calendar.week.d3wednesdaysoff", false);
+pref("calendar.week.d4thursdaysoff", false);
+pref("calendar.week.d5fridaysoff", false);
+pref("calendar.week.d6saturdaysoff", true);
+
+pref("general.useragent.locale", "@AB_CD@");
+
+# categories
+pref("calendar.categories.names", "Aniversário,Negócios,Ligações,Concorrência,Cliente,Favoritos,Conversas,Presentes,Feriados,Idéias,Problemas,Diversos,Pessoal,Projetos,Feriado público,Posição,Fornecedores,Viagem,Férias");