summaryrefslogtreecommitdiffstats
path: root/l10n-el
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--l10n-el/browser/branding/official/brand.dtd11
-rw-r--r--l10n-el/browser/branding/official/brand.ftl37
-rw-r--r--l10n-el/browser/branding/official/brand.properties14
-rw-r--r--l10n-el/browser/browser/aboutCertError.ftl100
-rw-r--r--l10n-el/browser/browser/aboutConfig.ftl52
-rw-r--r--l10n-el/browser/browser/aboutDialog.ftl46
-rw-r--r--l10n-el/browser/browser/aboutLogins.ftl315
-rw-r--r--l10n-el/browser/browser/aboutPolicies.ftl17
-rw-r--r--l10n-el/browser/browser/aboutPrivateBrowsing.ftl27
-rw-r--r--l10n-el/browser/browser/aboutRestartRequired.ftl10
-rw-r--r--l10n-el/browser/browser/aboutRobots.ftl29
-rw-r--r--l10n-el/browser/browser/aboutSessionRestore.ftl51
-rw-r--r--l10n-el/browser/browser/aboutTabCrashed.ftl27
-rw-r--r--l10n-el/browser/browser/allTabsMenu.ftl25
-rw-r--r--l10n-el/browser/browser/appMenuNotifications.ftl78
-rw-r--r--l10n-el/browser/browser/appmenu.ftl166
-rw-r--r--l10n-el/browser/browser/branding/brandings.ftl32
-rw-r--r--l10n-el/browser/browser/branding/sync-brand.ftl13
-rw-r--r--l10n-el/browser/browser/browser.ftl612
-rw-r--r--l10n-el/browser/browser/browserContext.ftl339
-rw-r--r--l10n-el/browser/browser/browserSets.ftl180
-rw-r--r--l10n-el/browser/browser/customizeMode.ftl47
-rw-r--r--l10n-el/browser/browser/defaultBrowserNotification.ftl9
-rw-r--r--l10n-el/browser/browser/downloads.ftl166
-rw-r--r--l10n-el/browser/browser/editBookmarkOverlay.ftl42
-rw-r--r--l10n-el/browser/browser/menubar.ftl347
-rw-r--r--l10n-el/browser/browser/migration.ftl148
-rw-r--r--l10n-el/browser/browser/newInstallPage.ftl33
-rw-r--r--l10n-el/browser/browser/newtab/asrouter.ftl295
-rw-r--r--l10n-el/browser/browser/newtab/newtab.ftl242
-rw-r--r--l10n-el/browser/browser/newtab/onboarding.ftl241
-rw-r--r--l10n-el/browser/browser/nsserrors.ftl354
-rw-r--r--l10n-el/browser/browser/pageInfo.ftl231
-rw-r--r--l10n-el/browser/browser/panicButton.ftl31
-rw-r--r--l10n-el/browser/browser/places.ftl71
-rw-r--r--l10n-el/browser/browser/policies/policies-descriptions.ftl114
-rw-r--r--l10n-el/browser/browser/preferences/addEngine.ftl22
-rw-r--r--l10n-el/browser/browser/preferences/applicationManager.ftl25
-rw-r--r--l10n-el/browser/browser/preferences/blocklists.ftl33
-rw-r--r--l10n-el/browser/browser/preferences/clearSiteData.ftl53
-rw-r--r--l10n-el/browser/browser/preferences/colors.ftl48
-rw-r--r--l10n-el/browser/browser/preferences/connection.ftl88
-rw-r--r--l10n-el/browser/browser/preferences/containers.ftl87
-rw-r--r--l10n-el/browser/browser/preferences/fonts.ftl160
-rw-r--r--l10n-el/browser/browser/preferences/fxaPairDevice.ftl15
-rw-r--r--l10n-el/browser/browser/preferences/languages.ftl55
-rw-r--r--l10n-el/browser/browser/preferences/permissions.ftl157
-rw-r--r--l10n-el/browser/browser/preferences/preferences.ftl1177
-rw-r--r--l10n-el/browser/browser/preferences/selectBookmark.ftl9
-rw-r--r--l10n-el/browser/browser/preferences/siteDataSettings.ftl57
-rw-r--r--l10n-el/browser/browser/preferences/translation.ftl33
-rw-r--r--l10n-el/browser/browser/protections.ftl239
-rw-r--r--l10n-el/browser/browser/protectionsPanel.ftl98
-rw-r--r--l10n-el/browser/browser/safeMode.ftl16
-rw-r--r--l10n-el/browser/browser/safebrowsing/blockedSite.ftl33
-rw-r--r--l10n-el/browser/browser/sanitize.ftl110
-rw-r--r--l10n-el/browser/browser/screenshots.ftl47
-rw-r--r--l10n-el/browser/browser/search.ftl19
-rw-r--r--l10n-el/browser/browser/setDesktopBackground.ftl40
-rw-r--r--l10n-el/browser/browser/sidebarMenu.ftl15
-rw-r--r--l10n-el/browser/browser/sync.ftl21
-rw-r--r--l10n-el/browser/browser/syncedTabs.ftl43
-rw-r--r--l10n-el/browser/browser/tabContextMenu.ftl96
-rw-r--r--l10n-el/browser/browser/toolbarContextMenu.ftl75
-rw-r--r--l10n-el/browser/browser/touchbar/touchbar.ftl38
-rw-r--r--l10n-el/browser/browser/webrtcIndicator.ftl40
-rw-r--r--l10n-el/browser/chrome/browser-region/region.properties22
-rw-r--r--l10n-el/browser/chrome/browser/accounts.properties129
-rw-r--r--l10n-el/browser/chrome/browser/app-extension-fields.properties15
-rw-r--r--l10n-el/browser/chrome/browser/baseMenuOverlay.dtd18
-rw-r--r--l10n-el/browser/chrome/browser/brandings.dtd13
-rw-r--r--l10n-el/browser/chrome/browser/browser.dtd290
-rw-r--r--l10n-el/browser/chrome/browser/browser.properties1064
-rw-r--r--l10n-el/browser/chrome/browser/customizableui/customizableWidgets.properties100
-rw-r--r--l10n-el/browser/chrome/browser/downloads/downloads.properties99
-rw-r--r--l10n-el/browser/chrome/browser/feeds/subscribe.properties10
-rw-r--r--l10n-el/browser/chrome/browser/fxmonitor.properties49
-rw-r--r--l10n-el/browser/chrome/browser/migration/migration.dtd53
-rw-r--r--l10n-el/browser/chrome/browser/migration/migration.properties76
-rw-r--r--l10n-el/browser/chrome/browser/newInstall.dtd15
-rw-r--r--l10n-el/browser/chrome/browser/places/bookmarkProperties.properties16
-rw-r--r--l10n-el/browser/chrome/browser/places/places.dtd62
-rw-r--r--l10n-el/browser/chrome/browser/places/places.properties74
-rw-r--r--l10n-el/browser/chrome/browser/pocket.properties31
-rw-r--r--l10n-el/browser/chrome/browser/safebrowsing/safebrowsing.properties6
-rw-r--r--l10n-el/browser/chrome/browser/search.properties45
-rw-r--r--l10n-el/browser/chrome/browser/shellservice.properties28
-rw-r--r--l10n-el/browser/chrome/browser/siteData.properties8
-rw-r--r--l10n-el/browser/chrome/browser/sitePermissions.properties53
-rw-r--r--l10n-el/browser/chrome/browser/syncBrand.dtd6
-rw-r--r--l10n-el/browser/chrome/browser/syncSetup.properties14
-rw-r--r--l10n-el/browser/chrome/browser/tabbrowser.properties128
-rw-r--r--l10n-el/browser/chrome/browser/taskbar.properties12
-rw-r--r--l10n-el/browser/chrome/browser/translation.dtd59
-rw-r--r--l10n-el/browser/chrome/browser/translation.properties12
-rw-r--r--l10n-el/browser/chrome/browser/uiDensity.properties5
-rw-r--r--l10n-el/browser/chrome/browser/webrtcIndicator.properties61
-rw-r--r--l10n-el/browser/chrome/overrides/appstrings.properties45
-rw-r--r--l10n-el/browser/chrome/overrides/netError.dtd208
-rw-r--r--l10n-el/browser/chrome/overrides/settingsChange.dtd7
-rw-r--r--l10n-el/browser/crashreporter/crashreporter-override.ini9
-rw-r--r--l10n-el/browser/defaultagent/defaultagent_localized.ini12
-rw-r--r--l10n-el/browser/defines.inc12
-rw-r--r--l10n-el/browser/extensions/formautofill/formautofill.properties241
-rw-r--r--l10n-el/browser/extensions/report-site-issue/webcompat.properties10
-rw-r--r--l10n-el/browser/firefox-l10n.js6
-rw-r--r--l10n-el/browser/installer/custom.properties92
-rw-r--r--l10n-el/browser/installer/mui.properties61
-rw-r--r--l10n-el/browser/installer/nsisstrings.properties46
-rw-r--r--l10n-el/browser/installer/override.properties86
-rw-r--r--l10n-el/browser/pdfviewer/chrome.properties19
-rw-r--r--l10n-el/browser/pdfviewer/viewer.properties253
-rw-r--r--l10n-el/browser/profile/bookmarks.inc72
-rw-r--r--l10n-el/browser/updater/updater.ini12
-rw-r--r--l10n-el/calendar/README.txt3
-rw-r--r--l10n-el/calendar/calendar/calendar-context-menus.ftl7
-rw-r--r--l10n-el/calendar/calendar/calendar-ics-file-dialog.ftl31
-rw-r--r--l10n-el/calendar/calendar/calendar-summary-dialog.ftl15
-rw-r--r--l10n-el/calendar/calendar/calendar-uri-redirect-dialog.ftl11
-rw-r--r--l10n-el/calendar/calendar/calendar-widgets.ftl6
-rw-r--r--l10n-el/calendar/calendar/category-dialog.ftl7
-rw-r--r--l10n-el/calendar/calendar/preferences.ftl186
-rw-r--r--l10n-el/calendar/chrome/calendar/calendar-alarms.properties39
-rw-r--r--l10n-el/calendar/chrome/calendar/calendar-event-dialog-attendees.properties15
-rw-r--r--l10n-el/calendar/chrome/calendar/calendar-event-dialog.dtd428
-rw-r--r--l10n-el/calendar/chrome/calendar/calendar-event-dialog.properties541
-rw-r--r--l10n-el/calendar/chrome/calendar/calendar-extract.properties294
-rw-r--r--l10n-el/calendar/chrome/calendar/calendar-invitations-dialog.dtd19
-rw-r--r--l10n-el/calendar/chrome/calendar/calendar-invitations-dialog.properties10
-rw-r--r--l10n-el/calendar/chrome/calendar/calendar-occurrence-prompt.dtd7
-rw-r--r--l10n-el/calendar/chrome/calendar/calendar-occurrence-prompt.properties63
-rw-r--r--l10n-el/calendar/chrome/calendar/calendar-subscriptions-dialog.dtd14
-rw-r--r--l10n-el/calendar/chrome/calendar/calendar.dtd407
-rw-r--r--l10n-el/calendar/chrome/calendar/calendar.properties794
-rw-r--r--l10n-el/calendar/chrome/calendar/calendarCreation.dtd51
-rw-r--r--l10n-el/calendar/chrome/calendar/calendarCreation.properties6
-rw-r--r--l10n-el/calendar/chrome/calendar/categories.properties7
-rw-r--r--l10n-el/calendar/chrome/calendar/dateFormat.properties146
-rw-r--r--l10n-el/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd19
-rw-r--r--l10n-el/calendar/chrome/calendar/global.dtd54
-rw-r--r--l10n-el/calendar/chrome/calendar/menuOverlay.dtd50
-rw-r--r--l10n-el/calendar/chrome/calendar/migration.dtd9
-rw-r--r--l10n-el/calendar/chrome/calendar/migration.properties13
-rw-r--r--l10n-el/calendar/chrome/calendar/provider-uninstall.dtd12
-rw-r--r--l10n-el/calendar/chrome/calendar/timezones.properties488
-rw-r--r--l10n-el/calendar/chrome/lightning/lightning-toolbar.dtd51
-rw-r--r--l10n-el/calendar/chrome/lightning/lightning.dtd110
-rw-r--r--l10n-el/calendar/chrome/lightning/lightning.properties165
-rw-r--r--l10n-el/calendar/lightning-l10n.js23
-rw-r--r--l10n-el/chat/accounts.dtd41
-rw-r--r--l10n-el/chat/accounts.properties9
-rw-r--r--l10n-el/chat/commands.properties27
-rw-r--r--l10n-el/chat/contacts.properties8
-rw-r--r--l10n-el/chat/conversations.properties80
-rw-r--r--l10n-el/chat/dateFormat.properties62
-rw-r--r--l10n-el/chat/facebook.properties6
-rw-r--r--l10n-el/chat/imtooltip.properties10
-rw-r--r--l10n-el/chat/irc.properties209
-rw-r--r--l10n-el/chat/logger.properties7
-rw-r--r--l10n-el/chat/matrix.properties26
-rw-r--r--l10n-el/chat/skype.properties14
-rw-r--r--l10n-el/chat/status.properties23
-rw-r--r--l10n-el/chat/twitter.properties122
-rw-r--r--l10n-el/chat/xmpp.properties275
-rw-r--r--l10n-el/chat/yahoo.properties5
-rw-r--r--l10n-el/devtools/client/aboutdebugging.ftl394
-rw-r--r--l10n-el/devtools/client/accessibility.ftl79
-rw-r--r--l10n-el/devtools/client/accessibility.properties310
-rw-r--r--l10n-el/devtools/client/animationinspector.properties183
-rw-r--r--l10n-el/devtools/client/application.ftl144
-rw-r--r--l10n-el/devtools/client/boxmodel.properties48
-rw-r--r--l10n-el/devtools/client/changes.properties64
-rw-r--r--l10n-el/devtools/client/compatibility.ftl47
-rw-r--r--l10n-el/devtools/client/components.properties24
-rw-r--r--l10n-el/devtools/client/debugger.properties1130
-rw-r--r--l10n-el/devtools/client/device.properties20
-rw-r--r--l10n-el/devtools/client/dom.properties19
-rw-r--r--l10n-el/devtools/client/filterwidget.properties61
-rw-r--r--l10n-el/devtools/client/font-inspector.properties69
-rw-r--r--l10n-el/devtools/client/graphs.properties24
-rw-r--r--l10n-el/devtools/client/har.properties22
-rw-r--r--l10n-el/devtools/client/inspector.properties557
-rw-r--r--l10n-el/devtools/client/jit-optimizations.properties35
-rw-r--r--l10n-el/devtools/client/jsonview.properties47
-rw-r--r--l10n-el/devtools/client/layout.properties129
-rw-r--r--l10n-el/devtools/client/markers.properties139
-rw-r--r--l10n-el/devtools/client/memory.properties426
-rw-r--r--l10n-el/devtools/client/menus.properties35
-rw-r--r--l10n-el/devtools/client/netmonitor.properties1539
-rw-r--r--l10n-el/devtools/client/network-throttling.properties27
-rw-r--r--l10n-el/devtools/client/performance.dtd130
-rw-r--r--l10n-el/devtools/client/performance.properties160
-rw-r--r--l10n-el/devtools/client/perftools.ftl59
-rw-r--r--l10n-el/devtools/client/responsive.properties173
-rw-r--r--l10n-el/devtools/client/shared.properties26
-rw-r--r--l10n-el/devtools/client/sourceeditor.dtd18
-rw-r--r--l10n-el/devtools/client/sourceeditor.properties117
-rw-r--r--l10n-el/devtools/client/startup.properties252
-rw-r--r--l10n-el/devtools/client/storage.dtd17
-rw-r--r--l10n-el/devtools/client/storage.ftl33
-rw-r--r--l10n-el/devtools/client/storage.properties104
-rw-r--r--l10n-el/devtools/client/styleeditor.ftl27
-rw-r--r--l10n-el/devtools/client/styleeditor.properties67
-rw-r--r--l10n-el/devtools/client/toolbox-options.ftl140
-rw-r--r--l10n-el/devtools/client/toolbox.properties285
-rw-r--r--l10n-el/devtools/client/tooltips.ftl69
-rw-r--r--l10n-el/devtools/client/webconsole.properties561
-rw-r--r--l10n-el/devtools/shared/accessibility.properties142
-rw-r--r--l10n-el/devtools/shared/debugger.properties59
-rw-r--r--l10n-el/devtools/shared/eyedropper.properties14
-rw-r--r--l10n-el/devtools/shared/highlighters.properties35
-rw-r--r--l10n-el/devtools/shared/screenshot.properties133
-rw-r--r--l10n-el/devtools/shared/shared.properties6
-rw-r--r--l10n-el/devtools/shared/styleinspector.properties242
-rw-r--r--l10n-el/devtools/startup/aboutDevTools.ftl54
-rw-r--r--l10n-el/devtools/startup/key-shortcuts.properties67
-rw-r--r--l10n-el/devtools/startup/startup.properties8
-rw-r--r--l10n-el/dom/chrome/accessibility/AccessFu.properties359
-rw-r--r--l10n-el/dom/chrome/accessibility/mac/accessible.properties65
-rw-r--r--l10n-el/dom/chrome/accessibility/unix/accessible.properties17
-rw-r--r--l10n-el/dom/chrome/accessibility/win/accessible.properties17
-rw-r--r--l10n-el/dom/chrome/appstrings.properties38
-rw-r--r--l10n-el/dom/chrome/dom/dom.properties430
-rw-r--r--l10n-el/dom/chrome/global-strres.properties5
-rw-r--r--l10n-el/dom/chrome/global.dtd5
-rw-r--r--l10n-el/dom/chrome/layout/HtmlForm.properties43
-rw-r--r--l10n-el/dom/chrome/layout/MediaDocument.properties21
-rw-r--r--l10n-el/dom/chrome/layout/css.properties46
-rw-r--r--l10n-el/dom/chrome/layout/htmlparser.properties134
-rw-r--r--l10n-el/dom/chrome/layout/layout_errors.properties54
-rw-r--r--l10n-el/dom/chrome/layout/printing.properties56
-rw-r--r--l10n-el/dom/chrome/layout/xmlparser.properties48
-rw-r--r--l10n-el/dom/chrome/layout/xul.properties5
-rw-r--r--l10n-el/dom/chrome/mathml/mathml.properties16
-rw-r--r--l10n-el/dom/chrome/netError.dtd104
-rw-r--r--l10n-el/dom/chrome/netErrorApp.dtd34
-rw-r--r--l10n-el/dom/chrome/nsWebBrowserPersist.properties17
-rw-r--r--l10n-el/dom/chrome/plugins.properties18
-rw-r--r--l10n-el/dom/chrome/security/caps.properties9
-rw-r--r--l10n-el/dom/chrome/security/csp.properties107
-rw-r--r--l10n-el/dom/chrome/security/security.properties154
-rw-r--r--l10n-el/dom/chrome/svg/svg.properties5
-rw-r--r--l10n-el/dom/chrome/xml/prettyprint.dtd5
-rw-r--r--l10n-el/dom/chrome/xslt/xslt.properties39
-rw-r--r--l10n-el/dom/dom/media.ftl5
-rw-r--r--l10n-el/editor/ui/chrome/composer/editingOverlay.dtd40
-rw-r--r--l10n-el/editor/ui/chrome/composer/editor.dtd67
-rw-r--r--l10n-el/editor/ui/chrome/composer/editor.properties208
-rw-r--r--l10n-el/editor/ui/chrome/composer/editorOverlay.dtd365
-rw-r--r--l10n-el/editor/ui/chrome/composer/editorPrefsOverlay.dtd12
-rw-r--r--l10n-el/editor/ui/chrome/composer/editorSmileyOverlay.dtd58
-rw-r--r--l10n-el/editor/ui/chrome/composer/pref-composer.dtd29
-rw-r--r--l10n-el/editor/ui/chrome/composer/pref-editing.dtd31
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EdAdvancedEdit.dtd18
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EdColorPicker.dtd22
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EdConvertToTable.dtd15
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EdDialogOverlay.dtd18
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EdNamedAnchorProperties.dtd10
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditConflict.dtd10
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorButtonProperties.dtd27
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorColorProperties.dtd29
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorFieldSetProperties.dtd20
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorFormProperties.dtd21
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorHLineProperties.dtd27
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorImageProperties.dtd79
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorInputProperties.dtd50
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorInsertChars.dtd19
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorInsertMath.dtd21
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorInsertSource.dtd15
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorInsertTOC.dtd16
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorInsertTable.dtd18
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorLabelProperties.dtd18
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorLinkProperties.dtd6
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorListProperties.dtd20
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorPageProperties.dtd17
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorPersonalDictionary.dtd20
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorPublish.dtd65
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorPublishProgress.dtd16
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorReplace.dtd27
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorSaveAsCharset.dtd17
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorSelectProperties.dtd48
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorSnapToGrid.dtd15
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorSpellCheck.dtd38
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorTableProperties.dtd75
-rw-r--r--l10n-el/editor/ui/chrome/dialogs/EditorTextAreaProperties.dtd33
-rw-r--r--l10n-el/editor/ui/chrome/region/region.properties8
-rw-r--r--l10n-el/extensions/spellcheck/hunspell/README.txt59
-rw-r--r--l10n-el/extensions/spellcheck/hunspell/el.aff820
-rw-r--r--l10n-el/extensions/spellcheck/hunspell/el.dic588558
-rw-r--r--l10n-el/mail/all-l10n.js8
-rw-r--r--l10n-el/mail/branding/thunderbird/brand.dtd13
-rw-r--r--l10n-el/mail/branding/thunderbird/brand.ftl21
-rw-r--r--l10n-el/mail/branding/thunderbird/brand.properties7
-rw-r--r--l10n-el/mail/chrome/communicator/utilityOverlay.dtd46
-rw-r--r--l10n-el/mail/chrome/messenger-mapi/mapi.properties35
-rw-r--r--l10n-el/mail/chrome/messenger-newsblog/am-newsblog.dtd14
-rw-r--r--l10n-el/mail/chrome/messenger-newsblog/feed-subscriptions.dtd55
-rw-r--r--l10n-el/mail/chrome/messenger-newsblog/newsblog.properties93
-rw-r--r--l10n-el/mail/chrome/messenger-region/region.properties34
-rw-r--r--l10n-el/mail/chrome/messenger-smime/certFetchingStatus.dtd9
-rw-r--r--l10n-el/mail/chrome/messenger-smime/msgCompSMIMEOverlay.dtd39
-rw-r--r--l10n-el/mail/chrome/messenger-smime/msgCompSecurityInfo.dtd18
-rw-r--r--l10n-el/mail/chrome/messenger-smime/msgCompSecurityInfo.properties13
-rw-r--r--l10n-el/mail/chrome/messenger-smime/msgReadSMIMEOverlay.dtd8
-rw-r--r--l10n-el/mail/chrome/messenger-smime/msgReadSMIMEOverlay.properties11
-rw-r--r--l10n-el/mail/chrome/messenger-smime/msgReadSecurityInfo.dtd17
-rw-r--r--l10n-el/mail/chrome/messenger-smime/msgSecurityInfo.properties36
-rw-r--r--l10n-el/mail/chrome/messenger/AccountManager.dtd37
-rw-r--r--l10n-el/mail/chrome/messenger/AccountWizard.dtd127
-rw-r--r--l10n-el/mail/chrome/messenger/CustomHeaders.dtd11
-rw-r--r--l10n-el/mail/chrome/messenger/FilterEditor.dtd67
-rw-r--r--l10n-el/mail/chrome/messenger/FilterListDialog.dtd40
-rw-r--r--l10n-el/mail/chrome/messenger/SearchDialog.dtd38
-rw-r--r--l10n-el/mail/chrome/messenger/aboutDialog.dtd112
-rw-r--r--l10n-el/mail/chrome/messenger/aboutDownloads.dtd24
-rw-r--r--l10n-el/mail/chrome/messenger/aboutRights.properties6
-rw-r--r--l10n-el/mail/chrome/messenger/aboutSupportMail.properties15
-rw-r--r--l10n-el/mail/chrome/messenger/accountCreation.dtd110
-rw-r--r--l10n-el/mail/chrome/messenger/accountCreation.properties114
-rw-r--r--l10n-el/mail/chrome/messenger/accountCreationModel.properties20
-rw-r--r--l10n-el/mail/chrome/messenger/accountCreationUtil.properties34
-rw-r--r--l10n-el/mail/chrome/messenger/activity.dtd37
-rw-r--r--l10n-el/mail/chrome/messenger/activity.properties99
-rw-r--r--l10n-el/mail/chrome/messenger/addbuddy.dtd7
-rw-r--r--l10n-el/mail/chrome/messenger/addons.properties251
-rw-r--r--l10n-el/mail/chrome/messenger/addressbook/abAddressBookNameDialog.dtd7
-rw-r--r--l10n-el/mail/chrome/messenger/addressbook/abCard.dtd156
-rw-r--r--l10n-el/mail/chrome/messenger/addressbook/abContactsPanel.dtd49
-rw-r--r--l10n-el/mail/chrome/messenger/addressbook/abMailListDialog.dtd21
-rw-r--r--l10n-el/mail/chrome/messenger/addressbook/abMainWindow.dtd221
-rw-r--r--l10n-el/mail/chrome/messenger/addressbook/abNewCardDialog.dtd7
-rw-r--r--l10n-el/mail/chrome/messenger/addressbook/abResultsPane.dtd38
-rw-r--r--l10n-el/mail/chrome/messenger/addressbook/addressBook.properties262
-rw-r--r--l10n-el/mail/chrome/messenger/addressbook/ldapAutoCompErrs.properties104
-rw-r--r--l10n-el/mail/chrome/messenger/addressbook/pref-directory-add.dtd45
-rw-r--r--l10n-el/mail/chrome/messenger/addressbook/pref-directory.dtd17
-rw-r--r--l10n-el/mail/chrome/messenger/addressbook/replicationProgress.properties20
-rw-r--r--l10n-el/mail/chrome/messenger/am-addressing.dtd51
-rw-r--r--l10n-el/mail/chrome/messenger/am-advanced.dtd28
-rw-r--r--l10n-el/mail/chrome/messenger/am-archiveoptions.dtd25
-rw-r--r--l10n-el/mail/chrome/messenger/am-copies.dtd50
-rw-r--r--l10n-el/mail/chrome/messenger/am-e2e.properties5
-rw-r--r--l10n-el/mail/chrome/messenger/am-identities-list.dtd15
-rw-r--r--l10n-el/mail/chrome/messenger/am-identity-edit.dtd14
-rw-r--r--l10n-el/mail/chrome/messenger/am-im.dtd16
-rw-r--r--l10n-el/mail/chrome/messenger/am-junk.dtd31
-rw-r--r--l10n-el/mail/chrome/messenger/am-main.dtd47
-rw-r--r--l10n-el/mail/chrome/messenger/am-mdn.dtd33
-rw-r--r--l10n-el/mail/chrome/messenger/am-mdn.properties6
-rw-r--r--l10n-el/mail/chrome/messenger/am-offline.dtd57
-rw-r--r--l10n-el/mail/chrome/messenger/am-server-advanced.dtd31
-rw-r--r--l10n-el/mail/chrome/messenger/am-server-top.dtd89
-rw-r--r--l10n-el/mail/chrome/messenger/am-serverwithnoidentities.dtd6
-rw-r--r--l10n-el/mail/chrome/messenger/am-smime.dtd55
-rw-r--r--l10n-el/mail/chrome/messenger/am-smime.properties40
-rw-r--r--l10n-el/mail/chrome/messenger/app-extension-fields.properties11
-rw-r--r--l10n-el/mail/chrome/messenger/appUpdate.properties40
-rw-r--r--l10n-el/mail/chrome/messenger/appleMailImportMsgs.properties21
-rw-r--r--l10n-el/mail/chrome/messenger/baseMenuOverlay.dtd39
-rw-r--r--l10n-el/mail/chrome/messenger/beckyImportMsgs.properties19
-rw-r--r--l10n-el/mail/chrome/messenger/charsetTitles.properties84
-rw-r--r--l10n-el/mail/chrome/messenger/chat.dtd44
-rw-r--r--l10n-el/mail/chrome/messenger/chat.properties99
-rw-r--r--l10n-el/mail/chrome/messenger/configEditorOverlay.dtd5
-rw-r--r--l10n-el/mail/chrome/messenger/converterDialog.dtd11
-rw-r--r--l10n-el/mail/chrome/messenger/converterDialog.properties41
-rw-r--r--l10n-el/mail/chrome/messenger/custom.properties5
-rw-r--r--l10n-el/mail/chrome/messenger/customizeToolbar.dtd18
-rw-r--r--l10n-el/mail/chrome/messenger/customizeToolbar.properties11
-rw-r--r--l10n-el/mail/chrome/messenger/devtools/dbgserver.dtd4
-rw-r--r--l10n-el/mail/chrome/messenger/devtools/dbgserver.properties11
-rw-r--r--l10n-el/mail/chrome/messenger/downloadheaders.dtd20
-rw-r--r--l10n-el/mail/chrome/messenger/editContactOverlay.dtd20
-rw-r--r--l10n-el/mail/chrome/messenger/editContactOverlay.properties14
-rw-r--r--l10n-el/mail/chrome/messenger/fieldMapImport.dtd20
-rw-r--r--l10n-el/mail/chrome/messenger/filter.properties109
-rw-r--r--l10n-el/mail/chrome/messenger/folderProps.dtd74
-rw-r--r--l10n-el/mail/chrome/messenger/folderWidgets.properties12
-rw-r--r--l10n-el/mail/chrome/messenger/folderpane.dtd7
-rw-r--r--l10n-el/mail/chrome/messenger/gloda.properties175
-rw-r--r--l10n-el/mail/chrome/messenger/glodaComplete.properties19
-rw-r--r--l10n-el/mail/chrome/messenger/glodaFacetView.dtd29
-rw-r--r--l10n-el/mail/chrome/messenger/glodaFacetView.properties171
-rw-r--r--l10n-el/mail/chrome/messenger/imAccountWizard.dtd32
-rw-r--r--l10n-el/mail/chrome/messenger/imAccounts.properties63
-rw-r--r--l10n-el/mail/chrome/messenger/imapMsgs.properties268
-rw-r--r--l10n-el/mail/chrome/messenger/importDialog.dtd51
-rw-r--r--l10n-el/mail/chrome/messenger/importMsgs.properties304
-rw-r--r--l10n-el/mail/chrome/messenger/joinChat.dtd10
-rw-r--r--l10n-el/mail/chrome/messenger/junkLog.dtd10
-rw-r--r--l10n-el/mail/chrome/messenger/junkMailInfo.dtd11
-rw-r--r--l10n-el/mail/chrome/messenger/localMsgs.properties149
-rw-r--r--l10n-el/mail/chrome/messenger/mailEditorOverlay.dtd6
-rw-r--r--l10n-el/mail/chrome/messenger/mailOverlay.dtd11
-rw-r--r--l10n-el/mail/chrome/messenger/mailViewList.dtd8
-rw-r--r--l10n-el/mail/chrome/messenger/mailViewSetup.dtd11
-rw-r--r--l10n-el/mail/chrome/messenger/mailviews.properties13
-rw-r--r--l10n-el/mail/chrome/messenger/markByDate.dtd9
-rw-r--r--l10n-el/mail/chrome/messenger/messenger.dtd971
-rw-r--r--l10n-el/mail/chrome/messenger/messenger.properties801
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EdAdvancedEdit.dtd18
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EdColorPicker.dtd22
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EdConvertToTable.dtd15
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EdDialogOverlay.dtd18
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EdNamedAnchorProperties.dtd10
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EditorColorProperties.dtd29
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EditorHLineProperties.dtd27
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EditorImageProperties.dtd79
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EditorInsertChars.dtd19
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EditorInsertMath.dtd21
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EditorInsertSource.dtd15
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EditorInsertTOC.dtd16
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EditorInsertTable.dtd18
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EditorLinkProperties.dtd6
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EditorListProperties.dtd20
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EditorPersonalDictionary.dtd18
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EditorReplace.dtd29
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EditorSpellCheck.dtd38
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/EditorTableProperties.dtd75
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/askSendFormat.dtd20
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/askSendFormat.properties8
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/composeMsgs.properties493
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/editor.properties208
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/editorOverlay.dtd304
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/mailComposeEditorOverlay.dtd9
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/messengercompose.dtd345
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/sendProgress.dtd8
-rw-r--r--l10n-el/mail/chrome/messenger/messengercompose/sendProgress.properties21
-rw-r--r--l10n-el/mail/chrome/messenger/migration/migration.dtd30
-rw-r--r--l10n-el/mail/chrome/messenger/migration/migration.properties25
-rw-r--r--l10n-el/mail/chrome/messenger/mime.properties154
-rw-r--r--l10n-el/mail/chrome/messenger/mimeheader.properties35
-rw-r--r--l10n-el/mail/chrome/messenger/morkImportMsgs.properties18
-rw-r--r--l10n-el/mail/chrome/messenger/msgAccountCentral.dtd27
-rw-r--r--l10n-el/mail/chrome/messenger/msgHdrViewOverlay.dtd114
-rw-r--r--l10n-el/mail/chrome/messenger/msgPrintEngine.dtd16
-rw-r--r--l10n-el/mail/chrome/messenger/msgSynchronize.dtd23
-rw-r--r--l10n-el/mail/chrome/messenger/msgViewPickerOverlay.dtd22
-rw-r--r--l10n-el/mail/chrome/messenger/msgmdn.properties18
-rw-r--r--l10n-el/mail/chrome/messenger/multimessageview.dtd8
-rw-r--r--l10n-el/mail/chrome/messenger/multimessageview.properties66
-rw-r--r--l10n-el/mail/chrome/messenger/newFolderDialog.dtd16
-rw-r--r--l10n-el/mail/chrome/messenger/newmailaccount/accountProvisioner.dtd43
-rw-r--r--l10n-el/mail/chrome/messenger/newmailaccount/accountProvisioner.properties32
-rw-r--r--l10n-el/mail/chrome/messenger/news.properties56
-rw-r--r--l10n-el/mail/chrome/messenger/newsError.dtd31
-rw-r--r--l10n-el/mail/chrome/messenger/oeImportMsgs.properties76
-rw-r--r--l10n-el/mail/chrome/messenger/offline.properties28
-rw-r--r--l10n-el/mail/chrome/messenger/offlineStartup.properties8
-rw-r--r--l10n-el/mail/chrome/messenger/outlookImportMsgs.properties77
-rw-r--r--l10n-el/mail/chrome/messenger/pgpmime.properties10
-rw-r--r--l10n-el/mail/chrome/messenger/preferences/applicationManager.properties13
-rw-r--r--l10n-el/mail/chrome/messenger/preferences/applications.properties13
-rw-r--r--l10n-el/mail/chrome/messenger/preferences/messagestyle.properties13
-rw-r--r--l10n-el/mail/chrome/messenger/preferences/preferences.properties118
-rw-r--r--l10n-el/mail/chrome/messenger/prefs.properties90
-rw-r--r--l10n-el/mail/chrome/messenger/quickFilterBar.dtd276
-rw-r--r--l10n-el/mail/chrome/messenger/removeAccount.dtd22
-rw-r--r--l10n-el/mail/chrome/messenger/removeAccount.properties5
-rw-r--r--l10n-el/mail/chrome/messenger/renameFolderDialog.dtd9
-rw-r--r--l10n-el/mail/chrome/messenger/safeMode.dtd21
-rw-r--r--l10n-el/mail/chrome/messenger/sanitize.dtd42
-rw-r--r--l10n-el/mail/chrome/messenger/seamonkeyImportMsgs.properties18
-rw-r--r--l10n-el/mail/chrome/messenger/search-attributes.properties45
-rw-r--r--l10n-el/mail/chrome/messenger/search-operators.properties31
-rw-r--r--l10n-el/mail/chrome/messenger/search.properties27
-rw-r--r--l10n-el/mail/chrome/messenger/searchTermOverlay.dtd19
-rw-r--r--l10n-el/mail/chrome/messenger/shutdownWindow.properties10
-rw-r--r--l10n-el/mail/chrome/messenger/smime.properties13
-rw-r--r--l10n-el/mail/chrome/messenger/smtpEditOverlay.dtd24
-rw-r--r--l10n-el/mail/chrome/messenger/subscribe.dtd22
-rw-r--r--l10n-el/mail/chrome/messenger/subscribe.properties13
-rw-r--r--l10n-el/mail/chrome/messenger/tabmail.dtd9
-rw-r--r--l10n-el/mail/chrome/messenger/taskbar.properties8
-rw-r--r--l10n-el/mail/chrome/messenger/telemetry.properties13
-rw-r--r--l10n-el/mail/chrome/messenger/templateUtils.properties7
-rw-r--r--l10n-el/mail/chrome/messenger/textImportMsgs.properties48
-rw-r--r--l10n-el/mail/chrome/messenger/vCardImportMsgs.properties26
-rw-r--r--l10n-el/mail/chrome/messenger/viewLog.dtd12
-rw-r--r--l10n-el/mail/chrome/messenger/viewSource.dtd88
-rw-r--r--l10n-el/mail/chrome/messenger/viewSource.properties17
-rw-r--r--l10n-el/mail/chrome/messenger/viewZoomOverlay.dtd30
-rw-r--r--l10n-el/mail/chrome/messenger/virtualFolderListDialog.dtd10
-rw-r--r--l10n-el/mail/chrome/messenger/virtualFolderProperties.dtd22
-rw-r--r--l10n-el/mail/chrome/messenger/wmImportMsgs.properties76
-rw-r--r--l10n-el/mail/chrome/mozldap/ldap.properties261
-rw-r--r--l10n-el/mail/chrome/overrides/netError.dtd202
-rw-r--r--l10n-el/mail/chrome/overrides/profileDowngrade.dtd20
-rw-r--r--l10n-el/mail/chrome/overrides/settingsChange.dtd6
-rw-r--r--l10n-el/mail/defines.inc9
-rw-r--r--l10n-el/mail/installer/custom.properties85
-rw-r--r--l10n-el/mail/installer/mui.properties60
-rw-r--r--l10n-el/mail/installer/override.properties86
-rw-r--r--l10n-el/mail/messenger/aboutProfilesExtra.ftl5
-rw-r--r--l10n-el/mail/messenger/aboutRights.ftl39
-rw-r--r--l10n-el/mail/messenger/aboutSupportMail.ftl20
-rw-r--r--l10n-el/mail/messenger/accountCentral.ftl56
-rw-r--r--l10n-el/mail/messenger/addressbook/abCardDAVDialog.ftl35
-rw-r--r--l10n-el/mail/messenger/addressbook/abCardDAVProperties.ftl29
-rw-r--r--l10n-el/mail/messenger/menubar.ftl25
-rw-r--r--l10n-el/mail/messenger/messenger.ftl36
-rw-r--r--l10n-el/mail/messenger/messengercompose/messengercompose.ftl64
-rw-r--r--l10n-el/mail/messenger/newInstall.ftl9
-rw-r--r--l10n-el/mail/messenger/newInstallPage.ftl15
-rw-r--r--l10n-el/mail/messenger/openpgp/backupKeyPassword.ftl20
-rw-r--r--l10n-el/mail/messenger/openpgp/changeExpiryDlg.ftl22
-rw-r--r--l10n-el/mail/messenger/openpgp/composeKeyStatus.ftl16
-rw-r--r--l10n-el/mail/messenger/openpgp/keyWizard.ftl127
-rw-r--r--l10n-el/mail/messenger/openpgp/msgReadStatus.ftl39
-rw-r--r--l10n-el/mail/messenger/openpgp/oneRecipientStatus.ftl30
-rw-r--r--l10n-el/mail/messenger/openpgp/openpgp-frontend.ftl49
-rw-r--r--l10n-el/mail/messenger/openpgp/openpgp.ftl637
-rw-r--r--l10n-el/mail/messenger/otr/add-finger.ftl17
-rw-r--r--l10n-el/mail/messenger/otr/am-im-otr.ftl25
-rw-r--r--l10n-el/mail/messenger/otr/auth.ftl59
-rw-r--r--l10n-el/mail/messenger/otr/chat.ftl19
-rw-r--r--l10n-el/mail/messenger/otr/finger-sync.ftl12
-rw-r--r--l10n-el/mail/messenger/otr/finger.ftl18
-rw-r--r--l10n-el/mail/messenger/otr/otr.ftl97
-rw-r--r--l10n-el/mail/messenger/otr/otrUI.ftl86
-rw-r--r--l10n-el/mail/messenger/policies/aboutPolicies.ftl17
-rw-r--r--l10n-el/mail/messenger/policies/policies-descriptions.ftl88
-rw-r--r--l10n-el/mail/messenger/preferences/am-im.ftl6
-rw-r--r--l10n-el/mail/messenger/preferences/application-manager.ftl11
-rw-r--r--l10n-el/mail/messenger/preferences/attachment-reminder.ftl26
-rw-r--r--l10n-el/mail/messenger/preferences/colors.ftl52
-rw-r--r--l10n-el/mail/messenger/preferences/connection.ftl85
-rw-r--r--l10n-el/mail/messenger/preferences/cookies.ftl55
-rw-r--r--l10n-el/mail/messenger/preferences/dock-options.ftl26
-rw-r--r--l10n-el/mail/messenger/preferences/fonts.ftl133
-rw-r--r--l10n-el/mail/messenger/preferences/languages.ftl45
-rw-r--r--l10n-el/mail/messenger/preferences/new-tag.ftl14
-rw-r--r--l10n-el/mail/messenger/preferences/notifications.ftl33
-rw-r--r--l10n-el/mail/messenger/preferences/offline.ftl56
-rw-r--r--l10n-el/mail/messenger/preferences/passwordManager.ftl85
-rw-r--r--l10n-el/mail/messenger/preferences/permissions.ftl43
-rw-r--r--l10n-el/mail/messenger/preferences/preferences.ftl711
-rw-r--r--l10n-el/mail/messenger/preferences/receipts.ftl38
-rw-r--r--l10n-el/mail/messenger/preferences/sendoptions.ftl50
-rw-r--r--l10n-el/mail/messenger/preferences/system-integration.ftl38
-rw-r--r--l10n-el/mail/updater/updater.ini8
-rw-r--r--l10n-el/mobile/android/chrome/about.dtd21
-rw-r--r--l10n-el/mobile/android/chrome/aboutAccounts.dtd13
-rw-r--r--l10n-el/mobile/android/chrome/aboutAccounts.properties16
-rw-r--r--l10n-el/mobile/android/chrome/aboutAddons.dtd15
-rw-r--r--l10n-el/mobile/android/chrome/aboutAddons.properties12
-rw-r--r--l10n-el/mobile/android/chrome/aboutCertError.dtd38
-rw-r--r--l10n-el/mobile/android/chrome/aboutDownloads.dtd15
-rw-r--r--l10n-el/mobile/android/chrome/aboutDownloads.properties17
-rw-r--r--l10n-el/mobile/android/chrome/aboutHome.dtd7
-rw-r--r--l10n-el/mobile/android/chrome/aboutLogins.dtd10
-rw-r--r--l10n-el/mobile/android/chrome/aboutLogins.properties33
-rw-r--r--l10n-el/mobile/android/chrome/aboutPrivateBrowsing.dtd25
-rw-r--r--l10n-el/mobile/android/chrome/browser.properties476
-rw-r--r--l10n-el/mobile/android/chrome/config.dtd21
-rw-r--r--l10n-el/mobile/android/chrome/config.properties9
-rw-r--r--l10n-el/mobile/android/chrome/devicePrompt.properties5
-rw-r--r--l10n-el/mobile/android/chrome/passwordmgr.properties22
-rw-r--r--l10n-el/mobile/android/chrome/phishing.dtd27
-rw-r--r--l10n-el/mobile/android/chrome/pippki.properties84
-rw-r--r--l10n-el/mobile/android/chrome/sync.properties12
-rw-r--r--l10n-el/mobile/android/chrome/webcompatReporter.properties12
-rw-r--r--l10n-el/mobile/android/defines.inc12
-rw-r--r--l10n-el/mobile/android/mobile-l10n.js6
-rw-r--r--l10n-el/mobile/chrome/region.properties48
-rw-r--r--l10n-el/mobile/overrides/appstrings.properties41
-rw-r--r--l10n-el/mobile/overrides/netError.dtd211
-rw-r--r--l10n-el/netwerk/necko.properties109
-rw-r--r--l10n-el/security/manager/chrome/pipnss/nsserrors.properties331
-rwxr-xr-xl10n-el/security/manager/chrome/pipnss/pipnss.properties308
-rw-r--r--l10n-el/security/manager/chrome/pippki/pippki.properties85
-rw-r--r--l10n-el/security/manager/security/certificates/certManager.ftl251
-rw-r--r--l10n-el/security/manager/security/certificates/deviceManager.ftl101
-rw-r--r--l10n-el/security/manager/security/pippki/pippki.ftl84
-rw-r--r--l10n-el/services/sync/sync.properties14
-rw-r--r--l10n-el/suite/branding/seamonkey/brand.dtd9
-rw-r--r--l10n-el/suite/branding/seamonkey/brand.properties32
-rw-r--r--l10n-el/suite/chrome/branding/aboutRights.dtd82
-rw-r--r--l10n-el/suite/chrome/branding/aboutRights.properties9
-rw-r--r--l10n-el/suite/chrome/browser/linkToolbar.dtd48
-rw-r--r--l10n-el/suite/chrome/browser/mailNavigatorOverlay.dtd30
-rw-r--r--l10n-el/suite/chrome/browser/metadata.dtd31
-rw-r--r--l10n-el/suite/chrome/browser/metadata.properties19
-rw-r--r--l10n-el/suite/chrome/browser/navigator.dtd87
-rw-r--r--l10n-el/suite/chrome/browser/navigator.properties78
-rw-r--r--l10n-el/suite/chrome/browser/navigatorOverlay.dtd157
-rw-r--r--l10n-el/suite/chrome/browser/pageInfo.dtd111
-rw-r--r--l10n-el/suite/chrome/browser/pageInfo.properties77
-rw-r--r--l10n-el/suite/chrome/browser/tabbrowser.dtd27
-rw-r--r--l10n-el/suite/chrome/browser/tabbrowser.properties32
-rw-r--r--l10n-el/suite/chrome/browser/taskbar.properties21
-rw-r--r--l10n-el/suite/chrome/browser/webDeveloper.dtd72
-rw-r--r--l10n-el/suite/chrome/common/about.dtd70
-rw-r--r--l10n-el/suite/chrome/common/aboutPrivateBrowsing.dtd26
-rw-r--r--l10n-el/suite/chrome/common/aboutSessionRestore.dtd22
-rw-r--r--l10n-el/suite/chrome/common/aboutSyncTabs.dtd22
-rw-r--r--l10n-el/suite/chrome/common/askViewZoom.dtd6
-rw-r--r--l10n-el/suite/chrome/common/certError.dtd44
-rw-r--r--l10n-el/suite/chrome/common/console/console.dtd47
-rw-r--r--l10n-el/suite/chrome/common/console/console.properties17
-rw-r--r--l10n-el/suite/chrome/common/contentAreaCommands.dtd170
-rw-r--r--l10n-el/suite/chrome/common/contentAreaCommands.properties15
-rw-r--r--l10n-el/suite/chrome/common/customizeToolbar.dtd18
-rw-r--r--l10n-el/suite/chrome/common/customizeToolbar.properties13
-rw-r--r--l10n-el/suite/chrome/common/dataman/dataman.dtd156
-rw-r--r--l10n-el/suite/chrome/common/dataman/dataman.properties73
-rw-r--r--l10n-el/suite/chrome/common/datetimepicker.dtd7
-rw-r--r--l10n-el/suite/chrome/common/defaultClientDialog.dtd14
-rw-r--r--l10n-el/suite/chrome/common/downloads/downloadmanager.dtd95
-rw-r--r--l10n-el/suite/chrome/common/downloads/downloadmanager.properties146
-rw-r--r--l10n-el/suite/chrome/common/downloads/progressDialog.dtd20
-rw-r--r--l10n-el/suite/chrome/common/feeds/subscribe.dtd8
-rw-r--r--l10n-el/suite/chrome/common/feeds/subscribe.properties52
-rw-r--r--l10n-el/suite/chrome/common/gopherAddon.dtd9
-rw-r--r--l10n-el/suite/chrome/common/helpviewer/help.dtd56
-rw-r--r--l10n-el/suite/chrome/common/helpviewer/help.properties5
-rw-r--r--l10n-el/suite/chrome/common/migration/migration.dtd28
-rw-r--r--l10n-el/suite/chrome/common/migration/migration.properties52
-rw-r--r--l10n-el/suite/chrome/common/notification.dtd15
-rw-r--r--l10n-el/suite/chrome/common/notification.properties189
-rw-r--r--l10n-el/suite/chrome/common/openLocation.dtd22
-rw-r--r--l10n-el/suite/chrome/common/openLocation.properties11
-rw-r--r--l10n-el/suite/chrome/common/permissions/cookieViewer.dtd46
-rw-r--r--l10n-el/suite/chrome/common/permissions/cookieViewer.properties30
-rw-r--r--l10n-el/suite/chrome/common/permissions/permissionsManager.dtd19
-rw-r--r--l10n-el/suite/chrome/common/permissions/permissionsManager.properties23
-rw-r--r--l10n-el/suite/chrome/common/places/bookmarkProperties.properties19
-rw-r--r--l10n-el/suite/chrome/common/places/editBookmarkOverlay.dtd28
-rw-r--r--l10n-el/suite/chrome/common/places/places.dtd106
-rw-r--r--l10n-el/suite/chrome/common/places/places.properties100
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-advanced.dtd33
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-appearance.dtd37
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-applicationManager.dtd8
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-applicationManager.properties10
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-applications.dtd17
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-applications.properties34
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-cache.dtd35
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-certs.dtd23
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-colors.dtd35
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-content.dtd48
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-cookies.dtd39
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-debugging.dtd14
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-download.dtd31
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-findasyoutype.dtd21
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-fonts.dtd79
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-history.dtd25
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-http.dtd24
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-images.dtd22
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-keynav.dtd20
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-languages.dtd30
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-languages.properties13
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-links.dtd29
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-locationbar.dtd42
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-masterpass.dtd15
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-media.dtd23
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-mousewheel.dtd36
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-navigator.dtd50
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-offlineapps.dtd24
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-passwords.dtd13
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-popups.dtd34
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-privatedata.dtd27
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-proxies-advanced.dtd32
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-proxies.dtd31
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-scripts.dtd39
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-search.dtd21
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-security.dtd39
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-smartupdate.dtd31
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-spelling.dtd20
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-ssl.dtd44
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-sync.dtd56
-rw-r--r--l10n-el/suite/chrome/common/pref/pref-tabs.dtd31
-rw-r--r--l10n-el/suite/chrome/common/pref/preferences.dtd62
-rw-r--r--l10n-el/suite/chrome/common/pref/prefutilities.dtd40
-rw-r--r--l10n-el/suite/chrome/common/pref/prefutilities.properties45
-rw-r--r--l10n-el/suite/chrome/common/printPreview.dtd39
-rw-r--r--l10n-el/suite/chrome/common/profile/profileSelection.dtd35
-rw-r--r--l10n-el/suite/chrome/common/profile/profileSelection.properties22
-rw-r--r--l10n-el/suite/chrome/common/quitDialog.properties29
-rw-r--r--l10n-el/suite/chrome/common/safeBrowsing.dtd33
-rw-r--r--l10n-el/suite/chrome/common/safeMode.dtd27
-rw-r--r--l10n-el/suite/chrome/common/sanitize.dtd27
-rw-r--r--l10n-el/suite/chrome/common/search/engineManager.dtd29
-rw-r--r--l10n-el/suite/chrome/common/search/engineManager.properties9
-rw-r--r--l10n-el/suite/chrome/common/search/search-panel.dtd8
-rw-r--r--l10n-el/suite/chrome/common/search/search.properties6
-rw-r--r--l10n-el/suite/chrome/common/search/searchbar.dtd6
-rw-r--r--l10n-el/suite/chrome/common/setDesktopBackground.dtd19
-rw-r--r--l10n-el/suite/chrome/common/shellservice.properties7
-rw-r--r--l10n-el/suite/chrome/common/sidebar/customize.dtd31
-rw-r--r--l10n-el/suite/chrome/common/sidebar/preview.dtd5
-rw-r--r--l10n-el/suite/chrome/common/sidebar/sidebar.properties14
-rw-r--r--l10n-el/suite/chrome/common/sidebar/sidebarOverlay.dtd38
-rw-r--r--l10n-el/suite/chrome/common/sitePermissions.properties45
-rw-r--r--l10n-el/suite/chrome/common/sync/syncBrand.dtd6
-rw-r--r--l10n-el/suite/chrome/common/sync/syncGenericChange.properties37
-rw-r--r--l10n-el/suite/chrome/common/sync/syncKey.dtd18
-rw-r--r--l10n-el/suite/chrome/common/sync/syncQuota.dtd8
-rw-r--r--l10n-el/suite/chrome/common/sync/syncQuota.properties42
-rw-r--r--l10n-el/suite/chrome/common/sync/syncSetup.dtd116
-rw-r--r--l10n-el/suite/chrome/common/sync/syncSetup.properties50
-rw-r--r--l10n-el/suite/chrome/common/tasksOverlay.dtd64
-rw-r--r--l10n-el/suite/chrome/common/typeaheadfind.properties17
-rw-r--r--l10n-el/suite/chrome/common/utilityOverlay.dtd208
-rw-r--r--l10n-el/suite/chrome/common/utilityOverlay.properties35
-rw-r--r--l10n-el/suite/chrome/common/viewApplyThemeOverlay.dtd10
-rw-r--r--l10n-el/suite/chrome/common/viewApplyThemeOverlay.properties8
-rw-r--r--l10n-el/suite/chrome/common/viewZoomOverlay.dtd15
-rw-r--r--l10n-el/suite/chrome/common/viewZoomOverlay.properties32
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EdAdvancedEdit.dtd18
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EdColorPicker.dtd22
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EdConvertToTable.dtd15
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EdDialogOverlay.dtd18
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EdNamedAnchorProperties.dtd10
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditConflict.dtd10
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorButtonProperties.dtd27
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorColorProperties.dtd29
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorFieldSetProperties.dtd20
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorFormProperties.dtd21
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorHLineProperties.dtd27
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorImageProperties.dtd79
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorInputProperties.dtd50
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorInsertChars.dtd19
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorInsertMath.dtd21
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorInsertSource.dtd15
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorInsertTOC.dtd16
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorInsertTable.dtd18
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorLabelProperties.dtd18
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorLinkProperties.dtd6
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorListProperties.dtd20
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorPageProperties.dtd17
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorPersonalDictionary.dtd20
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorPublish.dtd65
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorPublishProgress.dtd16
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorReplace.dtd27
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorSaveAsCharset.dtd17
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorSelectProperties.dtd48
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorSnapToGrid.dtd15
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorSpellCheck.dtd38
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorTableProperties.dtd75
-rw-r--r--l10n-el/suite/chrome/editor/dialogs/EditorTextAreaProperties.dtd33
-rw-r--r--l10n-el/suite/chrome/editor/editingOverlay.dtd60
-rw-r--r--l10n-el/suite/chrome/editor/editor.dtd67
-rw-r--r--l10n-el/suite/chrome/editor/editor.properties208
-rw-r--r--l10n-el/suite/chrome/editor/editorOverlay.dtd368
-rw-r--r--l10n-el/suite/chrome/editor/editorSmileyOverlay.dtd58
-rw-r--r--l10n-el/suite/chrome/editor/prefs/editorPrefsOverlay.dtd12
-rw-r--r--l10n-el/suite/chrome/editor/prefs/pref-composer.dtd29
-rw-r--r--l10n-el/suite/chrome/editor/prefs/pref-editing.dtd31
-rw-r--r--l10n-el/suite/chrome/mailnews/CustomHeaders.dtd11
-rw-r--r--l10n-el/suite/chrome/mailnews/FilterEditor.dtd68
-rw-r--r--l10n-el/suite/chrome/mailnews/FilterListDialog.dtd30
-rw-r--r--l10n-el/suite/chrome/mailnews/SearchDialog.dtd38
-rw-r--r--l10n-el/suite/chrome/mailnews/addressbook/abAddressBookNameDialog.dtd5
-rw-r--r--l10n-el/suite/chrome/mailnews/addressbook/abCardOverlay.dtd157
-rw-r--r--l10n-el/suite/chrome/mailnews/addressbook/abMailListDialog.dtd19
-rw-r--r--l10n-el/suite/chrome/mailnews/addressbook/abMainWindow.dtd122
-rw-r--r--l10n-el/suite/chrome/mailnews/addressbook/abNewCardDialog.dtd7
-rw-r--r--l10n-el/suite/chrome/mailnews/addressbook/abResultsPaneOverlay.dtd52
-rw-r--r--l10n-el/suite/chrome/mailnews/addressbook/abSelectAddressesDialog.dtd30
-rw-r--r--l10n-el/suite/chrome/mailnews/addressbook/addressBook.properties264
-rw-r--r--l10n-el/suite/chrome/mailnews/addressbook/ldapAutoCompErrs.properties104
-rw-r--r--l10n-el/suite/chrome/mailnews/appleMailImportMsgs.properties20
-rw-r--r--l10n-el/suite/chrome/mailnews/beckyImportMsgs.properties19
-rw-r--r--l10n-el/suite/chrome/mailnews/charsetTitles.properties80
-rw-r--r--l10n-el/suite/chrome/mailnews/compose/addressingWidgetOverlay.dtd12
-rw-r--r--l10n-el/suite/chrome/mailnews/compose/askSendFormat.dtd20
-rw-r--r--l10n-el/suite/chrome/mailnews/compose/askSendFormat.properties8
-rw-r--r--l10n-el/suite/chrome/mailnews/compose/composeMsgs.properties302
-rw-r--r--l10n-el/suite/chrome/mailnews/compose/mailComposeEditorOverlay.dtd9
-rw-r--r--l10n-el/suite/chrome/mailnews/compose/messengercompose.dtd140
-rw-r--r--l10n-el/suite/chrome/mailnews/compose/sendProgress.dtd8
-rw-r--r--l10n-el/suite/chrome/mailnews/compose/sendProgress.properties21
-rw-r--r--l10n-el/suite/chrome/mailnews/custom.properties5
-rw-r--r--l10n-el/suite/chrome/mailnews/downloadheaders.dtd20
-rw-r--r--l10n-el/suite/chrome/mailnews/fieldMapImport.dtd20
-rw-r--r--l10n-el/suite/chrome/mailnews/filter.properties97
-rw-r--r--l10n-el/suite/chrome/mailnews/folderProps.dtd70
-rw-r--r--l10n-el/suite/chrome/mailnews/folderWidgets.properties12
-rw-r--r--l10n-el/suite/chrome/mailnews/folderpane.dtd11
-rw-r--r--l10n-el/suite/chrome/mailnews/gloda.properties104
-rw-r--r--l10n-el/suite/chrome/mailnews/imapMsgs.properties271
-rw-r--r--l10n-el/suite/chrome/mailnews/importDialog.dtd43
-rw-r--r--l10n-el/suite/chrome/mailnews/importMsgs.properties306
-rw-r--r--l10n-el/suite/chrome/mailnews/junkLog.dtd10
-rw-r--r--l10n-el/suite/chrome/mailnews/junkMailInfo.dtd11
-rw-r--r--l10n-el/suite/chrome/mailnews/localMsgs.properties149
-rw-r--r--l10n-el/suite/chrome/mailnews/mailEditorOverlay.dtd7
-rw-r--r--l10n-el/suite/chrome/mailnews/mailKeysOverlay.dtd26
-rw-r--r--l10n-el/suite/chrome/mailnews/mailOverlay.dtd11
-rw-r--r--l10n-el/suite/chrome/mailnews/mailTasksOverlay.dtd23
-rw-r--r--l10n-el/suite/chrome/mailnews/mailViewList.dtd8
-rw-r--r--l10n-el/suite/chrome/mailnews/mailViewSetup.dtd10
-rw-r--r--l10n-el/suite/chrome/mailnews/mailviews.properties13
-rw-r--r--l10n-el/suite/chrome/mailnews/mapi/mapi.properties13
-rw-r--r--l10n-el/suite/chrome/mailnews/markByDate.dtd9
-rw-r--r--l10n-el/suite/chrome/mailnews/messenger.dtd552
-rw-r--r--l10n-el/suite/chrome/mailnews/messenger.properties502
-rw-r--r--l10n-el/suite/chrome/mailnews/mime.properties156
-rw-r--r--l10n-el/suite/chrome/mailnews/mimeheader.properties39
-rw-r--r--l10n-el/suite/chrome/mailnews/msgAccountCentral.dtd24
-rw-r--r--l10n-el/suite/chrome/mailnews/msgHdrViewOverlay.dtd46
-rw-r--r--l10n-el/suite/chrome/mailnews/msgHdrViewPopup.dtd31
-rw-r--r--l10n-el/suite/chrome/mailnews/msgPrintEngine.dtd11
-rw-r--r--l10n-el/suite/chrome/mailnews/msgSynchronize.dtd23
-rw-r--r--l10n-el/suite/chrome/mailnews/msgViewPickerOverlay.dtd22
-rw-r--r--l10n-el/suite/chrome/mailnews/msgmdn.properties18
-rw-r--r--l10n-el/suite/chrome/mailnews/newFolderDialog.dtd16
-rw-r--r--l10n-el/suite/chrome/mailnews/news.properties56
-rw-r--r--l10n-el/suite/chrome/mailnews/newsError.dtd31
-rw-r--r--l10n-el/suite/chrome/mailnews/newsblog/am-newsblog.dtd17
-rw-r--r--l10n-el/suite/chrome/mailnews/newsblog/feed-subscriptions.dtd55
-rw-r--r--l10n-el/suite/chrome/mailnews/newsblog/newsblog.properties93
-rw-r--r--l10n-el/suite/chrome/mailnews/oeImportMsgs.properties77
-rw-r--r--l10n-el/suite/chrome/mailnews/offline.properties51
-rw-r--r--l10n-el/suite/chrome/mailnews/offlineStartup.properties8
-rw-r--r--l10n-el/suite/chrome/mailnews/outlookImportMsgs.properties72
-rw-r--r--l10n-el/suite/chrome/mailnews/pgpmime.properties11
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/AccountManager.dtd26
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/AccountWizard.dtd127
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/am-addressing.dtd49
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/am-advanced.dtd25
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/am-archiveoptions.dtd23
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/am-copies.dtd50
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/am-identities-list.dtd15
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/am-identity-edit.dtd18
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/am-junk.dtd31
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/am-main.dtd46
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/am-mdn.dtd34
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/am-mdn.properties6
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/am-offline.dtd57
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/am-server-advanced.dtd31
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/am-server-top.dtd89
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/am-serverwithnoidentities.dtd6
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/mailPrefsOverlay.dtd25
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/pref-addressing.dtd22
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/pref-character_encoding.dtd17
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/pref-composing_messages.dtd56
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/pref-directory-add.dtd45
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/pref-directory.dtd17
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/pref-formatting.dtd42
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/pref-junk.dtd40
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/pref-mailnews.dtd38
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/pref-notifications.dtd46
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/pref-offline.dtd38
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/pref-receipts.dtd28
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/pref-tags.dtd20
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/pref-viewing_messages.dtd47
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/prefs.properties90
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/removeAccount.dtd22
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/removeAccount.properties5
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/replicationProgress.properties20
-rw-r--r--l10n-el/suite/chrome/mailnews/pref/smtpEditOverlay.dtd24
-rw-r--r--l10n-el/suite/chrome/mailnews/renameFolderDialog.dtd9
-rw-r--r--l10n-el/suite/chrome/mailnews/search-attributes.properties45
-rw-r--r--l10n-el/suite/chrome/mailnews/search-operators.properties31
-rw-r--r--l10n-el/suite/chrome/mailnews/search.properties28
-rw-r--r--l10n-el/suite/chrome/mailnews/searchTermOverlay.dtd18
-rw-r--r--l10n-el/suite/chrome/mailnews/shutdownWindow.properties10
-rw-r--r--l10n-el/suite/chrome/mailnews/smime.properties11
-rw-r--r--l10n-el/suite/chrome/mailnews/smime/am-smime.dtd37
-rw-r--r--l10n-el/suite/chrome/mailnews/smime/am-smime.properties41
-rw-r--r--l10n-el/suite/chrome/mailnews/smime/certFetchingStatus.dtd9
-rw-r--r--l10n-el/suite/chrome/mailnews/smime/msgCompSMIMEOverlay.dtd20
-rw-r--r--l10n-el/suite/chrome/mailnews/smime/msgCompSMIMEOverlay.properties6
-rw-r--r--l10n-el/suite/chrome/mailnews/smime/msgCompSecurityInfo.dtd18
-rw-r--r--l10n-el/suite/chrome/mailnews/smime/msgCompSecurityInfo.properties13
-rw-r--r--l10n-el/suite/chrome/mailnews/smime/msgReadSMIMEOverlay.dtd8
-rw-r--r--l10n-el/suite/chrome/mailnews/smime/msgReadSMIMEOverlay.properties11
-rw-r--r--l10n-el/suite/chrome/mailnews/smime/msgReadSecurityInfo.dtd14
-rw-r--r--l10n-el/suite/chrome/mailnews/smime/msgSecurityInfo.properties44
-rw-r--r--l10n-el/suite/chrome/mailnews/start.dtd34
-rw-r--r--l10n-el/suite/chrome/mailnews/subscribe.dtd22
-rw-r--r--l10n-el/suite/chrome/mailnews/subscribe.properties14
-rw-r--r--l10n-el/suite/chrome/mailnews/tabmail.properties13
-rw-r--r--l10n-el/suite/chrome/mailnews/textImportMsgs.properties43
-rw-r--r--l10n-el/suite/chrome/mailnews/threadpane.dtd45
-rw-r--r--l10n-el/suite/chrome/mailnews/vCardImportMsgs.properties26
-rw-r--r--l10n-el/suite/chrome/mailnews/viewLog.dtd12
-rw-r--r--l10n-el/suite/chrome/mailnews/virtualFolderListDialog.dtd8
-rw-r--r--l10n-el/suite/chrome/mailnews/virtualFolderProperties.dtd22
-rw-r--r--l10n-el/suite/chrome/mailnews/wmImportMsgs.properties76
-rw-r--r--l10n-el/suite/chrome/mozldap/ldap.properties261
-rw-r--r--l10n-el/suite/crashreporter/crashreporter-override.ini9
-rw-r--r--l10n-el/suite/defines.inc9
-rw-r--r--l10n-el/suite/installer/windows/custom.properties90
-rw-r--r--l10n-el/suite/installer/windows/mui.properties64
-rw-r--r--l10n-el/suite/installer/windows/override.properties86
-rw-r--r--l10n-el/suite/profile/bookmarks.inc77
-rw-r--r--l10n-el/suite/updater/updater.ini8
-rw-r--r--l10n-el/toolkit/chrome/alerts/alert.dtd6
-rw-r--r--l10n-el/toolkit/chrome/alerts/alert.properties23
-rw-r--r--l10n-el/toolkit/chrome/autoconfig/autoconfig.properties12
-rw-r--r--l10n-el/toolkit/chrome/global-platform/mac/intl.properties7
-rw-r--r--l10n-el/toolkit/chrome/global-platform/mac/platformKeys.properties30
-rw-r--r--l10n-el/toolkit/chrome/global-platform/unix/intl.properties7
-rw-r--r--l10n-el/toolkit/chrome/global-platform/unix/platformKeys.properties30
-rw-r--r--l10n-el/toolkit/chrome/global-platform/win/intl.properties7
-rw-r--r--l10n-el/toolkit/chrome/global-platform/win/platformKeys.properties30
-rw-r--r--l10n-el/toolkit/chrome/global/aboutReader.properties66
-rw-r--r--l10n-el/toolkit/chrome/global/aboutStudies.properties33
-rw-r--r--l10n-el/toolkit/chrome/global/aboutWebrtc.properties191
-rw-r--r--l10n-el/toolkit/chrome/global/appPicker.dtd7
-rw-r--r--l10n-el/toolkit/chrome/global/autocomplete.properties29
-rw-r--r--l10n-el/toolkit/chrome/global/browser.properties7
-rw-r--r--l10n-el/toolkit/chrome/global/charsetMenu.dtd5
-rw-r--r--l10n-el/toolkit/chrome/global/charsetMenu.properties127
-rw-r--r--l10n-el/toolkit/chrome/global/commonDialog.dtd10
-rw-r--r--l10n-el/toolkit/chrome/global/commonDialogs.properties35
-rw-r--r--l10n-el/toolkit/chrome/global/contentAreaCommands.properties23
-rw-r--r--l10n-el/toolkit/chrome/global/datetimebox.dtd35
-rw-r--r--l10n-el/toolkit/chrome/global/dialog.properties12
-rw-r--r--l10n-el/toolkit/chrome/global/dialogOverlay.dtd9
-rw-r--r--l10n-el/toolkit/chrome/global/editMenuOverlay.dtd11
-rw-r--r--l10n-el/toolkit/chrome/global/extensions.properties44
-rw-r--r--l10n-el/toolkit/chrome/global/fallbackMenubar.properties8
-rw-r--r--l10n-el/toolkit/chrome/global/filepicker.properties17
-rw-r--r--l10n-el/toolkit/chrome/global/findbar.properties23
-rw-r--r--l10n-el/toolkit/chrome/global/global-extension-fields.properties8
-rw-r--r--l10n-el/toolkit/chrome/global/globalKeys.dtd6
-rw-r--r--l10n-el/toolkit/chrome/global/intl.css11
-rw-r--r--l10n-el/toolkit/chrome/global/intl.properties51
-rw-r--r--l10n-el/toolkit/chrome/global/keys.properties70
-rw-r--r--l10n-el/toolkit/chrome/global/mozilla.dtd12
-rw-r--r--l10n-el/toolkit/chrome/global/narrate.properties20
-rw-r--r--l10n-el/toolkit/chrome/global/notification.dtd14
-rw-r--r--l10n-el/toolkit/chrome/global/printdialog.properties53
-rw-r--r--l10n-el/toolkit/chrome/global/resetProfile.dtd7
-rw-r--r--l10n-el/toolkit/chrome/global/resetProfile.properties14
-rw-r--r--l10n-el/toolkit/chrome/global/textcontext.dtd24
-rw-r--r--l10n-el/toolkit/chrome/global/tree.dtd5
-rw-r--r--l10n-el/toolkit/chrome/global/videocontrols.dtd52
-rw-r--r--l10n-el/toolkit/chrome/global/viewSource.properties16
-rw-r--r--l10n-el/toolkit/chrome/global/wizard.properties8
-rw-r--r--l10n-el/toolkit/chrome/mozapps/downloads/downloads.properties115
-rw-r--r--l10n-el/toolkit/chrome/mozapps/downloads/settingsChange.dtd6
-rw-r--r--l10n-el/toolkit/chrome/mozapps/downloads/unknownContentType.dtd26
-rw-r--r--l10n-el/toolkit/chrome/mozapps/downloads/unknownContentType.properties24
-rw-r--r--l10n-el/toolkit/chrome/mozapps/extensions/extensions.dtd5
-rw-r--r--l10n-el/toolkit/chrome/mozapps/extensions/extensions.properties84
-rw-r--r--l10n-el/toolkit/chrome/mozapps/handling/handling.dtd10
-rw-r--r--l10n-el/toolkit/chrome/mozapps/handling/handling.properties15
-rw-r--r--l10n-el/toolkit/chrome/mozapps/profile/profileSelection.properties57
-rw-r--r--l10n-el/toolkit/chrome/mozapps/update/updates.properties45
-rw-r--r--l10n-el/toolkit/chrome/passwordmgr/passwordmgr.properties74
-rw-r--r--l10n-el/toolkit/chrome/places/places.properties33
-rw-r--r--l10n-el/toolkit/chrome/pluginproblem/pluginproblem.dtd32
-rw-r--r--l10n-el/toolkit/chrome/search/search.properties19
-rw-r--r--l10n-el/toolkit/crashreporter/aboutcrashes.ftl22
-rw-r--r--l10n-el/toolkit/crashreporter/crashreporter.ini60
-rw-r--r--l10n-el/toolkit/defines.inc1
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutAbout.ftl9
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutAddons.ftl427
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutCompat.ftl13
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutConfig.ftl91
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutGlean.ftl14
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutHttpsOnlyError.ftl28
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutMozilla.ftl11
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutNetworking.ftl71
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutPerformance.ftl67
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutPlugins.ftl35
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutProcesses.ftl133
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutProfiles.ftl74
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutRights.ftl36
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutServiceWorkers.ftl35
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutSupport.ftl408
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutTelemetry.ftl147
-rw-r--r--l10n-el/toolkit/toolkit/about/aboutWebrtc.ftl243
-rw-r--r--l10n-el/toolkit/toolkit/about/abuseReports.ftl101
-rw-r--r--l10n-el/toolkit/toolkit/about/certviewer.ftl120
-rw-r--r--l10n-el/toolkit/toolkit/about/config.ftl52
-rw-r--r--l10n-el/toolkit/toolkit/about/url-classifier.ftl53
-rw-r--r--l10n-el/toolkit/toolkit/extensions/blocklist.ftl22
-rw-r--r--l10n-el/toolkit/toolkit/featuregates/features.ftl106
-rw-r--r--l10n-el/toolkit/toolkit/global/createProfileWizard.ftl53
-rw-r--r--l10n-el/toolkit/toolkit/global/handlerDialog.ftl69
-rw-r--r--l10n-el/toolkit/toolkit/global/processTypes.ftl36
-rw-r--r--l10n-el/toolkit/toolkit/global/profileDowngrade.ftl20
-rw-r--r--l10n-el/toolkit/toolkit/global/profileSelection.ftl36
-rw-r--r--l10n-el/toolkit/toolkit/global/resetProfile.ftl14
-rw-r--r--l10n-el/toolkit/toolkit/global/textActions.ftl37
-rw-r--r--l10n-el/toolkit/toolkit/global/unknownContentType.ftl13
-rw-r--r--l10n-el/toolkit/toolkit/global/videocontrols.ftl14
-rw-r--r--l10n-el/toolkit/toolkit/global/wizard.ftl37
-rw-r--r--l10n-el/toolkit/toolkit/intl/languageNames.ftl213
-rw-r--r--l10n-el/toolkit/toolkit/intl/regionNames.ftl280
-rw-r--r--l10n-el/toolkit/toolkit/main-window/autocomplete.ftl32
-rw-r--r--l10n-el/toolkit/toolkit/main-window/findbar.ftl38
-rw-r--r--l10n-el/toolkit/toolkit/payments/payments.ftl69
-rw-r--r--l10n-el/toolkit/toolkit/pictureinpicture/pictureinpicture.ftl22
-rw-r--r--l10n-el/toolkit/toolkit/preferences/preferences.ftl51
-rw-r--r--l10n-el/toolkit/toolkit/printing/printDialogs.ftl111
-rw-r--r--l10n-el/toolkit/toolkit/printing/printPreview.ftl71
-rw-r--r--l10n-el/toolkit/toolkit/printing/printUI.ftl102
-rw-r--r--l10n-el/toolkit/toolkit/updates/elevation.ftl22
-rw-r--r--l10n-el/toolkit/toolkit/updates/history.ftl27
995 files changed, 655012 insertions, 0 deletions
diff --git a/l10n-el/browser/branding/official/brand.dtd b/l10n-el/browser/branding/official/brand.dtd
new file mode 100644
index 0000000000..d094ad0f8d
--- /dev/null
+++ b/l10n-el/browser/branding/official/brand.dtd
@@ -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/. -->
+
+<!ENTITY brandShorterName "Firefox">
+<!ENTITY brandShortName "Firefox">
+<!ENTITY brandFullName "Mozilla Firefox">
+<!-- LOCALIZATION NOTE (brandProductName):
+ This brand name can be used in messages where the product name needs to
+ remain unchanged across different versions (Nightly, Beta, etc.). -->
+<!ENTITY brandProductName "Firefox">
diff --git a/l10n-el/browser/branding/official/brand.ftl b/l10n-el/browser/branding/official/brand.ftl
new file mode 100644
index 0000000000..89ff95241f
--- /dev/null
+++ b/l10n-el/browser/branding/official/brand.ftl
@@ -0,0 +1,37 @@
+# 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/.
+
+
+## Firefox Brand
+##
+## Firefox must be treated as a brand, and kept in English.
+## It cannot be:
+## - Declined to adapt to grammatical case.
+## - Transliterated.
+## - Translated.
+##
+## Reference: https://www.mozilla.org/styleguide/communications/translation/
+
+## Firefox and Mozilla Brand
+##
+## Firefox and Mozilla must be treated as a brand.
+##
+## They cannot be:
+## - Transliterated.
+## - Translated.
+##
+## Declension should be avoided where possible, leaving the original
+## brand unaltered in prominent UI positions.
+##
+## For further details, consult:
+## https://mozilla-l10n.github.io/styleguides/mozilla_general/#brands-copyright-and-trademark
+
+-brand-shorter-name = Firefox
+-brand-short-name = Firefox
+-brand-full-name = Mozilla Firefox
+# This brand name can be used in messages where the product name needs to
+# remain unchanged across different versions (Nightly, Beta, etc.).
+-brand-product-name = Firefox
+-vendor-short-name = Mozilla
+trademarkInfo = Το Firefox και τα λογότυπα του Firefox αποτελούν εμπορικά σήματα του Ιδρύματος Mozilla.
diff --git a/l10n-el/browser/branding/official/brand.properties b/l10n-el/browser/branding/official/brand.properties
new file mode 100644
index 0000000000..568f227d4c
--- /dev/null
+++ b/l10n-el/browser/branding/official/brand.properties
@@ -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/.
+
+brandShorterName=Firefox
+brandShortName=Firefox
+brandFullName=Mozilla Firefox
+# LOCALIZATION NOTE(brandProductName):
+# This brand name can be used in messages where the product name needs to
+# remain unchanged across different versions (Nightly, Beta, etc.).
+brandProductName=Firefox
+vendorShortName=Mozilla
+
+syncBrandShortName=Sync
diff --git a/l10n-el/browser/browser/aboutCertError.ftl b/l10n-el/browser/browser/aboutCertError.ftl
new file mode 100644
index 0000000000..3809608f76
--- /dev/null
+++ b/l10n-el/browser/browser/aboutCertError.ftl
@@ -0,0 +1,100 @@
+# 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/.
+
+# Variables:
+# $hostname (String) - Hostname of the website with cert error.
+cert-error-intro = Το { $hostname } χρησιμοποιεί ένα άκυρο πιστοποιητικό ασφαλείας.
+cert-error-mitm-intro = Οι ιστοσελίδες αποδεικνύουν την ταυτότητά τους μέσω πιστοποιητικών, τα οποία εκδίδονται από αρχές πιστοποιητικών.
+cert-error-mitm-mozilla = Το { -brand-short-name } υποστηρίζεται από τη μη κερδοσκοπική Mozilla, η οποία διαχειρίζεται ένα πλήρως ανοικτό κατάστημα αρχής πιστοποιητικών (CA). Το κατάστημα CA εξασφαλίζει ότι οι αρχές πιστοποιητικών εφαρμόζουν τις καλύτερες πρακτικές για την ασφάλεια των χρηστών.
+cert-error-mitm-connection = Το { -brand-short-name } χρησιμοποιεί το κατάστημα Mozilla CA για να επαληθεύσει ότι μια σύνδεση είναι ασφαλής, αντί για τα πιστοποιητικά που παρέχονται από το λειτουργικό σύστημα του χρήστη. Έτσι, αν ένα πρόγραμμα προστασίας από ιούς ή ένα δίκτυο παρεμβάλλεται σε μια σύνδεση με ένα πιστοποιητικό ασφαλείας που εκδίδεται από ένα CA που δεν είναι στο κατάστημα Mozilla CA, η σύνδεση θεωρείται επισφαλής.
+cert-error-trust-unknown-issuer-intro = Κάποιος ενδέχεται να προσπαθεί να μιμηθεί την ιστοσελίδα και δεν πρέπει να συνεχίσετε.
+# Variables:
+# $hostname (String) - Hostname of the website with cert error.
+cert-error-trust-unknown-issuer = Οι ιστοσελίδες αποδεικνύουν την ταυτότητά τους μέσω πιστοποιητικών. Το { -brand-short-name } δεν εμπιστεύεται το { $hostname }, επειδή ο εκδότης του πιστοποιητικού του είναι άγνωστος, το πιστοποιητικό είναι αυτοϋπογραφόμενο, ή ο διακομιστής δεν στέλνει τα σωστά, ενδιάμεσα πιστοποιητικά.
+cert-error-trust-cert-invalid = Το πιστοποιητικό δεν είναι έμπιστο επειδή έχει εκδοθεί από μια μη έγκυρη αρχή πιστοποίησης.
+cert-error-trust-untrusted-issuer = Το πιστοποιητικό δεν είναι έμπιστο επειδή ο εκδότης δεν είναι έμπιστος.
+cert-error-trust-signature-algorithm-disabled = Το πιστοποιητικό δεν είναι έμπιστο επειδή υπογράφηκε με έναν αλγόριθμό υπογραφής που απενεργοποιήθηκε, καθώς ο αλγόριθμος δεν είναι ασφαλής.
+cert-error-trust-expired-issuer = Το πιστοποιητικό δεν είναι έμπιστο επειδή το πιστοποιητικό εκδότη έχει λήξει.
+cert-error-trust-self-signed = Το πιστοποιητικό δεν είναι έμπιστο επειδή έχει αυτο-υπογραφεί.
+cert-error-trust-symantec = Τα πιστοποιητικά που εκδίδονται από τις GeoTrust, RapidSSL, Symantec, Thawte και VeriSign δεν θεωρούνται πλέον ασφαλή, επειδή αυτές οι αρχές πιστοποιητικών δεν ακολούθησαν πρακτικές ασφαλείας στο παρελθόν.
+cert-error-untrusted-default = Το πιστοποιητικό δεν προέρχεται από αξιόπιστη πηγή.
+# Variables:
+# $hostname (String) - Hostname of the website with cert error.
+cert-error-domain-mismatch = Οι ιστοσελίδες αποδεικνύουν την ταυτότητά τους μέσω πιστοποιητικών. Το { -brand-short-name } δεν εμπιστεύεται αυτή την ιστοσελίδα, επειδή χρησιμοποιεί ένα πιστοποιητικό που δεν είναι έγκυρο για το { $hostname }.
+# Variables:
+# $hostname (String) - Hostname of the website with cert error.
+# $alt-name (String) - Alternate domain name for which the cert is valid.
+cert-error-domain-mismatch-single = Οι ιστοσελίδες αποδεικνύουν την ταυτότητά τους μέσω πιστοποιητικών. Το { -brand-short-name } δεν εμπιστεύεται αυτή την ιστοσελίδα, επειδή χρησιμοποιεί ένα πιστοποιητικό που δεν είναι έγκυρο για το { $hostname }. Το πιστοποιητικό είναι έγκυρο μόνο για <a data-l10n-name="domain-mismatch-link">{ $alt-name }</a>.
+# Variables:
+# $hostname (String) - Hostname of the website with cert error.
+# $alt-name (String) - Alternate domain name for which the cert is valid.
+cert-error-domain-mismatch-single-nolink = Οι ιστοσελίδες αποδεικνύουν την ταυτότητά τους μέσω πιστοποιητικών. Το { -brand-short-name } δεν εμπιστεύεται αυτή την ιστοσελίδα, επειδή χρησιμοποιεί ένα πιστοποιητικό που δεν είναι έγκυρο για το { $hostname }. Το πιστοποιητικό είναι έγκυρο μόνο για { $alt-name }.
+# Variables:
+# $subject-alt-names (String) - Alternate domain names for which the cert is valid.
+cert-error-domain-mismatch-multiple = Οι ιστοσελίδες αποδεικνύουν την ταυτότητά τους μέσω πιστοποιητικών. Το { -brand-short-name } δεν εμπιστεύεται αυτή την ιστοσελίδα, επειδή χρησιμοποιεί ένα πιστοποιητικό που δεν είναι έγκυρο για το { $hostname }. Το πιστοποιητικό είναι έγκυρο μόνο για τα ακόλουθα ονόματα: { $subject-alt-names }
+# Variables:
+# $hostname (String) - Hostname of the website with cert error.
+# $not-after-local-time (Date) - Certificate is not valid after this time.
+cert-error-expired-now = Οι ιστοσελίδες αποδεικνύουν την ταυτότητά τους μέσω πιστοποιητικών, τα οποία είναι έγκυρα για ορισμένο χρονικό διάστημα. Το πιστοποιητικό για το { $hostname } έληξε στις { $not-after-local-time }.
+# Variables:
+# $hostname (String) - Hostname of the website with cert error.
+# $not-before-local-time (Date) - Certificate is not valid before this time.
+cert-error-not-yet-valid-now = Οι ιστοσελίδες αποδεικνύουν την ταυτότητά τους μέσω πιστοποιητικών, τα οποία είναι έγκυρα για ορισμένο χρονικό διάστημα. Το πιστοποιητικό για το { $hostname } δεν θα είναι έγκυρο μέχρι τις { $not-before-local-time }.
+# Variables:
+# $error (String) - NSS error code string that specifies type of cert error. e.g. unknown issuer, invalid cert, etc.
+cert-error-code-prefix-link = Κωδικός σφάλματος: <a data-l10n-name="error-code-link">{ $error }</a>
+# Variables:
+# $hostname (String) - Hostname of the website with cert error.
+cert-error-symantec-distrust-description = Οι ιστοσελίδες αποδεικνύουν την ταυτότητά τους μέσω πιστοποιητικών, τα οποία εκδίδονται από αρχές πιστοποιητικών. Τα περισσότερα προγράμματα περιήγησης δεν εμπιστεύονται πλέον πιστοποιητικά από τις GeoTrust, RapidSSL, Symantec, Thawte και VeriSign. Το { $hostname } χρησιμοποιεί ένα πιστοποιητικό από μία από αυτές τις αρχές και για το λόγο αυτό, η ταυτότητα της ιστοσελίδας δεν μπορεί να αποδειχθεί.
+cert-error-symantec-distrust-admin = Μπορείτε να ειδοποιήσετε το διαχειριστή της ιστοσελίδας σχετικά με αυτό το πρόβλημα.
+# Variables:
+# $hasHSTS (Boolean) - Indicates whether HSTS header is present.
+cert-error-details-hsts-label = HTTP Strict Transport Security: { $hasHSTS }
+# Variables:
+# $hasHPKP (Boolean) - Indicates whether HPKP header is present.
+cert-error-details-key-pinning-label = HTTP Public Key Pinning: { $hasHPKP }
+cert-error-details-cert-chain-label = Ακολουθία πιστοποιητικού:
+open-in-new-window-for-csp-or-xfo-error = Άνοιγμα ιστοσελίδας σε νέο παράθυρο
+# Variables:
+# $hostname (String) - Hostname of the website blocked by csp or xfo error.
+csp-xfo-blocked-long-desc = Για τη δική σας ασφάλεια, το { $hostname } δεν θα επιτρέψει στο { -brand-short-name } την εμφάνιση της σελίδας αν κάποια άλλη ιστοσελίδα την έχει ενσωματώσει. Για να δείτε αυτή τη σελίδα, πρέπει να την ανοίξετε σε νέο παράθυρο.
+
+## Messages used for certificate error titles
+
+connectionFailure-title = Αδυναμία σύνδεσης
+deniedPortAccess-title = Αυτή η διεύθυνση είναι περιορισμένη
+# "Hmm" is a sound made when considering or puzzling over something.
+# You don't have to include it in your translation if your language does not have a written word like this.
+dnsNotFound-title = Χμ. Έχουμε πρόβλημα στην εύρεση του ιστοτόπου.
+fileNotFound-title = Το αρχείο δεν βρέθηκε
+fileAccessDenied-title = Άρνηση πρόσβασης στο αρχείο
+generic-title = Ωχ!
+captivePortal-title = Σύνδεση στο δίκτυο
+# "Hmm" is a sound made when considering or puzzling over something.
+# You don't have to include it in your translation if your language does not have a written word like this.
+malformedURI-title = Χμ. Η διεύθυνση δεν φαίνεται να είναι σωστή.
+netInterrupt-title = Η σύνδεση διακόπηκε
+notCached-title = Το έγγραφο έληξε
+netOffline-title = Λειτουργία εκτός σύνδεσης
+contentEncodingError-title = Σφάλμα κωδικοποίησης περιεχομένου
+unsafeContentType-title = Επισφαλής τύπος αρχείου
+netReset-title = Έγινε επαναφορά της σύνδεσης
+netTimeout-title = Το χρονικό όριο σύνδεσης έληξε
+unknownProtocolFound-title = Η διεύθυνση δεν έγινε κατανοητή
+proxyConnectFailure-title = Ο διαμεσολαβητής αρνείται συνδέσεις
+proxyResolveFailure-title = Δεν ήταν δυνατή η εύρεση διαμεσολαβητή
+redirectLoop-title = Η σελίδα δεν ανακατευθύνει σωστά
+unknownSocketType-title = Απρόσμενη απάντηση από τον εξυπηρετητή
+nssFailure2-title = Αποτυχία ασφαλούς σύνδεσης
+csp-xfo-error-title = Το { -brand-short-name } δεν μπορεί να ανοίξει τη σελίδα
+corruptedContentError-title = Σφάλμα κατεστραμμένου περιεχομένου
+remoteXUL-title = Απομακρυσμένο XUL
+sslv3Used-title = Αδυναμία ασφαλούς σύνδεσης
+inadequateSecurityError-title = Η σύνδεσή σας δεν είναι ασφαλής
+blockedByPolicy-title = Αποκλεισμένη σελίδα
+clockSkewError-title = Το ρολόι του υπολογιστή σας είναι λάθος
+networkProtocolError-title = Σφάλμα πρωτοκόλλου δικτύου
+nssBadCert-title = Προειδοποίηση: Πιθανός κίνδυνος ασφαλείας
+nssBadCert-sts-title = Δεν έγινε σύνδεση: Πιθανό ζήτημα ασφαλείας
+certerror-mitm-title = Κάποιο λογισμικό εμποδίζει την ασφαλή σύνδεση του { -brand-short-name } με αυτή την ιστοσελίδα
diff --git a/l10n-el/browser/browser/aboutConfig.ftl b/l10n-el/browser/browser/aboutConfig.ftl
new file mode 100644
index 0000000000..37fe06602c
--- /dev/null
+++ b/l10n-el/browser/browser/aboutConfig.ftl
@@ -0,0 +1,52 @@
+# 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/.
+
+## These strings appear on the warning you see when first visiting about:config.
+
+about-config-intro-warning-title = Συνέχεια με προσοχή
+about-config-intro-warning-text = Η αλλαγή παραμέτρων των σύνθετων προτιμήσεων μπορεί να επηρεάσει την απόδοση ή την ασφάλεια του { -brand-short-name }.
+about-config-intro-warning-checkbox = Προειδοποίηση κατά την απόπειρα πρόσβασης σε αυτές τις προτιμήσεις
+about-config-intro-warning-button = Αποδοχή κινδύνου και συνέχεια
+
+##
+
+# This is shown on the page before searching but after the warning is accepted.
+about-config-caution-text = Η αλλαγή αυτών των προτιμήσεων μπορεί να επηρεάσει την απόδοση ή την ασφάλεια του { -brand-short-name }.
+
+about-config-page-title = Προηγμένες προτιμήσεις
+
+about-config-search-input1 =
+ .placeholder = Αναζήτηση ονόματος προτίμησης
+about-config-show-all = Εμφάνιση όλων
+
+about-config-pref-add-button =
+ .title = Προσθήκη
+about-config-pref-toggle-button =
+ .title = Εναλλαγή
+about-config-pref-edit-button =
+ .title = Επεξεργασία
+about-config-pref-save-button =
+ .title = Αποθήκευση
+about-config-pref-reset-button =
+ .title = Επαναφορά
+about-config-pref-delete-button =
+ .title = Διαγραφή
+
+## Labels for the type selection radio buttons shown when adding preferences.
+
+about-config-pref-add-type-boolean = Αληθείας
+about-config-pref-add-type-number = Αριθμητική
+about-config-pref-add-type-string = Αλφαριθμητική
+
+## Preferences with a non-default value are differentiated visually, and at the
+## same time the state is made accessible to screen readers using an aria-label
+## that won't be visible or copied to the clipboard.
+##
+## Variables:
+## $value (String): The full value of the preference.
+
+about-config-pref-accessible-value-default =
+ .aria-label = { $value } (προεπιλογή)
+about-config-pref-accessible-value-custom =
+ .aria-label = { $value } (προσαρμοσμένη)
diff --git a/l10n-el/browser/browser/aboutDialog.ftl b/l10n-el/browser/browser/aboutDialog.ftl
new file mode 100644
index 0000000000..a299c0fde8
--- /dev/null
+++ b/l10n-el/browser/browser/aboutDialog.ftl
@@ -0,0 +1,46 @@
+# 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/.
+
+aboutDialog-title =
+ .title = Σχετικά με το { -brand-full-name }
+releaseNotes-link = Τι νέο υπάρχει
+update-checkForUpdatesButton =
+ .label = Έλεγχος για ενημερώσεις
+ .accesskey = Ε
+update-updateButton =
+ .label = Επανεκκίνηση για ενημέρωση του { -brand-shorter-name }
+ .accesskey = Ε
+update-checkingForUpdates = Γίνεται έλεγχος για ενημερώσεις…
+update-downloading = <img data-l10n-name="icon"/>Γίνεται λήψη της ενημέρωσης — <label data-l10n-name="download-status"/>
+update-downloading-message = Λήψη ενημέρωσης — <label data-l10n-name="download-status"/>
+update-applying = Εφαρμογή ενημέρωσης…
+update-failed = Αποτυχία ενημέρωσης. <label data-l10n-name="failed-link">Λήψη της πιο πρόσφατης έκδοσης</label>
+update-failed-main = Αποτυχία ενημέρωσης. <a data-l10n-name="failed-link-main">Λήψη της πιο πρόσφατης έκδοσης</a>
+update-adminDisabled = Οι ενημερώσεις έχουν απενεργοποιηθεί από το διαχειριστή του συστήματος σας
+update-noUpdatesFound = Το { -brand-short-name } είναι ενημερωμένο
+update-otherInstanceHandlingUpdates = Το { -brand-short-name } ενημερώνεται από μια άλλη συνεδρία
+update-manual = Διαθέσιμες ενημερώσεις στο <label data-l10n-name="manual-link"/>
+update-unsupported = Δεν μπορείτε να εκτελέσετε περαιτέρω ενημερώσεις σε αυτό το σύστημα. <label data-l10n-name="unsupported-link">Μάθετε περισσότερα</label>
+update-restarting = Επανεκκίνηση…
+channel-description = Αυτή τη στιγμή, βρίσκεστε στο κανάλι ενημερώσεων της <label data-l10n-name="current-channel"></label> έκδοσης.
+warningDesc-version = Το { -brand-short-name } είναι σε πειραματικό στάδιο και πιθανότατα ασταθές.
+aboutdialog-help-user = Βοήθεια { -brand-product-name }
+aboutdialog-submit-feedback = Υποβολή σχολίων
+community-exp = <label data-l10n-name="community-exp-mozillaLink">Η { -vendor-short-name }</label> είναι μια <label data-l10n-name="community-exp-creditsLink">παγκόσμια κοινότητα</label> που συνεργάζεται για να κάνει το διαδίκτυο ανοικτό, ελεύθερο και προσβάσιμο από όλους χωρίς κανένα περιορισμό.
+community-2 = Το { -brand-short-name } έχει σχεδιαστεί από τη <label data-l10n-name="community-mozillaLink">{ -vendor-short-name }</label>, μια <label data-l10n-name="community-creditsLink">παγκόσμια κοινότητα</label> που συνεργάζεται για να κάνει το διαδίκτυο ανοικτό, ελεύθερο και προσβάσιμο από όλους χωρίς κανένα περιορισμό.
+helpus = Θέλετε να βοηθήσετε; <label data-l10n-name="helpus-donateLink">Κάντε μια δωρεά</label> ή <label data-l10n-name="helpus-getInvolvedLink">συμμετέχετε εθελοντικά!</label>
+bottomLinks-license = Πληροφορίες άδειας
+bottomLinks-rights = Δικαιώματα χρήστη
+bottomLinks-privacy = Πολιτική απορρήτου
+# Example of resulting string: 66.0.1 (64-bit)
+# Variables:
+# $version (String): version of Firefox, e.g. 66.0.1
+# $bits (Number): bits of the architecture (32 or 64)
+aboutDialog-version = { $version } ({ $bits }-bit)
+# Example of resulting string: 66.0a1 (2019-01-16) (64-bit)
+# Variables:
+# $version (String): version of Firefox for Nightly builds, e.g. 66.0a1
+# $isodate (String): date in ISO format, e.g. 2019-01-16
+# $bits (Number): bits of the architecture (32 or 64)
+aboutDialog-version-nightly = { $version } ({ $isodate }) ({ $bits }-bit)
diff --git a/l10n-el/browser/browser/aboutLogins.ftl b/l10n-el/browser/browser/aboutLogins.ftl
new file mode 100644
index 0000000000..dc99ebe4b0
--- /dev/null
+++ b/l10n-el/browser/browser/aboutLogins.ftl
@@ -0,0 +1,315 @@
+# 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/.
+# NOTE: New strings should use the about-logins- prefix.
+
+about-logins-page-title = Συνδέσεις & κωδικοί πρόσβασης
+
+# "Google Play" and "App Store" are both branding and should not be translated
+
+login-app-promo-title = Πάρτε τους κωδικούς πρόσβασής σας παντού
+login-app-promo-subtitle = Αποκτήστε δωρεάν την εφαρμογή { -lockwise-brand-name }
+login-app-promo-android =
+ .alt = Λήψη στο Google Play
+login-app-promo-apple =
+ .alt = Λήψη στο App Store
+login-filter =
+ .placeholder = Αναζήτηση συνδέσεων
+create-login-button = Δημιουργία νέας σύνδεσης
+fxaccounts-sign-in-text = Αποκτήστε πρόσβαση στους κωδικούς πρόσβασής σας από άλλες συσκευές
+fxaccounts-sign-in-button = Σύνδεση στο { -sync-brand-short-name }
+fxaccounts-avatar-button =
+ .title = Διαχείριση λογαριασμού
+
+## The ⋯ menu that is in the top corner of the page
+
+menu =
+ .title = Άνοιγμα μενού
+# This menuitem is only visible on Windows and macOS
+about-logins-menu-menuitem-import-from-another-browser = Εισαγωγή από άλλο φυλλομετρητή…
+about-logins-menu-menuitem-import-from-a-file = Εισαγωγή από αρχείο…
+about-logins-menu-menuitem-export-logins = Εξαγωγή συνδέσεων…
+about-logins-menu-menuitem-remove-all-logins = Αφαίρεση όλων των συνδέσεων…
+menu-menuitem-preferences =
+ { PLATFORM() ->
+ [windows] Επιλογές
+ *[other] Προτιμήσεις
+ }
+about-logins-menu-menuitem-help = Βοήθεια
+menu-menuitem-android-app = { -lockwise-brand-short-name } για Android
+menu-menuitem-iphone-app = { -lockwise-brand-short-name } για iPhone και iPad
+
+## Login List
+
+login-list =
+ .aria-label = Αντιστοιχίες συνδέσεων στην αναζήτηση
+login-list-count =
+ { $count ->
+ [one] { $count } σύνδεση
+ *[other] { $count } συνδέσεις
+ }
+login-list-sort-label-text = Ταξινόμηση:
+login-list-name-option = Όνομα (Α-Ω)
+login-list-name-reverse-option = Όνομα (Ω-Α)
+about-logins-login-list-alerts-option = Ειδοποιήσεις
+login-list-last-changed-option = Τελευταία αλλαγή
+login-list-last-used-option = Τελευταία χρήση
+login-list-intro-title = Δεν βρέθηκαν συνδέσεις
+login-list-intro-description = Όταν αποθηκεύετε έναν κωδικό στο { -brand-product-name }, θα εμφανίζεται εδώ.
+about-logins-login-list-empty-search-title = Δεν βρέθηκαν συνδέσεις
+about-logins-login-list-empty-search-description = Δεν βρέθηκαν αποτελέσματα για την αναζήτησή σας.
+login-list-item-title-new-login = Νέα σύνδεση
+login-list-item-subtitle-new-login = Εισαγάγετε τα διαπιστευτήριά σας
+login-list-item-subtitle-missing-username = (χωρίς όνομα χρήστη)
+about-logins-list-item-breach-icon =
+ .title = Παραβιασμένη ιστοσελίδα
+about-logins-list-item-vulnerable-password-icon =
+ .title = Ευάλωτος κωδικός πρόσβασης
+
+## Introduction screen
+
+login-intro-heading = Ψάχνετε τις αποθηκευμένες συνδέσεις σας; Ρυθμίστε το { -sync-brand-short-name }.
+about-logins-login-intro-heading-logged-out = Ψάχνετε τις αποθηκευμένες συνδέσεις σας; Ρυθμίστε το { -sync-brand-short-name } ή εισάγετέ τις.
+about-logins-login-intro-heading-logged-in = Δεν βρέθηκαν συγχρονισμένες συνδέσεις.
+login-intro-description = Αν αποθηκεύσατε τις συνδέσεις σας στο { -brand-product-name } σε άλλη συσκευή, ορίστε πώς μπορείτε να τις μεταφέρετε εδώ:
+login-intro-instruction-fxa = Στη συσκευή όπου έχουν αποθηκευτεί οι συνδέσεις σας, δημιουργήστε λογαριασμό ή συνδεθείτε στο { -fxaccount-brand-name }
+login-intro-instruction-fxa-settings = Στις Ρυθμίσεις του { -sync-brand-short-name }, φροντίστε να επιλέξετε το κουτάκι Συνδέσεις.
+about-logins-intro-instruction-help = Αν χρειάζεστε περισσότερη βοήθεια, επισκεφτείτε την ενότητα <a data-l10n-name="help-link">Υποστήριξη { -lockwise-brand-short-name }</a>
+about-logins-intro-import = Αν οι συνδέσεις σας είναι αποθηκευμένες σε άλλο πρόγραμμα περιήγησης, μπορείτε να <a data-l10n-name="import-link">τις εισάγετε στο { -lockwise-brand-short-name }</a>
+about-logins-intro-import2 = Εάν οι συνδέσεις σας αποθηκεύονται εκτός του { -brand-product-name }, μπορείτε να τις <a data-l10n-name="import-browser-link">εισαγάγετε από άλλο πρόγραμμα περιήγησης</a> ή <a data-l10n-name="import-file-link">από κάποιο αρχείο</a>
+
+## Login
+
+login-item-new-login-title = Δημιουργία νέας σύνδεσης
+login-item-edit-button = Επεξεργασία
+about-logins-login-item-remove-button = Αφαίρεση
+login-item-origin-label = Διεύθυνση ιστοσελίδας
+login-item-tooltip-message = Βεβαιωθείτε ότι ταιριάζει ακριβώς με τη διεύθυνση του ιστότοπου όπου συνδέεστε.
+login-item-origin =
+ .placeholder = https://www.example.com
+login-item-username-label = Όνομα χρήστη
+about-logins-login-item-username =
+ .placeholder = (χωρίς όνομα χρήστη)
+login-item-copy-username-button-text = Αντιγραφή
+login-item-copied-username-button-text = Αντιγράφηκε!
+login-item-password-label = Κωδικός πρόσβασης
+login-item-password-reveal-checkbox =
+ .aria-label = Εμφάνιση κωδικού πρόσβασης
+login-item-copy-password-button-text = Αντιγραφή
+login-item-copied-password-button-text = Αντιγράφηκε!
+login-item-save-changes-button = Αποθήκευση αλλαγών
+login-item-save-new-button = Αποθήκευση
+login-item-cancel-button = Ακύρωση
+login-item-time-changed = Τελευταία αλλαγή: { DATETIME($timeChanged, day: "numeric", month: "long", year: "numeric") }
+login-item-time-created = Δημιουργία: { DATETIME($timeCreated, day: "numeric", month: "long", year: "numeric") }
+login-item-time-used = Τελευταία χρήση: { DATETIME($timeUsed, day: "numeric", month: "long", year: "numeric") }
+
+## OS Authentication dialog
+
+about-logins-os-auth-dialog-caption = { -brand-full-name }
+
+## The macOS strings are preceded by the operating system with "Firefox is trying to "
+## and includes subtitle of "Enter password for the user "xxx" to allow this." These
+## notes are only valid for English. Please test in your respected locale.
+
+# This message can be seen when attempting to edit a login in about:logins on Windows.
+about-logins-edit-login-os-auth-dialog-message-win = Για να επεξεργαστείτε τη σύνδεσή σας, εισάγετε τα διαπιστευτήρια σύνδεσης των Windows. Αυτό συμβάλλει στην προστασία των λογαριασμών σας.
+# This message can be seen when attempting to edit a login in about:logins
+# On MacOS, only provide the reason that account verification is needed. Do not put a complete sentence here.
+about-logins-edit-login-os-auth-dialog-message-macosx = επεξεργαστεί την αποθηκευμένη σύνδεση
+# This message can be seen when attempting to reveal a password in about:logins on Windows.
+about-logins-reveal-password-os-auth-dialog-message-win = Για να δείτε τον κωδικό πρόσβασής σας, εισάγετε τα διαπιστευτήρια σύνδεσης των Windows. Αυτό συμβάλλει στην προστασία των λογαριασμών σας.
+# This message can be seen when attempting to reveal a password in about:logins
+# On MacOS, only provide the reason that account verification is needed. Do not put a complete sentence here.
+about-logins-reveal-password-os-auth-dialog-message-macosx = αποκαλύψει τον αποθηκευμένο κωδικό πρόσβασης
+# This message can be seen when attempting to copy a password in about:logins on Windows.
+about-logins-copy-password-os-auth-dialog-message-win = Για να αντιγράψετε τον κωδικό πρόσβασής σας, εισάγετε τα διαπιστευτήρια σύνδεσης των Windows. Αυτό συμβάλλει στην προστασία των λογαριασμών σας.
+# This message can be seen when attempting to copy a password in about:logins
+# On MacOS, only provide the reason that account verification is needed. Do not put a complete sentence here.
+about-logins-copy-password-os-auth-dialog-message-macosx = αντιγράψει τον αποθηκευμένο κωδικό πρόσβασης
+
+## Master Password notification
+
+master-password-notification-message = Παρακαλούμε εισάγετε τον κύριο κωδικό πρόσβασής σας για να δείτε τις αποθηκευμένες συνδέσεις.
+# This message can be seen when attempting to export a password in about:logins on Windows.
+about-logins-export-password-os-auth-dialog-message-win = Για να εξαγάγετε τις συνδέσεις σας, εισάγετε τα διαπιστευτήρια σύνδεσης των Windows. Αυτό συμβάλλει στην προστασία των λογαριασμών σας.
+# This message can be seen when attempting to export a password in about:logins
+# On MacOS, only provide the reason that account verification is needed. Do not put a complete sentence here.
+about-logins-export-password-os-auth-dialog-message-macosx = εξαγάγει αποθηκευμένες συνδέσεις και κωδικούς πρόσβασης
+
+## Primary Password notification
+
+about-logins-primary-password-notification-message = Παρακαλούμε εισάγετε τον κύριο κωδικό πρόσβασής σας για να δείτε τις αποθηκευμένες συνδέσεις & κωδικούς πρόσβασης.
+master-password-reload-button =
+ .label = Σύνδεση
+ .accesskey = Σ
+
+## Password Sync notification
+
+enable-password-sync-notification-message =
+ { PLATFORM() ->
+ [windows] Θέλετε να βρίσκετε τις συνδέσεις σας όπου κι αν χρησιμοποιείτε το { -brand-product-name }; Αν ναι, πηγαίνετε στις Επιλογές του { -sync-brand-short-name } και επιλέξτε το κουτάκι "Συνδέσεις".
+ *[other] Θέλετε να βρίσκετε τις συνδέσεις σας όπου κι αν χρησιμοποιείτε το { -brand-product-name }; Αν ναι, πηγαίνετε στις Προτιμήσεις του { -sync-brand-short-name } και επιλέξτε το κουτάκι "Συνδέσεις".
+ }
+enable-password-sync-preferences-button =
+ .label =
+ { PLATFORM() ->
+ [windows] Άνοιγμα επιλογών { -sync-brand-short-name }
+ *[other] Άνοιγμα προτιμήσεων { -sync-brand-short-name }
+ }
+ .accesskey = Ά
+about-logins-enable-password-sync-dont-ask-again-button =
+ .label = Να μην γίνει ξανά ερώτηση
+ .accesskey = Ν
+
+## Dialogs
+
+confirmation-dialog-cancel-button = Ακύρωση
+confirmation-dialog-dismiss-button =
+ .title = Ακύρωση
+about-logins-confirm-remove-dialog-title = Αφαίρεση αυτής της σύνδεσης;
+confirm-delete-dialog-message = Δεν είναι δυνατή η αναίρεση αυτής της ενέργειας.
+about-logins-confirm-remove-dialog-confirm-button = Αφαίρεση
+about-logins-confirm-remove-all-dialog-confirm-button-label =
+ { $count ->
+ [1] Αφαίρεση
+ *[other] Αφαίρεση όλων
+ }
+about-logins-confirm-remove-all-dialog-checkbox-label =
+ { $count ->
+ [1] Ναι, αφαίρεση σύνδεσης
+ *[other] Ναι, αφαίρεση συνδέσεων
+ }
+about-logins-confirm-remove-all-dialog-title =
+ { $count ->
+ [one] Αφαίρεση { $count } σύνδεσης;
+ *[other] Αφαίρεση και των { $count } συνδέσεων;
+ }
+about-logins-confirm-remove-all-dialog-message =
+ { $count ->
+ [1] Θα γίνει διαγραφή της σύνδεσης που έχετε αποθηκεύσει στο { -brand-short-name }, καθώς και όλων των ειδοποιήσεων παραβίασης που εμφανίζονται εδώ. Δεν είναι δυνατή η αναίρεση αυτής της ενέργειας.
+ *[other] Θα γίνει διαγραφή των συνδέσεων που έχετε αποθηκεύσει στο { -brand-short-name }, καθώς και όλων των ειδοποιήσεων παραβίασης που εμφανίζονται εδώ. Δεν είναι δυνατή η αναίρεση αυτής της ενέργειας.
+ }
+about-logins-confirm-remove-all-sync-dialog-title =
+ { $count ->
+ [one] Αφαίρεση { $count } σύνδεσης από όλες τις συσκευές;
+ *[other] Αφαίρεση και των { $count } συνδέσεων από όλες τις συσκευές;
+ }
+about-logins-confirm-remove-all-sync-dialog-message =
+ { $count ->
+ [1] Θα γίνει διαγραφή της σύνδεσης που έχετε αποθηκεύσει στο { -brand-short-name } σε όλες τις συγχρονισμένες συσκευές του { -fxaccount-brand-name } σας. Θα αφαιρεθούν επίσης και όλες οι ειδοποιήσεις παραβίασης που εμφανίζονται εδώ. Δεν είναι δυνατή η αναίρεση αυτής της ενέργειας.
+ *[other] Θα γίνει διαγραφή των συνδέσεων που έχετε αποθηκεύσει στο { -brand-short-name } σε όλες τις συγχρονισμένες συσκευές του { -fxaccount-brand-name } σας. Θα αφαιρεθούν επίσης και όλες οι ειδοποιήσεις παραβίασης που εμφανίζονται εδώ. Δεν είναι δυνατή η αναίρεση αυτής της ενέργειας.
+ }
+about-logins-confirm-export-dialog-title = Εξαγωγή συνδέσεων και κωδικών πρόσβασης
+about-logins-confirm-export-dialog-message = Οι κωδικοί πρόσβασής σας θα αποθηκευτούν ως αναγνώσιμο κείμενο (π.χ. BadP@ssw0rd), επομένως όποιος ανοίξει το αρχείο θα μπορέσει να τους δει.
+about-logins-confirm-export-dialog-confirm-button = Εξαγωγή…
+about-logins-alert-import-title = Η εισαγωγή ολοκληρώθηκε
+about-logins-alert-import-message = Προβολή λεπτομερούς περίληψης εισαγωγής
+confirm-discard-changes-dialog-title = Απόρριψη μη αποθηκευμένων αλλαγών;
+confirm-discard-changes-dialog-message = Όλες οι μη αποθηκευμένες αλλαγές θα χαθούν.
+confirm-discard-changes-dialog-confirm-button = Απόρριψη
+
+## Breach Alert notification
+
+about-logins-breach-alert-title = Παραβίαση ιστοσελίδας
+breach-alert-text = Από την τελευταία φορά που αλλάξατε τα στοιχεία σύνδεσής σας σε αυτόν τον ιστότοπο, έχουν υπάρξει περιπτώσεις διαρροής ή κλοπής κωδικών. Για να προστατεύσετε το λογαριασμό σας, αλλάξτε τον κωδικό σας.
+about-logins-breach-alert-date = Η παραβίαση συνέβη στις { DATETIME($date, day: "numeric", month: "long", year: "numeric") }
+# Variables:
+# $hostname (String) - The hostname of the website associated with the login, e.g. "example.com"
+about-logins-breach-alert-link = Μετάβαση στο { $hostname }
+about-logins-breach-alert-learn-more-link = Μάθετε περισσότερα
+
+## Vulnerable Password notification
+
+about-logins-vulnerable-alert-title = Ευάλωτος κωδικός πρόσβασης
+about-logins-vulnerable-alert-text2 = Αυτός ο κωδικός πρόσβασης έχει χρησιμοποιηθεί σε άλλο λογαριασμό με πιθανή παραβίαση δεδομένων. Η επαναχρησιμοποίηση διαπιστευτηρίων θέτει σε κίνδυνο όλους τους λογαριασμούς σας. Αλλάξτε αυτό τον κωδικό πρόσβασης.
+# Variables:
+# $hostname (String) - The hostname of the website associated with the login, e.g. "example.com"
+about-logins-vulnerable-alert-link = Μετάβαση στο { $hostname }
+about-logins-vulnerable-alert-learn-more-link = Μάθετε περισσότερα
+
+## Error Messages
+
+# This is an error message that appears when a user attempts to save
+# a new login that is identical to an existing saved login.
+# Variables:
+# $loginTitle (String) - The title of the website associated with the login.
+about-logins-error-message-duplicate-login-with-link = Υπάρχει ήδη καταχώρηση για το { $loginTitle } με αυτό το όνομα χρήστη. <a data-l10n-name="duplicate-link">Μετάβαση στην υπάρχουσα καταχώρηση;</a>
+# This is a generic error message.
+about-logins-error-message-default = Προέκυψε σφάλμα κατά την αποθήκευση του κωδικού πρόσβασης.
+
+## Login Export Dialog
+
+# Title of the file picker dialog
+about-logins-export-file-picker-title = Εξαγωγή αρχείου συνδέσεων
+# The default file name shown in the file picker when exporting saved logins.
+# This must end in .csv
+about-logins-export-file-picker-default-filename = logins.csv
+about-logins-export-file-picker-export-button = Εξαγωγή
+# A description for the .csv file format that may be shown as the file type
+# filter by the operating system.
+about-logins-export-file-picker-csv-filter-title =
+ { PLATFORM() ->
+ [macos] Έγγραφο CSV
+ *[other] Αρχείο CSV
+ }
+
+## Login Import Dialog
+
+# Title of the file picker dialog
+about-logins-import-file-picker-title = Εισαγωγή αρχείου συνδέσεων
+about-logins-import-file-picker-import-button = Εισαγωγή
+# A description for the .csv file format that may be shown as the file type
+# filter by the operating system.
+about-logins-import-file-picker-csv-filter-title =
+ { PLATFORM() ->
+ [macos] Έγγραφο CSV
+ *[other] Αρχείο CSV
+ }
+# A description for the .tsv file format that may be shown as the file type
+# filter by the operating system. TSV is short for 'tab separated values'.
+about-logins-import-file-picker-tsv-filter-title =
+ { PLATFORM() ->
+ [macos] Έγγραφο TSV
+ *[other] Αρχείο TSV
+ }
+
+##
+## Variables:
+## $count (number) - The number of affected elements
+
+about-logins-import-dialog-title = Η εισαγωγή ολοκληρώθηκε
+about-logins-import-dialog-items-added =
+ { $count ->
+ *[other] <span>Προστέθηκαν νέες συνδέσεις:</span> <span data-l10n-name="count">{ $count }</span>
+ }
+about-logins-import-dialog-items-modified =
+ { $count ->
+ *[other] <span>Ενημερώθηκαν υπάρχουσες συνδέσεις:</span> <span data-l10n-name="count">{ $count }</span>
+ }
+about-logins-import-dialog-items-no-change =
+ { $count ->
+ *[other] <span>Βρέθηκαν διπλές συνδέσεις:</span> <span data-l10n-name="count">{ $count }</span> <span data-l10n-name="meta">(δεν έγινε εισαγωγή)</span>
+ }
+about-logins-import-dialog-items-error =
+ { $count ->
+ *[other] <span>Σφάλματα:</span> <span data-l10n-name="count">{ $count }</span> <span data-l10n-name="meta">(δεν έγινε εισαγωγή)</span>
+ }
+about-logins-import-dialog-done = Τέλος
+about-logins-import-dialog-error-title = Σφάλμα εισαγωγής
+about-logins-import-dialog-error-conflicting-values-title = Πολλές τιμές σε διένεξη για μια σύνδεση
+about-logins-import-dialog-error-conflicting-values-description = Για παράδειγμα: πολλαπλά ονόματα χρήστη, κωδικοί πρόσβασης, URL, κ.λπ. για μια σύνδεση.
+about-logins-import-dialog-error-file-format-title = Πρόβλημα μορφής αρχείου
+about-logins-import-dialog-error-file-format-description = Σφάλμα ή απουσία κεφαλίδων στήλης. Βεβαιωθείτε ότι το αρχείο περιλαμβάνει στήλες για όνομα χρήστη, κωδικό πρόσβασης και URL.
+about-logins-import-dialog-error-file-permission-title = Αδυναμία ανάγνωσης αρχείου
+about-logins-import-dialog-error-file-permission-description = Το { -brand-short-name } δεν έχει άδεια ανάγνωσης για το αρχείο. Δοκιμάστε να αλλάξετε τα δικαιώματα του αρχείου.
+about-logins-import-dialog-error-unable-to-read-title = Αδυναμία ανάλυσης αρχείου
+about-logins-import-dialog-error-unable-to-read-description = Βεβαιωθείτε ότι έχετε επιλέξει ένα αρχείο CSV ή TSV.
+about-logins-import-dialog-error-no-logins-imported = Δεν έγινε εισαγωγή συνδέσεων
+about-logins-import-dialog-error-learn-more = Μάθετε περισσότερα
+about-logins-import-dialog-error-try-again = Δοκιμή ξανά…
+about-logins-import-dialog-error-cancel = Ακύρωση
+
+## Logins import report page
+
+about-logins-import-report-page-title = Εισαγωγή περιληπτικής αναφοράς
diff --git a/l10n-el/browser/browser/aboutPolicies.ftl b/l10n-el/browser/browser/aboutPolicies.ftl
new file mode 100644
index 0000000000..9bd2041069
--- /dev/null
+++ b/l10n-el/browser/browser/aboutPolicies.ftl
@@ -0,0 +1,17 @@
+# 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/.
+
+about-policies-title = Πολιτικές επιχειρήσεων
+
+# 'Active' is used to describe the policies that are currently active
+active-policies-tab = Ενεργές
+errors-tab = Σφάλματα
+documentation-tab = Τεκμηρίωση
+
+no-specified-policies-message = Η υπηρεσία εταιρικών πολιτικών είναι ενεργή, αλλά δεν έχουν ενεργοποιηθεί πολιτικές.
+inactive-message = Η υπηρεσία εταιρικών πολιτικών είναι ανενεργή.
+
+policy-name = Όνομα πολιτικής
+policy-value = Τιμή πολιτικής
+policy-errors = Σφάλματα πολιτικής
diff --git a/l10n-el/browser/browser/aboutPrivateBrowsing.ftl b/l10n-el/browser/browser/aboutPrivateBrowsing.ftl
new file mode 100644
index 0000000000..29042bf516
--- /dev/null
+++ b/l10n-el/browser/browser/aboutPrivateBrowsing.ftl
@@ -0,0 +1,27 @@
+# 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/.
+
+privatebrowsingpage-open-private-window-label = Άνοιγμα ιδιωτικού παραθύρου
+ .accesskey = ι
+about-private-browsing-search-placeholder = Αναζήτηση στο διαδίκτυο
+about-private-browsing-info-title = Βρίσκεστε σε ένα ιδιωτικό παράθυρο
+about-private-browsing-info-myths = Κοινοί μύθοι για την ιδιωτική περιήγηση
+about-private-browsing =
+ .title = Αναζήτηση στο διαδίκτυο
+about-private-browsing-not-private = Αυτή τη στιγμή, δεν βρίσκεστε σε κάποιο ιδιωτικό παράθυρο.
+about-private-browsing-info-description = Το { -brand-short-name } διαγράφει το ιστορικό αναζήτησης και περιήγησής σας όταν κλείνετε την εφαρμογή ή όλα τα παράθυρα και τις καρτέλες ιδιωτικής περιήγησης. Αν και δεν έχετε πλήρη ανωνυμία στις ιστοσελίδες ή τον πάροχο υπηρεσίας διαδικτύου, μπορείτε να διατηρείτε τις δραστηριότητές σας ιδιωτικές από τους άλλους χρήστες αυτού του υπολογιστή πιο εύκολα.
+about-private-browsing-need-more-privacy = Χρειάζεστε περισσότερη ιδιωτικότητα;
+about-private-browsing-turn-on-vpn = Δοκιμή του { -mozilla-vpn-brand-name }
+# This string is the title for the banner for search engine selection
+# in a private window.
+# Variables:
+# $engineName (String) - The engine name that will currently be used for the private window.
+about-private-browsing-search-banner-title = Το { $engineName } είναι η προεπιλεγμένη μηχανή αναζήτησης για ιδιωτικά παράθυρα
+about-private-browsing-search-banner-description =
+ { PLATFORM() ->
+ [windows] Για να επιλέξετε διαφορετική μηχανή αναζήτησης, μεταβείτε στις <a data-l10n-name="link-options">Επιλογές</a>
+ *[other] Για να επιλέξετε διαφορετική μηχανή αναζήτησης, μεταβείτε στις <a data-l10n-name="link-options">Προτιμήσεις</a>
+ }
+about-private-browsing-search-banner-close-button =
+ .aria-label = Κλείσιμο
diff --git a/l10n-el/browser/browser/aboutRestartRequired.ftl b/l10n-el/browser/browser/aboutRestartRequired.ftl
new file mode 100644
index 0000000000..0b1359429b
--- /dev/null
+++ b/l10n-el/browser/browser/aboutRestartRequired.ftl
@@ -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/.
+
+restart-required-title = Απαιτείται Επανεκκίνηση
+restart-required-header = Συγγνώμη. Θα πρέπει να κάνουμε μια μικρή εργασία για να συνεχίσουμε.
+restart-required-intro-brand = Το { -brand-short-name } μόλις ενημερώθηκε στο παρασκήνιο. Κάντε κλικ στο "Επανεκκίνηση του { -brand-short-name }" για να ολοκληρωθεί η ενημέρωση.
+restart-required-description = Θα επαναφέρουμε όλες τις σελίδες, τα παράθυρα και τις καρτέλες σας αμέσως μετά. Έτσι, θα μπορέσετε να συνεχίσετε γρήγορα.
+
+restart-button-label = Επανεκκίνηση του { -brand-short-name }
diff --git a/l10n-el/browser/browser/aboutRobots.ftl b/l10n-el/browser/browser/aboutRobots.ftl
new file mode 100644
index 0000000000..a080b23f5a
--- /dev/null
+++ b/l10n-el/browser/browser/aboutRobots.ftl
@@ -0,0 +1,29 @@
+# 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/.
+
+
+### These strings are used in the about:robots page, which ties in with the
+### robots theme used in the Firefox 3 Beta 2/3 first run pages.
+### They're just meant to be fun and whimsical, with references to some geeky
+### but well-known robots in movies and books. Be creative with translations!
+
+# Nonsense line from the movie "The Day The Earth Stood Still". No translation needed.
+page-title = Gort! Klaatu barada nikto!
+# Movie: Logan's Run... Box (cyborg): "Welcome Humans! I am ready for you."
+error-title-text = Καλώς ήλθατε ανθρώπινα όντα!
+# Movie: The Day The Earth Stood Still. Spoken by Klaatu.
+error-short-desc-text = Ερχόμαστε εν ειρήνη και καλή τη θελήσει!
+# Various books by Isaac Asimov. http://en.wikipedia.org/wiki/Three_Laws_of_Robotics
+error-long-desc1 = Απαγορεύεται σε ένα ρομπότ να πληγώσει ένα ανθρώπινο ον ή να επιτρέψει, λόγω δικής του αδράνειας, να πάθει κακό κάποιος άνθρωπος.
+# Movie: Blade Runner. Batty: "I've seen things you people wouldn’t believe..."
+error-long-desc2 = Τα ρομπότ έχουν δει πράγματα που οι άνθρωποι δεν έχουν ονειρευτεί.
+# Book: Hitchhiker’s Guide To The Galaxy. What the Sirius Cybernetics Corporation calls robots.
+error-long-desc3 = Τα ρομπότ είναι οι πλαστικοί και 'διασκεδαστικοί' φίλοι σας.
+# TV: Futurama. Bender's first line is "Bite my shiny metal ass."
+error-long-desc4 = Τα ρομπότ έχουν μεταλλικά οπίσθια τα οποία δεν πρέπει να δαγκώνετε.
+# TV: Battlestar Galactica (2004 series). From the opening text.
+error-trailer-desc-text = Και έχουν ένα σχέδιο.
+# Book: Hitchhiker's Guide To The Galaxy. Arthur presses a button and it warns him.
+error-try-again = Δοκιμή ξανά
+ .label2 = Παρακαλώ μην πατήσετε ξανά αυτό το κουμπί.
diff --git a/l10n-el/browser/browser/aboutSessionRestore.ftl b/l10n-el/browser/browser/aboutSessionRestore.ftl
new file mode 100644
index 0000000000..97d49e8b62
--- /dev/null
+++ b/l10n-el/browser/browser/aboutSessionRestore.ftl
@@ -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/.
+
+restore-page-tab-title = Επαναφορά συνεδρίας
+
+# The title is intended to be apologetic and disarming, expressing dismay
+# and regret that we are unable to restore the session for the user
+restore-page-error-title = Συγγνώμη. Έχουμε πρόβλημα στην επαναφορά των σελίδων σας.
+restore-page-problem-desc = Αντιμετωπίζουμε προβλήματα με την επαναφορά της τελευταίας σας συνεδρίας περιήγησης. Επιλέξτε το "Επαναφορά συνεδρίας" για να δοκιμάσετε ξανά.
+restore-page-try-this = Δεν είστε ακόμα σε θέση να επαναφέρετε την συνεδρία σας; Μερικές φορές μια καρτέλα προκαλεί αυτό το πρόβλημα. Προβάλετε προηγούμενες καρτέλες, καταργήστε το σημάδι ελέγχου από τις καρτέλες που δεν χρειάζεται να ανακτήσετε και στη συνέχεια επαναφέρετε.
+
+restore-page-hide-tabs = Απόκρυψη προηγούμενων καρτελών
+restore-page-show-tabs = Προβολή προηγούμενων καρτελών
+
+# When tabs are distributed across multiple windows, this message is used as a
+# header above the group of tabs for each window.
+#
+# Variables:
+# $windowNumber: Progressive number associated to each window
+restore-page-window-label = Παραθύρου { $windowNumber }
+
+restore-page-restore-header =
+ .label = Επαναφορά
+
+restore-page-list-header =
+ .label = Παραθύρων και καρτελών
+
+restore-page-try-again-button =
+ .label = Επαναφορά συνεδρίας
+ .accesskey = Ε
+
+restore-page-close-button =
+ .label = Έναρξη νέας συνεδρίας
+ .accesskey = ν
+
+## The following strings are used in about:welcomeback
+
+welcome-back-tab-title = Επιτυχία!
+welcome-back-page-title = Επιτυχία!
+welcome-back-page-info = Το { -brand-short-name } είναι έτοιμο.
+
+welcome-back-restore-button =
+ .label = Φύγαμε!
+ .accesskey = Φ
+
+welcome-back-restore-all-label = Επαναφορά όλων των παραθύρων & των καρτελών
+welcome-back-restore-some-label = Επαναφορά μόνο συγκεκριμένων
+
+welcome-back-page-info-link = Τα πρόσθετα και οι προσαρμογές σας έχουν αφαιρεθεί και έχει γίνει επαναφορά στις προεπιλεγμένες ρυθμίσεις του προγράμματος περιήγησής σας. Αν αυτό δεν διόρθωσε το πρόβλημα, <a data-l10n-name="link-more">μάθετε περισσότερα σχετικά με τις διαθέσιμες επιλογές σας.</a>
+
diff --git a/l10n-el/browser/browser/aboutTabCrashed.ftl b/l10n-el/browser/browser/aboutTabCrashed.ftl
new file mode 100644
index 0000000000..f4b88e6727
--- /dev/null
+++ b/l10n-el/browser/browser/aboutTabCrashed.ftl
@@ -0,0 +1,27 @@
+# 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/.
+
+crashed-title = Αναφορά κατάρρευσης καρτελών
+crashed-close-tab-button = Κλείσιμο καρτέλας
+crashed-restore-tab-button = Επαναφορά καρτέλας
+crashed-restore-all-button = Επαναφορά όλων των καρτελών που κατέρρευσαν
+crashed-header = Ωχ. Η καρτέλα σας μόλις κατέρρευσε.
+crashed-offer-help = Μπορούμε να βοηθήσουμε!
+crashed-single-offer-help-message = Επιλέξτε { crashed-restore-tab-button } για εκ νέου φόρτωση της σελίδας.
+crashed-multiple-offer-help-message = Επιλέξτε { crashed-restore-tab-button } ή { crashed-restore-all-button } για να κάνετε εκ νέου φόρτωση σελίδας/σελίδων.
+crashed-request-help = Θα μάς βοηθήσετε;
+crashed-request-help-message = Οι αναφορές κατάρρευσης βοηθούν στη διάγνωση ζητημάτων και στη βελτίωση του { -brand-short-name }.
+crashed-request-report-title = Αναφορά καρτέλας
+crashed-send-report = Αποστολή αυτοματοποιημένης αναφοράς σφαλμάτων, ώστε να διορθώσουμε ζητήματα όπως αυτό.
+crashed-send-report-2 = Αποστολή αυτοματοποιημένης αναφοράς σφαλμάτων, ώστε να διορθώσουμε ζητήματα όπως αυτό
+crashed-comment =
+ .placeholder = Προαιρετικά σχόλια (τα σχόλια είναι ορατά σε όλους)
+crashed-include-URL = Παραθέστε τα URL των ιστοσελίδων όπου ήσασταν όταν το { -brand-short-name } κατέρρευσε.
+crashed-include-URL-2 = Συμπεριλάβετε τα URLs των ιστοσελίδων όπου ήσασταν όταν το { -brand-short-name } κατέρρευσε
+crashed-email-placeholder = Εισάγετε τη διεύθυνση email σας εδώ
+crashed-email-me = Ειδοποίηση στο email μου όταν είναι διαθέσιμες περισσότερες πληροφορίες
+crashed-report-sent = Η αναφορά κατάρρευσης υποβλήθηκε ήδη· ευχαριστούμε για τη βοήθεια με τη βελτίωση του { -brand-short-name }!
+crashed-request-auto-submit-title = Αναφορά καρτελών παρασκηνίου
+crashed-auto-submit-checkbox = Ενημερώστε τις προτιμήσεις για αυτόματη υποβολή αναφορών όταν το { -brand-short-name } καταρρέει.
+crashed-auto-submit-checkbox-2 = Ενημερώστε τις προτιμήσεις για αυτόματη υποβολή αναφορών όταν το { -brand-short-name } καταρρέει
diff --git a/l10n-el/browser/browser/allTabsMenu.ftl b/l10n-el/browser/browser/allTabsMenu.ftl
new file mode 100644
index 0000000000..7c83125f66
--- /dev/null
+++ b/l10n-el/browser/browser/allTabsMenu.ftl
@@ -0,0 +1,25 @@
+# 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/.
+
+all-tabs-menu-undo-close-tabs =
+ .label =
+ { $tabCount ->
+ [1] Αναίρεση κλεισίματος καρτέλας
+ [one] Αναίρεση κλεισίματος καρτέλας
+ *[other] Αναίρεση κλεισίματος καρτελών
+ }
+
+# "Search" is a verb, as in "Search through tabs".
+all-tabs-menu-search-tabs =
+ .label = Αναζήτηση καρτελών
+
+all-tabs-menu-new-user-context =
+ .label = Νέα καρτέλα εντός περιβάλλοντος
+
+all-tabs-menu-hidden-tabs =
+ .label = Κρυμμένες καρτέλες
+
+all-tabs-menu-manage-user-context =
+ .label = Διαχείριση θεματικών καρτελών
+ .accesskey = Θ
diff --git a/l10n-el/browser/browser/appMenuNotifications.ftl b/l10n-el/browser/browser/appMenuNotifications.ftl
new file mode 100644
index 0000000000..3bc1e74982
--- /dev/null
+++ b/l10n-el/browser/browser/appMenuNotifications.ftl
@@ -0,0 +1,78 @@
+# 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/.
+
+appmenu-update-available =
+ .label = Διατίθεται μια νέα ενημέρωση για το { -brand-shorter-name }.
+ .buttonlabel = Λήψη ενημέρωσης
+ .buttonaccesskey = Λ
+ .secondarybuttonlabel = Όχι τώρα
+ .secondarybuttonaccesskey = Ό
+appmenu-update-available-message = Ενημερώστε το { -brand-shorter-name } για ακόμα περισσότερη ταχύτητα και απόρρητο.
+appmenu-update-manual =
+ .label = Το { -brand-shorter-name } δεν μπορεί να ενημερωθεί στην πιο πρόσφατη έκδοση.
+ .buttonlabel = Λήψη του { -brand-shorter-name }
+ .buttonaccesskey = Λ
+ .secondarybuttonlabel = Όχι τώρα
+ .secondarybuttonaccesskey = Ό
+appmenu-update-manual-message = Κάντε λήψη μιας νέας έκδοσης του { -brand-shorter-name } και θα σας βοηθήσουμε να την εγκαταστήσετε.
+appmenu-update-whats-new =
+ .value = Δείτε τι νέο υπάρχει.
+appmenu-update-unsupported =
+ .label = Το { -brand-shorter-name } δεν μπορεί να ενημερωθεί στην πιο πρόσφατη έκδοση.
+ .buttonlabel = Μάθετε περισσότερα
+ .buttonaccesskey = Μ
+ .secondarybuttonlabel = Κλείσιμο
+ .secondarybuttonaccesskey = Κ
+appmenu-update-unsupported-message = Η πιο πρόσφατη έκδοση του { -brand-shorter-name } δεν υποστηρίζεται στο σύστημά σας.
+appmenu-update-restart =
+ .label = Επανεκκίνηση για ενημέρωση του { -brand-shorter-name }.
+ .buttonlabel = Επανεκκίνηση και επαναφορά
+ .buttonaccesskey = Ε
+ .secondarybuttonlabel = Όχι τώρα
+ .secondarybuttonaccesskey = Ό
+appmenu-update-restart-message = Μετά από μια γρήγορη επανεκκίνηση, το { -brand-shorter-name } θα ανακτήσει όλες τις ανοικτές καρτέλες και τα παράθυρα, που δεν είναι στη λειτουργία ιδιωτικής περιήγησης.
+appmenu-update-other-instance =
+ .label = Το { -brand-shorter-name } δεν μπορεί να ενημερωθεί αυτόματα στην πιο πρόσφατη έκδοση.
+ .buttonlabel = Ενημέρωση του { -brand-shorter-name } ούτως ή άλλως
+ .buttonaccesskey = Ε
+ .secondarybuttonlabel = Όχι τώρα
+ .secondarybuttonaccesskey = Ό
+appmenu-update-other-instance-message = Μια νέα ενημέρωση του { -brand-shorter-name } είναι διαθέσιμη, αλλά δεν μπορεί να εγκατασταθεί επειδή εκτελείται ένα άλλο αντίγραφο του { -brand-shorter-name }. Κλείστε το για να συνεχίσετε την ενημέρωση, ή επιλέξετε να γίνει ούτως ή άλλως η ενημέρωση (το άλλο αντίγραφο δεν θα λειτουργεί σωστά μέχρι να το επανεκκινήσετε).
+appmenu-addon-private-browsing-installed =
+ .buttonlabel = Εντάξει, το 'πιασα
+ .buttonaccesskey = Ε
+appmenu-addon-post-install-message = Διαχειριστείτε τα πρόσθετά σας κάνοντας κλικ στο <image data-l10n-name='addon-install-icon'></image>, στο μενού <image data-l10n-name='addon-menu-icon'></image>.
+appmenu-addon-post-install-incognito-checkbox =
+ .label = Να επιτρέπεται η εκτέλεση αυτής της επέκτασης σε ιδιωτικά παράθυρα
+ .accesskey = Ν
+appmenu-new-tab-controlled =
+ .label = Η νέα σας καρτέλα έχει αλλάξει.
+ .buttonlabel = Διατήρηση αλλαγών
+ .buttonaccesskey = Δ
+ .secondarybuttonlabel = Απενεργοποίηση Επέκτασης
+ .secondarybuttonaccesskey = Α
+appmenu-homepage-controlled =
+ .label = Η αρχική σας σελίδα έχει αλλάξει.
+ .buttonlabel = Διατήρηση αλλαγών
+ .buttonaccesskey = Δ
+ .secondarybuttonlabel = Απενεργοποίηση επέκτασης
+ .secondarybuttonaccesskey = Α
+appmenu-new-tab-controlled-changes =
+ .label = Η νέα σας καρτέλα έχει αλλάξει.
+ .buttonlabel = Διατήρηση αλλαγών
+ .buttonaccesskey = Δ
+ .secondarybuttonlabel = Διαχείριση νέων καρτελών
+ .secondarybuttonaccesskey = χ
+appmenu-homepage-controlled-changes =
+ .label = Η αρχική σας σελίδα έχει αλλάξει.
+ .buttonlabel = Διατήρηση αλλαγών
+ .buttonaccesskey = Δ
+ .secondarybuttonlabel = Διαχείριση αρχικής σελίδας
+ .secondarybuttonaccesskey = χ
+appmenu-tab-hide-controlled =
+ .label = Πρόσβαση στις κρυφές σας καρτέλες
+ .buttonlabel = Συνέχεια απόκρυψης καρτελών
+ .buttonaccesskey = Σ
+ .secondarybuttonlabel = Απενεργοποίηση επέκτασης
+ .secondarybuttonaccesskey = Α
diff --git a/l10n-el/browser/browser/appmenu.ftl b/l10n-el/browser/browser/appmenu.ftl
new file mode 100644
index 0000000000..bc4a393982
--- /dev/null
+++ b/l10n-el/browser/browser/appmenu.ftl
@@ -0,0 +1,166 @@
+# 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/.
+
+
+## App Menu
+
+appmenuitem-update-banner =
+ .label-update-downloading = Λήψη της ενημέρωσης του { -brand-shorter-name }
+appmenuitem-protection-dashboard-title = Πίνακας προστασίας
+appmenuitem-customize-mode =
+ .label = Προσαρμογή…
+
+## Zoom Controls
+
+appmenuitem-new-window =
+ .label = Νέο παράθυρο
+appmenuitem-new-private-window =
+ .label = Νέο ιδιωτικό παράθυρο
+appmenuitem-passwords =
+ .label = Κωδικοί πρόσβασης
+appmenuitem-extensions-and-themes =
+ .label = Επεκτάσεις και θέματα
+appmenuitem-find-in-page =
+ .label = Εύρεση στη σελίδα…
+appmenuitem-more-tools =
+ .label = Περισσότερα εργαλεία
+appmenuitem-exit =
+ .label = Έξοδος
+# Settings is now used to access the browser settings across all platforms,
+# instead of Options or Preferences.
+appmenuitem-settings =
+ .label = Ρυθμίσεις
+
+## Zoom and Fullscreen Controls
+
+appmenuitem-zoom-enlarge =
+ .label = Μεγέθυνση
+appmenuitem-zoom-reduce =
+ .label = Σμίκρυνση
+appmenuitem-fullscreen =
+ .label = Πλήρης οθόνη
+
+## Firefox Account toolbar button and Sync panel in App menu.
+
+fxa-toolbar-sync-now =
+ .label = Συγχρονισμός τώρα
+appmenuitem-save-page =
+ .label = Αποθήκευση σελίδας ως…
+
+## What's New panel in App menu.
+
+whatsnew-panel-header = Τι νέο υπάρχει
+# Checkbox displayed at the bottom of the What's New panel, allowing users to
+# enable/disable What's New notifications.
+whatsnew-panel-footer-checkbox =
+ .label = Ειδοποίηση για νέες λειτουργίες
+ .accesskey = λ
+
+## The Firefox Profiler – The popup is the UI to turn on the profiler, and record
+## performance profiles. To enable it go to profiler.firefox.com and click
+## "Enable Profiler Menu Button".
+
+profiler-popup-title =
+ .value = { -profiler-brand-name }
+profiler-popup-reveal-description-button =
+ .aria-label = Αποκάλυψη περισσότερων πληροφοριών
+profiler-popup-description-title =
+ .value = Εγγραφή, ανάλυση, κοινοποίηση
+profiler-popup-description = Αντιμετωπίστε ζητήματα επιδόσεων κάνοντας κοινή χρήση των προφίλ με την ομάδα σας.
+profiler-popup-learn-more = Μάθετε περισσότερα
+profiler-popup-settings =
+ .value = Ρυθμίσεις
+# This link takes the user to about:profiling, and is only visible with the Custom preset.
+profiler-popup-edit-settings = Επεξεργασία ρυθμίσεων…
+profiler-popup-disabled =
+ Το profiler είναι ανενεργό αυτή τη στιγμή, πιθανότατα επειδή είναι ανοικτό ένα παράθυρο
+ ιδιωτικής περιήγησης.
+profiler-popup-recording-screen = Εγγραφή…
+# The profiler presets list is generated elsewhere, but the custom preset is defined
+# here only.
+profiler-popup-presets-custom =
+ .label = Προσαρμοσμένο
+profiler-popup-start-recording-button =
+ .label = Έναρξη εγγραφής
+profiler-popup-discard-button =
+ .label = Απόρριψη
+profiler-popup-capture-button =
+ .label = Καταγραφή
+profiler-popup-start-shortcut =
+ { PLATFORM() ->
+ [macos] ⌃⇧1
+ *[other] Ctrl+Shift+1
+ }
+profiler-popup-capture-shortcut =
+ { PLATFORM() ->
+ [macos] ⌃⇧2
+ *[other] Ctrl+Shift+2
+ }
+
+## History panel
+
+appmenu-manage-history =
+ .label = Διαχείριση ιστορικού
+
+## Help panel
+
+appmenu-help-header =
+ .title = Βοήθεια { -brand-shorter-name }
+appmenu-about =
+ .label = Σχετικά με το { -brand-shorter-name }
+ .accesskey = τ
+appmenu-help-product =
+ .label = Βοήθεια για το { -brand-shorter-name }
+ .accesskey = Β
+appmenu-help-show-tour =
+ .label = Ξενάγηση στο { -brand-shorter-name }
+ .accesskey = Ξ
+appmenu-help-import-from-another-browser =
+ .label = Εισαγωγή από άλλο φυλλομετρητή…
+ .accesskey = Ε
+appmenu-help-keyboard-shortcuts =
+ .label = Συντομεύσεις πληκτρολογίου
+ .accesskey = υ
+appmenu-get-help =
+ .label = Λήψη βοήθειας
+ .accesskey = β
+appmenu-help-troubleshooting-info =
+ .label = Πληροφορίες επίλυσης προβλημάτων
+ .accesskey = Π
+appmenu-help-taskmanager =
+ .label = Διαχείριση εργασιών
+appmenu-help-feedback-page =
+ .label = Υποβολή σχολίων…
+ .accesskey = λ
+
+## appmenu-help-safe-mode-without-addons and appmenu-help-safe-mode-without-addons
+## are mutually exclusive, so it's possible to use the same accesskey for both.
+
+appmenu-help-safe-mode-without-addons =
+ .label = Επανεκκίνηση με ανενεργά πρόσθετα…
+ .accesskey = π
+appmenu-help-safe-mode-with-addons =
+ .label = Επανεκκίνηση με ενεργά πρόσθετα
+ .accesskey = π
+
+## appmenu-help-report-deceptive-site and appmenu-help-not-deceptive
+## are mutually exclusive, so it's possible to use the same accesskey for both.
+
+appmenu-help-report-deceptive-site =
+ .label = Αναφορά παραπλανητικής σελίδας…
+ .accesskey = Α
+appmenu-help-not-deceptive =
+ .label = Αυτή δεν είναι παραπλανητική ιστοσελίδα…
+ .accesskey = δ
+
+##
+
+appmenu-help-check-for-update =
+ .label = Έλεγχος για ενημερώσεις…
+
+## More Tools
+
+appmenu-customizetoolbar =
+ .label = Προσαρμογή γραμμής εργαλειών…
+appmenu-developer-tools-subheader = Εργαλεία προγράμματος περιήγησης
diff --git a/l10n-el/browser/browser/branding/brandings.ftl b/l10n-el/browser/browser/branding/brandings.ftl
new file mode 100644
index 0000000000..8ed0b6e58d
--- /dev/null
+++ b/l10n-el/browser/browser/branding/brandings.ftl
@@ -0,0 +1,32 @@
+# 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/.
+
+## The following feature names must be treated as a brand, and kept in English.
+## They cannot be:
+## - Declined to adapt to grammatical case.
+## - Transliterated.
+## - Translated.
+
+## The following feature names must be treated as a brand.
+##
+## They cannot be:
+## - Transliterated.
+## - Translated.
+##
+## Declension should be avoided where possible, leaving the original
+## brand unaltered in prominent UI positions.
+##
+## For further details, consult:
+## https://mozilla-l10n.github.io/styleguides/mozilla_general/#brands-copyright-and-trademark
+
+-facebook-container-brand-name = Facebook Container
+-lockwise-brand-name = Firefox Lockwise
+-lockwise-brand-short-name = Lockwise
+-monitor-brand-name = Firefox Monitor
+-monitor-brand-short-name = Monitor
+-pocket-brand-name = Pocket
+-send-brand-name = Firefox Send
+-screenshots-brand-name = Firefox Screenshots
+-mozilla-vpn-brand-name = Mozilla VPN
+-profiler-brand-name = Firefox Profiler
diff --git a/l10n-el/browser/browser/branding/sync-brand.ftl b/l10n-el/browser/browser/branding/sync-brand.ftl
new file mode 100644
index 0000000000..cb40d9bf2a
--- /dev/null
+++ b/l10n-el/browser/browser/branding/sync-brand.ftl
@@ -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/.
+
+-sync-brand-short-name = Sync
+
+# “Sync” can be localized, “Firefox” must be treated as a brand,
+# and kept in English.
+-sync-brand-name = Firefox Sync
+
+# “Account” can be localized, “Firefox” must be treated as a brand,
+# and kept in English.
+-fxaccount-brand-name = Λογαριασμός Firefox
diff --git a/l10n-el/browser/browser/browser.ftl b/l10n-el/browser/browser/browser.ftl
new file mode 100644
index 0000000000..9e93fe015e
--- /dev/null
+++ b/l10n-el/browser/browser/browser.ftl
@@ -0,0 +1,612 @@
+# 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/.
+
+
+## The main browser window's title
+
+# These are the default window titles everywhere except macOS. The first two
+# attributes are used when the web content opened has no title:
+#
+# default - "Mozilla Firefox"
+# private - "Mozilla Firefox (Private Browsing)"
+#
+# The last two are for use when there *is* a content title.
+# Variables:
+# $content-title (String): the title of the web content.
+browser-main-window =
+ .data-title-default = { -brand-full-name }
+ .data-title-private = { -brand-full-name } (Ιδιωτική Περιήγηση)
+ .data-content-title-default = { $content-title } - { -brand-full-name }
+ .data-content-title-private = { $content-title } - { -brand-full-name } (Ιδιωτική Περιήγηση)
+# These are the default window titles on macOS. The first two are for use when
+# there is no content title:
+#
+# "default" - "Mozilla Firefox"
+# "private" - "Mozilla Firefox — (Private Browsing)"
+#
+# The last two are for use when there *is* a content title.
+# Do not use the brand name in the last two attributes, as we do on non-macOS.
+#
+# Also note the other subtle difference here: we use a `-` to separate the
+# brand name from `(Private Browsing)`, which does not happen on other OSes.
+#
+# Variables:
+# $content-title (String): the title of the web content.
+browser-main-window-mac =
+ .data-title-default = { -brand-full-name }
+ .data-title-private = { -brand-full-name } - (Ιδιωτική Περιήγηση)
+ .data-content-title-default = { $content-title }
+ .data-content-title-private = { $content-title } - (Ιδιωτική Περιήγηση)
+# This gets set as the initial title, and is overridden as soon as we start
+# updating the titlebar based on loaded tabs or private browsing state.
+# This should match the `data-title-default` attribute in both
+# `browser-main-window` and `browser-main-window-mac`.
+browser-main-window-title = { -brand-full-name }
+
+##
+
+urlbar-identity-button =
+ .aria-label = Πληροφορίες ιστοσελίδας
+
+## Tooltips for images appearing in the address bar
+
+urlbar-services-notification-anchor =
+ .tooltiptext = Άνοιγμα πλαισίου μηνυμάτων εγκατάστασης
+urlbar-web-notification-anchor =
+ .tooltiptext = Αλλαγή του αν θα λαμβάνετε ειδοποιήσεις από τον ιστοτόπο
+urlbar-midi-notification-anchor =
+ .tooltiptext = Άνοιγμα πίνακα MIDI
+urlbar-eme-notification-anchor =
+ .tooltiptext = Διαχείριση χρήσης λογισμικού DRM
+urlbar-web-authn-anchor =
+ .tooltiptext = Άνοιγμα πίνακα διαδικτυακής ταυτοποίησης
+urlbar-canvas-notification-anchor =
+ .tooltiptext = Διαχείριση δικαιώματος εξαγωγής καμβά
+urlbar-web-rtc-share-microphone-notification-anchor =
+ .tooltiptext = Διαχείριση του διαμοιρασμού του μικροφώνου σας για τον ιστοτόπο
+urlbar-default-notification-anchor =
+ .tooltiptext = Άνοιγμα πλαισίου μηνυμάτων
+urlbar-geolocation-notification-anchor =
+ .tooltiptext = Άνοιγμα πλαισίου αίτησης τοποθεσίας
+urlbar-xr-notification-anchor =
+ .tooltiptext = Άνοιγμα πίνακα δικαιωμάτων εικονικής πραγματικότητας
+urlbar-storage-access-anchor =
+ .tooltiptext = Άνοιγμα πίνακα δικαιωμάτων δραστηριότητας περιήγησης
+urlbar-translate-notification-anchor =
+ .tooltiptext = Μετάφραση σελίδας
+urlbar-web-rtc-share-screen-notification-anchor =
+ .tooltiptext = Διαχείριση του διαμοιρασμού των παραθύρων ή της οθόνης σας με τον ιστοτόπο
+urlbar-indexed-db-notification-anchor =
+ .tooltiptext = Άνοιγμα πλαισίου μηνυμάτων αποθηκευμένων εκτός σύνδεσης
+urlbar-password-notification-anchor =
+ .tooltiptext = Άνοιγμα πλαισίου μηνυμάτων αποθήκευσης συνθηματικού
+urlbar-translated-notification-anchor =
+ .tooltiptext = Διαχείριση μετάφρασης σελίδας
+urlbar-plugins-notification-anchor =
+ .tooltiptext = Διαχείριση χρήσης αρθρωμάτων
+urlbar-web-rtc-share-devices-notification-anchor =
+ .tooltiptext = Διαχείριση του διαμοιρασμού της κάμερας και/ή του μικροφώνου σας για τον ιστοτόπο
+urlbar-autoplay-notification-anchor =
+ .tooltiptext = Άνοιγμα πλαισίου αυτόματης αναπαραγωγής
+urlbar-persistent-storage-notification-anchor =
+ .tooltiptext = Αποθήκευση δεδομένων στην επίμονη αποθήκευση
+urlbar-addons-notification-anchor =
+ .tooltiptext = Άνοιγμα πλαισίου μηνυμάτων εγκατάστασης προσθέτων
+urlbar-tip-help-icon =
+ .title = Λάβετε βοήθεια
+urlbar-search-tips-confirm = Εντάξει, το 'πιασα
+# Read out before Urlbar Tip text content so screenreader users know the
+# subsequent text is a tip offered by the browser. It should end in a colon or
+# localized equivalent.
+urlbar-tip-icon-description =
+ .alt = Συμβουλή:
+
+## Prompts users to use the Urlbar when they open a new tab or visit the
+## homepage of their default search engine.
+## Variables:
+## $engineName (String): The name of the user's default search engine. e.g. "Google" or "DuckDuckGo".
+
+urlbar-search-tips-onboard = Πληκτρολογήστε λιγότερα, βρείτε περισσότερα: Αναζητήστε μέσω { $engineName } κατευθείαν από τη γραμμή διευθύνσεων.
+urlbar-search-tips-redirect-2 = Ξεκινήστε την αναζήτησή σας στη γραμμή διευθύνσεων για να δείτε προτάσεις από το { $engineName } και το ιστορικό περιήγησής σας.
+# Prompts users to use the Urlbar when they are typing in the domain of a
+# search engine, e.g. google.com or amazon.com.
+urlbar-tabtosearch-onboard = Επιλέξτε αυτήν τη συντόμευση για να βρείτε αυτό που χρειάζεστε, πιο γρήγορα.
+
+## Local search mode indicator labels in the urlbar
+
+urlbar-search-mode-bookmarks = Σελιδοδείκτες
+urlbar-search-mode-tabs = Καρτέλες
+urlbar-search-mode-history = Ιστορικό
+
+##
+
+urlbar-geolocation-blocked =
+ .tooltiptext = Έχετε αποκλείσει τις πληροφορίες τοποθεσίας για αυτή την ιστοσελίδα.
+urlbar-xr-blocked =
+ .tooltiptext = Έχετε αποκλείσει την πρόσβαση συσκευών εικονικής πραγματικότητας για αυτή την ιστοσελίδα.
+urlbar-web-notifications-blocked =
+ .tooltiptext = Έχετε αποκλείσει τις ειδοποιήσεις για αυτή την ιστοσελίδα.
+urlbar-camera-blocked =
+ .tooltiptext = Έχετε αποκλείσει την κάμερά σας για αυτή την ιστοσελίδα.
+urlbar-microphone-blocked =
+ .tooltiptext = Έχετε αποκλείσει το μικρόφωνό σας για αυτή την ιστοσελίδα.
+urlbar-screen-blocked =
+ .tooltiptext = Έχετε αποκλείσει τον ιστοτόπο από το μοίρασμα της οθόνης σας.
+urlbar-persistent-storage-blocked =
+ .tooltiptext = Έχετε αποκλείσει την επίμονη αποθήκευση για αυτή την ιστοσελίδα.
+urlbar-popup-blocked =
+ .tooltiptext = Έχετε αποκλείσει τα αναδυόμενα παράθυρα για αυτή την ιστοσελίδα.
+urlbar-autoplay-media-blocked =
+ .tooltiptext = Έχετε αποκλείσει πολυμέσα αυτόματης αναπαραγωγής για αυτή την ιστοσελίδα.
+urlbar-canvas-blocked =
+ .tooltiptext = Έχετε αποκλείσει την εξαγωγή δεδομένων καμβά για αυτή την ιστοσελίδα.
+urlbar-midi-blocked =
+ .tooltiptext = Έχετε αποκλείσει την πρόσβαση MIDI για αυτή την ιστοσελίδα.
+urlbar-install-blocked =
+ .tooltiptext = Έχετε αποκλείσει την εγκατάσταση προσθέτων για αυτή την ιστοσελίδα.
+# Variables
+# $shortcut (String) - A keyboard shortcut for the edit bookmark command.
+urlbar-star-edit-bookmark =
+ .tooltiptext = Επεξεργασία σελιδοδείκτη ({ $shortcut })
+# Variables
+# $shortcut (String) - A keyboard shortcut for the add bookmark command.
+urlbar-star-add-bookmark =
+ .tooltiptext = Δημιουργία σελιδοδείκτη για αυτή τη σελίδα ({ $shortcut })
+
+## Page Action Context Menu
+
+page-action-add-to-urlbar =
+ .label = Προσθήκη στη γραμμή διευθύνσεων
+page-action-manage-extension =
+ .label = Διαχείριση επέκτασης…
+page-action-remove-from-urlbar =
+ .label = Αφαίρεση από τη γραμμή διευθύνσεων
+page-action-remove-extension =
+ .label = Αφαίρεση επέκτασης
+
+## Page Action menu
+
+# Variables
+# $tabCount (integer) - Number of tabs selected
+page-action-send-tabs-panel =
+ .label =
+ { $tabCount ->
+ [one] Αποστολή καρτέλας σε συσκευή
+ *[other] Αποστολή { $tabCount } καρτελών σε συσκευή
+ }
+page-action-send-tabs-urlbar =
+ .tooltiptext =
+ { $tabCount ->
+ [one] Αποστολή καρτέλας σε συσκευή
+ *[other] Αποστολή { $tabCount } καρτελών σε συσκευή
+ }
+page-action-pocket-panel =
+ .label = Αποθήκευση σελίδας στο { -pocket-brand-name }
+page-action-copy-url-panel =
+ .label = Αντιγραφή συνδέσμου
+page-action-copy-url-urlbar =
+ .tooltiptext = Αντιγραφή συνδέσμου
+page-action-email-link-panel =
+ .label = Αποστολή συνδέσμου…
+page-action-email-link-urlbar =
+ .tooltiptext = Αποστολή συνδέσμου…
+page-action-share-url-panel =
+ .label = Κοινή χρήση
+page-action-share-url-urlbar =
+ .tooltiptext = Κοινή χρήση
+page-action-share-more-panel =
+ .label = Περισσότερα…
+page-action-send-tab-not-ready =
+ .label = Συγχρονισμός συσκευών…
+# "Pin" is being used as a metaphor for expressing the fact that these tabs
+# are "pinned" to the left edge of the tabstrip. Really we just want the
+# string to express the idea that this is a lightweight and reversible
+# action that keeps your tab where you can reach it easily.
+page-action-pin-tab-panel =
+ .label = Καρφίτσωμα καρτέλας
+page-action-pin-tab-urlbar =
+ .tooltiptext = Καρφίτσωμα καρτέλας
+page-action-unpin-tab-panel =
+ .label = Ξεκαρφίτσωμα καρτέλας
+page-action-unpin-tab-urlbar =
+ .tooltiptext = Ξεκαρφίτσωμα καρτέλας
+
+## Auto-hide Context Menu
+
+full-screen-autohide =
+ .label = Απόκρυψη γραμμών εργαλείων
+ .accesskey = ψ
+full-screen-exit =
+ .label = Έξοδος από πλήρη οθόνη
+ .accesskey = π
+
+## Search Engine selection buttons (one-offs)
+
+# This string prompts the user to use the list of search shortcuts in
+# the Urlbar and searchbar.
+search-one-offs-with-title = Αυτή τη φορά, αναζήτηση με:
+# This string won't wrap, so if the translated string is longer,
+# consider translating it as if it said only "Search Settings".
+search-one-offs-change-settings-button =
+ .label = Αλλαγή ρυθμίσεων αναζήτησης
+search-one-offs-change-settings-compact-button =
+ .tooltiptext = Αλλαγή ρυθμίσεων αναζήτησης
+search-one-offs-context-open-new-tab =
+ .label = Αναζήτηση σε νέα καρτέλα
+ .accesskey = Α
+search-one-offs-context-set-as-default =
+ .label = Ορισμός ως προεπιλεγμένη μηχανή αναζήτησης
+ .accesskey = Ο
+search-one-offs-context-set-as-default-private =
+ .label = Ορίστε ως προεπιλεγμένη μηχανή αναζήτησης για ιδιωτικά παράθυρα
+ .accesskey = ι
+# Search engine one-off buttons with an @alias shortcut/keyword.
+# Variables:
+# $engineName (String): The name of the engine.
+# $alias (String): The @alias shortcut/keyword.
+search-one-offs-engine-with-alias =
+ .tooltiptext = { $engineName } ({ $alias })
+
+## Local search mode one-off buttons
+## Variables:
+## $restrict (String): The restriction token corresponding to the search mode.
+## Restriction tokens are special characters users can type in the urlbar to
+## restrict their searches to certain sources (e.g., "*" to search only
+## bookmarks).
+
+search-one-offs-bookmarks =
+ .tooltiptext = Σελιδοδείκτες ({ $restrict })
+search-one-offs-tabs =
+ .tooltiptext = Καρτέλες ({ $restrict })
+search-one-offs-history =
+ .tooltiptext = Ιστορικό ({ $restrict })
+
+## Bookmark Panel
+
+bookmark-panel-show-editor-checkbox =
+ .label = Εμφάνιση επεξεργαστή κατά την αποθήκευση
+ .accesskey = Ε
+bookmark-panel-done-button =
+ .label = Τέλος
+# Width of the bookmark panel.
+# Should be large enough to fully display the Done and
+# Cancel/Remove Bookmark buttons.
+bookmark-panel =
+ .style = min-width: 23em
+
+## Identity Panel
+
+identity-connection-not-secure = Μη ασφαλής σύνδεση
+identity-connection-secure = Ασφαλής σύνδεση
+identity-connection-internal = Αυτή είναι μια ασφαλής σελίδα του { -brand-short-name }.
+identity-connection-file = Αυτή η σελίδα είναι αποθηκευμένη στον υπολογιστή σας.
+identity-extension-page = Αυτή η σελίδα φορτώθηκε από μια επέκταση.
+identity-active-blocked = Το { -brand-short-name } έχει αποκλείσει επισφαλή τμήματα αυτής της σελίδας.
+identity-custom-root = Η σύνδεση επαληθεύτηκε από έναν εκδότη πιστοποιητικών που δεν αναγνωρίζεται από τη Mozilla.
+identity-passive-loaded = Κάποια τμήματα αυτής της σελίδας δεν είναι ασφαλή (π.χ. κάποιες εικόνες).
+identity-active-loaded = Έχετε απενεργοποιήσει την προστασία σε αυτή τη σελίδα.
+identity-weak-encryption = Αυτή η σελίδα χρησιμοποιεί μη ισχυρή κρυπτογράφηση.
+identity-insecure-login-forms = Τα στοιχεία σύνδεσης που πληκτρολογήσατε σε αυτή την σελίδα μπορεί να διαρεύσουν.
+identity-https-only-connection-upgraded = (αναβαθμίστηκε σε HTTPS)
+identity-https-only-label = Λειτουργία Μόνο-HTTPS
+identity-https-only-dropdown-on =
+ .label = Ενεργό
+identity-https-only-dropdown-off =
+ .label = Ανενεργό
+identity-https-only-dropdown-off-temporarily =
+ .label = Προσωρινά ανενεργό
+identity-https-only-info-turn-on2 = Ενεργοποιήστε τη λειτουργία Μόνο-HTTPS για αυτή την ιστοσελίδα αν θέλετε το { -brand-short-name } να αναβαθμίζει τη σύνδεση όταν είναι δυνατό.
+identity-https-only-info-turn-off2 = Αν η σελίδα φαίνεται προβληματική, δοκιμάστε να απενεργοποιήσετε τη λειτουργία Μόνο-HTTPS για ανανέωση της ιστοσελίδας με το μη ασφαλές HTTP.
+identity-https-only-info-no-upgrade = Δεν είναι δυνατή η αναβάθμιση της σύνδεσης από HTTP.
+identity-permissions =
+ .value = Δικαιώματα
+identity-permissions-storage-access-header = Cookies μεταξύ ιστοσελίδων
+identity-permissions-storage-access-hint = Αυτά τα μέρη μπορούν να χρησιμοποιήσουν cookies μεταξύ ιστοσελίδων και δεδομένα ιστότοπων όσο βρίσκεστε σε αυτή την ιστοσελίδα.
+identity-permissions-reload-hint = Ίσως χρειαστεί να φορτώσετε εκ νέου τη σελίδα για εφαρμογή των αλλαγών.
+identity-permissions-empty = Δεν έχετε χορηγήσει ειδικές άδειες στη σελίδα.
+identity-clear-site-data =
+ .label = Διαγραφή cookies και δεδομένων ιστοσελίδων…
+identity-connection-not-secure-security-view = Η σύνδεσή σας σε αυτή την ιστοσελίδα δεν είναι ασφαλής.
+identity-connection-verified = Η σύνδεσή σας σε αυτή την ιστοσελίδα είναι ασφαλής.
+identity-ev-owner-label = Το πιστοποιητικό εκδόθηκε για:
+identity-description-custom-root = Η Mozilla δεν αναγνωρίζει αυτό τον εκδότη πιστοποιητικών. Ενδέχεται να έχει προστεθεί από το λειτουργικό σας σύστημα ή κάποιο διαχειριστή. <label data-l10n-name="link">Μάθετε περισσότερα</label>
+identity-remove-cert-exception =
+ .label = Αφαίρεση εξαίρεσης
+ .accesskey = Ρ
+identity-description-insecure = Η σύνδεσή σας σε αυτή τη σελίδα δεν είναι ασφαλής. Πληροφορίες που υποβάλετε μπορεί να είναι ορατές σε τρίτους (όπως κωδικοί, μηνύματα, πιστωτικές κάρτες κ.α. ).
+identity-description-insecure-login-forms = Τα στοιχεία σύνδεσης που εισάγατε στη σελίδα δεν είναι ασφαλή και μπορεί να τεθούν σε κίνδυνο.
+identity-description-weak-cipher-intro = Η σύνδεση σας σε αυτή τη σελίδα χρησιμοποιεί μη ισχυρή κρυπτογράφηση και δεν είναι ασφαλής.
+identity-description-weak-cipher-risk = Τρίτοι μπορούν να δουν τις πληροφορίες σας ή να τροποποιήσουν την συμπεριφορά αυτής της ιστοσελίδας.
+identity-description-active-blocked = Το { -brand-short-name } έχει αποκλείσει επισφαλή τμήματα αυτής της σελίδας. <label data-l10n-name="link">Μάθετε περισσότερα</label>
+identity-description-passive-loaded = Η σύνδεσή σας δεν είναι ασφαλής και πληροφορίες που μοιράζεστε με αυτή τη σελίδα μπορεί να είναι ορατές από τρίτους.
+identity-description-passive-loaded-insecure = Αυτή η σελίδα έχει περιεχόμενο που δεν είναι ασφαλές (π.χ. εικόνες). <label data-l10n-name="link">Μάθετε περισσότερα</label>
+identity-description-passive-loaded-mixed = Παρόλο που το { -brand-short-name } έχει αποκλείσει ορισμένο περιεχόμενο, υπάρχει ακόμη επισφαλές περιεχόμενο (π.χ. εικόνες). <label data-l10n-name="link">Μάθετε περισσότερα</label>
+identity-description-active-loaded = Αυτή η ιστοσελίδα έχει περιεχόμενο που δεν είναι ασφαλές (π.χ. scripts) και η σύνδεσή σας δεν είναι ασφαλής.
+identity-description-active-loaded-insecure = Πληροφορίες που μοιράζεστε με αυτή τη σελίδα μπορεί να είναι ορατές από τρίτους (όπως κωδικοί, μηνύματα, πιστωτικές κάρτες κ.α.).
+identity-learn-more =
+ .value = Μάθετε περισσότερα
+identity-disable-mixed-content-blocking =
+ .label = Απενεργοποίηση προστασίας προσωρινά
+ .accesskey = π
+identity-enable-mixed-content-blocking =
+ .label = Ενεργοποίηση προστασίας
+ .accesskey = Ε
+identity-more-info-link-text =
+ .label = Περισσότερες πληροφορίες
+
+## Window controls
+
+browser-window-minimize-button =
+ .tooltiptext = Ελαχιστοποίηση
+browser-window-maximize-button =
+ .tooltiptext = Μεγιστοποίηση
+browser-window-restore-down-button =
+ .tooltiptext = Επαναφορά κάτω
+browser-window-close-button =
+ .tooltiptext = Κλείσιμο
+
+## Tab actions
+
+browser-tab-audio-playing = Σε αναπαραγωγή
+browser-tab-audio-muted = Σε σίγαση
+# This label should be written in all capital letters if your locale supports them.
+browser-tab-audio-pip = ΕΙΚΟΝΑ ΕΝΤΟΣ ΕΙΚΟΝΑΣ
+
+## Bookmarks toolbar items
+
+browser-import-button2 =
+ .label = Εισαγωγή σελιδοδεικτών…
+ .tooltiptext = Εισαγωγή σελιδοδεικτών από άλλο πρόγραμμα περιήγησης στο { -brand-short-name }.
+bookmarks-toolbar-empty-message = Για γρήγορη πρόσβαση, τοποθετήστε τους σελιδοδείκτες σας εδώ, στη γραμμή σελιδοδεικτών. <a data-l10n-name="manage-bookmarks">Διαχείριση σελιδοδεικτών…</a>
+
+## WebRTC Pop-up notifications
+
+popup-select-camera =
+ .value = Μοιραστείτε την κάμερα:
+ .accesskey = Ψ
+popup-select-microphone =
+ .value = Μοιραστείτε το μικρόφωνο:
+ .accesskey = Μ
+popup-all-windows-shared = Θα μοιραστούν όλα τα ορατά παράθυρα της οθόνη σας.
+popup-screen-sharing-not-now =
+ .label = Όχι τώρα
+ .accesskey = ρ
+popup-screen-sharing-never =
+ .label = Να μην επιτρέπεται ποτέ
+ .accesskey = Ν
+popup-silence-notifications-checkbox = Απενεργοποίηση ειδοποιήσεων από το { -brand-short-name } κατά την κοινή χρήση
+popup-silence-notifications-checkbox-warning = Το { -brand-short-name } δεν θα εμφανίζει ειδοποιήσεις κατά την κοινή χρήση.
+
+## WebRTC window or screen share tab switch warning
+
+sharing-warning-window = Μοιράζεστε το { -brand-short-name }. Άλλα άτομα μπορούν να δουν όταν μεταβείτε σε μια νέα καρτέλα.
+sharing-warning-screen = Μοιράζεστε ολόκληρη την οθόνη σας. Οι άλλοι χρήστες μπορούν να δουν ότι κάνετε εναλλαγή σε νέα καρτέλα.
+sharing-warning-proceed-to-tab =
+ .label = Συνέχεια στην καρτέλα
+sharing-warning-disable-for-session =
+ .label = Απενεργοποίηση προστασίας κοινής χρήσης για αυτή τη συνεδρία
+
+## DevTools F12 popup
+
+enable-devtools-popup-description = Για να χρησιμοποιήσετε τη συντόμευση F12, ανοίξτε πρώτα τα DevTools μέσω του μενού προγραμματιστών ιστού.
+
+## URL Bar
+
+urlbar-default-placeholder =
+ .defaultPlaceholder = Αναζήτηση όρου ή εισαγωγή διεύθυνσης
+# This placeholder is used when not in search mode and the user's default search
+# engine is unknown.
+urlbar-placeholder =
+ .placeholder = Αναζήτηση όρου ή εισαγωγή διεύθυνσης
+# This placeholder is used in search mode with search engines that search the
+# entire web.
+# Variables
+# $name (String): the name of a search engine that searches the entire Web
+# (e.g. Google).
+urlbar-placeholder-search-mode-web-2 =
+ .placeholder = Αναζήτηση στο διαδίκτυο
+ .aria-label = Αναζήτηση με { $name }
+# This placeholder is used in search mode with search engines that search a
+# specific site (e.g., Amazon).
+# Variables
+# $name (String): the name of a search engine that searches a specific site
+# (e.g. Amazon).
+urlbar-placeholder-search-mode-other-engine =
+ .placeholder = Εισάγετε όρους αναζήτησης
+ .aria-label = Αναζήτηση { $name }
+# This placeholder is used when searching bookmarks.
+urlbar-placeholder-search-mode-other-bookmarks =
+ .placeholder = Εισάγετε όρους αναζήτησης
+ .aria-label = Αναζήτηση σελιδοδεικτών
+# This placeholder is used when searching history.
+urlbar-placeholder-search-mode-other-history =
+ .placeholder = Εισάγετε όρους αναζήτησης
+ .aria-label = Αναζήτηση ιστορικού
+# This placeholder is used when searching open tabs.
+urlbar-placeholder-search-mode-other-tabs =
+ .placeholder = Εισάγετε όρους αναζήτησης
+ .aria-label = Αναζήτηση καρτελών
+# Variables
+# $name (String): the name of the user's default search engine
+urlbar-placeholder-with-name =
+ .placeholder = Αναζήτηση με { $name } ή πληκτρολόγηση διεύθυνσης
+urlbar-remote-control-notification-anchor =
+ .tooltiptext = Το πρόγραμμα περιήγησης ελέγχεται απομακρυσμένα
+urlbar-permissions-granted =
+ .tooltiptext = Έχετε χορηγήσει πρόσθετα δικαιώματα σε αυτή την ιστοσελίδα.
+urlbar-switch-to-tab =
+ .value = Μετάβαση σε καρτέλα:
+# Used to indicate that a selected autocomplete entry is provided by an extension.
+urlbar-extension =
+ .value = Επέκταση:
+urlbar-go-button =
+ .tooltiptext = Μετάβαση στη διεύθυνση της γραμμής διευθύνσεων
+urlbar-page-action-button =
+ .tooltiptext = Ενέργειες σελίδας
+urlbar-pocket-button =
+ .tooltiptext = Αποθήκευση στο { -pocket-brand-name }
+
+## Action text shown in urlbar results, usually appended after the search
+## string or the url, like "result value - action text".
+
+# Used when the private browsing engine differs from the default engine.
+# The "with" format was chosen because the search engine name can end with
+# "Search", and we would like to avoid strings like "Search MSN Search".
+# Variables
+# $engine (String): the name of a search engine
+urlbar-result-action-search-in-private-w-engine = Αναζήτηση με { $engine } σε ιδιωτικό παράθυρο
+# Used when the private browsing engine is the same as the default engine.
+urlbar-result-action-search-in-private = Αναζήτηση σε ιδιωτικό παράθυρο
+# The "with" format was chosen because the search engine name can end with
+# "Search", and we would like to avoid strings like "Search MSN Search".
+# Variables
+# $engine (String): the name of a search engine
+urlbar-result-action-search-w-engine = Αναζήτηση με { $engine }
+urlbar-result-action-sponsored = Χορηγία
+urlbar-result-action-switch-tab = Εναλλαγή σε καρτέλα
+urlbar-result-action-visit = Επίσκεψη
+# Directs a user to press the Tab key to perform a search with the specified
+# engine.
+# Variables
+# $engine (String): the name of a search engine that searches the entire Web
+# (e.g. Google).
+urlbar-result-action-before-tabtosearch-web = Πατήστε Tab για αναζήτηση με { $engine }
+# Directs a user to press the Tab key to perform a search with the specified
+# engine.
+# Variables
+# $engine (String): the name of a search engine that searches a specific site
+# (e.g. Amazon).
+urlbar-result-action-before-tabtosearch-other = Πατήστε Tab για αναζήτηση { $engine }
+# Variables
+# $engine (String): the name of a search engine that searches the entire Web
+# (e.g. Google).
+urlbar-result-action-tabtosearch-web = Αναζήτηση με { $engine } απευθείας από τη γραμμή διευθύνσεων
+# Variables
+# $engine (String): the name of a search engine that searches a specific site
+# (e.g. Amazon).
+urlbar-result-action-tabtosearch-other-engine = Αναζήτηση { $engine } απευθείας από τη γραμμή διευθύνσεων
+
+## Action text shown in urlbar results, usually appended after the search
+## string or the url, like "result value - action text".
+## In these actions "Search" is a verb, followed by where the search is performed.
+
+urlbar-result-action-search-bookmarks = Αναζήτηση σελιδοδεικτών
+urlbar-result-action-search-history = Αναζήτηση ιστορικού
+urlbar-result-action-search-tabs = Αναζήτηση καρτελών
+
+## Full Screen and Pointer Lock UI
+
+# Please ensure that the domain stays in the `<span data-l10n-name="domain">` markup.
+# Variables
+# $domain (String): the domain that is full screen, e.g. "mozilla.org"
+fullscreen-warning-domain = Το <span data-l10n-name="domain">{ $domain }</span> εκτελείται σε πλήρη οθόνη
+fullscreen-warning-no-domain = Αυτό το έγγραφο εμφανίζεται σε πλήρη οθόνη
+fullscreen-exit-button = Έξοδος από πλήρη οθόνη (Esc)
+# "esc" is lowercase on mac keyboards, but uppercase elsewhere.
+fullscreen-exit-mac-button = Έξοδος από πλήρη οθόνη (esc)
+# Please ensure that the domain stays in the `<span data-l10n-name="domain">` markup.
+# Variables
+# $domain (String): the domain that is using pointer-lock, e.g. "mozilla.org"
+pointerlock-warning-domain = Το <span data-l10n-name="domain">{ $domain }</span> ελέγχει τον κέρσορα. Πατήστε Esc για ανάκτηση ελέγχου.
+pointerlock-warning-no-domain = Αυτό το έγγραφο ελέγχει τον κέρσορα. Πατήστε Esc για ανάκτηση ελέγχου.
+
+## Subframe crash notification
+
+crashed-subframe-message = <strong>Μέρος της σελίδας κατέρρευσε.</strong> Για να ενημερώσετε το { -brand-product-name } σχετικά με αυτό το ζήτημα, ώστε να διορθωθεί γρηγορότερα, παρακαλούμε υποβάλλετε μια αναφορά.
+crashed-subframe-learnmore =
+ .label = Μάθετε περισσότερα
+ .accesskey = Μ
+crashed-subframe-submit =
+ .label = Υποβολή αναφοράς
+ .accesskey = Υ
+
+## Bookmarks panels, menus and toolbar
+
+bookmarks-show-all-bookmarks =
+ .label = Προβολή όλων των σελιδοδεικτών
+bookmarks-recent-bookmarks =
+ .value = Πρόσφατοι σελιδοδείκτες
+bookmarks-manage-bookmarks =
+ .label = Διαχείριση σελιδοδεικτών
+bookmarks-recent-bookmarks-panel =
+ .value = Πρόσφατοι σελιδοδείκτες
+bookmarks-toolbar-chevron =
+ .tooltiptext = Προβολή περισσότερων σελιδοδεικτών
+bookmarks-sidebar-content =
+ .aria-label = Σελιδοδείκτες
+bookmarks-menu-button =
+ .label = Μενού σελιδοδεικτών
+bookmarks-other-bookmarks-menu =
+ .label = Άλλοι σελιδοδείκτες
+bookmarks-mobile-bookmarks-menu =
+ .label = Σελιδοδείκτες κινητού
+bookmarks-tools-sidebar-visibility =
+ .label =
+ { $isVisible ->
+ [true] Απόκρυψη στήλης σελιδοδεικτών
+ *[other] Προβολή στήλης σελιδοδεικτών
+ }
+bookmarks-tools-toolbar-visibility =
+ .label =
+ { $isVisible ->
+ [true] Απόκρυψη γραμμής σελιδοδεικτών
+ *[other] Προβολή γραμμής σελιδοδεικτών
+ }
+bookmarks-tools-toolbar-visibility-menuitem =
+ .label =
+ { $isVisible ->
+ [true] Απόκρυψη γραμμής σελιδοδεικτών
+ *[other] Προβολή γραμμής σελιδοδεικτών
+ }
+bookmarks-tools-toolbar-visibility-panel =
+ .label =
+ { $isVisible ->
+ [true] Απόκρυψη γραμμής σελιδοδεικτών
+ *[other] Εμφάνιση γραμμής σελιδοδεικτών
+ }
+bookmarks-tools-menu-button-visibility =
+ .label =
+ { $isVisible ->
+ [true] Αφαίρεση μενού σελιδοδεικτών από τη γραμμή εργαλείων
+ *[other] Προσθήκη μενού σελιδοδεικτών στη γραμμή εργαλείων
+ }
+bookmarks-search =
+ .label = Αναζήτηση σελιδοδεικτών
+bookmarks-tools =
+ .label = Εργαλεία σελιδοδεικτών
+bookmarks-bookmark-edit-panel =
+ .label = Επεξεργασία σελιδοδείκτη
+# The aria-label is a spoken label that should not include the word "toolbar" or
+# such, because screen readers already know that this container is a toolbar.
+# This avoids double-speaking.
+bookmarks-toolbar =
+ .toolbarname = Γραμμή σελιδοδεικτών
+ .accesskey = γ
+ .aria-label = Σελιδοδείκτες
+bookmarks-toolbar-menu =
+ .label = Γραμμή σελιδοδεικτών
+bookmarks-toolbar-placeholder =
+ .title = Στοιχεία γραμμής σελιδοδεικτών
+bookmarks-toolbar-placeholder-button =
+ .label = Στοιχεία γραμμής σελιδοδεικτών
+# "Bookmark" is a verb, as in "Add current tab to bookmarks".
+bookmarks-current-tab =
+ .label = Προσθήκη σελιδοδείκτη τρέχουσας καρτέλας
+
+## Library Panel items
+
+library-bookmarks-menu =
+ .label = Σελιδοδείκτες
+library-bookmarks-bookmark-this-page =
+ .label = Δημιουργία σελιδοδείκτη
+library-bookmarks-bookmark-edit =
+ .label = Επεξεργασία σελιδοδείκτη
+library-recent-activity-title =
+ .value = Πρόσφατη δραστηριότητα
+
+## More items
+
+more-menu-go-offline =
+ .label = Εργασία χωρίς σύνδεση
+ .accesskey = χ
diff --git a/l10n-el/browser/browser/browserContext.ftl b/l10n-el/browser/browser/browserContext.ftl
new file mode 100644
index 0000000000..1a3aa50799
--- /dev/null
+++ b/l10n-el/browser/browser/browserContext.ftl
@@ -0,0 +1,339 @@
+# 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/.
+
+navbar-tooltip-instruction =
+ .value =
+ { PLATFORM() ->
+ [macos] Τράβηγμα προς στα κάτω για προβολή ιστορικού
+ *[other] Δεξί κλικ ή τράβηγμα προς τα κάτω για προβολή ιστορικού
+ }
+
+## Back
+
+main-context-menu-back =
+ .tooltiptext = Μετάβαση μια σελίδα πίσω
+ .aria-label = Πίσω
+ .accesskey = Π
+navbar-tooltip-back =
+ .value = { main-context-menu-back.tooltiptext }
+toolbar-button-back =
+ .label = { main-context-menu-back.aria-label }
+# Variables
+# $shortcut (String) - A keyboard shortcut for the Go Back command.
+main-context-menu-back-2 =
+ .tooltiptext = Μετάβαση μια σελίδα πίσω ({ $shortcut })
+ .aria-label = Πίσω
+ .accesskey = Π
+navbar-tooltip-back-2 =
+ .value = { main-context-menu-back-2.tooltiptext }
+toolbar-button-back-2 =
+ .label = { main-context-menu-back-2.aria-label }
+
+## Forward
+
+main-context-menu-forward =
+ .tooltiptext = Μετάβαση μια σελίδα μπροστά
+ .aria-label = Μπροστά
+ .accesskey = Μ
+navbar-tooltip-forward =
+ .value = { main-context-menu-forward.tooltiptext }
+toolbar-button-forward =
+ .label = { main-context-menu-forward.aria-label }
+# Variables
+# $shortcut (String) - A keyboard shortcut for the Go Forward command.
+main-context-menu-forward-2 =
+ .tooltiptext = Μετάβαση μια σελίδα μπροστά ({ $shortcut })
+ .aria-label = Μπροστά
+ .accesskey = Μ
+navbar-tooltip-forward-2 =
+ .value = { main-context-menu-forward-2.tooltiptext }
+toolbar-button-forward-2 =
+ .label = { main-context-menu-forward-2.aria-label }
+
+## Reload
+
+main-context-menu-reload =
+ .aria-label = Ανανέωση
+ .accesskey = Α
+toolbar-button-reload =
+ .label = { main-context-menu-reload.aria-label }
+
+## Stop
+
+main-context-menu-stop =
+ .aria-label = Διακοπή
+ .accesskey = Δ
+toolbar-button-stop =
+ .label = { main-context-menu-stop.aria-label }
+
+## Stop-Reload Button
+
+toolbar-button-stop-reload =
+ .title = { main-context-menu-reload.aria-label }
+
+## Save Page
+
+main-context-menu-page-save =
+ .label = Αποθήκευση σελίδας ως…
+ .accesskey = λ
+toolbar-button-page-save =
+ .label = { main-context-menu-page-save.label }
+
+## Simple menu items
+
+main-context-menu-bookmark-add =
+ .aria-label = Δημιουργία σελιδοδείκτη
+ .accesskey = δ
+ .tooltiptext = Δημιουργία σελιδοδείκτη για αυτή τη σελίδα
+# Variables
+# $shortcut (String) - A keyboard shortcut for the add bookmark command.
+main-context-menu-bookmark-add-with-shortcut =
+ .aria-label = Δημιουργία σελιδοδείκτη
+ .accesskey = δ
+ .tooltiptext = Δημιουργία σελιδοδείκτη για αυτή τη σελίδα ({ $shortcut })
+main-context-menu-bookmark-change =
+ .aria-label = Επεξεργασία σελιδοδείκτη
+ .accesskey = θ
+ .tooltiptext = Επεξεργασία σελιδοδείκτη
+# Variables
+# $shortcut (String) - A keyboard shortcut for the edit bookmark command.
+main-context-menu-bookmark-change-with-shortcut =
+ .aria-label = Επεξεργασία σελιδοδείκτη
+ .accesskey = θ
+ .tooltiptext = Επεξεργασία σελιδοδείκτη ({ $shortcut })
+main-context-menu-open-link =
+ .label = Άνοιγμα συνδέσμου
+ .accesskey = ο
+main-context-menu-open-link-new-tab =
+ .label = Άνοιγμα συνδέσμου σε νέα καρτέλα
+ .accesskey = τ
+main-context-menu-open-link-container-tab =
+ .label = Άνοιγμα συνδέσμου σε νέα θεματική καρτέλα
+ .accesskey = κ
+main-context-menu-open-link-new-window =
+ .label = Άνοιγμα συνδέσμου σε νέο παράθυρο
+ .accesskey = δ
+main-context-menu-open-link-new-private-window =
+ .label = Άνοιγμα συνδέσμου σε νέο ιδιωτικό παράθυρο
+ .accesskey = δ
+main-context-menu-bookmark-this-link =
+ .label = Προσθήκη στους σελιδοδείκτες
+ .accesskey = δ
+main-context-menu-save-link =
+ .label = Αποθήκευση συνδέσμου ως…
+ .accesskey = θ
+main-context-menu-save-link-to-pocket =
+ .label = Αποθήκευση συνδέσμου στο { -pocket-brand-name }
+ .accesskey = o
+
+## The access keys for "Copy Link Location" and "Copy Email Address"
+## should be the same if possible; the two context menu items
+## are mutually exclusive.
+
+main-context-menu-copy-email =
+ .label = Αντιγραφή διεύθυνσης email
+ .accesskey = Ε
+main-context-menu-copy-link =
+ .label = Αντιγραφή τοποθεσίας συνδέσμου
+ .accesskey = γ
+
+## Media (video/audio) controls
+##
+## The accesskey for "Play" and "Pause" are the
+## same because the two context-menu items are
+## mutually exclusive.
+
+main-context-menu-media-play =
+ .label = Αναπαραγωγή
+ .accesskey = π
+main-context-menu-media-pause =
+ .label = Παύση
+ .accesskey = η
+
+##
+
+main-context-menu-media-mute =
+ .label = Σίγαση
+ .accesskey = Σ
+main-context-menu-media-unmute =
+ .label = Άρση σίγασης
+ .accesskey = ρ
+main-context-menu-media-play-speed =
+ .label = Ταχύτητα αναπαραγωγής
+ .accesskey = τ
+main-context-menu-media-play-speed-slow =
+ .label = Αργή (0.5×)
+ .accesskey = α
+main-context-menu-media-play-speed-normal =
+ .label = Κανονική
+ .accesskey = Κ
+main-context-menu-media-play-speed-fast =
+ .label = Γρήγορη (1.25×)
+ .accesskey = Ρ
+main-context-menu-media-play-speed-faster =
+ .label = Πιο γρήγορη (1.5×)
+ .accesskey = γ
+# "Ludicrous" is a reference to the movie "Space Balls" and is meant
+# to say that this speed is very fast.
+main-context-menu-media-play-speed-fastest =
+ .label = Πολύ υψηλή (2×)
+ .accesskey = Λ
+main-context-menu-media-loop =
+ .label = Επανάληψη
+ .accesskey = Ψ
+
+## The access keys for "Show Controls" and "Hide Controls" are the same
+## because the two context-menu items are mutually exclusive.
+
+main-context-menu-media-show-controls =
+ .label = Εμφάνιση στοιχείων ελέγχου
+ .accesskey = φ
+main-context-menu-media-hide-controls =
+ .label = Απόκρυψη στοιχείων ελέγχου
+ .accesskey = ψ
+
+##
+
+main-context-menu-media-video-fullscreen =
+ .label = Πλήρης οθόνη
+ .accesskey = Π
+main-context-menu-media-video-leave-fullscreen =
+ .label = Έξοδος από πλήρη οθόνη
+ .accesskey = δ
+# This is used when right-clicking on a video in the
+# content area when the Picture-in-Picture feature is enabled.
+main-context-menu-media-pip =
+ .label = Εικόνα εντός εικόνας
+ .accesskey = ν
+main-context-menu-image-reload =
+ .label = Ανανέωση εικόνας
+ .accesskey = ν
+main-context-menu-image-view =
+ .label = Προβολή εικόνας
+ .accesskey = κ
+main-context-menu-video-view =
+ .label = Προβολή βίντεο
+ .accesskey = β
+main-context-menu-image-copy =
+ .label = Αντιγραφή εικόνας
+ .accesskey = γ
+main-context-menu-image-copy-location =
+ .label = Αντιγραφή τοποθεσίας εικόνας
+ .accesskey = ν
+main-context-menu-video-copy-location =
+ .label = Αντιγραφή τοποθεσίας βίντεο
+ .accesskey = γ
+main-context-menu-audio-copy-location =
+ .label = Αντιγραφή τοποθεσίας ήχου
+ .accesskey = γ
+main-context-menu-image-save-as =
+ .label = Αποθήκευση εικόνας ως…
+ .accesskey = θ
+main-context-menu-image-email =
+ .label = Αποστολή εικόνας…
+ .accesskey = σ
+main-context-menu-image-set-as-background =
+ .label = Ορισμός ως ταπετσαρία…
+ .accesskey = τ
+main-context-menu-image-info =
+ .label = Προβολή πληροφοριών εικόνας
+ .accesskey = φ
+main-context-menu-image-desc =
+ .label = Προβολή περιγραφής
+ .accesskey = φ
+main-context-menu-video-save-as =
+ .label = Αποθήκευση βίντεο ως…
+ .accesskey = θ
+main-context-menu-audio-save-as =
+ .label = Αποθήκευση ήχου ως…
+ .accesskey = θ
+main-context-menu-video-image-save-as =
+ .label = Αποθήκευση στιγμιότυπου ως…
+ .accesskey = ς
+main-context-menu-video-email =
+ .label = Αποστολή βίντεο…
+ .accesskey = σ
+main-context-menu-audio-email =
+ .label = Αποστολή ήχου…
+ .accesskey = χ
+main-context-menu-plugin-play =
+ .label = Ενεργοποίηση αρθρώματος
+ .accesskey = γ
+main-context-menu-plugin-hide =
+ .label = Απόκρυψη αρθρώματος
+ .accesskey = π
+main-context-menu-save-to-pocket =
+ .label = Αποθήκευση σελίδας στο { -pocket-brand-name }
+ .accesskey = k
+main-context-menu-send-to-device =
+ .label = Αποστολή σελίδας σε συσκευή
+ .accesskey = δ
+main-context-menu-view-background-image =
+ .label = Προβολή εικόνας παρασκηνίου
+ .accesskey = β
+main-context-menu-generate-new-password =
+ .label = Χρήση προτεινόμενου κωδικού πρόσβασης…
+ .accesskey = π
+main-context-menu-keyword =
+ .label = Προσθήκη λέξης-κλειδιού για αυτή την αναζήτηση…
+ .accesskey = Π
+main-context-menu-link-send-to-device =
+ .label = Αποστολή συνδέσμου σε συσκευή
+ .accesskey = μ
+main-context-menu-frame =
+ .label = Αυτό το πλαίσιο
+ .accesskey = λ
+main-context-menu-frame-show-this =
+ .label = Προβολή μόνο αυτού του πλαισίου
+ .accesskey = ν
+main-context-menu-frame-open-tab =
+ .label = Άνοιγμα πλαισίου σε νέα καρτέλα
+ .accesskey = π
+main-context-menu-frame-open-window =
+ .label = Άνοιγμα πλαισίου σε νέο παράθυρο
+ .accesskey = ν
+main-context-menu-frame-reload =
+ .label = Ανανέωση πλαισίου
+ .accesskey = ν
+main-context-menu-frame-bookmark =
+ .label = Προσθήκη στους σελιδοδείκτες
+ .accesskey = λ
+main-context-menu-frame-save-as =
+ .label = Αποθήκευση πλαισίου ως…
+ .accesskey = π
+main-context-menu-frame-print =
+ .label = Εκτύπωση πλαισίου…
+ .accesskey = λ
+main-context-menu-frame-view-source =
+ .label = Προβολή πηγαίου κώδικα πλαισίου
+ .accesskey = β
+main-context-menu-frame-view-info =
+ .label = Προβολή πληροφοριών πλαισίου
+ .accesskey = β
+main-context-menu-print-selection =
+ .label = Εκτύπωση επιλογής
+ .accesskey = τ
+main-context-menu-view-selection-source =
+ .label = Προβολή πηγαίου κώδικα επιλογής
+ .accesskey = ε
+main-context-menu-view-page-source =
+ .label = Προβολή πηγαίου κώδικα
+ .accesskey = Π
+main-context-menu-view-page-info =
+ .label = Προβολή πληροφοριών σελίδας
+ .accesskey = λ
+main-context-menu-bidi-switch-text =
+ .label = Αλλαγή κατεύθυνσης κειμένου
+ .accesskey = κ
+main-context-menu-bidi-switch-page =
+ .label = Αλλαγή κατεύθυνσης σελίδας
+ .accesskey = τ
+main-context-menu-inspect-element =
+ .label = Επιθεώρηση στοιχείου
+ .accesskey = υ
+main-context-menu-inspect-a11y-properties =
+ .label = Επιθεώρηση ιδιοτήτων προσβασιμότητας
+main-context-menu-eme-learn-more =
+ .label = Μάθετε περισσότερα για το DRM…
+ .accesskey = μ
diff --git a/l10n-el/browser/browser/browserSets.ftl b/l10n-el/browser/browser/browserSets.ftl
new file mode 100644
index 0000000000..6d4e8f5659
--- /dev/null
+++ b/l10n-el/browser/browser/browserSets.ftl
@@ -0,0 +1,180 @@
+# 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/.
+
+window-minimize-command =
+ .label = Ελαχιστοποίηση
+window-zoom-command =
+ .label = Ζουμ
+window-new-shortcut =
+ .key = N
+window-minimize-shortcut =
+ .key = m
+close-shortcut =
+ .key = W
+tab-new-shortcut =
+ .key = t
+location-open-shortcut =
+ .key = l
+location-open-shortcut-alt =
+ .key = D
+search-focus-shortcut =
+ .key = k
+# This shortcut is used in two contexts:
+# - web search
+# - find in page
+find-shortcut =
+ .key = f
+search-find-again-shortcut =
+ .key = g
+search-find-again-shortcut-alt =
+ .keycode = VK_F3
+search-find-selection-shortcut =
+ .key = e
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+search-focus-shortcut-alt =
+ .key =
+ { PLATFORM() ->
+ [linux] j
+ *[other] e
+ }
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+downloads-shortcut =
+ .key =
+ { PLATFORM() ->
+ [linux] y
+ *[other] j
+ }
+addons-shortcut =
+ .key = A
+file-open-shortcut =
+ .key = o
+save-page-shortcut =
+ .key = s
+page-source-shortcut =
+ .key = u
+# This should match the Option+Command keyboard shortcut letter that Safari
+# and Chrome use for "View Source" on macOS. `page-source-shortcut` above
+# is Firefox's official keyboard shortcut shown in the GUI.
+# Safari variant is an alias provided for the convenience of Safari and Chrome
+# users on macOS. See bug 1398988.
+page-source-shortcut-safari =
+ .key = U
+page-info-shortcut =
+ .key = i
+print-shortcut =
+ .key = p
+mute-toggle-shortcut =
+ .key = M
+nav-back-shortcut-alt =
+ .key = [
+nav-fwd-shortcut-alt =
+ .key = ]
+nav-reload-shortcut =
+ .key = r
+# Shortcut available only on macOS.
+nav-stop-shortcut =
+ .key = .
+history-show-all-shortcut =
+ .key = H
+history-show-all-shortcut-mac =
+ .key = Y
+history-sidebar-shortcut =
+ .key = h
+full-screen-shortcut =
+ .key = f
+reader-mode-toggle-shortcut-windows =
+ .keycode = VK_F9
+reader-mode-toggle-shortcut-other =
+ .key = R
+picture-in-picture-toggle-shortcut-mac =
+ .key = ]
+# Pick the key that is commonly present
+# in your locale keyboards above the
+# `picture-in-picture-toggle-shortcut-mac` key.
+picture-in-picture-toggle-shortcut-mac-alt =
+ .key = { "}" }
+picture-in-picture-toggle-shortcut =
+ .key = ]
+# Pick the key that is commonly present
+# in your locale keyboards above the
+# `picture-in-picture-toggle-shortcut` key.
+picture-in-picture-toggle-shortcut-alt =
+ .key = { "}" }
+bookmark-this-page-shortcut =
+ .key = d
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+bookmark-show-all-shortcut =
+ .key =
+ { PLATFORM() ->
+ [linux] o
+ *[other] b
+ }
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+bookmark-show-library-shortcut =
+ .key = O
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+bookmark-show-sidebar-shortcut =
+ .key = b
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+bookmark-show-toolbar-shortcut =
+ .key = B
+
+## All `-alt*` messages are alternative acceleration keys for zoom.
+## If shift key is needed with your locale popular keyboard for them,
+## you can use these alternative items. Otherwise, their values should be empty.
+
+full-zoom-reduce-shortcut =
+ .key = -
+# If in keyboard layouts popular for your locale you need to use the shift key
+# to access the original shortcuts, the following shortcuts can be used.
+# Otherwise their values should remain empty.
+full-zoom-reduce-shortcut-alt =
+ .key = { "" }
+full-zoom-reduce-shortcut-alt-a =
+ .key = _
+full-zoom-reduce-shortcut-alt-b =
+ .key = { "" }
+full-zoom-enlarge-shortcut =
+ .key = +
+full-zoom-enlarge-shortcut-alt =
+ .key = =
+full-zoom-enlarge-shortcut-alt2 =
+ .key = { "" }
+full-zoom-reset-shortcut =
+ .key = 0
+full-zoom-reset-shortcut-alt =
+ .key = { "" }
+
+##
+
+bidi-switch-direction-shortcut =
+ .key = X
+private-browsing-shortcut =
+ .key = P
+
+## The shortcuts below are for Mac specific
+## global menu.
+
+quit-app-shortcut =
+ .key = Q
+help-shortcut =
+ .key = ?
+preferences-shortcut =
+ .key = ,
+hide-app-shortcut =
+ .key = H
+hide-other-apps-shortcut =
+ .key = H
diff --git a/l10n-el/browser/browser/customizeMode.ftl b/l10n-el/browser/browser/customizeMode.ftl
new file mode 100644
index 0000000000..e2833def47
--- /dev/null
+++ b/l10n-el/browser/browser/customizeMode.ftl
@@ -0,0 +1,47 @@
+# 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/.
+
+customize-mode-restore-defaults =
+ .label = Επαναφορά προεπιλογών
+customize-mode-menu-and-toolbars-header = Σύρετε τα αγαπημένα σας στοιχεία στη γραμμή εργαλείων ή το αναδυόμενο μενού.
+customize-mode-overflow-list-title = Αναδυόμενο μενού
+customize-mode-uidensity =
+ .label = Πυκνότητα
+customize-mode-done =
+ .label = Τέλος
+customize-mode-lwthemes-menu-manage =
+ .label = Διαχείριση
+ .accesskey = χ
+customize-mode-toolbars =
+ .label = Γραμμές εργαλείων
+customize-mode-titlebar =
+ .label = Γραμμή τίτλου
+customize-mode-uidensity-menu-touch =
+ .label = Αφή
+ .accesskey = Α
+ .tooltiptext = Αφή
+customize-mode-uidensity-auto-touch-mode-checkbox =
+ .label = Χρήση επιλογής "Αφή" για τη λειτουργία tablet
+customize-mode-extra-drag-space =
+ .label = Χώρος μεταφοράς
+customize-mode-lwthemes =
+ .label = Θέματα
+customize-mode-overflow-list-description = Σύρετε και εναποθέστε στοιχεία εδώ για να τα έχετε πάντα κοντά, αλλά όχι στη γραμμή εργαλείων…
+customize-mode-uidensity-menu-normal =
+ .label = Κανονικό
+ .accesskey = Κ
+ .tooltiptext = Κανονικό
+customize-mode-uidensity-menu-compact =
+ .label = Πολύ πυκνό
+ .accesskey = Π
+ .tooltiptext = Πολύ πυκνό
+customize-mode-lwthemes-menu-get-more =
+ .label = Λήψη περισσότερων θεμάτων
+ .accesskey = Λ
+customize-mode-undo-cmd =
+ .label = Αναίρεση
+customize-mode-lwthemes-my-themes =
+ .value = Τα θέματά μου
+customize-mode-touchbar-cmd =
+ .label = Προσαρμογή γραμμής αφής…
diff --git a/l10n-el/browser/browser/defaultBrowserNotification.ftl b/l10n-el/browser/browser/defaultBrowserNotification.ftl
new file mode 100644
index 0000000000..8881930fc6
--- /dev/null
+++ b/l10n-el/browser/browser/defaultBrowserNotification.ftl
@@ -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/.
+
+# The question portion of the following message should have the <strong> and </strong> tags surrounding it.
+default-browser-notification-message = <strong>Ορισμός του { -brand-short-name } ως του προεπιλεγμένου προγράμματος περιήγησης;</strong> Αποκτήστε γρήγορη, ασφαλή και ιδιωτική περιήγηση στο διαδίκτυο.
+default-browser-notification-button =
+ .label = Ορισμός ως προεπιλογή
+ .accesskey = Ο
diff --git a/l10n-el/browser/browser/downloads.ftl b/l10n-el/browser/browser/downloads.ftl
new file mode 100644
index 0000000000..ac6ee9e8e5
--- /dev/null
+++ b/l10n-el/browser/browser/downloads.ftl
@@ -0,0 +1,166 @@
+# 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/.
+
+
+## The title and aria-label attributes are used by screen readers to describe
+## the Downloads Panel.
+
+downloads-window =
+ .title = Λήψεις
+downloads-panel =
+ .aria-label = Λήψεις
+
+##
+
+# The style attribute has the width of the Downloads Panel expressed using
+# a CSS unit. The longest labels that should fit are usually those of
+# in-progress and blocked downloads.
+downloads-panel-list =
+ .style = width: 70ch
+
+downloads-cmd-pause =
+ .label = Παύση
+ .accesskey = Π
+downloads-cmd-resume =
+ .label = Συνέχεια
+ .accesskey = ν
+downloads-cmd-cancel =
+ .tooltiptext = Ακύρωση
+downloads-cmd-cancel-panel =
+ .aria-label = Ακύρωση
+
+# This message is only displayed on Windows and Linux devices
+downloads-cmd-show-menuitem =
+ .label = Άνοιγμα φακέλου λήψης
+ .accesskey = φ
+
+# This message is only displayed on macOS devices
+downloads-cmd-show-menuitem-mac =
+ .label = Προβολή στο Finder
+ .accesskey = ρ
+
+downloads-cmd-use-system-default =
+ .label = Άνοιγμα με το πρόγραμμα προβολής συστήματος
+ .accesskey = π
+
+downloads-cmd-always-use-system-default =
+ .label = Άνοιγμα πάντα με το πρόγραμμα προβολής συστήματος
+ .accesskey = ν
+
+downloads-cmd-show-button =
+ .tooltiptext =
+ { PLATFORM() ->
+ [macos] Προβολή στο Finder
+ *[other] Άνοιγμα φακέλου λήψης
+ }
+
+downloads-cmd-show-panel =
+ .aria-label =
+ { PLATFORM() ->
+ [macos] Προβολή στο Finder
+ *[other] Άνοιγμα φακέλου λήψης
+ }
+downloads-cmd-show-description =
+ .value =
+ { PLATFORM() ->
+ [macos] Προβολή στο Finder
+ *[other] Άνοιγμα φακέλου λήψης
+ }
+
+downloads-cmd-show-downloads =
+ .label = Εμφάνιση φακέλου λήψεων
+downloads-cmd-retry =
+ .tooltiptext = Επανάληψη
+downloads-cmd-retry-panel =
+ .aria-label = Επανάληψη
+downloads-cmd-go-to-download-page =
+ .label = Μετάβαση στη σελίδα λήψης
+ .accesskey = β
+downloads-cmd-copy-download-link =
+ .label = Αντιγραφή συνδέσμου λήψης
+ .accesskey = δ
+downloads-cmd-remove-from-history =
+ .label = Αφαίρεση από το ιστορικό
+ .accesskey = ι
+downloads-cmd-clear-list =
+ .label = Απαλοιφή πλαισίου προεπισκόπησης
+ .accesskey = κ
+downloads-cmd-clear-downloads =
+ .label = Εκκαθάριση λήψεων
+ .accesskey = θ
+
+# This command is shown in the context menu when downloads are blocked.
+downloads-cmd-unblock =
+ .label = Αποδοχή λήψης
+ .accesskey = α
+
+# This is the tooltip of the action button shown when malware is blocked.
+downloads-cmd-remove-file =
+ .tooltiptext = Διαγραφή αρχείου
+
+downloads-cmd-remove-file-panel =
+ .aria-label = Διαγραφή αρχείου
+
+# This is the tooltip of the action button shown when potentially unwanted
+# downloads are blocked. This opens a dialog where the user can choose
+# whether to unblock or remove the download. Removing is the default option.
+downloads-cmd-choose-unblock =
+ .tooltiptext = Διαγραφή αρχείου ή αποδοχή λήψης
+
+downloads-cmd-choose-unblock-panel =
+ .aria-label = Διαγραφή αρχείου ή αποδοχή λήψης
+
+# This is the tooltip of the action button shown when uncommon downloads are
+# blocked.This opens a dialog where the user can choose whether to open the
+# file or remove the download. Opening is the default option.
+downloads-cmd-choose-open =
+ .tooltiptext = Άνοιγμα ή διαγραφή του αρχείου
+
+downloads-cmd-choose-open-panel =
+ .aria-label = Άνοιγμα ή διαγραφή του αρχείου
+
+# Displayed when hovering a blocked download, indicates that it's possible to
+# show more information for user to take the next action.
+downloads-show-more-information =
+ .value = Εμφάνιση περισσότερων πληροφοριών
+
+# Displayed when hovering a complete download, indicates that it's possible to
+# open the file using an app available in the system.
+downloads-open-file =
+ .value = Άνοιγμα αρχείου
+
+# Displayed when hovering a download which is able to be retried by users,
+# indicates that it's possible to download this file again.
+downloads-retry-download =
+ .value = Επανάληψη λήψης
+
+# Displayed when hovering a download which is able to be cancelled by users,
+# indicates that it's possible to cancel and stop the download.
+downloads-cancel-download =
+ .value = Ακύρωση λήψης
+
+# This string is shown at the bottom of the Downloads Panel when all the
+# downloads fit in the available space, or when there are no downloads in
+# the panel at all.
+downloads-history =
+ .label = Προβολή όλων των λήψεων
+ .accesskey = Π
+
+# This string is shown at the top of the Download Details Panel, to indicate
+# that we are showing the details of a single download.
+downloads-details =
+ .title = Λεπτομέρειες λήψης
+
+downloads-clear-downloads-button =
+ .label = Εκκαθάριση λήψεων
+ .tooltiptext = Απομακρύνει από τη λίστα τις ολοκληρωμένες, ακυρωμένες και αποτυχημένες λήψεις
+
+# This string is shown when there are no items in the Downloads view, when it
+# is displayed inside a browser tab.
+downloads-list-empty =
+ .value = Δεν υπάρχουν λήψεις.
+
+# This string is shown when there are no items in the Downloads Panel.
+downloads-panel-empty =
+ .value = Καμία λήψη για αυτή τη συνεδρία.
diff --git a/l10n-el/browser/browser/editBookmarkOverlay.ftl b/l10n-el/browser/browser/editBookmarkOverlay.ftl
new file mode 100644
index 0000000000..81138447a2
--- /dev/null
+++ b/l10n-el/browser/browser/editBookmarkOverlay.ftl
@@ -0,0 +1,42 @@
+# 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/.
+
+bookmark-overlay-name =
+ .value = Όνομα:
+ .accesskey = ν
+
+bookmark-overlay-location =
+ .value = Τοποθεσία:
+ .accesskey = θ
+
+bookmark-overlay-folder =
+ .value = Φάκελος:
+
+bookmark-overlay-choose =
+ .label = Επιλογή…
+
+bookmark-overlay-folders-expander =
+ .tooltiptext = Προβολή όλων των φακέλων σελιδοδεικτών
+ .tooltiptextdown = { bookmark-overlay-folders-expander.tooltiptext }
+ .tooltiptextup = Απόκρυψη
+
+bookmark-overlay-new-folder-button =
+ .label = Νέος φάκελος
+ .accesskey = ο
+
+bookmark-overlay-tags =
+ .value = Ετικέτες:
+ .accesskey = τ
+
+bookmark-overlay-tags-empty-description =
+ .placeholder = Διαχωρίστε τις ετικέτες με κόμματα
+
+bookmark-overlay-tags-expander =
+ .tooltiptext = Προβολή όλων των ετικετών
+ .tooltiptextdown = { bookmark-overlay-tags-expander.tooltiptext }
+ .tooltiptextup = Απόκρυψη
+
+bookmark-overlay-keyword =
+ .value = Λέξη-κλειδί:
+ .accesskey = κ
diff --git a/l10n-el/browser/browser/menubar.ftl b/l10n-el/browser/browser/menubar.ftl
new file mode 100644
index 0000000000..21ab73777f
--- /dev/null
+++ b/l10n-el/browser/browser/menubar.ftl
@@ -0,0 +1,347 @@
+# 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/.
+
+
+# NOTE: For English locales, strings in this file should be in APA-style Title Case.
+# See https://apastyle.apa.org/style-grammar-guidelines/capitalization/title-case
+#
+# NOTE: For Engineers, please don't re-use these strings outside of the menubar.
+
+
+## Application Menu (macOS only)
+
+menu-application-services =
+ .label = Υπηρεσίες
+menu-application-hide-this =
+ .label = Απόκρυψη { -brand-shorter-name }
+menu-application-hide-other =
+ .label = Απόκρυψη άλλων
+menu-application-show-all =
+ .label = Εμφάνιση όλων
+menu-application-touch-bar =
+ .label = Προσαρμογή γραμμής αφής…
+
+##
+
+# These menu-quit strings are only used on Windows and Linux.
+menu-quit =
+ .label =
+ { PLATFORM() ->
+ [windows] Έξοδος
+ *[other] Έξοδος
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] ξ
+ *[other] ξ
+ }
+# This menu-quit-mac string is only used on macOS.
+menu-quit-mac =
+ .label = Έξοδος από το { -brand-shorter-name }
+# This menu-quit-button string is only used on Linux.
+menu-quit-button =
+ .label = { menu-quit.label }
+# This menu-quit-button-win string is only used on Windows.
+menu-quit-button-win =
+ .label = { menu-quit.label }
+ .tooltip = Έξοδος από το { -brand-shorter-name }
+menu-about =
+ .label = Σχετικά με το { -brand-shorter-name }
+ .accesskey = τ
+
+## File Menu
+
+menu-file =
+ .label = Αρχείο
+ .accesskey = Α
+menu-file-new-tab =
+ .label = Νέα καρτέλα
+ .accesskey = τ
+menu-file-new-container-tab =
+ .label = Νέα καρτέλα εντός περιβάλλοντος
+ .accesskey = β
+menu-file-new-window =
+ .label = Νέο παράθυρο
+ .accesskey = Ν
+menu-file-new-private-window =
+ .label = Νέο ιδιωτικό παράθυρο
+ .accesskey = δ
+# "Open Location" is only displayed on macOS, and only on windows
+# that aren't main browser windows, or when there are no windows
+# but Firefox is still running.
+menu-file-open-location =
+ .label = Άνοιγμα τοποθεσίας…
+menu-file-open-file =
+ .label = Άνοιγμα αρχείου…
+ .accesskey = ν
+menu-file-close =
+ .label = Κλείσιμο
+ .accesskey = Κ
+menu-file-close-window =
+ .label = Κλείσιμο παραθύρου
+ .accesskey = θ
+menu-file-save-page =
+ .label = Αποθήκευση σελίδας ως…
+ .accesskey = π
+menu-file-email-link =
+ .label = Αποστολή συνδέσμου…
+ .accesskey = λ
+menu-file-print-setup =
+ .label = Διαμόρφωση σελίδας…
+ .accesskey = μ
+menu-file-print-preview =
+ .label = Προεπισκόπηση εκτύπωσης
+ .accesskey = ρ
+menu-file-print =
+ .label = Εκτύπωση…
+ .accesskey = κ
+menu-file-import-from-another-browser =
+ .label = Εισαγωγή από άλλο φυλλομετρητή…
+ .accesskey = Ε
+menu-file-go-offline =
+ .label = Εργασία χωρίς σύνδεση
+ .accesskey = χ
+
+## Edit Menu
+
+menu-edit =
+ .label = Επεξεργασία
+ .accesskey = Ε
+menu-edit-find-on =
+ .label = Εύρεση στη σελίδα…
+ .accesskey = ρ
+menu-edit-find-again =
+ .label = Εύρεση ξανά
+ .accesskey = ξ
+menu-edit-bidi-switch-text-direction =
+ .label = Αλλαγή κατεύθυνσης κειμένου
+ .accesskey = κ
+
+## View Menu
+
+menu-view =
+ .label = Προβολή
+ .accesskey = ρ
+menu-view-toolbars-menu =
+ .label = Γραμμές εργαλείων
+ .accesskey = ρ
+menu-view-customize-toolbar =
+ .label = Προσαρμογή…
+ .accesskey = Π
+menu-view-sidebar =
+ .label = Πλευρική στήλη
+ .accesskey = ε
+menu-view-bookmarks =
+ .label = Σελιδοδείκτες
+menu-view-history-button =
+ .label = Ιστορικό
+menu-view-synced-tabs-sidebar =
+ .label = Συγχρονισμένες καρτέλες
+menu-view-full-zoom =
+ .label = Ζουμ
+ .accesskey = Ζ
+menu-view-full-zoom-enlarge =
+ .label = Μεγέθυνση
+ .accesskey = σ
+menu-view-full-zoom-reduce =
+ .label = Σμίκρυνση
+ .accesskey = υ
+menu-view-full-zoom-actual-size =
+ .label = Πραγματικό μέγεθος
+ .accesskey = Π
+menu-view-full-zoom-toggle =
+ .label = Ζουμ μόνο στο κείμενο
+ .accesskey = κ
+menu-view-page-style-menu =
+ .label = Μορφοποίηση σελίδας
+ .accesskey = ο
+menu-view-page-style-no-style =
+ .label = Χωρίς μορφοποίηση
+ .accesskey = ρ
+menu-view-page-basic-style =
+ .label = Βασική μορφοποίηση σελίδας
+ .accesskey = Β
+menu-view-charset =
+ .label = Κωδικοποίηση κειμένου
+ .accesskey = κ
+
+## These should match what Safari and other Apple applications
+## use on macOS.
+
+menu-view-enter-full-screen =
+ .label = Μετάβαση σε πλήρη οθόνη
+ .accesskey = π
+menu-view-exit-full-screen =
+ .label = Έξοδος από πλήρη οθόνη
+ .accesskey = π
+menu-view-full-screen =
+ .label = Πλήρης οθόνη
+ .accesskey = Π
+
+##
+
+menu-view-show-all-tabs =
+ .label = Προβολή όλων των καρτελών
+ .accesskey = λ
+menu-view-bidi-switch-page-direction =
+ .label = Αλλαγή κατεύθυνσης σελίδας
+ .accesskey = τ
+
+## History Menu
+
+menu-history =
+ .label = Ιστορικό
+ .accesskey = Ι
+menu-history-show-all-history =
+ .label = Προβολή όλου του ιστορικού
+menu-history-clear-recent-history =
+ .label = Εκκαθάριση πρόσφατου ιστορικού…
+menu-history-synced-tabs =
+ .label = Συγχρονισμένες καρτέλες
+menu-history-restore-last-session =
+ .label = Επαναφορά προηγούμενης συνεδρίας
+menu-history-hidden-tabs =
+ .label = Κρυμμένες καρτέλες
+menu-history-undo-menu =
+ .label = Πρόσφατα κλεισμένες καρτέλες
+menu-history-undo-window-menu =
+ .label = Πρόσφατα κλεισμένα παράθυρα
+
+## Bookmarks Menu
+
+menu-bookmarks-menu =
+ .label = Σελιδοδείκτες
+ .accesskey = Σ
+menu-bookmarks-show-all =
+ .label = Προβολή όλων των σελιδοδεικτών
+menu-bookmark-this-page =
+ .label = Δημιουργία σελιδοδείκτη
+menu-bookmark-edit =
+ .label = Επεξεργασία σελιδοδείκτη
+menu-bookmarks-all-tabs =
+ .label = Αποθήκευση όλων των καρτελών…
+menu-bookmarks-toolbar =
+ .label = Γραμμή σελιδοδεικτών
+menu-bookmarks-other =
+ .label = Άλλοι σελιδοδείκτες
+menu-bookmarks-mobile =
+ .label = Σελιδοδείκτες κινητού
+
+## Tools Menu
+
+menu-tools =
+ .label = Εργαλεία
+ .accesskey = γ
+menu-tools-downloads =
+ .label = Λήψεις
+ .accesskey = ψ
+menu-tools-addons =
+ .label = Πρόσθετα
+ .accesskey = θ
+menu-tools-fxa-sign-in =
+ .label = Σύνδεση στο { -brand-product-name }…
+ .accesskey = δ
+menu-tools-turn-on-sync =
+ .label = Ενεργοποίηση { -sync-brand-short-name }…
+ .accesskey = ρ
+menu-tools-sync-now =
+ .label = Συγχρονισμός τώρα
+ .accesskey = Σ
+menu-tools-fxa-re-auth =
+ .label = Επανασύνδεση στο { -brand-product-name }…
+ .accesskey = Ε
+menu-tools-web-developer =
+ .label = Προγραμματισμός ιστού
+ .accesskey = Π
+menu-tools-page-source =
+ .label = Κώδικας σελίδας
+ .accesskey = δ
+menu-tools-page-info =
+ .label = Πληροφορίες σελίδας
+ .accesskey = λ
+menu-preferences =
+ .label =
+ { PLATFORM() ->
+ [windows] Επιλογές
+ *[other] Προτιμήσεις
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] Ε
+ *[other] μ
+ }
+menu-tools-layout-debugger =
+ .label = Αποσφαλμάτωση διάταξης
+ .accesskey = Δ
+
+## Window Menu
+
+menu-window-menu =
+ .label = Παράθυρο
+menu-window-bring-all-to-front =
+ .label = Μεταφορά όλων μπροστά
+
+## Help Menu
+
+
+# NOTE: For Engineers, any additions or changes to Help menu strings should
+# also be reflected in the related strings in appmenu.ftl. Those strings, by
+# convention, will have the same ID as these, but prefixed with "app".
+# Example: appmenu-help-product
+#
+# These strings are duplicated to allow for different casing depending on
+# where the strings appear.
+
+
+# NOTE: For Engineers, any additions or changes to Help menu strings should
+# also be reflected in the related strings in appmenu.ftl. Those strings, by
+# convention, will have the same ID as these, but prefixed with "app".
+# Example: appmenu-get-help
+#
+# These strings are duplicated to allow for different casing depending on
+# where the strings appear.
+
+menu-help =
+ .label = Βοήθεια
+ .accesskey = Β
+menu-help-product =
+ .label = Βοήθεια για το { -brand-shorter-name }
+ .accesskey = Β
+menu-help-show-tour =
+ .label = Ξενάγηση στο { -brand-shorter-name }
+ .accesskey = Ξ
+menu-help-import-from-another-browser =
+ .label = Εισαγωγή από άλλο φυλλομετρητή…
+ .accesskey = Ε
+menu-help-keyboard-shortcuts =
+ .label = Συντομεύσεις πληκτρολογίου
+ .accesskey = υ
+menu-get-help =
+ .label = Λήψη βοήθειας
+ .accesskey = Λ
+menu-help-troubleshooting-info =
+ .label = Πληροφορίες επίλυσης προβλημάτων
+ .accesskey = Π
+menu-help-taskmanager =
+ .label = Διαχείριση εργασιών
+menu-help-feedback-page =
+ .label = Υποβολή σχολίων…
+ .accesskey = λ
+menu-help-safe-mode-without-addons =
+ .label = Επανεκκίνηση με ανενεργά πρόσθετα…
+ .accesskey = π
+menu-help-safe-mode-with-addons =
+ .label = Επανεκκίνηση με ενεργά πρόσθετα
+ .accesskey = π
+# Label of the Help menu item. Either this or
+# menu-help-notdeceptive is shown.
+menu-help-report-deceptive-site =
+ .label = Αναφορά παραπλανητικής σελίδας…
+ .accesskey = Α
+menu-help-not-deceptive =
+ .label = Αυτή δεν είναι παραπλανητική ιστοσελίδα…
+ .accesskey = δ
+menu-help-check-for-update =
+ .label = Έλεγχος για ενημερώσεις…
+ .accesskey = Έ
diff --git a/l10n-el/browser/browser/migration.ftl b/l10n-el/browser/browser/migration.ftl
new file mode 100644
index 0000000000..4a444c85f2
--- /dev/null
+++ b/l10n-el/browser/browser/migration.ftl
@@ -0,0 +1,148 @@
+# 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/.
+
+migration-wizard =
+ .title = Βοηθός εισαγωγής
+import-from =
+ { PLATFORM() ->
+ [windows] Εισαγωγή επιλογών, σελιδοδεικτών, ιστορικού, κωδικών πρόσβασης και άλλων δεδομένων από:
+ *[other] Εισαγωγή προτιμήσεων, σελιδοδεικτών, ιστορικού, κωδικών πρόσβασης και άλλων δεδομένων από:
+ }
+import-from-bookmarks = Εισαγωγή σελιδοδεικτών από:
+import-from-ie =
+ .label = Microsoft Internet Explorer
+ .accesskey = M
+import-from-edge =
+ .label = Microsoft Edge
+ .accesskey = E
+import-from-edge-legacy =
+ .label = Microsoft Edge Legacy
+ .accesskey = L
+import-from-edge-beta =
+ .label = Microsoft Edge Beta
+ .accesskey = d
+import-from-nothing =
+ .label = Να μην εισαχθεί τίποτα
+ .accesskey = Ν
+import-from-safari =
+ .label = Safari
+ .accesskey = S
+import-from-canary =
+ .label = Chrome Canary
+ .accesskey = n
+import-from-chrome =
+ .label = Chrome
+ .accesskey = C
+import-from-chrome-beta =
+ .label = Chrome Beta
+ .accesskey = B
+import-from-chrome-dev =
+ .label = Chrome Dev
+ .accesskey = D
+import-from-chromium =
+ .label = Chromium
+ .accesskey = u
+import-from-firefox =
+ .label = Firefox
+ .accesskey = X
+import-from-360se =
+ .label = 360 Secure Browser
+ .accesskey = 3
+no-migration-sources = Δεν βρέθηκαν προγράμματα τα οποία περιέχουν σελιδοδείκτες, ιστορικό ή δεδομένα κωδικών.
+import-source-page-title = Εισαγωγή ρυθμίσεων και δεδομένων
+import-items-page-title = Στοιχεία προς εισαγωγή
+import-items-description = Επιλέξτε στοιχεία προς εισαγωγή:
+import-permissions-page-title = Παρακαλούμε παραχωρήστε στο { -brand-short-name } δικαιώματα
+# Do not translate "Bookmarks.plist"; the file name is the same everywhere.
+import-permissions-description = Το macOS απαιτεί τη ρητή έγκρισή σας ώστε το { -brand-short-name } να προσπελάσει τους σελιδοδείκτες του Safari. Κάντε κλικ στο “Συνέχεια” και επιλέξτε το αρχείο “Bookmarks.plist” στο παράθυρο “Άνοιγμα αρχείου”.
+import-migrating-page-title = Εισαγωγή…
+import-migrating-description = Γίνεται εισαγωγή των παρακάτω στοιχείων αυτή τη στιγμή…
+import-select-profile-page-title = Επιλογή προφίλ
+import-select-profile-description = Τα ακόλουθα προφίλ είναι διαθέσιμα για εισαγωγή από:
+import-done-page-title = Η εισαγωγή ολοκληρώθηκε
+import-done-description = Τα ακόλουθα στοιχεία εισήχθησαν επιτυχώς:
+import-close-source-browser = Παρακαλούμε βεβαιωθείτε ότι το επιλεγμένο πρόγραμμα περιήγησης είναι κλειστό πριν συνεχίσετε.
+# Displays which browser the bookmarks are being imported from
+#
+# Variables:
+# $source (String): The browser the user has chosen to import bookmarks from.
+imported-bookmarks-source = Από { $source }
+source-name-ie = Ιnternet Explorer
+source-name-edge = Microsoft Edge
+source-name-edge-beta = Microsoft Edge Beta
+source-name-safari = Safari
+source-name-canary = Google Chrome Canary
+source-name-chrome = Google Chrome
+source-name-chrome-beta = Google Chrome Beta
+source-name-chrome-dev = Google Chrome Dev
+source-name-chromium = Chromium
+source-name-firefox = Mozilla Firefox
+source-name-360se = 360 Secure Browser
+imported-safari-reading-list = Λίστα ανάγνωσης (Από Safari)
+imported-edge-reading-list = Λίστα ανάγνωσης (Από Edge)
+
+## Browser data types
+## All of these strings get a $browser variable passed in.
+## You can use the browser variable to differentiate the name of items,
+## which may have different labels in different browsers.
+## The supported values for the $browser variable are:
+## 360se
+## chrome
+## edge
+## firefox
+## ie
+## safari
+## The various beta and development versions of edge and chrome all get
+## normalized to just "edge" and "chrome" for these strings.
+
+browser-data-cookies-checkbox =
+ .label = Cookies
+browser-data-cookies-label =
+ .value = Cookies
+browser-data-history-checkbox =
+ .label =
+ { $browser ->
+ [firefox] Ιστορικό περιήγησης και σελιδοδείκτες
+ *[other] Ιστορικό περιήγησης
+ }
+browser-data-history-label =
+ .value =
+ { $browser ->
+ [firefox] Ιστορικό περιήγησης και σελιδοδείκτες
+ *[other] Ιστορικό περιήγησης
+ }
+browser-data-formdata-checkbox =
+ .label = Ιστορικό αποθηκευμένων φορμών
+browser-data-formdata-label =
+ .value = Ιστορικό αποθηκευμένων φορμών
+# This string should use the same phrase for "logins and passwords" as the
+# label in the main hamburger menu that opens about:logins.
+browser-data-passwords-checkbox =
+ .label = Αποθηκευμένες συνδέσεις και κωδικοί πρόσβασης
+# This string should use the same phrase for "logins and passwords" as the
+# label in the main hamburger menu that opens about:logins.
+browser-data-passwords-label =
+ .value = Αποθηκευμένες συνδέσεις και κωδικοί πρόσβασης
+browser-data-bookmarks-checkbox =
+ .label =
+ { $browser ->
+ [ie] Αγαπημένα
+ [edge] Αγαπημένα
+ *[other] Σελιδοδείκτες
+ }
+browser-data-bookmarks-label =
+ .value =
+ { $browser ->
+ [ie] Αγαπημένα
+ [edge] Αγαπημένα
+ *[other] Σελιδοδείκτες
+ }
+browser-data-otherdata-checkbox =
+ .label = Άλλα δεδομένα
+browser-data-otherdata-label =
+ .label = Άλλα δεδομένα
+browser-data-session-checkbox =
+ .label = Παράθυρα και καρτέλες
+browser-data-session-label =
+ .value = Παράθυρα και καρτέλες
diff --git a/l10n-el/browser/browser/newInstallPage.ftl b/l10n-el/browser/browser/newInstallPage.ftl
new file mode 100644
index 0000000000..7ffeb48efe
--- /dev/null
+++ b/l10n-el/browser/browser/newInstallPage.ftl
@@ -0,0 +1,33 @@
+# 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/.
+
+
+### For this feature, "installation" is used to mean "this discrete download of
+### Firefox" and "version" is used to mean "the specific revision number of a
+### given Firefox channel". These terms are not synonymous.
+
+title = Σημαντικές ειδήσεις
+heading = Αλλαγές στο προφίλ { -brand-short-name } σας
+
+changed-title = Τι άλλαξε;
+changed-desc-profiles = Αυτή η εγκατάσταση του { -brand-short-name } έχει νέο προφίλ. Ένα προφίλ αποτελείται από ένα σύνολο αρχείων, όπου το Firefox αποθηκεύει πληροφορίες, όπως σελιδοδείκτες, κωδικούς πρόσβασης και προτιμήσεις χρήστη.
+changed-desc-dedicated = Για πιο εύκολη και ασφαλή εναλλαγή μεταξύ των διάφορων εγκαταστάσεων του Firefox (συμπεριλαμβανομένων των Firefox, Firefox ESR, Firefox Beta, Firefox Developer Edition και Firefox Nightly), αυτή η εγκατάσταση έχει πλέον ένα ξεχωριστό προφίλ. Δεν μοιράζεται αυτόματα τις αποθηκευμένες σας πληροφορίες με άλλες εγκαταστάσεις του Firefox.
+
+lost = <b>Δεν έχετε χάσει προσωπικά δεδομένα ή προσαρμογές.</b> Αν έχετε ήδη αποθηκεύσει πληροφορίες στο Firefox σε αυτό τον υπολογιστή, είναι ακόμη διαθέσιμες σε κάποια άλλη εγκατάσταση του Firefox.
+
+options-title = Ποιες είναι οι επιλογές μου;
+options-do-nothing = Αν δεν κάνετε τίποτα, τα δεδομένα του προφίλ σας στο { -brand-short-name } θα διαφέρουν από τα δεδομένα προφίλ σε άλλες εγκαταστάσεις του Firefox.
+options-use-sync = Αν επιθυμείτε να έχετε τα ίδια δεδομένα προφίλ σε όλες τις εγκαταστάσεις του Firefox, μπορείτε να χρησιμοποιήσετε ένα { -fxaccount-brand-name } για να παραμένουν σε συγχρονισμό.
+
+resources = Πόροι:
+support-link = Χρήση της Διαχείρισης προφίλ - Άρθρο υποστήριξης
+
+sync-header = Σύνδεση ή δημιουργία { -fxaccount-brand-name }
+sync-label = Εισάγετε το email σας
+sync-input =
+ .placeholder = Email
+sync-button = Συνέχεια
+sync-terms = Συνεχίζοντας, συμφωνείτε με τους <a data-l10n-name="terms">όρους υπηρεσίας</a> και τη <a data-l10n-name="privacy">σημείωση απορρήτου</a>.
+sync-first = Χρησιμοποιείτε για πρώτη φορά το { -sync-brand-name }; Θα πρέπει να συνδεθείτε σε κάθε εγκατάσταση του Firefox για να συγχρονίσετε τις πληροφορίες σας.
+sync-learn = Μάθετε περισσότερα
diff --git a/l10n-el/browser/browser/newtab/asrouter.ftl b/l10n-el/browser/browser/newtab/asrouter.ftl
new file mode 100644
index 0000000000..37aa381170
--- /dev/null
+++ b/l10n-el/browser/browser/newtab/asrouter.ftl
@@ -0,0 +1,295 @@
+# 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/.
+
+
+## These messages are used as headings in the recommendation doorhanger
+
+cfr-doorhanger-extension-heading = Προτεινόμενη επέκταση
+cfr-doorhanger-feature-heading = Προτεινόμενη λειτουργία
+cfr-doorhanger-pintab-heading = Δοκιμάστε αυτό: Καρφίτσωμα καρτέλας
+
+##
+
+cfr-doorhanger-extension-sumo-link =
+ .tooltiptext = Γιατί το βλέπω αυτό
+cfr-doorhanger-extension-cancel-button = Όχι τώρα
+ .accesskey = χ
+cfr-doorhanger-extension-ok-button = Προσθήκη τώρα
+ .accesskey = σ
+cfr-doorhanger-pintab-ok-button = Καρφίτσωμα καρτέλας
+ .accesskey = Κ
+cfr-doorhanger-extension-manage-settings-button = Διαχείριση ρυθμίσεων προτάσεων
+ .accesskey = Δ
+cfr-doorhanger-extension-never-show-recommendation = Να μην εμφανίζεται αυτή η πρόταση
+ .accesskey = Ν
+cfr-doorhanger-extension-learn-more-link = Μάθετε περισσότερα
+# This string is used on a new line below the add-on name
+# Variables:
+# $name (String) - Add-on author name
+cfr-doorhanger-extension-author = από { $name }
+# This is a notification displayed in the address bar.
+# When clicked it opens a panel with a message for the user.
+cfr-doorhanger-extension-notification = Πρόταση
+cfr-doorhanger-extension-notification2 = Πρόταση
+ .tooltiptext = Πρόταση επέκτασης
+ .a11y-announcement = Διαθέσιμη πρόταση επέκτασης
+# This is a notification displayed in the address bar.
+# When clicked it opens a panel with a message for the user.
+cfr-doorhanger-feature-notification = Πρόταση
+ .tooltiptext = Πρόταση λειτουργίας
+ .a11y-announcement = Διαθέσιμη πρόταση λειτουργίας
+
+## Add-on statistics
+## These strings are used to display the total number of
+## users and rating for an add-on. They are shown next to each other.
+
+# Variables:
+# $total (Number) - The rating of the add-on from 1 to 5
+cfr-doorhanger-extension-rating =
+ .tooltiptext =
+ { $total ->
+ [one] { $total } αστέρι
+ *[other] { $total } αστέρια
+ }
+# Variables:
+# $total (Number) - The total number of users using the add-on
+cfr-doorhanger-extension-total-users =
+ { $total ->
+ [one] { $total } χρήστης
+ *[other] { $total } χρήστες
+ }
+cfr-doorhanger-pintab-description = Αποκτήστε εύκολη πρόσβαση σε ιστοσελίδες συχνής χρήσης. Διατηρήστε τις ιστοσελίδες ανοικτές σε μια καρτέλα (ακόμη κι όταν κάνετε επανεκκίνηση).
+
+## These messages are steps on how to use the feature and are shown together.
+
+cfr-doorhanger-pintab-step1 = <b>Κάντε δεξί κλικ</b> στην καρτέλα που θέλετε να καρφιτσώσετε.
+cfr-doorhanger-pintab-step2 = Επιλέξτε το <b>Καρφίτσωμα καρτέλας</b> από το μενού.
+cfr-doorhanger-pintab-step3 = Αν αυτή η ιστοσελίδα ενημερωθεί, θα δείτε μια μπλε κουκκίδα στην καρφιτσωμένη σας καρτέλα.
+cfr-doorhanger-pintab-animation-pause = Παύση
+cfr-doorhanger-pintab-animation-resume = Συνέχιση
+
+## Firefox Accounts Message
+
+cfr-doorhanger-bookmark-fxa-header = Συγχρονίστε παντού τους σελιδοδείκτες σας.
+cfr-doorhanger-bookmark-fxa-body = Εξαιρετική ανακάλυψη! Μην ξεχάσετε να αποθηκεύσετε αυτό το σελιδοδείκτη στις κινητές συσκευές σας. Ξεκινήστε με ένα { -fxaccount-brand-name }.
+cfr-doorhanger-bookmark-fxa-link-text = Συγχρονισμός σελιδοδεικτών τώρα…
+cfr-doorhanger-bookmark-fxa-close-btn-tooltip =
+ .aria-label = Κουμπί κλεισίματος
+ .title = Κλείσιμο
+
+## Protections panel
+
+cfr-protections-panel-header = Περιήγηση χωρίς παρακολούθηση
+cfr-protections-panel-body = Κρατήστε τα δεδομένα σας για τον εαυτό σας. Το { -brand-short-name } σας προστατεύει από πολλούς από τους πιο συνηθισμένους ιχνηλάτες που ακολουθούν ό,τι κάνετε στο διαδίκτυο.
+cfr-protections-panel-link-text = Μάθετε περισσότερα
+
+## What's New toolbar button and panel
+
+# This string is used by screen readers to offer a text based alternative for
+# the notification icon
+cfr-badge-reader-label-newfeature = Νέο χαρακτηριστικό:
+cfr-whatsnew-button =
+ .label = Τι νέο υπάρχει
+ .tooltiptext = Τι νέο υπάρχει
+cfr-whatsnew-panel-header = Τι νέο υπάρχει
+cfr-whatsnew-release-notes-link-text = Διαβάστε τις σημειώσεις έκδοσης
+cfr-whatsnew-fx70-title = Το { -brand-short-name } μάχεται σκληρά για το απόρρητό σας
+cfr-whatsnew-fx70-body =
+ Η τελευταία ενημέρωση βελτιώνει την προστασία από καταγραφή και κάνει τη
+ δημιουργία ασφαλών κωδικών πρόσβασης πιο εύκολη από ποτέ για κάθε ιστοσελίδα.
+cfr-whatsnew-tracking-protect-title = Προστατεύστε τον εαυτό σας από ιχνηλάτες
+cfr-whatsnew-tracking-protect-body =
+ Το { -brand-short-name } αποκλείει πολλούς κοινούς ιχνηλάτες κοινωνικών δικτύων και μεταξύ ιστοσελίδων που
+ παρακολοθούν τη δραστηριότητά σας στο διαδίκτυο.
+cfr-whatsnew-tracking-protect-link-text = Προβολή της αναφοράς σας
+# This string is displayed before a large numeral that indicates the total
+# number of tracking elements blocked. Don’t add $blockedCount to your
+# localization, because it would result in the number showing twice.
+cfr-whatsnew-tracking-blocked-title =
+ { $blockedCount ->
+ [one] Αποκλεισμένος ιχνηλάτης
+ *[other] Αποκλεισμένοι ιχνηλάτες
+ }
+cfr-whatsnew-tracking-blocked-subtitle = Από τις { DATETIME($earliestDate, month: "long", year: "numeric") }
+cfr-whatsnew-tracking-blocked-link-text = Προβολή αναφοράς
+cfr-whatsnew-lockwise-backup-title = Δημιουργήστε αντίγραφα ασφαλείας των κωδικών πρόσβασής σας
+cfr-whatsnew-lockwise-backup-body = Δημιουργήστε ασφαλείς κωδικούς πρόσβασης, διαθέσιμους από όλες τις συσκευές σας.
+cfr-whatsnew-lockwise-backup-link-text = Ενεργοποίηση των αντιγράφων ασφαλείας
+cfr-whatsnew-lockwise-take-title = Πάρτε τους κωδικούς σας μαζί σας
+cfr-whatsnew-lockwise-take-body =
+ Η εφαρμογή { -lockwise-brand-short-name } για κινητές συσκευές σας επιτρέπει ασφαλή πρόσβαση
+ στα αντίγραφα ασφαλείας των κωδικών πρόσβασης σας από οπουδήποτε.
+cfr-whatsnew-lockwise-take-link-text = Λήψη εφαρμογής
+
+## Search Bar
+
+cfr-whatsnew-searchbar-title = Πληκτρολογήστε λιγότερο, βρείτε περισσότερα με τη γραμμή διευθύνσεων
+cfr-whatsnew-searchbar-body-topsites = Τώρα, απλώς επιλέξτε τη γραμμή διευθύνσεων και θα εμφανιστεί ένα πλαίσιο με συνδέσμους για τις κορυφαίες ιστοσελίδες σας.
+
+## Search bar
+
+cfr-whatsnew-searchbar-icon-alt-text = Εικονίδιο μεγεθυντικού φακού
+
+## Picture-in-Picture
+
+cfr-whatsnew-pip-header = Παρακολουθήστε βίντεο κατά την περιήγηση
+cfr-whatsnew-pip-body = Η εικόνα-εντός-εικόνας εμφανίζει το βίντεο σε αναδυόμενο παράθυρο, ώστε να μπορείτε να το παρακολουθείτε ενώ εργάζεστε σε άλλες καρτέλες.
+cfr-whatsnew-pip-cta = Μάθετε περισσότερα
+
+## Permission Prompt
+
+cfr-whatsnew-permission-prompt-header = Λιγότερα ενοχλητικά αναδυόμενα παράθυρα
+cfr-whatsnew-permission-prompt-body = Το { -brand-shorter-name } αποκλείει πλέον την αυτόματη αίτηση για αποστολή αναδυόμενων μηνυμάτων από ιστοσελίδες.
+cfr-whatsnew-permission-prompt-cta = Μάθετε περισσότερα
+
+## Fingerprinter Counter
+
+# This string is displayed before a large numeral that indicates the total
+# number of tracking elements blocked. Don’t add $fingerprinterCount to your
+# localization, because it would result in the number showing twice.
+cfr-whatsnew-fingerprinter-counter-header =
+ { $fingerprinterCount ->
+ [one] Αποκλείστηκε fingerprinter
+ *[other] Αποκλείστηκαν fingerprinters
+ }
+cfr-whatsnew-fingerprinter-counter-body = Το { -brand-shorter-name } αποκλείει πολλά fingerprinters που συλλέγουν κρυφά πληροφορίες σχετικά με τη συσκευή και τη δραστηριότητά σας για να δημιουργήσουν ένα διαφημιστικό προφίλ για εσάς.
+# Message variation when fingerprinters count is less than 10
+cfr-whatsnew-fingerprinter-counter-header-alt = Fingerprinters
+cfr-whatsnew-fingerprinter-counter-body-alt = Το { -brand-shorter-name } μπορεί να αποκλείσει πολλά fingerprinters που συλλέγουν κρυφά πληροφορίες σχετικά με τη συσκευή και τη δραστηριότητά σας για να δημιουργήσουν ένα διαφημιστικό προφίλ για εσάς.
+
+## Bookmark Sync
+
+cfr-doorhanger-sync-bookmarks-header = Λάβετε αυτό το σελιδοδείκτη στο τηλέφωνό σας
+cfr-doorhanger-sync-bookmarks-body = Πάρτε τους σελιδοδείκτες, τους κωδικούς πρόσβασης, το ιστορικό σας και πολλά άλλα, σε όποια συσκευή έχετε συνδεθεί στο { -brand-product-name }.
+cfr-doorhanger-sync-bookmarks-ok-button = Ενεργοποίηση { -sync-brand-short-name }
+ .accesskey = Ε
+
+## Login Sync
+
+cfr-doorhanger-sync-logins-header = Δεν θα χάσετε ποτέ ξανά κωδικό πρόσβασης
+cfr-doorhanger-sync-logins-body = Αποθηκεύστε και συγχρονίστε με ασφάλεια τους κωδικούς πρόσβασής σας σε όλες τις συσκευές σας.
+cfr-doorhanger-sync-logins-ok-button = Ενεργοποίηση { -sync-brand-short-name }
+ .accesskey = Ε
+
+## Send Tab
+
+cfr-doorhanger-send-tab-header = Διαβάστε το εν κινήσει
+cfr-doorhanger-send-tab-recipe-header = Πάρτε αυτή τη συνταγή στην κουζίνα
+cfr-doorhanger-send-tab-body = Η Αποστολή καρτέλας σας επιτρέπει να μοιραστείτε εύκολα αυτό το σύνδεσμο με το τηλέφωνό σας ή οπουδήποτε έχετε συνδεθεί στο { -brand-product-name }.
+cfr-doorhanger-send-tab-ok-button = Δοκιμάστε την καρτέλα "Αποστολή"
+ .accesskey = Δ
+
+## Firefox Send
+
+cfr-doorhanger-firefox-send-header = Μοιραστείτε αυτό το PDF με ασφάλεια
+cfr-doorhanger-firefox-send-body = Προστατεύστε τα ευαίσθητα έγγραφά σας από αδιάκριτα μάτια με κρυπτογράφηση από άκρο σε άκρο και ένα σύνδεσμο που εξαφανίζεται όταν τελειώσετε.
+cfr-doorhanger-firefox-send-ok-button = Δοκιμή του { -send-brand-name }
+ .accesskey = Δ
+
+## Social Tracking Protection
+
+cfr-doorhanger-socialtracking-ok-button = Προβολή προστασίας
+ .accesskey = Π
+cfr-doorhanger-socialtracking-close-button = Κλείσιμο
+ .accesskey = Κ
+cfr-doorhanger-socialtracking-dont-show-again = Να μην εμφανιστούν ξανά τέτοια μηνύματα
+ .accesskey = Ν
+cfr-doorhanger-socialtracking-heading = Το { -brand-short-name } εμπόδισε την καταγραφή σας από ένα κοινωνικό δίκτυο
+cfr-doorhanger-socialtracking-description = Η ιδιωτηκότητα σας έχει σημασία. Το { -brand-short-name } αποκλείει πλέον τους συνηθισμένους ιχνηλάτες κοινωνικών δικτύων, περιορίζοντας πόσα δεδομένα συλλέγουν για το τι κάνετε στο διαδίκτυο.
+cfr-doorhanger-fingerprinters-heading = Το { -brand-short-name } απέκλεισε ένα fingerprinter σε αυτή τη σελίδα
+cfr-doorhanger-fingerprinters-description = Το απόρρητό σας έχει σημασία. Το { -brand-short-name } αποκλείει πλέον τα fingerprinters, τα οποία συλλέγουν προσωπικές πληροφορίες σχετικά με τη συσκευή σας για να σας παρακολουθούν.
+cfr-doorhanger-cryptominers-heading = Το { -brand-short-name } απέκλεισε ένα cryptominer σε αυτή τη σελίδα
+cfr-doorhanger-cryptominers-description = Το απόρρητό σας έχει σημασία. Το { -brand-short-name } αποκλείει πλέον τα cryptominers, τα οποία χρησιμοποιούν την υπολογιστική ισχύ του συστήματός σας για να εξορύξουν ψηφιακό χρήμα.
+
+## Enhanced Tracking Protection Milestones
+
+# Variables:
+# $blockedCount (Number) - The total count of blocked trackers. This number will always be greater than 1.
+# $date (String) - The date we began recording the count of blocked trackers
+cfr-doorhanger-milestone-heading =
+ { $blockedCount ->
+ *[other] Το { -brand-short-name } απέκλεισε πάνω από <b>{ $blockedCount }</b> ιχνηλάτες από τις { $date }!
+ }
+cfr-doorhanger-milestone-ok-button = Προβολή όλων
+ .accesskey = Π
+cfr-doorhanger-milestone-close-button = Κλείσιμο
+ .accesskey = Κ
+
+## What’s New Panel Content for Firefox 76
+
+
+## Lockwise message
+
+cfr-whatsnew-lockwise-header = Δημιουργήστε εύκολα ασφαλείς κωδικούς πρόσβασης
+cfr-whatsnew-lockwise-body = Είναι δύσκολο να σκεφτεί κανείς μοναδικούς, ασφαλείς κωδικούς πρόσβασης για κάθε λογαριασμό. Κατά τη δημιουργία κωδικών πρόσβασης, επιλέξτε το πεδίο κωδικού πρόσβασης για να χρησιμοποιήσετε έναν ασφαλή κωδικό πρόσβασης που δημιουργείται από το { -brand-shorter-name }.
+cfr-whatsnew-lockwise-icon-alt = εικονίδιο { -lockwise-brand-short-name }
+
+## Vulnerable Passwords message
+
+cfr-whatsnew-passwords-header = Λάβετε ειδοποιήσεις για ευάλωτους κωδικούς πρόσβασης
+cfr-whatsnew-passwords-body = Οι χάκερ γνωρίζουν ότι οι χρήστες χρησιμοποιούν τους ίδιους κωδικούς πρόσβασης. Αν χρησιμοποιείτε τον ίδιο κωδικό πρόσβασης σε πολλαπλές ιστοσελίδες και μια από αυτές παραβιαστεί, θα δείτε μια ειδοποίηση στο { -lockwise-brand-short-name } για να αλλάξετε τον κωδικό πρόσβασής σας σε αυτές τις ιστοσελίδες.
+cfr-whatsnew-passwords-icon-alt = Εικονίδιο ευάλωτου κωδικού πρόσβασης
+
+## Picture-in-Picture fullscreen message
+
+cfr-whatsnew-pip-fullscreen-header = Επέκταση εικόνας-εντός-εικόνας σε πλήρη οθόνη
+cfr-whatsnew-pip-fullscreen-body = Όταν προβάλλετε βίντεο σε αναδυόμενο παράθυρο, μπορείτε πλέον να κάνετε διπλό κλικ σε αυτό το παράθυρο για να μεταβείτε σε πλήρη οθόνη.
+cfr-whatsnew-pip-fullscreen-icon-alt = Εικονίδιο εικόνας-εντός-εικόνας
+
+## Protections Dashboard message
+
+cfr-whatsnew-protections-header = Μέθοδοι προστασίες με μια ματιά
+cfr-whatsnew-protections-body = Ο πίνακας προστασίας περιλαμβάνει περιληπτικές αναφορές σχετικά με τις παραβιάσεις δεδομένων και τη διαχείριση κωδικών πρόσβασης. Μπορείτε πλέον να παρακολουθείτε πόσες διαρροές έχετε επιλύσει και να βλέπετε αν κάποιος από τους αποθηκευμένους κωδικούς πρόσβασής σας έχει εκτεθεί σε παραβίαση δεδομένων.
+cfr-whatsnew-protections-cta-link = Προβολή πίνακα προστασίας
+cfr-whatsnew-protections-icon-alt = Εικονίδιο ασπίδας
+
+## Better PDF message
+
+cfr-whatsnew-better-pdf-header = Καλύτερη εμπειρία PDF
+cfr-whatsnew-better-pdf-body = Τα έγγραφα PDF πλέον ανοίγουν απευθείας στο { -brand-short-name } για ακόμα πιο βολική εργασία.
+
+## DOH Message
+
+cfr-doorhanger-doh-body = Το απόρρητό σας έχει σημασία. Το { -brand-short-name } δρομολογεί πλέον με ασφάλεια τα αιτήματα DNS σας, όποτε είναι δυνατόν, σε μια συνεργαζόμενη υπηρεσία για να σας προστατεύσει κατά την περιήγησή σας.
+cfr-doorhanger-doh-header = Πιο ασφαλείς, κρυπτογραφημένες αναζητήσεις DNS
+cfr-doorhanger-doh-primary-button = Το κατάλαβα
+ .accesskey = Τ
+cfr-doorhanger-doh-secondary-button = Απενεργοποίηση
+ .accesskey = Α
+
+## Fission Experiment Message
+
+cfr-doorhanger-fission-body-approved = Το απόρρητό σας έχει σημασία. Το { -brand-short-name } πλέον απομονώνει, ή βάζει σε sandbox, κάθε ιστοσελίδα, κάνοντας πιο δύσκολη την πρόσβαση των hackers για υποκλοπή κωδικών πρόσβασης, αριθμών πιστωτικών καρτών και άλλων ευαίσθητων πληροφοριών.
+cfr-doorhanger-fission-header = Απομόνωση ιστοσελίδας
+cfr-doorhanger-fission-primary-button = Το κατάλαβα
+ .accesskey = Τ
+cfr-doorhanger-fission-secondary-button = Μάθετε περισσότερα
+ .accesskey = Μ
+
+## What's new: Cookies message
+
+cfr-whatsnew-clear-cookies-header = Αυτόματη προστασία από περίεργες τακτικές ιχνηλάτησης
+cfr-whatsnew-clear-cookies-body = Ορισμένοι ιχνηλάτες σας ανακατευθύνουν σε άλλες ιστοσελίδες που τοποθετούν κρυφά cookies. Το { -brand-short-name } διαγράφει αυτόματα αυτά τα cookies, ώστε να μην μπορούν να σας ακολουθήσουν.
+cfr-whatsnew-clear-cookies-image-alt = Απεικόνιση αποκλεισμού cookie
+
+## What's new: Media controls message
+
+cfr-whatsnew-media-keys-header = Περισσότερα στοιχεία ελέγχου πολυμέσων
+cfr-whatsnew-media-keys-body = Κάντε αναπαραγωγή και παύση ήχου ή βίντεο απευθείας από το πληκτρολόγιό σας ή τα ακουστικά σας, κάνοντας εύκολο τον έλεγχο πολυμέσων από άλλη καρτέλα, πρόγραμμα ή ακόμη και την οθόνη κλειδώματος. Μπορείτε επίσης να κάνετε εναλλαγή κομματιών με τα πλήκτρα "εμπρός" και "πίσω".
+cfr-whatsnew-media-keys-button = Μάθετε πώς
+
+## What's new: Search shortcuts
+
+cfr-whatsnew-search-shortcuts-header = Αναζήτηση συντομεύσεων στη γραμμή διευθύνσεων
+cfr-whatsnew-search-shortcuts-body = Πλέον, όταν πληκτρολογείτε μια μηχανή αναζήτησης ή μια συγκεκριμένη ιστοσελίδα στη γραμμή διευθύνσεων, θα εμφανίζεται μια μπλε συντόμευση στις προτάσεις αναζήτησης. Επιλέξτε τη συντόμευση για να ολοκληρώσετε την αναζήτησή σας απευθείας από τη γραμμή διευθύνσεων.
+
+## What's new: Cookies protection
+
+cfr-whatsnew-supercookies-header = Προστασία από κακόβουλα supercookies
+cfr-whatsnew-supercookies-body = Οι ιστοσελίδες μπορούν να επισυνάψουν κρυφά ένα “supercookie” στο πρόγραμμα περιήγησής σας, προκειμένου να σάς παρακολουθούν στο διαδίκτυο, ακόμη και μετά την εκκαθάριση των cookies. Το { -brand-short-name } παρέχει ισχυρή προστασία έναντι των supercookies, ώστε να μην μπορούν να χρησιμοποιηθούν για την παρακολούθηση των διαδικτυακών σας δραστηριοτήτων από τη μια ιστοσελίδα στην άλλη.
+
+## What's new: Better bookmarking
+
+cfr-whatsnew-bookmarking-header = Καλύτεροι σελιδοδείκτες
+cfr-whatsnew-bookmarking-body = Είναι πιο εύκολο να παρακολουθείτε τις αγαπημένες σας ιστοσελίδες. Το { -brand-short-name } απομνημονεύει πλέον την προτιμώμενη τοποθεσία σας για αποθηκευμένους σελιδοδείκτες, εμφανίζει τη γραμμή σελιδοδεικτών από προεπιλογή σε νέες καρτέλες και παρέχει εύκολη πρόσβαση στους υπόλοιπους σελιδοδείκτες σας μέσω ενός φακέλου στη γραμμή εργαλείων.
diff --git a/l10n-el/browser/browser/newtab/newtab.ftl b/l10n-el/browser/browser/newtab/newtab.ftl
new file mode 100644
index 0000000000..a21c614a2c
--- /dev/null
+++ b/l10n-el/browser/browser/newtab/newtab.ftl
@@ -0,0 +1,242 @@
+# 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/.
+
+
+### Firefox Home / New Tab strings for about:home / about:newtab.
+
+newtab-page-title = Νέα καρτέλα
+newtab-settings-button =
+ .title = Προσαρμογή της σελίδας Νέας Καρτέλας
+newtab-personalize-button-label = Εξατομίκευση
+ .title = Εξατομίκευση νέας καρτέλας
+ .aria-label = Εξατομίκευση νέας καρτέλας
+
+## Search box component.
+
+# "Search" is a verb/action
+newtab-search-box-search-button =
+ .title = Αναζήτηση
+ .aria-label = Αναζήτηση
+newtab-search-box-search-the-web-text = Αναζήτηση στο διαδίκτυο
+newtab-search-box-search-the-web-input =
+ .placeholder = Αναζήτηση στο διαδίκτυο
+ .title = Αναζήτηση στο διαδίκτυο
+ .aria-label = Αναζήτηση στο διαδίκτυο
+newtab-search-box-text = Αναζήτηση στο διαδίκτυο
+newtab-search-box-input =
+ .placeholder = Αναζήτηση στο διαδίκτυο
+ .aria-label = Αναζήτηση στο διαδίκτυο
+
+## Top Sites - General form dialog.
+
+newtab-topsites-add-search-engine-header = Προσθήκη μηχανής αναζήτησης
+newtab-topsites-add-topsites-header = Νέα κορυφαία ιστοσελίδα
+newtab-topsites-add-shortcut-header = Νέα συντόμευση
+newtab-topsites-edit-topsites-header = Επεξεργασία κορυφαίας ιστοσελίδας
+newtab-topsites-edit-shortcut-header = Επεξεργασία συντόμευσης
+newtab-topsites-title-label = Τίτλος
+newtab-topsites-title-input =
+ .placeholder = Εισάγετε έναν τίτλο
+newtab-topsites-url-label = URL
+newtab-topsites-url-input =
+ .placeholder = Πληκτρολόγηση ή επικόλληση ενός URL
+newtab-topsites-url-validation = Απαιτείται έγκυρο URL
+newtab-topsites-image-url-label = URL προσαρμοσμένης εικόνας
+newtab-topsites-use-image-link = Χρήση προσαρμοσμένης εικόνας…
+newtab-topsites-image-validation = Αποτυχία φόρτωσης εικόνας. Δοκιμάστε ένα διαφορετικό URL.
+
+## Top Sites - General form dialog buttons. These are verbs/actions.
+
+newtab-topsites-cancel-button = Ακύρωση
+newtab-topsites-delete-history-button = Διαγραφή από ιστορικό
+newtab-topsites-save-button = Αποθήκευση
+newtab-topsites-preview-button = Προεπισκόπηση
+newtab-topsites-add-button = Προσθήκη
+
+## Top Sites - Delete history confirmation dialog.
+
+newtab-confirm-delete-history-p1 = Θέλετε σίγουρα να διαγράψετε κάθε παρουσία της σελίδας αυτής από το ιστορικό σας;
+# "This action" refers to deleting a page from history.
+newtab-confirm-delete-history-p2 = Δεν είναι δυνατή η αναίρεση αυτής της ενέργειας.
+
+## Top Sites - Sponsored label
+
+newtab-topsite-sponsored = Χορηγία
+
+## Context Menu - Action Tooltips.
+
+# General tooltip for context menus.
+newtab-menu-section-tooltip =
+ .title = Άνοιγμα μενού
+ .aria-label = Άνοιγμα μενού
+# Tooltip for dismiss button
+newtab-dismiss-button-tooltip =
+ .title = Αφαίρεση
+ .aria-label = Αφαίρεση
+# This tooltip is for the context menu of Pocket cards or Topsites
+# Variables:
+# $title (String): The label or hostname of the site. This is for screen readers when the context menu button is focused/active.
+newtab-menu-content-tooltip =
+ .title = Άνοιγμα μενού
+ .aria-label = Άνοιγμα μενού επιλογών για το { $title }
+# Tooltip on an empty topsite box to open the New Top Site dialog.
+newtab-menu-topsites-placeholder-tooltip =
+ .title = Επεξεργασία ιστοσελίδας
+ .aria-label = Επεξεργασία ιστοσελίδας
+
+## Context Menu: These strings are displayed in a context menu and are meant as a call to action for a given page.
+
+newtab-menu-edit-topsites = Επεξεργασία
+newtab-menu-open-new-window = Άνοιγμα σε νέο παράθυρο
+newtab-menu-open-new-private-window = Άνοιγμα σε νέο ιδιωτικό παράθυρο
+newtab-menu-dismiss = Απόρριψη
+newtab-menu-pin = Καρφίτσωμα
+newtab-menu-unpin = Ξεκαρφίτσωμα
+newtab-menu-delete-history = Διαγραφή από ιστορικό
+newtab-menu-save-to-pocket = Αποθήκευση στο { -pocket-brand-name }
+newtab-menu-delete-pocket = Διαγραφή από το { -pocket-brand-name }
+newtab-menu-archive-pocket = Αρχειοθέτηση στο { -pocket-brand-name }
+newtab-menu-show-privacy-info = Οι χορηγοί μας & το απόρρητό σας
+
+## Message displayed in a modal window to explain privacy and provide context for sponsored content.
+
+newtab-privacy-modal-button-done = Τέλος
+newtab-privacy-modal-button-manage = Διαχείριση ρυθμίσεων χορηγούμενου περιεχομένου
+newtab-privacy-modal-header = Το απόρρητό σας έχει σημασία.
+newtab-privacy-modal-paragraph-2 =
+ Εκτός από την παράδοση μαγευτικών ιστοριών, σας εμφανίζουμε σχετικό,
+ υψηλής ποιότητας περιεχόμενο από επιλεγμένους χορηγούς. Μην ανησυχείτε, <strong>τα δεδομένα
+ περιήγησής σας δεν φεύγουν ποτέ από το προσωπικό σας αντίγραφο του { -brand-product-name }</strong> — δεν τα βλέπουμε ούτε εμείς, ούτε
+ οι χορηγοί μας.
+newtab-privacy-modal-link = Μάθετε πώς λειτουργεί το απόρρητο στη νέα καρτέλα
+
+##
+
+# Bookmark is a noun in this case, "Remove bookmark".
+newtab-menu-remove-bookmark = Αφαίρεση σελιδοδείκτη
+# Bookmark is a verb here.
+newtab-menu-bookmark = Προσθήκη σελιδοδείκτη
+
+## Context Menu - Downloaded Menu. "Download" in these cases is not a verb,
+## it is a noun. As in, "Copy the link that belongs to this downloaded item".
+
+newtab-menu-copy-download-link = Αντιγραφή συνδέσμου λήψης
+newtab-menu-go-to-download-page = Μετάβαση στη σελίδα λήψης
+newtab-menu-remove-download = Αφαίρεση από το ιστορικό
+
+## Context Menu - Download Menu: These are platform specific strings found in the context menu of an item that has
+## been downloaded. The intention behind "this action" is that it will show where the downloaded file exists on the file
+## system for each operating system.
+
+newtab-menu-show-file =
+ { PLATFORM() ->
+ [macos] Εμφάνιση στο Finder
+ *[other] Άνοιγμα φακέλου λήψης
+ }
+newtab-menu-open-file = Άνοιγμα αρχείου
+
+## Card Labels: These labels are associated to pages to give
+## context on how the element is related to the user, e.g. type indicates that
+## the page is bookmarked, or is currently open on another device.
+
+newtab-label-visited = Από ιστορικό
+newtab-label-bookmarked = Από σελιδοδείκτες
+newtab-label-removed-bookmark = Ο σελιδοδείκτης αφαιρέθηκε
+newtab-label-recommended = Τάσεις
+newtab-label-saved = Αποθηκεύτηκε στο { -pocket-brand-name }
+newtab-label-download = Λήψεις
+# This string is used in the story cards to indicate sponsored content
+# Variables:
+# $sponsorOrSource (String): This is the name of a company or their domain
+newtab-label-sponsored = { $sponsorOrSource } · Χορηγία
+# This string is used at the bottom of story cards to indicate sponsored content
+# Variables:
+# $sponsor (String): This is the name of a sponsor
+newtab-label-sponsored-by = Χορηγία από { $sponsor }
+
+## Section Menu: These strings are displayed in the section context menu and are
+## meant as a call to action for the given section.
+
+newtab-section-menu-remove-section = Αφαίρεση ενότητας
+newtab-section-menu-collapse-section = Σύμπτυξη ενότητας
+newtab-section-menu-expand-section = Επέκταση ενότητας
+newtab-section-menu-manage-section = Διαχείριση ενότητας
+newtab-section-menu-manage-webext = Διαχείριση επέκτασης
+newtab-section-menu-add-topsite = Προσθήκη κορυφαίας ιστοσελίδας
+newtab-section-menu-add-search-engine = Προσθήκη μηχανής αναζήτησης
+newtab-section-menu-move-up = Μετακίνηση πάνω
+newtab-section-menu-move-down = Μετακίνηση κάτω
+newtab-section-menu-privacy-notice = Σημείωση απορρήτου
+
+## Section aria-labels
+
+newtab-section-collapse-section-label =
+ .aria-label = Σύμπτυξη ενότητας
+newtab-section-expand-section-label =
+ .aria-label = Επέκταση ενότητας
+
+## Section Headers.
+
+newtab-section-header-topsites = Κορυφαίες ιστοσελίδες
+newtab-section-header-highlights = Κορυφαίες στιγμές
+newtab-section-header-recent-activity = Πρόσφατη δραστηριότητα
+# Variables:
+# $provider (String): Name of the corresponding content provider.
+newtab-section-header-pocket = Προτάσεις του { $provider }
+
+## Empty Section States: These show when there are no more items in a section. Ex. When there are no more Pocket story recommendations, in the space where there would have been stories, this is shown instead.
+
+newtab-empty-section-highlights = Ξεκινήστε την περιήγηση και θα σάς δείξουμε μερικά υπέροχα άρθρα, βίντεο και άλλες σελίδες που έχετε επισκεφθεί πρόσφατα ή έχετε προσθέσει στους σελιδοδείκτες σας.
+# Ex. When there are no more Pocket story recommendations, in the space where there would have been stories, this is shown instead.
+# Variables:
+# $provider (String): Name of the content provider for this section, e.g "Pocket".
+newtab-empty-section-topstories = Δεν υπάρχει κάτι νεότερο. Ελέγξτε αργότερα για περισσότερες ιστορίες από τον πάροχο { $provider }. Δεν μπορείτε να περιμένετε; Διαλέξτε κάποιο από τα δημοφιλή θέματα και ανακαλύψτε ενδιαφέρουσες ιστορίες από όλο τον Ιστό.
+
+## Empty Section (Content Discovery Experience). These show when there are no more stories or when some stories fail to load.
+
+newtab-discovery-empty-section-topstories-header = Τελειώσατε!
+newtab-discovery-empty-section-topstories-content = Ελέγξτε ξανά αργότερα για περισσότερες ιστορίες.
+newtab-discovery-empty-section-topstories-try-again-button = Δοκιμή ξανά
+newtab-discovery-empty-section-topstories-loading = Φόρτωση…
+# Displays when a layout in a section took too long to fetch articles.
+newtab-discovery-empty-section-topstories-timed-out = Ωχ! Αυτή η ενότητα σχεδόν φορτώθηκε, αλλά όχι πλήρως.
+
+## Pocket Content Section.
+
+# This is shown at the bottom of the trending stories section and precedes a list of links to popular topics.
+newtab-pocket-read-more = Δημοφιλή θέματα:
+newtab-pocket-more-recommendations = Περισσότερες προτάσεις
+newtab-pocket-learn-more = Μάθετε περισσότερα
+newtab-pocket-cta-button = Αποκτήστε το { -pocket-brand-name }
+newtab-pocket-cta-text = Αποθηκεύστε τις ιστορίες που αγαπάτε στο { -pocket-brand-name } και τροφοδοτήστε το μυαλό σας με εκπληκτικά κείμενα.
+
+## Error Fallback Content.
+## This message and suggested action link are shown in each section of UI that fails to render.
+
+newtab-error-fallback-info = Ωχ, κάτι πήγε στραβά κατά τη φόρτωση του περιεχομένου.
+newtab-error-fallback-refresh-link = Ανανεώστε τη σελίδα για να δοκιμάσετε ξανά.
+
+## Customization Menu
+
+newtab-custom-shortcuts-title = Συντομεύσεις
+newtab-custom-shortcuts-subtitle = Ιστοσελίδες που αποθηκεύετε ή επισκέπτεστε
+newtab-custom-row-selector =
+ { $num ->
+ [one] { $num } σειρά
+ *[other] { $num } σειρές
+ }
+newtab-custom-sponsored-sites = Χορηγούμενες συντομεύσεις
+newtab-custom-pocket-title = Προτείνεται από το { -pocket-brand-name }
+newtab-custom-pocket-subtitle = Εξαιρετικό περιεχόμενο από το { -pocket-brand-name }, μέρος της οικογένειας του { -brand-product-name }
+newtab-custom-pocket-sponsored = Χορηγούμενα άρθρα
+newtab-custom-recent-title = Πρόσφατη δραστηριότητα
+newtab-custom-recent-subtitle = Μια συλλογή πρόσφατων ιστοσελίδων και περιεχομένου
+newtab-custom-close-button = Κλείσιμο
+# For the "Snippets" feature traditionally on about:home.
+# Alternative translation options: "Small Note" or something that
+# expresses the idea of "a small message, shortened from something else,
+# and non-essential but also not entirely trivial and useless.
+newtab-custom-snippets-title = Αποσπάσματα
+newtab-custom-snippets-subtitle = Συμβουλές και ειδήσεις από τη { -vendor-short-name } και το { -brand-product-name }
+newtab-custom-settings = Διαχείριση περισσότερων ρυθμίσεων
diff --git a/l10n-el/browser/browser/newtab/onboarding.ftl b/l10n-el/browser/browser/newtab/onboarding.ftl
new file mode 100644
index 0000000000..0b52d7cbb4
--- /dev/null
+++ b/l10n-el/browser/browser/newtab/onboarding.ftl
@@ -0,0 +1,241 @@
+# 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/.
+
+
+### UI strings for the simplified onboarding modal / about:welcome
+### Various strings use a non-breaking space to avoid a single dangling /
+### widowed word, so test on various window sizes if you also want this.
+
+
+## These button action text can be split onto multiple lines, so use explicit
+## newlines in translations to control where the line break appears (e.g., to
+## avoid breaking quoted text).
+
+onboarding-button-label-learn-more = Μάθετε περισσότερα
+onboarding-button-label-get-started = Έναρξη
+
+## Welcome modal dialog strings
+
+
+### UI strings for the simplified onboarding / multistage about:welcome
+### Various strings use a non-breaking space to avoid a single dangling /
+### widowed word, so test on various window sizes if you also want this.
+
+
+## Welcome page strings
+
+onboarding-welcome-header = Καλώς ήλθατε στο { -brand-short-name }
+onboarding-welcome-body = Έχετε το πρόγραμμα περιήγησης.<br/>Γνωρίστε τα υπόλοιπα προϊόντα του { -brand-product-name }.
+onboarding-welcome-learn-more = Μάθετε περισσότερα σχετικά με τα οφέλη.
+onboarding-welcome-modal-get-body = Έχετε το πρόγραμμα περιήγησης.<br/>Αξιοποιήστε στο έπακρο το { -brand-product-name }.
+onboarding-welcome-modal-supercharge-body = Εξασφαλίστε την προστασία του απορρήτου σας.
+onboarding-welcome-modal-privacy-body = Έχετε το πρόγραμμα περιήγησης. Ας προστατεύσουμε περισσότερο το απόρρητό σας.
+onboarding-welcome-modal-family-learn-more = Μάθετε περισσότερα για την οικογένεια προϊόντων { -brand-product-name }.
+onboarding-welcome-form-header = Έναρξη εδώ
+onboarding-join-form-body = Εισάγετε τη διεύθυνση email σας για να ξεκινήσετε.
+onboarding-join-form-email =
+ .placeholder = Εισάγετε το email σας
+onboarding-join-form-email-error = Απαιτείται έγκυρο email
+onboarding-join-form-legal = Συνεχίζοντας, συμφωνείτε με τους <a data-l10n-name="terms">όρους υπηρεσίας</a> και τη <a data-l10n-name="privacy">σημείωση απορρήτου</a>.
+onboarding-join-form-continue = Συνέχεια
+# This message is followed by a link using onboarding-join-form-signin ("Sign In") as text.
+onboarding-join-form-signin-label = Έχετε ήδη λογαριασμό;
+# Text for link to submit the sign in form
+onboarding-join-form-signin = Σύνδεση
+onboarding-start-browsing-button-label = Έναρξη περιήγησης
+onboarding-not-now-button-label = Όχι τώρα
+onboarding-cards-dismiss =
+ .title = Απόρριψη
+ .aria-label = Απόρριψη
+
+## Welcome full page string
+
+onboarding-fullpage-welcome-subheader = Ας αρχίσουμε να εξερευνούμε ό,τι μπορείτε να κάνετε.
+onboarding-fullpage-form-email =
+ .placeholder = Η διεύθυνση email σας…
+
+## Firefox Sync modal dialog strings.
+
+onboarding-sync-welcome-header = Πάρτε το { -brand-product-name } μαζί σας
+onboarding-sync-welcome-content = Κρατήστε τα αγαπημένα, το ιστορικό, τους κωδικούς πρόσβασης και άλλες ρυθμίσεις σας σε όλες σας τις συσκευές.
+onboarding-sync-welcome-learn-more-link = Μάθετε περισσότερα για τους Λογαριασμούς Firefox
+onboarding-sync-form-input =
+ .placeholder = Email
+onboarding-sync-form-continue-button = Συνέχεια
+onboarding-sync-form-skip-login-button = Παράλειψη βήματος
+
+## This is part of the line "Enter your email to continue to Firefox Sync"
+
+onboarding-sync-form-header = Εισάγετε το email σας
+onboarding-sync-form-sub-header = για να συνεχίσετε στο { -sync-brand-name }.
+
+## These are individual benefit messages shown with an image, title and
+## description.
+
+onboarding-benefit-products-text = Κάντε περισσότερα με μια οικογένεια εργαλείων που σέβονται το απόρρητό σας στις συσκευές σας.
+# "Personal Data Promise" is a concept that should be translated consistently
+# across the product. It refers to a concept shown elsewhere to the user: "The
+# Firefox Personal Data Promise is the way we honor your data in everything we
+# make and do. We take less data. We keep it safe. And we make sure that we are
+# transparent about how we use it."
+onboarding-benefit-privacy-text = Όλα όσα κάνουμε τιμούν την υπόσχεση μας σχετικά με τα προσωπικά δεδομένα: Λιγότερα δεδομένα. Με ασφάλεια. Χωρίς μυστικά.
+onboarding-benefit-sync-title = { -sync-brand-short-name }
+onboarding-benefit-sync-text = Πάρτε τους σελιδοδείκτες, τους κωδικούς πρόσβασης, το ιστορικό σας και πολλά άλλα σε κάθε συσκευή με { -brand-product-name }.
+onboarding-benefit-monitor-title = { -monitor-brand-short-name }
+onboarding-benefit-monitor-text = Λάβετε ειδοποίηση όταν διαρρεύσουν τα προσωπικά στοιχεία σας.
+onboarding-benefit-lockwise-title = { -lockwise-brand-short-name }
+onboarding-benefit-lockwise-text = Διαχειριστείτε κωδικούς πρόσβασης που είναι ασφαλείς και φορητοί.
+
+## Custom Return To AMO onboarding strings
+
+return-to-amo-subtitle = Τέλεια, αποκτήσατε το { -brand-short-name }
+# <img data-l10n-name="icon"/> will be replaced with the icon belonging to the extension
+#
+# Variables:
+# $addon-name (String) - Name of the add-on
+return-to-amo-addon-title = Τώρα, προτείνουμε το <img data-l10n-name="icon"/> <b>{ $addon-name }</b>.
+return-to-amo-add-extension-label = Προσθήκη επέκτασης
+
+## Multistage 3-screen onboarding flow strings (about:welcome pages)
+
+# The <span data-l10n-name="zap"></span> in this string allows a "zap" underline style to be
+# automatically added to the text inside it. { -brand-short-name } should stay inside the span.
+onboarding-multistage-welcome-header = Καλώς ορίσατε στο <span data-l10n-name="zap">{ -brand-short-name }</span>
+onboarding-multistage-welcome-subtitle = Το γρήγορο, ασφαλές και ιδιωτικό πρόγραμμα περιήγησης, που υποστηρίζεται από έναν μη κερδοσκοπικό οργανισμό.
+onboarding-multistage-welcome-primary-button-label = Έναρξη ρύθμισης
+onboarding-multistage-welcome-secondary-button-label = Σύνδεση
+onboarding-multistage-welcome-secondary-button-text = Έχετε λογαριασμό;
+# The <span data-l10n-name="zap"></span> in this string allows a "zap" underline style to be
+# automatically added to the text inside it. "more" should stay inside the span.
+onboarding-multistage-import-header = Εισάγετε κωδικούς πρόσβασης, <br/>σελιδοδείκτες και <span data-l10n-name="zap">πολλά άλλα</span>
+onboarding-multistage-import-subtitle = Έρχεστε από άλλο πρόγραμμα περιήγησης; Είναι εύκολο να μεταφέρετε τα πάντα στο { -brand-short-name }.
+onboarding-multistage-import-primary-button-label = Έναρξη εισαγωγής
+onboarding-multistage-import-secondary-button-label = Όχι τώρα
+# Info displayed in the footer of import settings screen during onboarding flow.
+# This supports welcome screen showing top sites imported from the user's default browser.
+onboarding-import-sites-disclaimer = Οι παρακάτω σελίδες βρέθηκαν στη συσκευή. Το { -brand-short-name } δεν αποθηκεύει ούτε συγχρονίζει δεδομένα από άλλο πρόγραμμα περιήγησης, εκτός αν επιλέξετε εσείς να γίνει εισαγωγή.
+# Aria-label to make the "steps" of multistage onboarding visible to screen readers.
+# Variables:
+# $current (Int) - Number of the current page
+# $total (Int) - Total number of pages
+onboarding-welcome-steps-indicator =
+ .aria-label = Έναρξη: οθόνη { $current } από { $total }
+# The <span data-l10n-name="zap"></span> in this string allows a "zap" underline style to be
+# automatically added to the text inside it. "look" should stay inside the span.
+onboarding-multistage-theme-header = Επιλέξτε <span data-l10n-name="zap">εμφάνιση</span>
+onboarding-multistage-theme-subtitle = Εξατομίκευση του { -brand-short-name } με ένα θέμα.
+onboarding-multistage-theme-primary-button-label = Αποθήκευση θέματος
+onboarding-multistage-theme-secondary-button-label = Όχι τώρα
+# Automatic theme uses operating system color settings
+onboarding-multistage-theme-label-automatic = Αυτόματο
+onboarding-multistage-theme-label-light = Φωτεινό
+onboarding-multistage-theme-label-dark = Σκούρο
+# "Firefox Alpenglow" here is the name of the theme, and should be kept in English.
+onboarding-multistage-theme-label-alpenglow = Firefox Alpenglow
+
+## Please make sure to split the content of the title attribute into lines whose
+## width corresponds to about 40 Latin characters, to ensure that the tooltip
+## doesn't become too long. Line breaks will be preserved when displaying the
+## tooltip.
+
+# Tooltip displayed on hover of automatic theme
+onboarding-multistage-theme-tooltip-automatic-2 =
+ .title =
+ Αντιγραφή της εμφάνισης του λειτουργικού σας
+ συστήματος για τα κουμπιά, τα μενού και τα παράθυρα.
+# Input description for automatic theme
+onboarding-multistage-theme-description-automatic-2 =
+ .aria-description =
+ Αντιγραφή της εμφάνισης του λειτουργικού σας
+ συστήματος για τα κουμπιά, τα μενού και τα παράθυρα.
+# Tooltip displayed on hover of light theme
+onboarding-multistage-theme-tooltip-light-2 =
+ .title =
+ Χρήση ανοιχτόχρωμης εμφάνισης για τα κουμπιά,
+ τα μενού και τα παράθυρα.
+# Input description for light theme
+onboarding-multistage-theme-description-light =
+ .aria-description =
+ Χρήση ανοιχτόχρωμης εμφάνισης για τα κουμπιά,
+ τα μενού και τα παράθυρα.
+# Tooltip displayed on hover of dark theme
+onboarding-multistage-theme-tooltip-dark-2 =
+ .title =
+ Χρήση σκουρόχρωμης εμφάνισης για τα κουμπιά,
+ τα μενού και τα παράθυρα.
+# Input description for dark theme
+onboarding-multistage-theme-description-dark =
+ .aria-description =
+ Χρήση σκουρόχρωμης εμφάνισης για τα κουμπιά,
+ τα μενού και τα παράθυρα.
+# Tooltip displayed on hover of Alpenglow theme
+onboarding-multistage-theme-tooltip-alpenglow-2 =
+ .title =
+ Χρήση πολύχρωμης εμφάνισης για τα κουμπιά,
+ τα μενού και τα παράθυρα.
+# Input description for Alpenglow theme
+onboarding-multistage-theme-description-alpenglow =
+ .aria-description =
+ Χρήση πολύχρωμης εμφάνισης για τα κουμπιά,
+ τα μενού και τα παράθυρα.
+
+## These strings belong to the individual onboarding messages.
+
+
+## Each message has a title and a description of what the browser feature is.
+## Each message also has an associated button for the user to try the feature.
+## The string for the button is found above, in the UI strings section
+
+onboarding-tracking-protection-title2 = Προστασία από καταγραφή
+onboarding-tracking-protection-text2 = Το { -brand-short-name } βοηθά να σταματήσουν οι ιστοσελίδες να σας καταγράφουν στο διαδίκτυο, καθιστώντας πιο δύσκολη την παρακολούθησή σας από διαφημίσεις στον ιστό.
+onboarding-tracking-protection-button2 = Πώς λειτουργεί
+onboarding-data-sync-title = Πάρτε μαζί σας τις ρυθμίσεις σας
+# "Sync" is short for synchronize.
+onboarding-data-sync-text2 = Συγχρονίστε τους σελιδοδείκτες, τους κωδικούς πρόσβασης και πολλά άλλα όπου χρησιμοποιείτε το { -brand-product-name }.
+onboarding-data-sync-button2 = Σύνδεση στο { -sync-brand-short-name }
+onboarding-firefox-monitor-title = Ενημερωθείτε για παραβιάσεις δεδομένων
+onboarding-firefox-monitor-text2 = Το { -monitor-brand-name } ελέγχει αν το email σας έχει εμφανιστεί σε κάποια παραβίαση δεδομένων και σας ειδοποιεί αν εμφανιστεί σε νέα παράβαση.
+onboarding-firefox-monitor-button = Εγγραφή για ειδοποιήσεις
+onboarding-browse-privately-title = Ιδιωτική περιήγηση
+onboarding-browse-privately-text = Η ιδιωτική περιήγηση διαγράφει το ιστορικό αναζήτησης και περιήγησής σας για να διατηρούνται κρυφά από άλλους χρήστες του υπολογιστή σας.
+onboarding-browse-privately-button = Άνοιγμα ιδιωτικού παραθύρου
+onboarding-firefox-send-title = Διατηρήστε τα κοινόχρηστα αρχεία σας ιδιωτικά
+onboarding-firefox-send-text2 = Μεταφορτώστε τα αρχεία σας στο { -send-brand-name } για να τα μοιραστείτε με κρυπτογράφηση από άκρο σε άκρο και έναν σύνδεσμο που λήγει αυτόματα.
+onboarding-firefox-send-button = Δοκιμή του { -send-brand-name }
+onboarding-mobile-phone-title = Λήψη του { -brand-product-name } στο τηλέφωνό σας
+onboarding-mobile-phone-text = Κάντε λήψη του { -brand-product-name } για iOS ή Android και συγχρονίστε τα δεδομένα σας με όλες τις συσκευές σας.
+# "Mobile" is short for mobile/cellular phone, "Browser" is short for web
+# browser.
+onboarding-mobile-phone-button = Λήψη προγράμματος περιήγησης για κινητά
+onboarding-send-tabs-title = Άμεση αποστολή καρτελών στις συσκευές σας
+# "Send Tabs" refers to "Send Tab to Device" feature that appears when opening a
+# tab's context menu.
+onboarding-send-tabs-text2 = Μοιραστείτε εύκολα σελίδες με τις συσκευές σας χωρίς αντιγραφή συνδέσμων και χωρίς να φύγετε από το πρόγραμμα περιήγησης.
+onboarding-send-tabs-button = Έναρξη χρήσης της αποστολής καρτελών
+onboarding-pocket-anywhere-title = Διαβάστε και ακούστε οπουδήποτε
+onboarding-pocket-anywhere-text2 = Αποθηκεύστε το αγαπημένο σας περιεχόμενο εκτός σύνδεσης με την εφαρμογή { -pocket-brand-name } και διαβάστε, ακούστε και παρακολουθήστε όποτε σας βολεύει.
+onboarding-pocket-anywhere-button = Δοκιμή του { -pocket-brand-name }
+onboarding-lockwise-strong-passwords-title = Δημιουργία και αποθήκευση ισχυρών κωδικών πρόσβασης
+onboarding-lockwise-strong-passwords-text = Το { -lockwise-brand-name } δημιουργεί ισχυρούς κωδικούς πρόσβασης επί τόπου και τους αποθηκεύει όλους σε ένα μέρος.
+onboarding-lockwise-strong-passwords-button = Διαχείριση συνδέσεων
+onboarding-facebook-container-title = Θέστε όρια με το Facebook
+onboarding-facebook-container-text2 = Το { -facebook-container-brand-name } διατηρεί ξεχωριστά το προφίλ σας από όλα τα άλλα, εμποδίζοντας τις στοχευμένες διαφημίσεις του Facebook.
+onboarding-facebook-container-button = Προσθήκη επέκτασης
+onboarding-import-browser-settings-title = Εισάγετε τους σελιδοδείκτες, τους κωδικούς πρόσβασης σας και άλλα
+onboarding-import-browser-settings-text = Ξεκινήστε αμέσως—εισάγετε εύκολα τις ιστοσελίδες και τις ρυθμίσεις του Chrome.
+onboarding-import-browser-settings-button = Εισαγωγή δεδομένων Chrome
+onboarding-personal-data-promise-title = Ιδιωτικό εκ κατασκευής
+onboarding-personal-data-promise-text = Το { -brand-product-name } αντιμετωπίζει τα δεδομένα σας με σεβασμό, συλλέγοντας όσο το δυνατό λιγότερα, προστατεύοντάς τα και είναι ξεκάθαρο πώς τα χρησιμοποιούμε.
+onboarding-personal-data-promise-button = Διαβάστε την υπόσχεσή μας
+
+## Message strings belonging to the Return to AMO flow
+
+return-to-amo-sub-header = Τέλεια, αποκτήσατε το { -brand-short-name }
+# <icon></icon> will be replaced with the icon belonging to the extension
+#
+# Variables:
+# $addon-name (String) - Name of the add-on
+return-to-amo-addon-header = Τώρα, ας αποκτήσουμε το <icon></icon><b>{ $addon-name }.</b>
+return-to-amo-extension-button = Προσθήκη επέκτασης
+return-to-amo-get-started-button = Έναρξη με το { -brand-short-name }
diff --git a/l10n-el/browser/browser/nsserrors.ftl b/l10n-el/browser/browser/nsserrors.ftl
new file mode 100644
index 0000000000..b66c40b487
--- /dev/null
+++ b/l10n-el/browser/browser/nsserrors.ftl
@@ -0,0 +1,354 @@
+# 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/.
+
+# DO NOT ADD THINGS OTHER THAN ERROR MESSAGES HERE.
+# This file gets parsed into a JS dictionary of all known error message ids in
+# gen_aboutneterror_codes.py . If we end up needing fluent attributes or
+# refactoring them in some way, the script will need updating.
+
+# Variables:
+# $hostname (String) - Hostname of the website with SSL error.
+# $errorMessage (String) - Error message corresponding to the type of error we are experiencing.
+ssl-connection-error = Προέκυψε σφάλμα κατά την σύνδεση στο { $hostname }. { $errorMessage }
+
+# Variables:
+# $error (string) - NSS error code string that specifies type of cert error. e.g. unknown issuer, invalid cert, etc.
+cert-error-code-prefix = Κωδικός σφάλματος: { $error }
+
+psmerr-ssl-disabled = Αδυναμία ασφαλούς σύνδεσης λόγω απενεργοποίησης του πρωτοκόλλου SSL.
+psmerr-ssl2-disabled = Αδυναμία ασφαλούς σύνδεσης. επειδή η σελίδα χρησιμοποιεί μια παλαιότερη, μη ασφαλή έκδοση του πρωτοκόλλου SSL.
+
+# This is a multi-line message.
+psmerr-hostreusedissuerandserial =
+ Έχετε λάβει ένα μη έγκυρο πιστοποιητικό. Παρακαλώ επικοινωνήστε με το διαχειριστή του συστήματος ή με τον αποστολέα και δώστε του αυτές τις πληροφορίες:
+
+ Το πιστοποιητικό σας περιέχει τον ίδιο σειριακό αριθμό με ένα άλλο πιστοποιητικό που εκδόθηκε από την αρχή πιστοποίησης. Παρακαλώ αποκτήστε ένα νέο πιστοποιητικό που να περιέχει έναν μοναδικό σειριακό αριθμό.
+
+ssl-error-export-only-server = Αδύνατη η επικοινωνία με ασφάλεια. Ο κόμβος δεν υποστηρίζει κρυπτογράφηση υψηλού βαθμού.
+ssl-error-us-only-server = Αδύνατη η επικοινωνία με ασφάλεια. Ο κόμβος απαιτεί κρυπτογράφηση υψηλού βαθμού που δεν υποστηρίζεται.
+ssl-error-no-cypher-overlap = Δεν ήταν δυνατή η ασφαλής επικοινωνία με τον κόμβο: κανένας κοινός αλγόριθμος κρυπτογράφησης.
+ssl-error-no-certificate = Δεν ήταν δυνατή η εύρεση του απαραίτητου πιστοποιητικού ή κλειδιού για έλεγχο ταυτότητας.
+ssl-error-bad-certificate = Δεν ήταν δυνατή η ασφαλής επικοινωνία με τον κόμβο: το πιστοποιητικό του κόμβου απορρίφθηκε.
+ssl-error-bad-client = Ο διακομιστής συνάντησε εσφαλμένα δεδομένα από το δέκτη.
+ssl-error-bad-server = Ο δέκτης συνάντησε εσφαλμένα δεδομένα από το διακομιστή.
+ssl-error-unsupported-certificate-type = Μη υποστηριζόμενος τύπος πιστοποιητικού.
+ssl-error-unsupported-version = Ο κόμβος χρησιμοποιεί μη υποστηριζόμενη έκδοση του πρωτοκόλλου ασφαλείας.
+ssl-error-wrong-certificate = Αποτυχία ελέγχου ταυτότητας δέκτη: το ιδιωτικό κλειδί στη βάση δεδομένων κλειδιών δεν αντιστοιχεί με το δημόσιο κλειδί στη βάση δεδομένων πιστοποιητικών.
+ssl-error-bad-cert-domain = Δεν ήταν δυνατή η ασφαλής επικοινωνία με τον κόμβο: το απαιτούμενο όνομα τομέα δεν ταιριάζει με το πιστοποιητικό διακομιστή.
+ssl-error-post-warning = Μη αναγνωρίσιμος κωδικός σφάλματος SSL.
+ssl-error-ssl2-disabled = Ο κόμβος υποστηρίζει μόνο SSL έκδοση 2, η οποία έχει απενεργοποιηθεί τοπικά.
+ssl-error-bad-mac-read = Το SSL έλαβε μια εγγραφή με εσφαλμένο κωδικό ελέγχου ταυτότητας μηνύματος.
+ssl-error-bad-mac-alert = Ο κόμβος SSL αναφέρει εσφαλμένο κωδικό ελέγχου ταυτότητας μηνύματος.
+ssl-error-bad-cert-alert = Ο κόμβος SSL δεν μπορεί να επαληθεύσει το πιστοποιητικό σας.
+ssl-error-revoked-cert-alert = Ο κόμβος SSL απέρριψε το πιστοποιητικό σας γιατί έχει ανακληθεί.
+ssl-error-expired-cert-alert = Ο κόμβος SSL απέρριψε το πιστοποιητικό σας γιατί έχει λήξει.
+ssl-error-ssl-disabled = Αδυναμία σύνδεσης: το SSL είναι ανενεργό.
+ssl-error-fortezza-pqg = Αδυναμία σύνδεσης: ο κόμβος SSL βρίσκεται σε έναν άλλο τομέα FORTEZZA.
+ssl-error-unknown-cipher-suite = Μια άγνωστη σουίτα κρυπτογράφησης SSL έχει ζητηθεί.
+ssl-error-no-ciphers-supported = Καμία παρούσα και ενεργή σουίτα κρυπτογράφησης σε αυτό το πρόγραμμα.
+ssl-error-bad-block-padding = Το SSL έλαβε μια εγγραφή με κατεστραμμένη συμπλήρωση μπλοκ.
+ssl-error-rx-record-too-long = Το SSL έλαβε μια εγγραφή που υπερέβη το μέγιστο επιτρεπτό μήκος.
+ssl-error-tx-record-too-long = Το SSL επιχείρησε να στείλει μια εγγραφή που υπερέβη το μέγιστο επιτρεπτό μήκος.
+ssl-error-rx-malformed-hello-request = Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Hello Request.
+ssl-error-rx-malformed-client-hello = Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Client Hello.
+ssl-error-rx-malformed-server-hello = Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Server Hello.
+ssl-error-rx-malformed-certificate = Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Certificate.
+ssl-error-rx-malformed-server-key-exch = Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Server Key Exchange.
+ssl-error-rx-malformed-cert-request = Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Certificate Request.
+ssl-error-rx-malformed-hello-done = Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Server Hello Done.
+ssl-error-rx-malformed-cert-verify = Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Certificate Verify.
+ssl-error-rx-malformed-client-key-exch = Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Client Key Exchange.
+ssl-error-rx-malformed-finished = Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Finished.
+ssl-error-rx-malformed-change-cipher = Το SSL έλαβε μια ακατάλληλη εγγραφή Change Cipher Spec.
+ssl-error-rx-malformed-alert = Το SSL έλαβε μια ακατάλληλη εγγραφή Alert.
+ssl-error-rx-malformed-handshake = Το SSL έλαβε μια ακατάλληλη εγγραφή Handshake.
+ssl-error-rx-malformed-application-data = Το SSL έλαβε μια ακατάλληλη εγγραφή Application Data.
+ssl-error-rx-unexpected-hello-request = Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Hello Request.
+ssl-error-rx-unexpected-client-hello = Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Client Hello.
+ssl-error-rx-unexpected-server-hello = Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Server Hello.
+ssl-error-rx-unexpected-certificate = Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Certificate.
+ssl-error-rx-unexpected-server-key-exch = Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Server Key Exchange.
+ssl-error-rx-unexpected-cert-request = Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Certificate Request.
+ssl-error-rx-unexpected-hello-done = Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Server Hello Done.
+ssl-error-rx-unexpected-cert-verify = Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Certificate Verify.
+ssl-error-rx-unexpected-client-key-exch = Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Client Key Exchange.
+ssl-error-rx-unexpected-finished = Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Finished.
+ssl-error-rx-unexpected-change-cipher = Το SSL έλαβε μια μη αναμενόμενη εγγραφή Change Cipher Spec.
+ssl-error-rx-unexpected-alert = Το SSL έλαβε μια μη αναμενόμενη εγγραφή Alert.
+ssl-error-rx-unexpected-handshake = Το SSL έλαβε μια μη αναμενόμενη εγγραφή Handshake.
+ssl-error-rx-unexpected-application-data = Το SSL έλαβε μια μη αναμενόμενη εγγραφή Application Data.
+ssl-error-rx-unknown-record-type = Το SSL έλαβε μια εγγραφή με άγνωστο τύπο περιεχομένου.
+ssl-error-rx-unknown-handshake = Το SSL έλαβε ένα μήνυμα χειραψίας με άγνωστο τύπο μηνύματος.
+ssl-error-rx-unknown-alert = Το SSL έλαβε μια εγγραφή με άγνωστη περιγραφή ειδοποίησης.
+ssl-error-close-notify-alert = Ο κόμβος SSL έχει κλείσει αυτή τη σύνδεση.
+ssl-error-handshake-unexpected-alert = Ο κόμβος SSL δεν περίμενε ένα μήνυμα χειραψίας που έλαβε.
+ssl-error-decompression-failure-alert = Ο κόμβος SSL δεν μπόρεσε να αποσυμπιέσει επιτυχώς μια εγγραφή SSL που έλαβε.
+ssl-error-handshake-failure-alert = Ο κόμβος SSL δεν μπόρεσε να διαπραγματευτεί ένα αποδεκτό σύνολο παραμέτρων ασφαλείας.
+ssl-error-illegal-parameter-alert = Ο κόμβος SSL απέρριψε ένα μήνυμα χειραψίας λόγω μη αποδεκτού περιεχομένου.
+ssl-error-unsupported-cert-alert = Ο κόμβος SSL δεν υποστηρίζει πιστοποιητικά του τύπου που έλαβε.
+ssl-error-certificate-unknown-alert = Ο κόμβος SSL είχε κάποιο απροσδιόριστο ζήτημα με το πιστοποιητικό που έλαβε.
+ssl-error-generate-random-failure = Το SSL αντιμετώπισε αποτυχία στη γεννήτρια τυχαίων αριθμών του.
+ssl-error-sign-hashes-failure = Δεν ήταν δυνατή η ψηφιακή υπογραφή των απαιτούμενων δεδομένων για την επαλήθευση του πιστοποιητικού σας.
+ssl-error-extract-public-key-failure = Το SSL δεν μπόρεσε να εξάγει το δημόσιο κλειδί από το πιστοποιητικό του κόμβου.
+ssl-error-server-key-exchange-failure = Απροσδιόριστο σφάλμα κατά την επεξεργασία της χειραψίας SSL Server Key Exchange.
+ssl-error-client-key-exchange-failure = Απροσδιόριστο σφάλμα κατά την επεξεργασία της χειραψίας SSL Client Key Exchange.
+ssl-error-encryption-failure = Ο αλγόριθμος μαζικής κρυπτογράφησης δεδομένων απέτυχε στην επιλεγμένη σουίτα κρυπτογράφησης.
+ssl-error-decryption-failure = Ο αλγόριθμος μαζικής αποκρυπτογράφησης δεδομένων απέτυχε στην επιλεγμένη σουίτα κρυπτογράφησης.
+ssl-error-socket-write-failure = Η προσπάθεια εγγραφής κρυπτογραφημένων δεδομένων στην βασική υποδοχή απέτυχε.
+ssl-error-md5-digest-failure = Αποτυχία λειτουργίας σύνοψης MD5.
+ssl-error-sha-digest-failure = Αποτυχία λειτουργίας σύνοψης SHA-1.
+ssl-error-mac-computation-failure = Αποτυχία υπολογισμού MAC.
+ssl-error-sym-key-context-failure = Αποτυχία δημιουργίας πλαισίου συμμετρικού κλειδιού.
+ssl-error-sym-key-unwrap-failure = Αποτυχία ανάκτησης συμμετρικού κλειδιού σε μήνυμα Client Key Exchange.
+ssl-error-pub-key-size-limit-exceeded = Ο διακομιστής SSL επιχείρησε να χρησιμοποιήσει δημόσιο κλειδί εσωτερικού βαθμού με σουίτα εξαγωγής κρυπτογράφησης.
+ssl-error-iv-param-failure = Ο κώδικας PKCS11 απέτυχε να μεταφράσει ένα IV σε μία παράμετρο.
+ssl-error-init-cipher-suite-failure = Αποτυχία προετοιμασίας της επιλεγμένης σουίτας κρυπτογράφησης.
+ssl-error-session-key-gen-failure = Το πρόγραμμα-πελάτης απέτυχε να δημιουργήσει κλειδιά συνεδρίας για τη συνεδρία SSL.
+ssl-error-no-server-key-for-alg = Ο διακομιστής δεν έχει κλειδί για τον αποπειραμένο αλγόριθμο ανταλλαγής κλειδιών.
+ssl-error-token-insertion-removal = Το διακριτικό PKCS#11 προστέθηκε ή αφαιρέθηκε, ενώ η λειτουργία βρισκόταν σε εξέλιξη.
+ssl-error-token-slot-not-found = Δεν βρέθηκε κανένα διακριτικό PKCS#11 για να εκτελέσει μια απαιτούμενη λειτουργία.
+ssl-error-no-compression-overlap = Αδυναμία ασφαλούς επικοινωνίας με τον κόμβο: κανένας κοινός αλγόριθμος συμπίεσης.
+ssl-error-handshake-not-completed = Αδυναμία εκκίνησης άλλης χειραψίας SSL μέχρι να ολοκληρωθεί η τρέχουσα χειραψία.
+ssl-error-bad-handshake-hash-value = Ελήφθησαν εσφαλμένες hash τιμές χειραψιών από τον κόμβο.
+ssl-error-cert-kea-mismatch = Το παρεχόμενο πιστοποιητικό δεν μπορεί να χρησιμοποιηθεί με τον επιλεγμένο αλγόριθμο ανταλλαγής κλειδιού.
+ssl-error-no-trusted-ssl-client-ca = Καμία αρχή πιστοποιητικών δεν είναι αξιόπιστη για τον έλεγχο ταυτότητας του υπολογιστή-πελάτη SSL.
+ssl-error-session-not-found = To ID συνεδρίας πελάτη SSL δεν βρέθηκε στη μνήμη cache συνεδριών του διακομιστή.
+ssl-error-decryption-failed-alert = Ο κόμβος δεν μπόρεσε να αποκρυπτογραφήσει μια εγγραφή SSL που έλαβε.
+ssl-error-record-overflow-alert = Ο κόμβος έλαβε μια εγγραφή SSL που ήταν μεγαλύτερη από το επιτρεπτό.
+ssl-error-unknown-ca-alert = Ο κόμβος δεν αναγνωρίζει ούτε εμπιστεύεται την αρχή πιστοποιητικών που εξέδωσε το πιστοποιητικό σας.
+ssl-error-access-denied-alert = Ο κόμβος έλαβε ένα έγκυρο πιστοποιητικό, αλλά δεν επιτράπηκε η πρόσβαση.
+ssl-error-decode-error-alert = Ο κόμβος δεν μπόρεσε να αποκωδικοποιήσει ένα μήνυμα χειραψίας SSL.
+ssl-error-decrypt-error-alert = Ο κόμβος αναφέρει αποτυχία επαλήθευσης της υπογραφής ή της ανταλλαγής κλειδιών.
+ssl-error-export-restriction-alert = Ο κόμβος αναφέρει ότι η διαπραγμάτευση δεν υπακούει στους κανονισμούς εξαγωγής.
+ssl-error-protocol-version-alert = Ο κόμβος αναφέρει ασύμβατη ή μη υποστηριζόμενη έκδοση πρωτοκόλλου.
+ssl-error-insufficient-security-alert = Ο διακομιστής απαιτεί πιο ασφαλή κρυπτογράφηση από αυτήν που υποστηρίζει το πρόγραμμα-πελάτης.
+ssl-error-internal-error-alert = Ο κόμβος αναφέρει ότι διαπίστωσε εσωτερικό σφάλμα.
+ssl-error-user-canceled-alert = Ο χρήστης του κόμβου ακύρωσε τη χειραψία.
+ssl-error-no-renegotiation-alert = Ο κόμβος δεν επιτρέπει επαναδιαπραγμάτευση των SSL παραμέτρων ασφαλείας.
+ssl-error-server-cache-not-configured = Η προσωρινή μνήμη του διακομιστή SSL δεν έχει ρυθμιστεί και δεν έχει απενεργοποιηθεί για αυτήν την υποδοχή.
+ssl-error-unsupported-extension-alert = Ο κόμβος SSL δεν υποστηρίζει την ζητούμενη επέκταση TLS Hello.
+ssl-error-certificate-unobtainable-alert = Ο κόμβος SSL δεν μπόρεσε να λάβει το πιστοποιητικό σας από το παρεχόμενο URL.
+ssl-error-unrecognized-name-alert = Ο κόμβος SSL δεν έχει κανένα πιστοποιητικό για το ζητούμενο όνομα DNS.
+ssl-error-bad-cert-status-response-alert = Ο κόμβος SSL δεν μπόρεσε να λάβει απόκριση OCSP για το πιστοποιητικό του.
+ssl-error-bad-cert-hash-value-alert = Ο κόμβος SSL αναφέρεται εσφαλμένη τιμή hash πιστοποιητικού.
+ssl-error-rx-unexpected-new-session-ticket = Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας New Session Ticket.
+ssl-error-rx-malformed-new-session-ticket = Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας New Session Ticket.
+ssl-error-decompression-failure = Το SSL έλαβε μια συμπιεσμένη εγγραφή που δεν μπόρεσε να αποσυμπιέσει.
+ssl-error-renegotiation-not-allowed = Η επαναδιαπραγμάτευση δεν επιτρέπεται σε αυτή την υποδοχή SSL.
+ssl-error-unsafe-negotiation = Ο κόμβος επιχείρησε παλιό στυλ (δυνητικά ευάλωτης) χειραψίας.
+ssl-error-rx-unexpected-uncompressed-record = Το SSL έλαβε μια μη αναμενόμενη ασυμπίεστη εγγραφή.
+ssl-error-weak-server-ephemeral-dh-key = Το SSL έλαβε ένα αδύναμο εφήμερο κλειδί Diffie-Hellman στο μήνυμα χειραψίας Server Key Exchange.
+ssl-error-next-protocol-data-invalid = Το SSL έλαβε άγκυρα δεδομένα επέκτασης NPN.
+ssl-error-feature-not-supported-for-ssl2 = Η δυνατότητα SSL δεν υποστηρίζεται για συνδέσεις SSL 2.0.
+ssl-error-feature-not-supported-for-servers = Η λειτουργία SSL δεν υποστηρίζεται για διακομιστές.
+ssl-error-feature-not-supported-for-clients = Η λειτουργία SSL δεν υποστηρίζεται για δέκτες.
+ssl-error-invalid-version-range = Η περιοχή έκδοσης SSL δεν είναι έγκυρη.
+ssl-error-cipher-disallowed-for-version = Ο κόμβος SSL επέλεξε μια σουίτα κρυπτογράφησης μη επιτρεπτή στην έκδοση του επιλεγμένου πρωτοκόλλου.
+ssl-error-rx-malformed-hello-verify-request = Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Hello Verify Request.
+ssl-error-rx-unexpected-hello-verify-request = Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Hello Verify Request.
+ssl-error-feature-not-supported-for-version = Η δυνατότητα SSL δεν υποστηρίζεται για την έκδοση του πρωτοκόλλου.
+ssl-error-rx-unexpected-cert-status = Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Certificate Status.
+ssl-error-unsupported-hash-algorithm = Μη υποστηριζόμενος αλγόριθμος hash χρησιμοποιείται από τον κόμβο TLS.
+ssl-error-digest-failure = Η λειτουργία digest απέτυχε.
+ssl-error-incorrect-signature-algorithm = Καθορίστηκε εσφαλμένος αλγόριθμος υπογραφής σε στοιχείο με ψηφιακή υπογραφή.
+ssl-error-next-protocol-no-callback = Ενεργοποιήθηκε η επόμενη επέκταση διαπραγμάτευσης πρωτοκόλλου, αλλά η επιστροφή κλήσης εγκρίθηκε πριν χρειαστεί.
+ssl-error-next-protocol-no-protocol = Ο διακομιστής δεν υποστηρίζει πρωτόκολλα που διαφημίζει ο πελάτης στην επέκταση ALPN.
+ssl-error-inappropriate-fallback-alert = Ο διακομιστής απέρριψε την χειραψία, επειδή το πρόγραμμα-πελάτης την υποβάθμισε σε χαμηλότερη έκδοση TLS από αυτήν που υποστηρίζει ο διακομιστής.
+ssl-error-weak-server-cert-key = Το πιστοποιητικό του διακομιστή περιείχε ένα δημόσιο κλειδί, που ήταν πολύ αδύναμο.
+ssl-error-rx-short-dtls-read = Ανεπαρκής χώρος στο buffer για εγγραφή DTLS.
+ssl-error-no-supported-signature-algorithm = Κανένας υποστηριζόμενος αλγόριθμος υπογραφής TLS δεν έχει ρυθμιστεί.
+ssl-error-unsupported-signature-algorithm = Ο κόμβος χρησιμοποίησε έναν μη υποστηριζόμενο συνδυασμό υπογραφής και αλγόριθμου hash.
+ssl-error-missing-extended-master-secret = Ο κόμβος προσπάθησε να συνεχίσει χωρίς σωστή επέκταση extended_master_secret.
+ssl-error-unexpected-extended-master-secret = Ο κόμβος προσπάθησε να συνεχίσει με μη αναμενόμενη επέκταση extended_master_secret.
+sec-error-io = Προέκυψε σφάλμα I/O κατά τη διάρκεια της αδειοδότησης ασφάλειας.
+sec-error-library-failure = αποτυχία βιβλιοθήκης ασφαλείας.
+sec-error-bad-data = βιβλιοθήκη ασφάλειας: ελήφθησαν εσφαλμένα δεδομένα.
+sec-error-output-len = βιβλιοθήκη ασφάλειας: σφάλμα μήκους εξόδου.
+sec-error-input-len = η βιβλιοθήκη ασφάλειας διαπίστωσε σφάλμα μήκους εισόδου.
+sec-error-invalid-args = βιβλιοθήκη ασφάλειας: άκυρες παράμετροι.
+sec-error-invalid-algorithm = βιβλιοθήκη ασφάλειας: άκυρος αλγόριθμος.
+sec-error-invalid-ava = βιβλιοθήκη ασφάλειας: άκυρο AVA.
+sec-error-invalid-time = Ακατάλληλα μορφοποιημένη συμβολοσειρά χρόνου.
+sec-error-bad-der = βιβλιοθήκη ασφάλειας: ακατάλληλα μορφοποιημένο μήνυμα κωδικοποίησης DER.
+sec-error-bad-signature = Το πιστοποιητικό κόμβου έχει άκυρη υπογραφή.
+sec-error-expired-certificate = Το πιστοποιητικό κόμβου έχει λήξει.
+sec-error-revoked-certificate = Το πιστοποιητικό κόμβου έχει ανακληθεί.
+sec-error-unknown-issuer = Ο εκδότης του πιστοποιητικού κόμβου δεν αναγνωρίζεται.
+sec-error-bad-key = Το δημόσιο κλειδί του κόμβου είναι άκυρο.
+sec-error-bad-password = Ο κωδικός πρόσβασης που δώσατε είναι εσφαλμένος.
+sec-error-retry-password = Ο νέος κωδικός πρόσβασης εισήχθη εσφαλμένα. Παρακαλώ προσπαθήστε ξανά.
+sec-error-no-nodelock = βιβλιοθήκη ασφάλειας: κανένα κλείδωμα κόμβου.
+sec-error-bad-database = βιβλιοθήκη ασφάλειας: ελαττωματική βάση δεδομένων.
+sec-error-no-memory = βιβλιοθήκη ασφάλειας: αποτυχία εκχώρησης μνήμης.
+sec-error-untrusted-issuer = Ο εκδότης του πιστοποιητικού κόμβου έχει σημανθεί ως αναξιόπιστος από το χρήστη.
+sec-error-untrusted-cert = Το πιστοποιητικό κόμβου έχει σημανθεί ως αναξιόπιστο από το χρήστη.
+sec-error-duplicate-cert = Το πιστοποιητικό υπάρχει ήδη στη βάση δεδομένων σας.
+sec-error-duplicate-cert-name = Το όνομα του πιστοποιητικού που κατέβηκε βρίσκεται ήδη στη βάση δεδομένων σας.
+sec-error-adding-cert = Σφάλμα κατά την προσθήκη του πιστοποιητικού στη βάση δεδομένων.
+sec-error-filing-key = Σφάλμα κατά την συμπλήρωση του κλειδιού για αυτό το πιστοποιητικό.
+sec-error-no-key = Το ιδιωτικό κλειδί αυτού του πιστοποιητικού δεν μπορεί να βρεθεί στη βάση δεδομένων κλειδιών
+sec-error-cert-valid = Αυτό το πιστοποιητικό είναι έγκυρο.
+sec-error-cert-not-valid = Αυτό το πιστοποιητικό είναι άκυρο.
+sec-error-cert-no-response = Βιβλιοθήκη πιστοποιητικών: Καμία απάντηση
+sec-error-expired-issuer-certificate = Το πιστοποιητικό του εκδότη πιστοποιητικών έχει λήξει. Ελέγξτε την ημερομηνία και την ώρα συστήματός σας.
+sec-error-crl-expired = Η λίστα CRL του εκδότη πιστοποιητικών έχει λήξει. Ενημερώστε την ή ελέγξτε την ημερομηνία και την ώρα συστήματός σας.
+sec-error-crl-bad-signature = Η λίστα CRL του εκδότη πιστοποιητικών έχει άκυρη υπογραφή.
+sec-error-crl-invalid = Το νέο CRL έχει άκυρη μορφή.
+sec-error-extension-value-invalid = Η τιμή επέκτασης του πιστοποιητικού είναι άκυρη.
+sec-error-extension-not-found = Η επέκταση του πιστοποιητικού δεν βρέθηκε.
+sec-error-ca-cert-invalid = Το πιστοποιητικό του εκδότη είναι άκυρο.
+sec-error-path-len-constraint-invalid = Ο περιορισμός μήκους διαδρομής του πιστοποιητικού είναι άκυρος.
+sec-error-cert-usages-invalid = Το πεδίο χρήσεων πιστοποιητικού είναι άκυρο.
+sec-internal-only = **ΜΟΝΟ εσωτερική μονάδα**
+sec-error-invalid-key = Το κλειδί δεν υποστηρίζει την λειτουργία που ζητήθηκε.
+sec-error-unknown-critical-extension = Το πιστοποιητικό περιέχει άγνωστη κρίσιμη επέκταση.
+sec-error-old-crl = Η νέα λίστα CRL δεν είναι νεότερη από την τρέχουσα.
+sec-error-no-email-cert = Δεν έχει κρυπτογραφηθεί ή υπογραφεί: δεν έχετε ακόμα πιστοποιητικό ηλεκτρονικού ταχυδρομείου.
+sec-error-no-recipient-certs-query = Δεν έχει κρυπτογραφηθεί: δεν έχετε πιστοποιητικά για κάθε έναν από τους παραλήπτες.
+sec-error-not-a-recipient = Αδυναμία αποκρυπτογράφησης: δεν είστε παραλήπτης, ή δεν βρέθηκε το αντίστοιχο πιστοποιητικό και το ιδιωτικό κλειδί.
+sec-error-pkcs7-keyalg-mismatch = Αδυναμία αποκρυπτογράφησης: ο αλγόριθμος κρυπτογράφησης κλειδιών δεν ταιριάζει με το πιστοποιητικό σας.
+sec-error-pkcs7-bad-signature = Η επαλήθευση της υπογραφής απέτυχε: δεν βρέθηκε ο υπογράφων, βρέθηκαν πολλοί υπογράφοντες, ή τα δεδομένα ήταν ακατάλληλα ή κατεστραμμένα.
+sec-error-unsupported-keyalg = Μη υποστηριζόμενος ή άγνωστος αλγόριθμος κλειδιού.
+sec-error-decryption-disallowed = Αδυναμία αποκρυπτογράφησης: κρυπτογραφήθηκε με μη επιτρεπόμενο αλγόριθμο ή μέγεθος κλειδιού.
+xp-sec-fortezza-bad-card = Η κάρτα Fortezza δεν έχει προετοιμαστεί σωστά. Παρακαλώ αφαιρέστε την και επιστρέψτε την στον εκδότη σας.
+xp-sec-fortezza-no-card = Δεν βρέθηκαν κάρτες Fortezza
+xp-sec-fortezza-none-selected = Δεν έχει επιλεγεί κάρτα Fortezza
+xp-sec-fortezza-more-info = Παρακαλώ επιλέξτε ένα πρόσωπο για περισσότερες πληροφορίες
+xp-sec-fortezza-person-not-found = Δεν βρέθηκε προσωπικότητα
+xp-sec-fortezza-no-more-info = Καμία επιπλέον πληροφορία σχετικά με αυτή την προσωπικότητα
+xp-sec-fortezza-bad-pin = Άκυρο PIN
+xp-sec-fortezza-person-error = Αδυναμία προετοιμασίας προσωπικοτήτων Fortezza.
+sec-error-no-krl = Δεν βρέθηκε KRL για το πιστοποιητικό αυτής της ιστοσελίδας.
+sec-error-krl-expired = Το KRL για το πιστοποιητικό αυτής της ιστοσελίδας έχει λήξει.
+sec-error-krl-bad-signature = Το KRL για το πιστοποιητικό αυτής της ιστοσελίδας έχει άκυρη υπογραφή.
+sec-error-revoked-key = Το κλειδί για το πιστοποιητικό αυτής της ιστοσελίδας έχει ανακληθεί.
+sec-error-krl-invalid = Το νέο KRL έχει άκυρη μορφή.
+sec-error-need-random = βιβλιοθήκη ασφαλείας: χρειάζονται τυχαία δεδομένα.
+sec-error-no-module = βιβλιοθήκη ασφαλείας: καμία μονάδα ασφαλείας δεν μπορεί να εκτελέσει τη λειτουργία που ζητήθηκε.
+sec-error-no-token = Η κάρτα ή το διακριτικό ασφάλειας δεν υπάρχει, πρέπει να προετοιμαστεί, ή έχει αφαιρεθεί.
+sec-error-read-only = βιβλιοθήκη ασφάλειας: βάση δεδομένων μόνο για ανάγνωση.
+sec-error-no-slot-selected = Δεν επιλέχθηκε καμία υποδοχή ή σύμβολο.
+sec-error-cert-nickname-collision = Υπάρχει ήδη ένα πιστοποιητικό με το ίδιο ψευδώνυμο.
+sec-error-key-nickname-collision = Υπάρχει ήδη ένα κλειδί με το ίδιο ψευδώνυμο.
+sec-error-safe-not-created = σφάλμα κατά τη δημιουργία ασφαλούς αντικειμένου
+sec-error-baggage-not-created = σφάλμα κατά τη δημιουργία αντικειμένου αποσκευών
+xp-java-remove-principal-error = Αδυναμία αφαίρεσης αρχής
+xp-java-delete-privilege-error = Αδυναμία διαγραφής προνομίου
+xp-java-cert-not-exists-error = Αυτή η αρχή δεν διαθέτει πιστοποιητικό
+sec-error-bad-export-algorithm = Ο απαιτούμενος αλγόριθμος δεν επιτρέπεται.
+sec-error-exporting-certificates = Σφάλμα κατά την προσπάθεια εξαγωγής πιστοποιητικών.
+sec-error-importing-certificates = Σφάλμα κατά την προσπάθεια εισαγωγής πιστοποιητικών.
+sec-error-pkcs12-decoding-pfx = Δεν ήταν δυνατή η εισαγωγή. Σφάλμα αποκωδικοποίησης. Μη έγκυρο αρχείο.
+sec-error-pkcs12-invalid-mac = Δεν ήταν δυνατή η εισαγωγή. Μη έγκυρη MAC. Λάθος κωδικός πρόσβασης ή κατεστραμμένο αρχείο.
+sec-error-pkcs12-unsupported-mac-algorithm = Δεν ήταν δυνατή η εισαγωγή. Μη υποστηριζόμενος αλγόριθμος MAC.
+sec-error-pkcs12-unsupported-transport-mode = Δεν ήταν δυνατή η εισαγωγή. Υποστηρίζονται μόνο οι λειτουργίες ακεραιότητας και απορρήτου κωδικού πρόσβασης.
+sec-error-pkcs12-corrupt-pfx-structure = Δεν ήταν δυνατή η εισαγωγή. Κατεστραμμένη δομή αρχείου.
+sec-error-pkcs12-unsupported-pbe-algorithm = Δεν ήταν δυνατή η εισαγωγή. Μη υποστηριζόμενος αλγόριθμος κρυπτογράφησης.
+sec-error-pkcs12-unsupported-version = Δεν ήταν δυνατή η εισαγωγή. Μη υποστηριζόμενη έκδοση αρχείου.
+sec-error-pkcs12-privacy-password-incorrect = Δεν ήταν δυνατή η εισαγωγή. Λάθος κωδικός πρόσβασης απορρήτου.
+sec-error-pkcs12-cert-collision = Δεν ήταν δυνατή η εισαγωγή. Το ίδιο ψευδώνυμο υπάρχει ήδη στη βάση δεδομένων.
+sec-error-user-cancelled = Ο χρήστης πάτησε ακύρωση.
+sec-error-pkcs12-duplicate-data = Δεν εισήχθη, είναι ήδη στη βάση δεδομένων.
+sec-error-message-send-aborted = Το μήνυμα δεν εστάλη.
+sec-error-inadequate-key-usage = Η χρήση κλειδιού πιστοποιητικού δεν επαρκεί για την αποπειραθείσα λειτουργία.
+sec-error-inadequate-cert-type = Ο τύπος του πιστοποιητικού δεν εγκρίθηκε για εφαρμογή.
+sec-error-cert-addr-mismatch = Η διεύθυνση στο πιστοποιητικό υπογραφής δεν συμφωνεί με αυτήν στις επικεφαλίδες μηνυμάτων.
+sec-error-pkcs12-unable-to-import-key = Δεν ήταν δυνατή η εισαγωγή. Σφάλμα προσπάθειας εισαγωγής ιδιωτικού κλειδιού.
+sec-error-pkcs12-importing-cert-chain = Δεν ήταν δυνατή η εισαγωγή. Σφάλμα προσπάθειας εισαγωγής αλυσίδας πιστοποιητικών.
+sec-error-pkcs12-unable-to-locate-object-by-name = Δεν ήταν δυνατή η εξαγωγή. Δεν ήταν δυνατός ο εντοπισμός πιστοποιητικού ή κλειδιού από το ψευδώνυμο.
+sec-error-pkcs12-unable-to-export-key = Δεν ήταν δυνατή η εξαγωγή. Δεν ήταν δυνατός ο εντοπισμός και η εξαγωγή του ιδιωτικού κλειδιού.
+sec-error-pkcs12-unable-to-write = Δεν ήταν δυνατή η εξαγωγή. Δεν ήταν δυνατή η εγγραφή του αρχείου εξαγωγής.
+sec-error-pkcs12-unable-to-read = Δεν ήταν δυνατή η εισαγωγή. Δεν ήταν δυνατή η ανάγνωση του αρχείου εισαγωγής.
+sec-error-pkcs12-key-database-not-initialized = Δεν ήταν δυνατή η εξαγωγή. Κατεστραμμένη ή διαγραμμένη βάση δεδομένων κλειδιών.
+sec-error-keygen-fail = Δεν ήταν δυνατή η δημιουργία ζεύγους δημόσιων/ιδιωτικών κλειδιών.
+sec-error-invalid-password = Ο κωδικός πρόσβασης είναι άκυρος. Παρακαλώ επιλέξτε άλλον.
+sec-error-retry-old-password = Ο παλιός κωδικός πρόσβασης εισήχθη εσφαλμένα. Παρακαλώ προσπαθήστε ξανά.
+sec-error-bad-nickname = Το ψευδώνυμο του πιστοποιητικού είναι ήδη σε χρήση.
+sec-error-not-fortezza-issuer = Ο κόμβος στην αλυσίδα FORTEZZA έχει μη-FORTEZZA πιστοποιητικό.
+sec-error-cannot-move-sensitive-key = Ένα ευαίσθητο κλειδί δεν μπορεί να μετακινηθεί στην υποδοχή όπου χρειάζεται.
+sec-error-js-invalid-module-name = Άκυρο όνομα μονάδας.
+sec-error-js-invalid-dll = Άκυρη διαδρομή/όνομα αρχείου μονάδας
+sec-error-js-add-mod-failure = Δεν ήταν δυνατή η προσθήκη μονάδας
+sec-error-js-del-mod-failure = Δεν ήταν δυνατή η διαγραφή της μονάδας
+sec-error-old-krl = Το νέο KRL δεν είναι νεότερο από το τρέχον.
+sec-error-ckl-conflict = Η νέα CKL έχει διαφορετικό εκδότη από την τρέχουσα CKL. Διαγράψτε την τρέχουσα CKL.
+sec-error-cert-not-in-name-space = Η αρχή πιστοποίησης αυτού του πιστοποιητικού δεν επιτρέπεται να εκδώσει πιστοποιητικό με αυτό το όνομα.
+sec-error-krl-not-yet-valid = Η λίστα ανάκλησης κλειδιών για αυτό το πιστοποιητικό δεν είναι ακόμα έγκυρη.
+sec-error-crl-not-yet-valid = Η λίστα ανάκλησης πιστοποιητικών για αυτό το πιστοποιητικό δεν είναι ακόμα έγκυρη.
+sec-error-unknown-cert = Το πιστοποιητικό που ζητήθηκε δεν βρέθηκε.
+sec-error-unknown-signer = Το πιστοποιητικό του υπογράφοντα δεν βρέθηκε.
+sec-error-cert-bad-access-location = Η θέση του διακομιστή κατάστασης πιστοποιητικού έχει μη έγκυρη μορφή.
+sec-error-ocsp-unknown-response-type = Η απόκριση OCSP δεν μπορεί να αποκωδικοποιηθεί πλήρως· είναι άγνωστου τύπου.
+sec-error-ocsp-bad-http-response = Ο διακομιστής OCSP επέστρεψε μη αναμενόμενα/άκυρα δεδομένα HTTP.
+sec-error-ocsp-malformed-request = Ο διακομιστής OCSP βρήκε ότι η αίτηση είναι κατεστραμμένη ή αφύσικα διαμορφωμένη.
+sec-error-ocsp-server-error = Ο διακομιστής OCSP διαπίστωσε εσωτερικό σφάλμα.
+sec-error-ocsp-try-server-later = Ο διακομιστής OCSP προτείνει να δοκιμάσετε ξανά αργότερα.
+sec-error-ocsp-request-needs-sig = Ο διακομιστής OCSP απαιτεί υπογραφή σε αυτή η αίτηση.
+sec-error-ocsp-unauthorized-request = Ο διακομιστής OCSP αρνήθηκε αυτήν την αίτηση ως μη εξουσιοδοτημένη.
+sec-error-ocsp-unknown-response-status = Ο διακομιστής OCSP επέστρεψε μη αναγνωρίσιμη κατάσταση.
+sec-error-ocsp-unknown-cert = Ο διακομιστής OCSP δεν έχει την κατάσταση για το πιστοποιητικό.
+sec-error-ocsp-not-enabled = Πρέπει να ενεργοποιήσετε το OCSP πριν εκτελέσετε αυτή την λειτουργία.
+sec-error-ocsp-no-default-responder = Πρέπει να ορίσετε έναν προεπιλεγμένο ανταποκριτή OCSP πριν εκτελέσετε αυτή την λειτουργία.
+sec-error-ocsp-malformed-response = Η απόκριση του διακομιστή OCSP ήταν κατεστραμμένη ή αφύσικα διαμορφωμένη.
+sec-error-ocsp-unauthorized-response = Ο υπογράφων της απόκρισης OCSP δεν είναι εξουσιοδοτημένος για να δώσει την κατάσταση αυτού του πιστοποιητικού.
+sec-error-ocsp-future-response = Η απόκριση OCSP δεν είναι ακόμη έγκυρη (περιέχει μελλοντική ημερομηνία).
+sec-error-ocsp-old-response = Η απόκριση OCSP περιέχει παλαιές πληροφορίες.
+sec-error-digest-not-found = Το CMS ή PKCS #7 Digest δεν βρέθηκε στο υπογεγραμμένο μήνυμα.
+sec-error-unsupported-message-type = Ο τύπος μηνύματος CMS ή PKCS #7 δεν υποστηρίζεται.
+sec-error-module-stuck = Η μονάδα PKCS #11 δεν μπορεί να αφαιρεθεί, επειδή είναι ακόμα σε χρήση.
+sec-error-bad-template = Αδυναμία αποκωδικοποίησης δεδομένων ASN.1. Το καθορισμένο πρότυπο ήταν άκυρο.
+sec-error-crl-not-found = Δεν βρέθηκε αντίστοιχη CRL.
+sec-error-reused-issuer-and-serial = Προσπαθείτε να εισαγάγετε πιστοποιητικό με ίδιο εκδότη/σειριακό με ένα υπάρχον, ενώ δεν είναι το ίδιο πιστοποιητικό.
+sec-error-busy = Αδυναμία τερματισμού NSS. Χρησιμοποιούνται ακόμη αντικείμενα.
+sec-error-extra-input = Το μήνυμα κωδικοποίησης DER περιείχε επιπλέον περιττά δεδομένα.
+sec-error-unsupported-elliptic-curve = Μη υποστηριζόμενη ελλειπτική καμπύλη.
+sec-error-unsupported-ec-point-form = Μη υποστηριζόμενη μορφή σημείου ελλειπτικής καμπύλης.
+sec-error-unrecognized-oid = Μη αναγνωρίσιμο αναγνωριστικό αντικειμένου.
+sec-error-ocsp-invalid-signing-cert = Άκυρο πιστοποιητικό υπογραφής OCSP στην απόκριση OCSP.
+sec-error-revoked-certificate-crl = Το πιστοποιητικό έχει ανακληθεί στη λίστα ανάκλησης πιστοποιητικών του εκδότη.
+sec-error-revoked-certificate-ocsp = Ο ανταποκριτής OCSP του εκδότη αναφέρει ότι το πιστοποιητικό έχει ανακληθεί.
+sec-error-crl-invalid-version = Η λίστα ανάκλησης πιστοποιητικών του εκδότη έχει άγνωστο αριθμό έκδοσης.
+sec-error-crl-v1-critical-extension = Η λίστα ανάκλησης πιστοποιητικών V1 του εκδότη έχει μια κρίσιμη επέκταση.
+sec-error-crl-unknown-critical-extension = Η λίστα ανάκλησης πιστοποιητικών V2 του εκδότη έχει άγνωστη κρίσιμη επέκταση.
+sec-error-unknown-object-type = Καθορίστηκε άγνωστος τύπος αντικειμένου.
+sec-error-incompatible-pkcs11 = Ο οδηγός PKCS #11 παραβιάζει τις προδιαγραφές με ασύμβατο τρόπο.
+sec-error-no-event = Δεν υπάρχει διαθέσιμο συμβάν νέας υποδοχής αυτή τη στιγμή.
+sec-error-crl-already-exists = Το CRL υπάρχει ήδη.
+sec-error-not-initialized = Το NSS δεν έχει προετοιμαστεί.
+sec-error-token-not-logged-in = Η λειτουργία απέτυχε επειδή το διακριτικό PKCS#11 δεν είναι συνδεδεμένο.
+sec-error-ocsp-responder-cert-invalid = Το πιστοποιητικό του ρυθμισμένου ανταποκριτή OCSP είναι άκυρο.
+sec-error-ocsp-bad-signature = Η απόκριση OCSP έχει άκυρη υπογραφή.
+sec-error-out-of-search-limits = Η αναζήτηση επικύρωσης πιστοποιητικού είναι εκτός ορίων
+sec-error-invalid-policy-mapping = Η αντιστοίχιση πολιτικής περιέχει anypolicy
+sec-error-policy-validation-failed = Η αλυσίδα πιστοποιητικών αποτυγχάνει στην επικύρωση πολιτικής
+sec-error-unknown-aia-location-type = Άγνωστος τύπος τοποθεσίας στην επέκταση AIA του πιστοποιητικού
+sec-error-bad-http-response = Ο διακομιστής επέστρεψε κακή απόκριση HTTP
+sec-error-bad-ldap-response = Ο διακομιστής επέστρεψε κακή απόκριση LDAP
+sec-error-failed-to-encode-data = Απέτυχε η κωδικοποίηση δεδομένων με κωδικοποιητή ASN1
+sec-error-bad-info-access-location = Κακή τοποθεσία πρόσβασης πληροφοριών στην επέκταση πιστοποιητικού
+sec-error-libpkix-internal = Παρουσιάστηκε εσωτερικό σφάλμα libpkix κατά την επικύρωση πιστοποιητικού.
+sec-error-pkcs11-general-error = Μια μονάδα PKCS #11 επέστρεψε CKR_GENERAL_ERROR, υποδεικνύοντας ότι προέκυψε ανεπανόρθωτο σφάλμα.
+sec-error-pkcs11-function-failed = Μια μονάδα PKCS #11 επέστρεψε CKR_FUNCTION_FAILED, υποδεικνύοντας ότι ήταν αδύνατη η εκτέλεση της ζητούμενης λειτουργίας. Η επανεκτέλεση της ίδιας λειτουργίας ίσως να επιτύχει.
+sec-error-pkcs11-device-error = Μια μονάδα PKCS #11 επέστρεψε CKR_DEVICE_ERROR, υποδεικνύοντας ότι παρουσιάστηκε πρόβλημα με το διακριτικό ή την υποδοχή.
+sec-error-bad-info-access-method = Άγνωστη μέθοδος πρόσβασης πληροφοριών στην επέκταση πιστοποιητικού.
+sec-error-crl-import-failed = Σφάλμα κατά την απόπειρα εισαγωγής CRL.
+sec-error-expired-password = Ο κωδικός πρόσβασης έληξε.
+sec-error-locked-password = Ο κωδικός πρόσβασης είναι κλειδωμένος.
+sec-error-unknown-pkcs11-error = Άγνωστο σφάλμα PKCS #11.
+sec-error-bad-crl-dp-url = Άκυρο ή μη υποστηριζόμενο URL στο όνομα του σημείου διανομής CRL.
+sec-error-cert-signature-algorithm-disabled = Το πιστοποιητικό έχει υπογραφεί με αλγόριθμο υπογραφής που είναι ανενεργός, επειδή δεν είναι ασφαλής.
+mozilla-pkix-error-key-pinning-failure = Ο διακομιστής χρησιμοποιεί καρφίτσωμα κλειδιού (HPKP), αλλά δεν μπόρεσε να δημιουργηθεί αξιόπιστη αλυσίδα πιστοποιητικών που να ταιριάζει. Οι παραβιάσεις καρφιτσώματος κλειδιών δεν μπορούν να παρακαμφθούν.
+mozilla-pkix-error-ca-cert-used-as-end-entity = Ο διακομιστής χρησιμοποιεί πιστοποιητικό με επέκταση των βασικών περιορισμών, προσδιορίζοντάς το ως αρχή έκδοσης πιστοποιητικών. Για ένα πιστοποιητικό που έχει εκδοθεί σωστά, αυτό δεν πρέπει να συμβαίνει.
+mozilla-pkix-error-inadequate-key-size = Ο διακομιστής παρουσίασε πιστοποιητικό με μέγεθος κλειδιού που είναι πολύ μικρό για να δημιουργηθεί ασφαλής σύνδεση.
+mozilla-pkix-error-v1-cert-used-as-ca = Ένα πιστοποιητικό X.509 έκδοσης 1, που δεν είναι αξιόπιστο στήριγμα, χρησιμοποιήθηκε για να εκδώσει το πιστοποιητικό του διακομιστή. Τα πιστοποιητικά X.509 έκδοσης 1 είναι παρωχημένα και δεν πρέπει να χρησιμοποιούνται για υπογραφή άλλων πιστοποιητικών.
+mozilla-pkix-error-not-yet-valid-certificate = Ο διακομιστής παρουσίασε ένα πιστοποιητικό που δεν είναι ακόμα έγκυρο.
+mozilla-pkix-error-not-yet-valid-issuer-certificate = Ένα πιστοποιητικό, που δεν είναι ακόμα έγκυρο, χρησιμοποιήθηκε για την έκδοση του πιστοποιητικού του διακομιστή.
+mozilla-pkix-error-signature-algorithm-mismatch = Ο αλγόριθμος υπογραφής στο πεδίο υπογραφής του πιστοποιητικού δεν συμφωνεί με τον αλγόριθμο στο πεδίο signatureAlgorithm.
+mozilla-pkix-error-ocsp-response-for-cert-missing = Ο ανταποκριτής OCSP δεν περιλαμβάνει την κατάσταση του πιστοποιητικού που επαληθεύεται.
+mozilla-pkix-error-validity-too-long = Ο διακομιστής παρουσίασε ένα πιστοποιητικό που ισχύει για πάρα πολύ καιρό.
+mozilla-pkix-error-required-tls-feature-missing = Λείπει ένα απαιτούμενο χαρακτηριστικό TLS.
+mozilla-pkix-error-invalid-integer-encoding = Ο διακομιστής παρουσίασε ένα πιστοποιητικό που περιέχει μια μη έγκυρη κωδικοποίηση ακεραίου. Οι κοινές αιτίες συμπεριλαμβάνουν αρνητικούς σειριακούς αριθμούς, αρνητικές ενότητες RSA και κωδικοποιήσεις που δεν απαιτούνται πλέον.
+mozilla-pkix-error-empty-issuer-name = Ο διακομιστής παρουσίασε ένα πιστοποιητικό με κενό επιφανές όνομα εκδότη.
+mozilla-pkix-error-additional-policy-constraint-failed = Ένας περιορισμός πρόσθετης πολιτικής απέτυχε κατά την επικύρωση αυτού του πιστοποιητικού.
+mozilla-pkix-error-self-signed-cert = Το πιστοποιητικό δεν είναι αξιόπιστο επειδή είναι αυτοϋπογεγραμμένο.
diff --git a/l10n-el/browser/browser/pageInfo.ftl b/l10n-el/browser/browser/pageInfo.ftl
new file mode 100644
index 0000000000..0231db448e
--- /dev/null
+++ b/l10n-el/browser/browser/pageInfo.ftl
@@ -0,0 +1,231 @@
+# 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/. --
+
+page-info-window =
+ .style = width: 530px; min-height: 480px;
+copy =
+ .key = C
+menu-copy =
+ .label = Αντιγραφή
+ .accesskey = γ
+select-all =
+ .key = A
+menu-select-all =
+ .label = Επιλογή όλων
+ .accesskey = λ
+close-dialog =
+ .key = w
+general-tab =
+ .label = Γενικά
+ .accesskey = Γ
+general-title =
+ .value = Τίτλος:
+general-url =
+ .value = Διεύθυνση:
+general-type =
+ .value = Τύπος:
+general-mode =
+ .value = Λειτουργία εμφάνισης:
+general-size =
+ .value = Μέγεθος:
+general-referrer =
+ .value = URL παραπομπής:
+general-modified =
+ .value = Τροποποίηση:
+general-encoding =
+ .value = Κωδικοποίηση κειμένου:
+general-meta-name =
+ .label = Όνομα
+general-meta-content =
+ .label = Περιεχόμενο
+media-tab =
+ .label = Πολυμέσα
+ .accesskey = μ
+media-location =
+ .value = Τοποθεσία:
+media-text =
+ .value = Σχετικό κείμενο:
+media-alt-header =
+ .label = Εναλλακτικό κείμενο
+media-address =
+ .label = Διεύθυνση
+media-type =
+ .label = Τύπος
+media-size =
+ .label = Μέγεθος
+media-count =
+ .label = Αρίθμηση
+media-dimension =
+ .value = Διαστάσεις:
+media-long-desc =
+ .value = Μακρά περιγραφή:
+media-save-as =
+ .label = Αποθήκευση ως…
+ .accesskey = ω
+media-save-image-as =
+ .label = Αποθήκευση ως…
+ .accesskey = ω
+perm-tab =
+ .label = Δικαιώματα
+ .accesskey = Δ
+permissions-for =
+ .value = Δικαιώματα για:
+security-tab =
+ .label = Ασφάλεια
+ .accesskey = σ
+security-view =
+ .label = Προβολή πιστοποιητικού
+ .accesskey = β
+security-view-unknown = Άγνωστη
+ .value = Άγνωστη
+security-view-identity =
+ .value = Ταυτότητα ιστοσελίδας
+security-view-identity-owner =
+ .value = Ιδιοκτήτης:
+security-view-identity-domain =
+ .value = Ιστοσελίδα:
+security-view-identity-verifier =
+ .value = Επαληθεύτηκε από:
+security-view-identity-validity =
+ .value = Λήγει στις:
+security-view-privacy =
+ .value = Απόρρητο & ιστορικό
+security-view-privacy-history-value = Έχω επισκεφθεί αυτή την ιστοσελίδα στο παρελθόν;
+security-view-privacy-sitedata-value = Αυτή η ιστοσελίδα αποθηκεύει πληροφορίες στον υπολογιστή μου;
+security-view-privacy-clearsitedata =
+ .label = Εκκαθάριση cookies και δεδομένων ιστοσελίδων
+ .accesskey = Ε
+security-view-privacy-passwords-value = Έχω αποθηκεύσει κωδικούς πρόσβασης για αυτή την ιστοσελίδα;
+security-view-privacy-viewpasswords =
+ .label = Προβολή αποθηκευμένων κωδικών πρόσβασης
+ .accesskey = λ
+security-view-technical =
+ .value = Τεχνικές λεπτομέρειες
+help-button =
+ .label = Βοήθεια
+
+## These strings are used to tell the user if the website is storing cookies
+## and data on the users computer in the security tab of pageInfo
+## Variables:
+## $value (number) - Amount of data being stored
+## $unit (string) - The unit of data being stored (Usually KB)
+
+security-site-data-cookies = Ναι, cookies και { $value } { $unit } δεδομένων ιστοσελίδων
+security-site-data-only = Ναι, { $value } { $unit } δεδομένων ιστοσελίδων
+security-site-data-cookies-only = Ναι, cookies
+security-site-data-no = Όχι
+image-size-unknown = Άγνωστο
+page-info-not-specified =
+ .value = Δεν έχει καθοριστεί
+not-set-alternative-text = Δεν έχει καθοριστεί
+not-set-date = Δεν έχει καθοριστεί
+media-img = Εικόνα
+media-bg-img = Φόντο
+media-border-img = Περίγραμμα
+media-list-img = Κουκκίδα
+media-cursor = Κέρσορας
+media-object = Αντικείμενο
+media-embed = Ενσωμάτωση
+media-link = Εικονίδιο
+media-input = Είσοδος
+media-video = Βίντεο
+media-audio = Ήχος
+saved-passwords-yes = Ναι
+saved-passwords-no = Όχι
+no-page-title =
+ .value = Σελίδα χωρίς τίτλο:
+general-quirks-mode =
+ .value = Λειτουργία συμβατότητας
+general-strict-mode =
+ .value = Λειτουργία σύμφωνα με τα πρότυπα
+page-info-security-no-owner =
+ .value = Αυτή η ιστοσελίδα δεν παρέχει πληροφορίες ιδιοκτησίας.
+media-select-folder = Επιλέξτε ένα φάκελο για αποθήκευση εικόνων
+media-unknown-not-cached =
+ .value = Άγνωστο (όχι σε μνήμη cache)
+permissions-use-default =
+ .label = Χρήση προεπιλογής
+security-no-visits = Όχι
+# This string is used to display the number of meta tags
+# in the General Tab
+# Variables:
+# $tags (number) - The number of meta tags
+general-meta-tags =
+ .value =
+ { $tags ->
+ [one] Μεταδεδομένα (1 ετικέτα)
+ *[other] Μεταδεδομένα ({ $tags } ετικέτες)
+ }
+# This string is used to display the number of times
+# the user has visited the website prior
+# Variables:
+# $visits (number) - The number of previous visits
+security-visits-number =
+ { $visits ->
+ [0] Όχι
+ [one] Ναι, μια φορά
+ *[other] Ναι, { $visits } φορές
+ }
+# This string is used to display the size of a media file
+# Variables:
+# $kb (number) - The size of an image in Kilobytes
+# $bytes (number) - The size of an image in Bytes
+properties-general-size =
+ .value =
+ { $bytes ->
+ [one] { $kb } KB ({ $bytes } byte)
+ *[other] { $kb } KB ({ $bytes } bytes)
+ }
+# This string is used to display the type and number
+# of frames of a animated image
+# Variables:
+# $type (string) - The type of a animated image
+# $frames (number) - The number of frames in an animated image
+media-animated-image-type =
+ .value =
+ { $frames ->
+ [one] Εικόνα { $type } (κινούμενη, { $frames } καρέ)
+ *[other] Εικόνα { $type } (κινούμενη, { $frames } καρέ)
+ }
+# This string is used to display the type of
+# an image
+# Variables:
+# $type (string) - The type of an image
+media-image-type =
+ .value = Εικόνα { $type }
+# This string is used to display the size of a scaled image
+# in both scaled and unscaled pixels
+# Variables:
+# $dimx (number) - The horizontal size of an image
+# $dimy (number) - The vertical size of an image
+# $scaledx (number) - The scaled horizontal size of an image
+# $scaledy (number) - The scaled vertical size of an image
+media-dimensions-scaled =
+ .value = { $dimx }px × { $dimy }px (κλιμακώθηκε σε { $scaledx }px × { $scaledy }px)
+# This string is used to display the size of an image in pixels
+# Variables:
+# $dimx (number) - The horizontal size of an image
+# $dimy (number) - The vertical size of an image
+media-dimensions =
+ .value = { $dimx }px × { $dimy }px
+# This string is used to display the size of a media
+# file in kilobytes
+# Variables:
+# $size (number) - The size of the media file in kilobytes
+media-file-size = { $size } KB
+# This string is used to display the website name next to the
+# "Block Images" checkbox in the media tab
+# Variables:
+# $website (string) - The website name
+media-block-image =
+ .label = Φραγή εικόνων από { $website }
+ .accesskey = α
+# This string is used to display the URL of the website on top of the
+# pageInfo dialog box
+# Variables:
+# $website (string) — The url of the website pageInfo is getting info for
+page-info-page =
+ .title = Πληροφορίες σελίδας - { $website }
+page-info-frame =
+ .title = Πληροφορίες πλαισίου - { $website }
diff --git a/l10n-el/browser/browser/panicButton.ftl b/l10n-el/browser/browser/panicButton.ftl
new file mode 100644
index 0000000000..e8b81a1403
--- /dev/null
+++ b/l10n-el/browser/browser/panicButton.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/.
+
+panic-button-open-new-window = Θα ανοίξει ένα νέο παράθυρο
+panic-button-undo-warning = Δεν είναι δυνατή η αναίρεση αυτής της ενέργειας.
+panic-button-forget-button =
+ .label = Διαγραφή!
+
+## These strings are combined to form a complete sentence starting with
+## panic-main-timeframe-desc. For example: "Forget the last: Five minutes".
+## Please ensure that this remains the case in the translation.
+
+panic-main-timeframe-desc = Διαγραφή των τελευταίων:
+panic-button-5min =
+ .label = Πέντε λεπτών
+panic-button-2hr =
+ .label = Δύο ωρών
+panic-button-day =
+ .label = 24 ωρών
+
+## These strings are combined to form a complete sentence starting with
+## panic-button-action-desc. For example: "Proceeding will: Delete Recent Cookies".
+## Please ensure that this remains the case in the translation.
+## Note also that some strings include <strong> tags for emphasis on the
+## words "Cookies", "History", "Tabs" and "Windows". The translation should do the same.
+
+panic-button-action-desc = Αν συνεχίσετε:
+panic-button-delete-cookies = Θα διαγραφούν τα πρόσφατα <strong>cookies</strong>
+panic-button-delete-history = Θα διαγραφεί το πρόσφατο <strong>ιστορικό</strong>
+panic-button-delete-tabs-and-windows = Θα κλείσουν όλες οι <strong>καρτέλες</strong> και τα <strong>παράθυρα</strong>
diff --git a/l10n-el/browser/browser/places.ftl b/l10n-el/browser/browser/places.ftl
new file mode 100644
index 0000000000..830911e055
--- /dev/null
+++ b/l10n-el/browser/browser/places.ftl
@@ -0,0 +1,71 @@
+# 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/.
+
+places-open =
+ .label = Άνοιγμα
+ .accesskey = ν
+places-open-tab =
+ .label = Άνοιγμα σε νέα καρτέλα
+ .accesskey = κ
+places-open-all-in-tabs =
+ .label = Άνοιγμα όλων σε καρτέλες
+ .accesskey = ν
+places-open-window =
+ .label = Άνοιγμα σε νέο παράθυρο
+ .accesskey = π
+places-open-private-window =
+ .label = Άνοιγμα σε νέο ιδιωτικό παράθυρο
+ .accesskey = θ
+places-new-bookmark =
+ .label = Νέος σελιδοδείκτης…
+ .accesskey = σ
+places-new-folder-contextmenu =
+ .label = Νέος φάκελος…
+ .accesskey = φ
+places-new-folder =
+ .label = Νέος φάκελος…
+ .accesskey = φ
+places-new-separator =
+ .label = Νέο διαχωριστικό
+ .accesskey = χ
+places-view =
+ .label = Προβολή
+ .accesskey = β
+places-by-date =
+ .label = Κατά ημερομηνία
+ .accesskey = η
+places-by-site =
+ .label = Κατά ιστοσελίδα
+ .accesskey = σ
+places-by-most-visited =
+ .label = Κατά συχνότητα
+ .accesskey = χ
+places-by-last-visited =
+ .label = Κατά τελευταία επίσκεψη
+ .accesskey = τ
+places-by-day-and-site =
+ .label = Κατά ημερομηνία και σελίδα
+ .accesskey = μ
+places-history-search =
+ .placeholder = Αναζήτηση ιστορικού
+places-bookmarks-search =
+ .placeholder = Αναζήτηση σελιδοδεικτών
+places-delete-domain-data =
+ .label = Χωρίς απομνημόνευση σελίδας
+ .accesskey = Χ
+places-sortby-name =
+ .label = Ταξινόμηση κατά όνομα
+ .accesskey = ι
+places-properties =
+ .label = Ιδιότητες
+ .accesskey = δ
+# Managed bookmarks are created by an administrator and cannot be changed by the user.
+managed-bookmarks =
+ .label = Διαχειριζόμενοι σελιδοδείκτες
+# This label is used when a managed bookmarks folder doesn't have a name.
+managed-bookmarks-subfolder =
+ .label = Yποφάκελος
+# This label is used for the "Other Bookmarks" folder that appears in the bookmarks toolbar.
+other-bookmarks-folder =
+ .label = Άλλοι σελιδοδείκτες
diff --git a/l10n-el/browser/browser/policies/policies-descriptions.ftl b/l10n-el/browser/browser/policies/policies-descriptions.ftl
new file mode 100644
index 0000000000..71f8f1cde9
--- /dev/null
+++ b/l10n-el/browser/browser/policies/policies-descriptions.ftl
@@ -0,0 +1,114 @@
+# 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/.
+
+
+## The Enterprise Policies feature is aimed at system administrators
+## who want to deploy these settings across several Firefox installations
+## all at once. This is traditionally done through the Windows Group Policy
+## feature, but the system also supports other forms of deployment.
+## These are short descriptions for individual policies, to be displayed
+## in the documentation section in about:policies.
+
+policy-3rdparty = Ορίστε πολιτικές που μπορούν να προσπελάσουν τα WebExtensions μέσω του chrome.storage.managed.
+policy-AppAutoUpdate = Ενεργοποίηση ή απενεργοποίηση αυτόματων ενημερώσεων εφαρμογής.
+policy-AppUpdateURL = Ορισμός προσαρμοσμένου URL ενημέρωσης εφαρμογής.
+policy-Authentication = Ρύθμιση ενσωματωμένης πιστοποίησης για ιστοσελίδες που την υποστηρίζουν.
+policy-BlockAboutAddons = Αποκλεισμός πρόσβασης στη Διαχείριση προσθέτων (about:addons).
+policy-BlockAboutConfig = Αποκλεισμός πρόσβασης στη σελίδα about:config.
+policy-BlockAboutProfiles = Αποκλεισμός πρόσβασης στη σελίδα about:profiles.
+policy-BlockAboutSupport = Αποκλεισμός πρόσβασης στη σελίδα about:support.
+policy-Bookmarks = Δημιουργία σελιδοδεικτών στη γραμμή σελιδοδεικτών, στο μενού σελιδοδεικτών ή σε ένα συγκεκριμένο φάκελο μέσα τους.
+policy-CaptivePortal = Ενεργοποίηση ή απενεργοποίηση υποστήριξης captive portal.
+policy-CertificatesDescription = Προσθήκη πιστοποιητικών ή χρήση ενσωματωμένων πιστοποιητικών.
+policy-Cookies = Αποδοχή ή άρνηση αιτημάτων αποθήκευσης cookies.
+policy-DisabledCiphers = Απενεργοποίηση κρυπτογράφησης.
+policy-DefaultDownloadDirectory = Ορισμός προεπιλεγμένου καταλόγου λήψης.
+policy-DisableAppUpdate = Αποτροπή ενημέρωσης προγράμματος περιήγησης.
+policy-DisableBuiltinPDFViewer = Απενεργοποίηση PDF.js, του ενσωματωμένου προγράμματος προβολής PDF στο { -brand-short-name }.
+policy-DisableDefaultBrowserAgent = Αποτροπή οποιασδήποτε ενέργειας από την προεπιλεγμένη λειτουργία προγράμματος περιήγησης. Ισχύει μόνο για Windows· οι άλλες πλατφόρμες δεν έχουν τέτοια υπηρεσία.
+policy-DisableDeveloperTools = Αποκλεισμός πρόσβασης στα εργαλεία προγραμματιστή.
+policy-DisableFeedbackCommands = Απενεργοποίηση εντολών για αποστολή σχολίων από το μενού "Βοήθεια" (Υποβολή σχολίων και αναφορά παραπλανητικής ιστοσελίδας).
+policy-DisableFirefoxAccounts = Απενεργοποίηση υπηρεσιών { -fxaccount-brand-name }, καθώς και του Sync.
+# Firefox Screenshots is the name of the feature, and should not be translated.
+policy-DisableFirefoxScreenshots = Απενεργοποίηση λειτουργίας Firefox Screenshots.
+policy-DisableFirefoxStudies = Αποτροπή εκτέλεσης μελετών του { -brand-short-name }.
+policy-DisableForgetButton = Αποτροπή πρόσβασης στο κουμπί "Διαγραφή".
+policy-DisableFormHistory = Χωρίς διατήρηση ιστορικού αναζήτησης και φορμών.
+policy-DisableMasterPasswordCreation = Αν αληθεύει, δεν μπορεί να δημιουργηθεί κύριος κωδικός πρόσβασης.
+policy-DisablePrimaryPasswordCreation = Αν είναι αληθές, δεν είναι δυνατή η δημιουργία κύριου κωδικού πρόσβασης.
+policy-DisablePasswordReveal = Να μην επιτρέπεται η αποκάλυψη κωδικών πρόσβασης σε αποθηκευμένες συνδέσεις.
+policy-DisablePocket = Απενεργοποίηση λειτουργίας για αποθήκευση ιστοσελίδων στο Pocket.
+policy-DisablePrivateBrowsing = Απενεργοποίηση ιδιωτικής περιήγησης.
+policy-DisableProfileImport = Απενεργοποίηση της εντολής μενού για εισαγωγή δεδομένων από άλλο πρόγραμμα περιήγησης.
+policy-DisableProfileRefresh = Απενεργοποίηση του κουμπιού ανανέωσης { -brand-short-name } στη σελίδα about:support.
+policy-DisableSafeMode = Απενεργοποίηση της λειτουργίας για επανεκκίνηση στην Ασφαλή λειτουργία. Σημείωση: το πλήκτρο Shift για είσοδο στην Ασφαλή λειτουργία μπορεί να απενεργοποιηθεί μόνο στα Windows με την Πολιτική ομάδας.
+policy-DisableSecurityBypass = Αποτροπή παράκαμψης ορισμένων προειδοποιήσεων ασφαλείας από το χρήστη.
+policy-DisableSetAsDesktopBackground = Απενεργοποίηση της εντολής μενού "Ορισμός ως φόντο επιφάνειας εργασίας" για εικόνες.
+policy-DisableSystemAddonUpdate = Αποτροπή εγκατάστασης και ενημέρωσης προσθέτων συστήματος από το πρόγραμμα περιήγησης.
+policy-DisableTelemetry = Απενεργοποίηση τηλεμετρίας.
+policy-DisplayBookmarksToolbar = Προβολή της γραμμής σελιδοδεικτών από προεπιλογή.
+policy-DisplayMenuBar = Προβολή γραμμής μενού από προεπιλογή.
+policy-DNSOverHTTPS = Ρύθμιση παραμέτρων DNS over HTTPS.
+policy-DontCheckDefaultBrowser = Απενεργοποίηση ελέγχου για το προεπιλεγμένο πρόγραμμα περιήγησης κατά την εκκίνηση.
+policy-DownloadDirectory = Ορισμός και κλείδωμα καταλόγου λήψης.
+# “lock” means that the user won’t be able to change this setting
+policy-EnableTrackingProtection = Ενεργοποίηση ή απενεργοποίηση φραγής περιεχομένου και προαιρετικό κλείδωμα.
+# “lock” means that the user won’t be able to change this setting
+policy-EncryptedMediaExtensions = Ενεργοποίηση ή απενεργοποίηση κρυπτογραφημένων επεκτάσεων πολυμέσων και προαιρετικό κλείδωμα.
+# A “locked” extension can’t be disabled or removed by the user. This policy
+# takes 3 keys (“Install”, ”Uninstall”, ”Locked”), you can either keep them in
+# English or translate them as verbs.
+policy-Extensions = Εγκατάσταση, απεγκατάσταση ή κλείδωμα επεκτάσεων. Η επιλογή εγκατάστασης λαμβάνει τα URLs ή τις διαδρομές ως παραμέτρους. Οι επιλογές απεγκατάστασης και κλειδώματος λαμβάνουν IDs επεκτάσεων.
+policy-ExtensionSettings = Διαχείριση όλων των πτυχών της εγκατάστασης επεκτάσεων.
+policy-ExtensionUpdate = Ενεργοποίηση ή απενεργοποίηση αυτόματων ενημερώσεων επεκτάσεων.
+policy-FirefoxHome = Ρύθμιση παραμέτρων της Αρχικής Firefox.
+policy-FlashPlugin = Αποδοχή ή απόρριψη χρήσης του αρθρώματος Flash.
+policy-Handlers = Ρύθμιση παραμέτρων χειριστών προεπιλεγμένης εφαρμογής.
+policy-HardwareAcceleration = Αν είναι ψευδές, απενεργοποίηση επιτάχυνσης υλικού.
+# “lock” means that the user won’t be able to change this setting
+policy-Homepage = Ορισμός και προαιρετικό κλείδωμα της αρχικής σελίδας.
+policy-InstallAddonsPermission = Αποδοχή εγκατάστασης προσθέτων από ορισμένες ιστοσελίδες.
+policy-LegacyProfiles = Απενεργοποίηση της λειτουργίας που απαιτεί ξεχωριστό προφίλ για κάθε εγκατάσταση.
+
+## Do not translate "SameSite", it's the name of a cookie attribute.
+
+policy-LegacySameSiteCookieBehaviorEnabled = Ενεργοποίηση προεπιλεγμένης ρύθμισης συμπεριφοράς του παλαιού SameSite cookie.
+policy-LegacySameSiteCookieBehaviorEnabledForDomainList = Επαναφορά στην παλαιά συμπεριφορά SameSite για cookies σε καθορισμένες ιστοσελίδες.
+
+##
+
+policy-LocalFileLinks = Να επιτρέπεται σε συγκεκριμένες ιστοσελίδες η σύνδεση με τοπικά αρχεία.
+policy-ManagedBookmarks = Ρυθμίζει μια λίστα σελιδοδεικτών που διαχειρίζεται ένας διαχειριστής και δεν μπορεί να τροποποιηθεί από το χρήστη.
+policy-MasterPassword = Απαίτηση ή αποτροπή χρήσης κύριου κωδικού πρόσβασης.
+policy-ManualAppUpdateOnly = Αποδοχή μόνο χειροκίνητων ενημερώσεων χωρίς ειδοποίηση των χρηστών σχετικά με τις ενημερώσεις.
+policy-PrimaryPassword = Απαίτηση ή αποτροπή χρήσης κύριου κωδικού πρόσβασης.
+policy-NetworkPrediction = Ενεργοποίηση ή απενεργοποίηση πρόβλεψης δικτύου (προφόρτωση DNS).
+policy-NewTabPage = Ενεργοποίηση ή απενεργοποίηση της σελίδας νέας καρτέλας.
+policy-NoDefaultBookmarks = Απενεργοποίηση δημιουργίας των προεπιλεγμένων σελιδοδεικτών που έρχονται με το { -brand-short-name }, καθώς και των "έξυπνων" σελιδοδεικτών (Συχνές επισκέψεις, Πρόσφατες ετικέτες). Σημείωση: η πολιτική υλοποιείται μόνο αν χρησιμοποιηθεί πριν την πρώτη εκτέλεση του προφίλ.
+policy-OfferToSaveLogins = Εξαναγκασμός της ρύθμισης για να επιτρέπεται στο { -brand-short-name } η πρόταση για απομνημόνευση αποθηκευμένων συνδέσεων και κωδικών πρόσβασης. Αποδεκτές η τιμή "αληθές" και η τιμή "ψευδές".
+policy-OfferToSaveLoginsDefault = Ορισμός προεπιλεγμένης τιμής για να επιτρέπεται στο { -brand-short-name } η πρόταση για απομνημόνευση αποθηκευμένων συνδέσεων και κωδικών πρόσβασης. Είναι αποδεκτές οι τιμές true και false.
+policy-OverrideFirstRunPage = Παράκαμψη της σελίδας πρώτης εκτέλεσης. Αφήστε αυτή την πολιτική κενή αν θέλετε να απενεργοποιήσετε τη σελίδα πρώτης εκτέλεσης.
+policy-OverridePostUpdatePage = Παράκαμψη της σελίδας "Τι νέο υπάρχει" μετά την ενημέρωση. Αφήστε αυτή την πολιτική κενή αν θέλετε να απενεργοποιήσετε τη σελίδα μετά την ενημέρωση.
+policy-PasswordManagerEnabled = Ενεργοποίηση αποθήκευσης κωδικών πρόσβασης στη διαχείριση κωδικών πρόσβασης.
+# PDF.js and PDF should not be translated
+policy-PDFjs = Απενεργοποίηση ή ρύθμιση του PDF.js, του ενσωματωμένου προγράμματος προβολής PDF στο { -brand-short-name }.
+policy-Permissions2 = Ρύθμιση δικαιωμάτων για κάμερα, μικρόφωνο, τοποθεσία, ειδοποιήσεις και αυτόματη αναπαραγωγή.
+policy-PictureInPicture = Ενεργοποίηση ή απενεργοποίηση Εικόνας-εντός-εικόνας.
+policy-PopupBlocking = Αποδοχή αναδυόμενων από ορισμένες ιστοσελίδες, από προεπιλογή.
+policy-Preferences = Ορισμός και κλείδωμα τιμής ενός υποσυνόλου προτιμήσεων.
+policy-PromptForDownloadLocation = Ερώτηση για την τοποθεσία αποθήκευσης αρχείων κατά τη λήψη.
+policy-Proxy = Προσαρμογή ρυθμίσεων μεσολάβησης.
+policy-RequestedLocales = Ορισμός λίστας απαιτούμενων γλωσσών για την εφαρμογή σε σειρά προτίμησης.
+policy-SanitizeOnShutdown2 = Εκκαθάριση δεδομένων πλοήγησης κατά τον τερματισμό λειτουργίας.
+policy-SearchBar = Ορίστε την προεπιλεγμένη τοποθεσία της γραμμής αναζήτησης. Ο χρήστης θα μπορεί να την προσαρμόσει.
+policy-SearchEngines = Διαμόρφωση ρυθμίσεων μηχανής αναζήτησης. Αυτή η πολιτική είναι διαθέσιμη μόνο στην έκδοση εκτεταμένης υποστήριξης (ESR).
+policy-SearchSuggestEnabled = Ενεργοποίηση ή απενεργοποίηση προτάσεων αναζήτησης.
+# For more information, see https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/PKCS11/Module_Installation
+policy-SecurityDevices = Εγκατάσταση προσθέτων PKCS #11.
+policy-SSLVersionMax = Ορισμός μέγιστης έκδοσης SSL.
+policy-SSLVersionMin = Ορισμός ελάχιστης έκδοσης SSL.
+policy-SupportMenu = Προσθήκη προσαρμοσμένου στοιχείου μενού υποστήριξης στο μενού βοήθειας.
+policy-UserMessaging = Να μην εμφανίζονται ορισμένα μηνύματα στο χρήστη.
+# “format” refers to the format used for the value of this policy.
+policy-WebsiteFilter = Αποκλεισμός επίσκεψης σε ιστοσελίδες. Δείτε την τεκμηρίωση για περισσότερες λεπτομέρειες σχετικά με τη μορφή.
diff --git a/l10n-el/browser/browser/preferences/addEngine.ftl b/l10n-el/browser/browser/preferences/addEngine.ftl
new file mode 100644
index 0000000000..95a38d70ff
--- /dev/null
+++ b/l10n-el/browser/browser/preferences/addEngine.ftl
@@ -0,0 +1,22 @@
+# 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/.
+
+add-engine-window =
+ .title = Προσθήκη μηχανής αναζήτησης
+ .style = width: 32em;
+add-engine-button = Προσθήκη προσαρμοσμένης μηχανής
+add-engine-name = Όνομα μηχανής αναζήτησης
+add-engine-alias = Ψευδώνυμο
+add-engine-url = URL μηχανής, χρησιμοποιήστε το %s αντί του όρου αναζήτησης
+add-engine-cancel =
+ .label = Ακύρωση
+ .accesskey = C
+add-engine-ok =
+ .label = Προσθήκη μηχανής
+ .accesskey = A
+add-engine-dialog =
+ .buttonlabelaccept = Προσθήκη μηχανής
+ .buttonaccesskeyaccept = A
+engine-name-exists = Υπάρχει ήδη μια μηχανή με το ίδιο όνομα
+engine-alias-exists = Υπάρχει ήδη μια μηχανή με αυτό το ψευδώνυμο
diff --git a/l10n-el/browser/browser/preferences/applicationManager.ftl b/l10n-el/browser/browser/preferences/applicationManager.ftl
new file mode 100644
index 0000000000..3ff24fa6c2
--- /dev/null
+++ b/l10n-el/browser/browser/preferences/applicationManager.ftl
@@ -0,0 +1,25 @@
+# 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/.
+
+app-manager-window =
+ .title = Λεπτομέρειες εφαρμογής
+ .style = width: 33em; min-height: 20em;
+
+app-manager-remove =
+ .label = Αφαίρεση
+ .accesskey = ρ
+
+# Variables:
+# $type (String) - the URI scheme of the link (e.g. mailto:)
+app-manager-handle-protocol = Οι ακόλουθες εφαρμογές μπορούν να χρησιμοποιηθούν για το χειρισμό { $type } συνδέσμων.
+
+# Variables:
+# $type (String) - the MIME type (e.g. application/binary)
+app-manager-handle-file = Οι ακόλουθες εφαρμογές μπορούν να χρησιμοποιηθούν για το χειρισμό { $type } περιεχομένου.
+
+## These strings are followed, on a new line,
+## by the URL or path of the application.
+
+app-manager-web-app-info = Αυτή η διαδικτυακή εφαρμογή φιλοξενείται στο:
+app-manager-local-app-info = Αυτή η εφαρμογή βρίσκεται στο:
diff --git a/l10n-el/browser/browser/preferences/blocklists.ftl b/l10n-el/browser/browser/preferences/blocklists.ftl
new file mode 100644
index 0000000000..92bf9f557c
--- /dev/null
+++ b/l10n-el/browser/browser/preferences/blocklists.ftl
@@ -0,0 +1,33 @@
+# 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/.
+
+blocklist-window =
+ .title = Λίστες αποκλεισμού
+ .style = width: 55em
+blocklist-description = Επιλέξτε τη λίστα που χρησιμοποιεί το { -brand-short-name } για να αποκλείσει διαδικτυακούς ιχνηλάτες. Οι λίστες παρέχονται από το <a data-l10n-name="disconnect-link" title="Disconnect">Disconnect</a>.
+blocklist-close-key =
+ .key = w
+blocklist-treehead-list =
+ .label = Λίστα
+blocklist-button-cancel =
+ .label = Ακύρωση
+ .accesskey = Α
+blocklist-button-ok =
+ .label = Αποθήκευση αλλαγών
+ .accesskey = θ
+blocklist-dialog =
+ .buttonlabelaccept = Αποθήκευση αλλαγών
+ .buttonaccesskeyaccept = θ
+# This template constructs the name of the block list in the block lists dialog.
+# It combines the list name and description.
+# e.g. "Standard (Recommended). This list does a pretty good job."
+#
+# Variables:
+# $listName {string, "Standard (Recommended)."} - List name.
+# $description {string, "This list does a pretty good job."} - Description of the list.
+blocklist-item-list-template = { $listName } { $description }
+blocklist-item-moz-std-listName = Λίστα αποκλεισμού επιπέδου 1 (Προτείνεται).
+blocklist-item-moz-std-description = Επιτρέπει μερικούς ιχνηλάτες για να λειτουργούν περισσότερες ιστοσελίδες.
+blocklist-item-moz-full-listName = Λίστα αποκλεισμού επιπέδου 2
+blocklist-item-moz-full-description = Αποκλείει κάθε ιχνηλάτη που ανιχνεύεται. Μερικές ιστοσελίδες ή περιεχόμενο ενδέχεται να μην φορτώνονται κανονικά.
diff --git a/l10n-el/browser/browser/preferences/clearSiteData.ftl b/l10n-el/browser/browser/preferences/clearSiteData.ftl
new file mode 100644
index 0000000000..c3fa4a3f1c
--- /dev/null
+++ b/l10n-el/browser/browser/preferences/clearSiteData.ftl
@@ -0,0 +1,53 @@
+# 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/.
+
+clear-site-data-window =
+ .title = Εκκαθάριση δεδομένων
+ .style = width: 35em
+clear-site-data-description = Η εκκαθάριση όλων των cookies και των δεδομένων ιστοσελίδων που αποθηκεύονται από το { -brand-short-name } ενδέχεται να σάς αποσυνδέσει από ιστοσελίδες και να αφαιρέσει διαδικτυακό περιεχόμενο εκτός σύνδεσης. Η εκκαθάριση της προσωρινής μνήμης δεν θα επηρεάσει τις συνδέσεις σας.
+clear-site-data-close-key =
+ .key = w
+# The parameters in parentheses in this string describe disk usage
+# in the format ($amount $unit), e.g. "Cookies and Site Data (24 KB)"
+# Variables:
+# $amount (Number) - Amount of site data currently stored on disk
+# $unit (String) - Abbreviation of the unit that $amount is in, e.g. "MB"
+clear-site-data-cookies-with-data =
+ .label = Cookies και δεδομένα ιστοσελίδων ({ $amount } { $unit })
+ .accesskey = ι
+# This string is a placeholder for while the data used to fill
+# clear-site-data-cookies-with-data is loading. This placeholder is usually
+# only shown for a very short time (< 1s), so it should be very similar
+# or the same as clear-site-data-cookies-with-data (except the amount and unit),
+# to avoid flickering.
+clear-site-data-cookies-empty =
+ .label = Cookies και δεδομένα ιστοσελίδων
+ .accesskey = ι
+clear-site-data-cookies-info = Ενδέχεται να αποσυνδεθείτε από τις ιστοσελίδες εάν γίνει εκκαθάριση
+# The parameters in parentheses in this string describe disk usage
+# in the format ($amount $unit), e.g. "Cached Web Content (24 KB)"
+# Variables:
+# $amount (Number) - Amount of cache currently stored on disk
+# $unit (String) - Abbreviation of the unit that $amount is in, e.g. "MB"
+clear-site-data-cache-with-data =
+ .label = Προσωρινό περιεχόμενο διαδικτύου ({ $amount } { $unit })
+ .accesskey = Π
+# This string is a placeholder for while the data used to fill
+# clear-site-data-cache-with-data is loading. This placeholder is usually
+# only shown for a very short time (< 1s), so it should be very similar
+# or the same as clear-site-data-cache-with-data (except the amount and unit),
+# to avoid flickering.
+clear-site-data-cache-empty =
+ .label = Προσωρινό περιεχόμενο διαδικτύου
+ .accesskey = Π
+clear-site-data-cache-info = Θα χρειαστεί εκ νέου φόρτωση εικόνων και δεδομένων σε ιστοσελίδες
+clear-site-data-cancel =
+ .label = Ακύρωση
+ .accesskey = Α
+clear-site-data-clear =
+ .label = Εκκαθάριση
+ .accesskey = κ
+clear-site-data-dialog =
+ .buttonlabelaccept = Εκκαθάριση
+ .buttonaccesskeyaccept = κ
diff --git a/l10n-el/browser/browser/preferences/colors.ftl b/l10n-el/browser/browser/preferences/colors.ftl
new file mode 100644
index 0000000000..6a84c26ae3
--- /dev/null
+++ b/l10n-el/browser/browser/preferences/colors.ftl
@@ -0,0 +1,48 @@
+# 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/.
+
+colors-window =
+ .title = Χρώματα
+ .style =
+ { PLATFORM() ->
+ [macos] width: 44em
+ *[other] width: 44em
+ }
+
+colors-close-key =
+ .key = w
+
+colors-page-override = Αντικατάσταση καθορισμένων χρωμάτων σελίδας με τις παραπάνω επιλογές
+ .accesskey = Α
+
+colors-page-override-option-always =
+ .label = Πάντα
+colors-page-override-option-auto =
+ .label = Μόνο με θέματα υψηλής αντίθεσης
+colors-page-override-option-never =
+ .label = Ποτέ
+
+colors-text-and-background = Κείμενο και παρασκήνιο
+
+colors-text-header = Κείμενο
+ .accesskey = Κ
+
+colors-background = Παρασκήνιο
+ .accesskey = Π
+
+colors-use-system =
+ .label = Χρήση χρωμάτων συστήματος
+ .accesskey = σ
+
+colors-underline-links =
+ .label = Υπογράμμιση συνδέσμων
+ .accesskey = Υ
+
+colors-links-header = Χρώμα συνδέσμων
+
+colors-unvisited-links = Σύνδεσμοι που δεν έχετε επισκεφθεί
+ .accesskey = Σ
+
+colors-visited-links = Σύνδεσμοι που έχετε επισκεφθεί
+ .accesskey = Ε
diff --git a/l10n-el/browser/browser/preferences/connection.ftl b/l10n-el/browser/browser/preferences/connection.ftl
new file mode 100644
index 0000000000..67ce526c0f
--- /dev/null
+++ b/l10n-el/browser/browser/preferences/connection.ftl
@@ -0,0 +1,88 @@
+# 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/.
+
+connection-window =
+ .title = Ρυθμίσεις σύνδεσης
+ .style =
+ { PLATFORM() ->
+ [macos] width: 44em
+ *[other] width: 49em
+ }
+connection-close-key =
+ .key = w
+connection-disable-extension =
+ .label = Απενεργοποίηση επέκτασης
+connection-proxy-configure = Ρύθμιση διακομιστή μεσολάβησης για πρόσβαση στο διαδίκτυο
+connection-proxy-option-no =
+ .label = Χωρίς διαμεσολαβητή
+ .accesskey = Χ
+connection-proxy-option-system =
+ .label = Χρήση ρυθμίσεων διαμεσολαβητή συστήματος
+ .accesskey = ω
+connection-proxy-option-auto =
+ .label = Αυτόματος εντοπισμός ρυθμίσεων διαμεσολαβητή για αυτό το δίκτυο
+ .accesskey = υ
+connection-proxy-option-manual =
+ .label = Χειροκίνητη ρύθμιση διαμεσολαβητή
+ .accesskey = χ
+connection-proxy-http = Διαμεσολαβητής HTTP
+ .accesskey = λ
+connection-proxy-http-port = Θύρα
+ .accesskey = Θ
+connection-proxy-http-sharing =
+ .label = Χρήση αυτού του διαμεσολαβητή και για FTP και HTTPS
+ .accesskey = σ
+connection-proxy-https = Διαμεσολαβητής HTTPS
+ .accesskey = H
+connection-proxy-ssl-port = Θύρα
+ .accesskey = ύ
+connection-proxy-ftp = Διαμεσολαβητής FTP
+ .accesskey = F
+connection-proxy-ftp-port = Θύρα
+ .accesskey = ρ
+connection-proxy-socks = Σύστημα SOCKS
+ .accesskey = C
+connection-proxy-socks-port = Θύρα
+ .accesskey = α
+connection-proxy-socks4 =
+ .label = SOCKS v4
+ .accesskey = k
+connection-proxy-socks5 =
+ .label = SOCKS v5
+ .accesskey = v
+connection-proxy-noproxy = Χωρίς διαμεσολαβητή για
+ .accesskey = χ
+connection-proxy-noproxy-desc = Για παράδειγμα: .mozilla.org, .net.nz, 192.168.1.0/24
+# Do not translate localhost, 127.0.0.1 and ::1.
+connection-proxy-noproxy-localhost-desc = Οι συνδέσεις στο localhost, το 127.0.0.1 και το ::1 δεν προωθούνται ποτέ μέσω διακομιστή μεσολάβησης.
+# Do not translate "localhost", "127.0.0.1/8" and "::1". (You can translate "and".)
+connection-proxy-noproxy-localhost-desc-2 = Οι συνδέσεις στο localhost, 127.0.0.1/8 και ::1, δεν γίνονται ποτέ μέσω διακομιστή μεσολάβησης.
+connection-proxy-autotype =
+ .label = URL αυτόματης ρύθμισης διαμεσολαβητή
+ .accesskey = α
+connection-proxy-reload =
+ .label = Ανανέωση
+ .accesskey = ν
+connection-proxy-autologin =
+ .label = Να μην ζητείται έλεγχος ταυτοποίησης αν είναι αποθηκευμένος ο κωδικός
+ .accesskey = μ
+ .tooltip = Αυτή η επιλογή σας ταυτοποιεί σιωπηλά στους διαμεσολαβητές όταν έχετε αποθηκευμένα τα στοιχεία πρόσβασης για αυτούς. Θα ειδοποιηθείτε αν η ταυτοποίηση αποτύχει.
+connection-proxy-socks-remote-dns =
+ .label = Διαμεσολαβητής DNS κατά τη χρήση του SOCKS v5
+ .accesskey = d
+connection-dns-over-https =
+ .label = Ενεργοποίηση DNS over HTTPS
+ .accesskey = γ
+connection-dns-over-https-url-resolver = Χρήση παρόχου
+ .accesskey = Χ
+# Variables:
+# $name (String) - Display name or URL for the DNS over HTTPS provider
+connection-dns-over-https-url-item-default =
+ .label = { $name } (Προεπιλογή)
+ .tooltiptext = Χρήση του προεπιλεγμένου URL για επίλυση DNS αντί HTTPS
+connection-dns-over-https-url-custom =
+ .label = Προσαρμοσμένο
+ .accesskey = Π
+ .tooltiptext = Εισάγετε το προτιμώμενο URL σας για επίλυση DNS αντί HTTPS
+connection-dns-over-https-custom-label = Προσαρμοσμένο
diff --git a/l10n-el/browser/browser/preferences/containers.ftl b/l10n-el/browser/browser/preferences/containers.ftl
new file mode 100644
index 0000000000..f5edc36481
--- /dev/null
+++ b/l10n-el/browser/browser/preferences/containers.ftl
@@ -0,0 +1,87 @@
+# 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/.
+
+containers-window-new =
+ .title = Προσθήκη νέας θεματικής ενότητας
+ .style = width: 45em
+# Variables
+# $name (String) - Name of the container
+containers-window-update =
+ .title = Προτιμήσεις θεματικής ενότητας "{ $name }"
+ .style = width: 45em
+containers-window-close =
+ .key = w
+# This is a term to store style to be applied
+# on the three labels in the containers add/edit dialog:
+# - name
+# - icon
+# - color
+#
+# Using this term and referencing it in the `.style` attribute
+# of the three messages ensures that all three labels
+# will be aligned correctly.
+-containers-labels-style = min-width: 4rem
+containers-name-label = Όνομα
+ .accesskey = Ο
+ .style = { -containers-labels-style }
+containers-name-text =
+ .placeholder = Εισάγετε όνομα θεματικής ενότητας
+containers-icon-label = Εικονίδιο
+ .accesskey = Ε
+ .style = { -containers-labels-style }
+containers-color-label = Χρώμα
+ .accesskey = ρ
+ .style = { -containers-labels-style }
+containers-button-done =
+ .label = Τέλος
+ .accesskey = Τ
+containers-dialog =
+ .buttonlabelaccept = Τέλος
+ .buttonaccesskeyaccept = Τ
+containers-color-blue =
+ .label = Μπλε
+containers-color-turquoise =
+ .label = Τιρκουάζ
+containers-color-green =
+ .label = Πράσινο
+containers-color-yellow =
+ .label = Κίτρινο
+containers-color-orange =
+ .label = Πορτοκαλί
+containers-color-red =
+ .label = Κόκκινο
+containers-color-pink =
+ .label = Ροζ
+containers-color-purple =
+ .label = Μοβ
+containers-color-toolbar =
+ .label = Αντιστοίχιση με γραμμή εργαλείων
+containers-icon-fence =
+ .label = Περίφραξη
+containers-icon-fingerprint =
+ .label = Αποτύπωμα
+containers-icon-briefcase =
+ .label = Χαρτοφύλακας
+# String represents a money sign but currently uses a dollar sign
+# so don't change to local currency. See Bug 1291672.
+containers-icon-dollar =
+ .label = Σήμα δολαρίου
+containers-icon-cart =
+ .label = Καλάθι αγορών
+containers-icon-circle =
+ .label = Κουκκίδα
+containers-icon-vacation =
+ .label = Διακοπές
+containers-icon-gift =
+ .label = Δώρο
+containers-icon-food =
+ .label = Φαγητό
+containers-icon-fruit =
+ .label = Φρούτα
+containers-icon-pet =
+ .label = Κατοικίδιο
+containers-icon-tree =
+ .label = Δέντρο
+containers-icon-chill =
+ .label = Ξεκούραση
diff --git a/l10n-el/browser/browser/preferences/fonts.ftl b/l10n-el/browser/browser/preferences/fonts.ftl
new file mode 100644
index 0000000000..b1c12b2064
--- /dev/null
+++ b/l10n-el/browser/browser/preferences/fonts.ftl
@@ -0,0 +1,160 @@
+# 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/.
+
+fonts-window =
+ .title = Γραμματοσειρές
+
+fonts-window-close =
+ .key = w
+
+## Font groups by language
+
+fonts-langgroup-header = Γραμματοσειρές για
+ .accesskey = Γ
+
+fonts-langgroup-arabic =
+ .label = Αραβική
+fonts-langgroup-armenian =
+ .label = Αρμενική
+fonts-langgroup-bengali =
+ .label = Μπενγκάλι
+fonts-langgroup-simpl-chinese =
+ .label = Απλοποιημένη Κινεζική
+fonts-langgroup-trad-chinese-hk =
+ .label = Παραδοσιακή Κινεζική (Χονγκ Κονγκ)
+fonts-langgroup-trad-chinese =
+ .label = Παραδοσιακή Κινεζική (Ταϊβάν)
+fonts-langgroup-cyrillic =
+ .label = Κυριλλική
+fonts-langgroup-devanagari =
+ .label = Ντεβανγκάρι
+fonts-langgroup-ethiopic =
+ .label = Αιθιοπική
+fonts-langgroup-georgian =
+ .label = Γεωργιανή
+fonts-langgroup-el =
+ .label = Ελληνική
+fonts-langgroup-gujarati =
+ .label = Γκουαρατί
+fonts-langgroup-gurmukhi =
+ .label = Γκουρμούχι
+fonts-langgroup-japanese =
+ .label = Ιαπωνική
+fonts-langgroup-hebrew =
+ .label = Εβραϊκή
+fonts-langgroup-kannada =
+ .label = Κανναντα
+fonts-langgroup-khmer =
+ .label = Χμερ
+fonts-langgroup-korean =
+ .label = Κορεάτικη
+# Translate "Latin" as the name of Latin (Roman) script, not as the name of the Latin language.
+fonts-langgroup-latin =
+ .label = Λατινική
+fonts-langgroup-malayalam =
+ .label = Μαλαισιανή
+fonts-langgroup-math =
+ .label = Μαθηματικά
+fonts-langgroup-odia =
+ .label = Οντία
+fonts-langgroup-sinhala =
+ .label = Σινχάλα
+fonts-langgroup-tamil =
+ .label = Ταμίλ
+fonts-langgroup-telugu =
+ .label = Τελούγκου
+fonts-langgroup-thai =
+ .label = Ταϊλανδική
+fonts-langgroup-tibetan =
+ .label = Θιβετιανή
+fonts-langgroup-canadian =
+ .label = Ενοποιημένο καναδικό συλλαβάριο
+fonts-langgroup-other =
+ .label = Άλλα συστήματα γραφής
+
+## Default fonts and their sizes
+
+fonts-proportional-header = Μεταβλητού πλάτους
+ .accesskey = Μ
+
+fonts-default-serif =
+ .label = Serif
+fonts-default-sans-serif =
+ .label = Sans Serif
+
+fonts-proportional-size = Μέγεθος
+ .accesskey = γ
+
+fonts-serif = Serif
+ .accesskey = S
+
+fonts-sans-serif = Sans-serif
+ .accesskey = n
+
+fonts-monospace = Σταθερού πλάτους
+ .accesskey = Σ
+
+fonts-monospace-size = Μέγεθος
+ .accesskey = θ
+
+fonts-minsize = Ελάχιστο μέγεθος γραμματοσειράς
+ .accesskey = ρ
+
+fonts-minsize-none =
+ .label = Κανένα
+
+fonts-allow-own =
+ .label = Να επιτρέπεται στις ιστοσελίδες να επιλέγουν τις δικές τους γραμματοσειρές, αντί για τις παραπάνω
+ .accesskey = Ε
+
+## Text Encodings
+##
+## Translate the encoding names as adjectives for an encoding, not as the name
+## of the language.
+
+fonts-languages-fallback-header = Κωδικοποίηση κειμένου για συμβατότητα παλαιού περιεχόμενου
+fonts-languages-fallback-desc = Αυτή η κωδικοποίηση κειμένου χρησιμοποιείται για περιεχόμενο παλαιών σελίδων που δεν δηλώνουν την κωδικοποίηση τους.
+
+fonts-languages-fallback-label = Εφεδρική κωδικοποίηση κειμένου
+ .accesskey = Κ
+
+fonts-languages-fallback-name-auto =
+ .label = Προεπιλογή για την τρέχουσα γλώσσα
+fonts-languages-fallback-name-arabic =
+ .label = Αραβική
+fonts-languages-fallback-name-baltic =
+ .label = Βαλτική
+fonts-languages-fallback-name-ceiso =
+ .label = Κεντρική Ευρωπαϊκή, ISO
+fonts-languages-fallback-name-cewindows =
+ .label = Κεντρική Ευρωπαϊκή, Microsoft
+fonts-languages-fallback-name-simplified =
+ .label = Κινεζική, Απλοποιημένη
+fonts-languages-fallback-name-traditional =
+ .label = Κινεζική, Παραδοσιακή
+fonts-languages-fallback-name-cyrillic =
+ .label = Κυριλλική
+fonts-languages-fallback-name-greek =
+ .label = Ελληνική
+fonts-languages-fallback-name-hebrew =
+ .label = Εβραϊκή
+fonts-languages-fallback-name-japanese =
+ .label = Ιαπωνική
+fonts-languages-fallback-name-korean =
+ .label = Κορεάτικη
+fonts-languages-fallback-name-thai =
+ .label = Ταϊλανδέζικη
+fonts-languages-fallback-name-turkish =
+ .label = Τουρκική
+fonts-languages-fallback-name-vietnamese =
+ .label = Βιετναμέζικη
+fonts-languages-fallback-name-other =
+ .label = Άλλη (συμπ. Δυτικής Ευρωπαϊκής)
+
+# Variables:
+# $name {string, "Arial"} - Name of the default font
+fonts-label-default =
+ .label = Προεπιλογή ({ $name })
+fonts-label-default-unnamed =
+ .label = Προεπιλογή
diff --git a/l10n-el/browser/browser/preferences/fxaPairDevice.ftl b/l10n-el/browser/browser/preferences/fxaPairDevice.ftl
new file mode 100644
index 0000000000..ac4044141e
--- /dev/null
+++ b/l10n-el/browser/browser/preferences/fxaPairDevice.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/.
+
+fxa-pair-device-dialog =
+ .title = Σύνδεση άλλης συσκευής
+ .style = width: 26em; min-height: 35em;
+fxa-qrcode-heading-phase1 = 1. Αν δεν το έχετε κάνει ήδη, εγκαταστήστε το <a data-l10n-name="connect-another-device">Firefox στην κινητή σας συσκευή</a>.
+fxa-qrcode-heading-phase2 = 2. Έπειτα, συνδεθείτε στο { -sync-brand-short-name }, ή στο Android, σαρώστε τον κωδικό σύζευξης από τις ρυθμίσεις του { -sync-brand-short-name }.
+fxa-qrcode-heading-step1 = 1. Αν δεν το έχετε κάνει ήδη, εγκαταστήστε το <a data-l10n-name="connect-another-device">Firefox στην κινητή σας συσκευή</a>.
+fxa-qrcode-heading-step2 = 2. Ανοίξτε το Firefox στην κινητή σας συσκευή.
+fxa-qrcode-heading-step3 = 3. Ανοίξτε το <b>μενού</b> (<img data-l10n-name="ios-menu-icon"/> ή <img data-l10n-name="android-menu-icon"/>), πατήστε το <img data-l10n-name="settings-icon"/> <b>Ρυθμίσεις</b> και επιλέξτε <b>Ενεργοποίηση Sync</b>
+fxa-qrcode-heading-step4 = 4. Σαρώστε αυτό τον κωδικό:
+fxa-qrcode-error-title = Ανεπιτυχής σύζευξη.
+fxa-qrcode-error-body = Δοκιμάστε ξανά.
diff --git a/l10n-el/browser/browser/preferences/languages.ftl b/l10n-el/browser/browser/preferences/languages.ftl
new file mode 100644
index 0000000000..2c9fd329f3
--- /dev/null
+++ b/l10n-el/browser/browser/preferences/languages.ftl
@@ -0,0 +1,55 @@
+# 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/.
+
+webpage-languages-window =
+ .title = Ρυθμίσεις γλώσσας ιστοσελίδων
+ .style = width: 40em
+languages-close-key =
+ .key = w
+languages-description = Μερικές φορές, οι ιστοσελίδες προσφέρονται σε περισσότερες από μια γλώσσες. Επιλέξτε τις γλώσσες εμφάνισης αυτών των ιστοσελίδων, σε σειρά προτίμησης
+languages-customize-spoof-english =
+ .label = Απαίτηση αγγλικών εκδόσεων ιστοσελίδων για ενισχυμένο απόρρητο
+languages-customize-moveup =
+ .label = Μετακίνηση πάνω
+ .accesskey = π
+languages-customize-movedown =
+ .label = Μετακίνηση κάτω
+ .accesskey = κ
+languages-customize-remove =
+ .label = Αφαίρεση
+ .accesskey = Α
+languages-customize-select-language =
+ .placeholder = Επιλέξτε μια γλώσσα για προσθήκη…
+languages-customize-add =
+ .label = Προσθήκη
+ .accesskey = θ
+# The pattern used to generate strings presented to the user in the
+# locale selection list.
+#
+# Example:
+# Icelandic [is]
+# Spanish (Chile) [es-CL]
+#
+# Variables:
+# $locale (String) - A name of the locale (for example: "Icelandic", "Spanish (Chile)")
+# $code (String) - Locale code of the locale (for example: "is", "es-CL")
+languages-code-format =
+ .label = { $locale } [{ $code }]
+languages-active-code-format =
+ .value = { languages-code-format.label }
+browser-languages-window =
+ .title = Ρυθμίσεις γλώσσας του { -brand-short-name }
+ .style = width: 40em
+browser-languages-description = Το { -brand-short-name } θα εμφανίζει την πρώτη γλώσσα ως την προεπιλεγμένη και θα προβάλει εναλλακτικές γλώσσες με τη σειρά που φαίνονται, αν είναι απαραίτητο.
+browser-languages-search = Αναζήτηση περισσότερων γλωσσών…
+browser-languages-searching =
+ .label = Αναζήτηση γλωσσών…
+browser-languages-downloading =
+ .label = Γίνεται λήψη…
+browser-languages-select-language =
+ .label = Επιλέξτε μια γλώσσα για προσθήκη…
+ .placeholder = Επιλέξτε μια γλώσσα για προσθήκη…
+browser-languages-installed-label = Εγκατεστημένες γλώσσες
+browser-languages-available-label = Διαθέσιμες γλώσσες
+browser-languages-error = Το { -brand-short-name } δεν μπορεί να ενημερώσει τις γλώσσες σας αυτή τη στιγμή. Ελέγξτε αν έχετε συνδεθεί στο διαδίκτυο ή δοκιμάστε ξανά.
diff --git a/l10n-el/browser/browser/preferences/permissions.ftl b/l10n-el/browser/browser/preferences/permissions.ftl
new file mode 100644
index 0000000000..7ea179f9ff
--- /dev/null
+++ b/l10n-el/browser/browser/preferences/permissions.ftl
@@ -0,0 +1,157 @@
+# 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/.
+
+permissions-window =
+ .title = Εξαιρέσεις
+ .style = width: 47em
+permissions-close-key =
+ .key = w
+permissions-address = Διεύθυνση ιστοσελίδας
+ .accesskey = ι
+permissions-block =
+ .label = Φραγή
+ .accesskey = Φ
+permissions-session =
+ .label = Αποδοχή για τη συνεδρία
+ .accesskey = σ
+permissions-allow =
+ .label = Αποδοχή
+ .accesskey = Α
+permissions-site-name =
+ .label = Ιστοσελίδα
+permissions-status =
+ .label = Κατάσταση
+permissions-remove =
+ .label = Αφαίρεση ιστοσελίδας
+ .accesskey = φ
+permissions-remove-all =
+ .label = Αφαίρεση όλων των ιστοσελίδων
+ .accesskey = λ
+permissions-button-cancel =
+ .label = Ακύρωση
+ .accesskey = Κ
+permissions-button-ok =
+ .label = Αποθήκευση αλλαγών
+ .accesskey = Π
+permission-dialog =
+ .buttonlabelaccept = Αποθήκευση αλλαγών
+ .buttonaccesskeyaccept = Π
+permissions-autoplay-menu = Προεπιλογή για όλες τις ιστοσελίδες:
+permissions-searchbox =
+ .placeholder = Αναζήτηση ιστοσελίδας
+permissions-capabilities-autoplay-allow =
+ .label = Αποδοχή ήχου και βίντεο
+permissions-capabilities-autoplay-block =
+ .label = Φραγή ήχου
+permissions-capabilities-autoplay-blockall =
+ .label = Φραγή ήχου και βίντεο
+permissions-capabilities-allow =
+ .label = Αποδοχή
+permissions-capabilities-block =
+ .label = Φραγή
+permissions-capabilities-prompt =
+ .label = Πάντα ερώτηση
+permissions-capabilities-listitem-allow =
+ .value = Αποδοχή
+permissions-capabilities-listitem-block =
+ .value = Φραγή
+permissions-capabilities-listitem-allow-session =
+ .value = Αποδοχή για τη συνεδρία
+
+## Invalid Hostname Dialog
+
+permissions-invalid-uri-title = Άκυρο όνομα συστήματος
+permissions-invalid-uri-label = Παρακαλώ εισάγετε ένα έγκυρο όνομα συστήματος
+
+## Exceptions - Tracking Protection
+
+permissions-exceptions-etp-window =
+ .title = Εξαιρέσεις για τη βελτιωμένη προστασία από καταγραφή
+ .style = { permissions-window.style }
+permissions-exceptions-etp-desc = Έχετε απενεργοποιήσει την προστασία σε αυτές τις ιστοσελίδες.
+
+## Exceptions - Cookies
+
+permissions-exceptions-cookie-window =
+ .title = Εξαιρέσεις - Cookies και δεδομένα ιστοσελίδων
+ .style = { permissions-window.style }
+permissions-exceptions-cookie-desc = Μπορείτε να καθορίσετε σε ποιες ιστοσελίδες επιτρέπεται πάντα ή δεν επιτρέπεται ποτέ η χρήση των cookies και των δεδομένων ιστοσελίδων. Πληκτρολογήστε την ακριβή διεύθυνση της ιστοσελίδας που θέλετε να διαχειριστείτε και, στη συνέχεια, επιλέξτε "Φραγή", "Αποδοχή για αυτή τη συνεδρία, ή "Αποδοχή".
+
+## Exceptions - Pop-ups
+
+permissions-exceptions-popup-window =
+ .title = Επιτρεπόμενες ιστοσελίδες - Αναδυόμενα
+ .style = { permissions-window.style }
+permissions-exceptions-popup-desc = Μπορείτε να καθορίσετε ποιες ιστοσελίδες μπορούν να ανοίγουν αναδυόμενα παράθυρα. Πληκτρολογήστε την ακριβή διεύθυνση της ιστοσελίδας που θέλετε να διαχειριστείτε και, στη συνέχεια, κάντε κλικ στο "Αποδοχή".
+
+## Exceptions - Saved Logins
+
+permissions-exceptions-saved-logins-window =
+ .title = Εξαιρέσεις - Αποθηκευμένες συνδέσεις
+ .style = { permissions-window.style }
+permissions-exceptions-saved-logins-desc = Οι συνδέσεις για τις ακόλουθες ιστοσελίδες δεν θα αποθηκεύονται
+
+## Exceptions - Add-ons
+
+permissions-exceptions-addons-window =
+ .title = Επιτρεπόμενες ιστοσελίδες - Εγκατάσταση προσθέτων
+ .style = { permissions-window.style }
+permissions-exceptions-addons-desc = Μπορείτε να καθορίσετε σε ποιες ιστοσελίδες επιτρέπεται η εγκατάσταση προσθέτων. Πληκτρολογήστε την ακριβή διεύθυνση της ιστοσελίδας που θέλετε να επιτρέψετε και, στη συνέχεια, κάντε κλικ στο "Αποδοχή".
+
+## Site Permissions - Autoplay
+
+permissions-site-autoplay-window =
+ .title = Ρυθμίσεις - Αυτόματη αναπαραγωγή
+ .style = { permissions-window.style }
+permissions-site-autoplay-desc = Εδώ μπορείτε να διαχειριστείτε τις ιστοσελίδες που δεν ακολουθούν τις προεπιλεγμένες ρυθμίσεις αυτόματης αναπαραγωγής.
+
+## Site Permissions - Notifications
+
+permissions-site-notification-window =
+ .title = Ρυθμίσεις - Άδειες ειδοποιήσεων
+ .style = { permissions-window.style }
+permissions-site-notification-desc = Οι ακόλουθες ιστοσελίδες έχουν αιτηθεί αποστολή ειδοποιήσεις. Μπορείτε να καθορίσετε σε ποιες ιστοσελίδες επιτρέπεται η αποστολή ειδοποιήσεων. Μπορείτε επίσης να αποκλείσετε νέα αιτήματα για αποδοχή ειδοποιήσεων.
+permissions-site-notification-disable-label =
+ .label = Αποκλεισμός νέων αιτημάτων για αποδοχή ειδοποιήσεων
+permissions-site-notification-disable-desc = Αυτό θα εμποδίσει όλες τις ιστοσελίδες που δεν αναγράφονται παραπάνω να αιτηθούν άδεια για αποστολή ειδοποιήσεων. Η φραγή ειδοποιήσεων πιθανόν να διακόψει ορισμένες λειτουργίες των ιστοσελίδων.
+
+## Site Permissions - Location
+
+permissions-site-location-window =
+ .title = Ρυθμίσεις - Άδειες τοποθεσίας
+ .style = { permissions-window.style }
+permissions-site-location-desc = Οι ακόλουθες ιστοσελίδες έχουν αιτηθεί πρόσβαση στην τοποθεσία σας. Μπορείτε να καθορίσετε σε ποιες ιστοσελίδες επιτρέπεται η πρόσβαση στην τοποθεσία σας. Μπορείτε επίσης να αποκλείσετε νέα αιτήματα για πρόσβαση στην τοποθεσία σας.
+permissions-site-location-disable-label =
+ .label = Αποκλεισμός νέων αιτημάτων για πρόσβαση στην τοποθεσία σας
+permissions-site-location-disable-desc = Αυτό θα εμποδίσει όλες τις ιστοσελίδες που δεν αναγράφονται παραπάνω να αιτηθούν άδεια για πρόσβαση στην τοποθεσία σας. Η φραγή πρόσβασης στην τοποθεσία σας πιθανόν να διακόψει ορισμένες λειτουργίες των ιστοσελίδων.
+
+## Site Permissions - Virtual Reality
+
+permissions-site-xr-window =
+ .title = Ρυθμίσεις - Άδειες εικονικής πραγματικότητας
+ .style = { permissions-window.style }
+permissions-site-xr-desc = Οι ακόλουθες ιστοσελίδες έχουν αιτηθεί πρόσβαση στις συσκευές εικονικής πραγματικότητάς σας. Μπορείτε να καθορίσετε σε ποιες ιστοσελίδες επιτρέπεται η πρόσβαση στις συσκευές εικονικής πραγματικότητάς σας. Μπορείτε επίσης να αποκλείσετε νέα αιτήματα για πρόσβαση στις συσκευές εικονικής πραγματικότητάς σας.
+permissions-site-xr-disable-label =
+ .label = Αποκλεισμός νέων αιτημάτων για πρόσβαση στις συσκευές εικονικής πραγματικότητάς σας
+permissions-site-xr-disable-desc = Αυτό θα εμποδίσει όλες τις ιστοσελίδες που δεν αναγράφονται παραπάνω να αιτηθούν άδεια για πρόσβαση στις συσκευές εικονικής πραγματικότητάς σας. Η φραγή πρόσβασης στις συσκευές εικονικής πραγματικότητάς σας πιθανόν να διακόψει ορισμένες λειτουργίες των ιστοσελίδων.
+
+## Site Permissions - Camera
+
+permissions-site-camera-window =
+ .title = Ρυθμίσεις - Άδειες κάμερας
+ .style = { permissions-window.style }
+permissions-site-camera-desc = Οι ακόλουθες ιστοσελίδες έχουν αιτηθεί πρόσβαση στην κάμερά σας. Μπορείτε να καθορίσετε σε ποιες ιστοσελίδες επιτρέπεται η πρόσβαση στην κάμερά σας. Μπορείτε επίσης να αποκλείσετε νέα αιτήματα για πρόσβαση στην κάμερά σας.
+permissions-site-camera-disable-label =
+ .label = Αποκλεισμός νέων αιτημάτων για πρόσβαση στην κάμερά σας
+permissions-site-camera-disable-desc = Αυτό θα εμποδίσει όλες τις ιστοσελίδες που δεν αναγράφονται παραπάνω να αιτηθούν άδεια για πρόσβαση στην κάμερά σας. Η φραγή πρόσβασης στην κάμερά σας πιθανόν να διακόψει ορισμένες λειτουργίες των ιστοσελίδων.
+
+## Site Permissions - Microphone
+
+permissions-site-microphone-window =
+ .title = Ρυθμίσεις - Άδειες μικροφώνου
+ .style = { permissions-window.style }
+permissions-site-microphone-desc = Οι ακόλουθες ιστοσελίδες έχουν αιτηθεί πρόσβαση στο μικρόφωνό σας. Μπορείτε να καθορίσετε σε ποιες ιστοσελίδες επιτρέπεται η πρόσβαση στο μικρόφωνό σας. Μπορείτε επίσης να αποκλείσετε νέα αιτήματα για πρόσβαση στο μικρόφωνό σας.
+permissions-site-microphone-disable-label =
+ .label = Αποκλεισμός νέων αιτημάτων για πρόσβαση στο μικρόφωνό σας
+permissions-site-microphone-disable-desc = Αυτό θα εμποδίσει όλες τις ιστοσελίδες που δεν αναγράφονται παραπάνω να αιτηθούν άδεια για πρόσβαση στο μικρόφωνό σας. Η φραγή πρόσβασης στο μικρόφωνό σας πιθανόν να διακόψει ορισμένες λειτουργίες των ιστοσελίδων.
diff --git a/l10n-el/browser/browser/preferences/preferences.ftl b/l10n-el/browser/browser/preferences/preferences.ftl
new file mode 100644
index 0000000000..e364a0164a
--- /dev/null
+++ b/l10n-el/browser/browser/preferences/preferences.ftl
@@ -0,0 +1,1177 @@
+# 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/.
+
+do-not-track-description = Αποστολή σήματος “Αποτροπή καταγραφής” που σημαίνει ότι δεν θέλετε να καταγράφεστε από τις ιστοσελίδες
+do-not-track-learn-more = Μάθετε περισσότερα
+do-not-track-option-default-content-blocking-known =
+ .label = Μόνο όταν το { -brand-short-name } έχει ρυθμιστεί για φραγή γνωστών ιχνηλατών
+do-not-track-option-always =
+ .label = Πάντα
+pref-page-title =
+ { PLATFORM() ->
+ [windows] Επιλογές
+ *[other] Προτιμήσεις
+ }
+# This is used to determine the width of the search field in about:preferences,
+# in order to make the entire placeholder string visible
+#
+# Please keep the placeholder string short to avoid truncation.
+#
+# Notice: The value of the `.style` attribute is a CSS string, and the `width`
+# is the name of the CSS property. It is intended only to adjust the element's width.
+# Do not translate.
+search-input-box =
+ .style = width: 15.4em
+ .placeholder =
+ { PLATFORM() ->
+ [windows] Εύρεση στις επιλογές
+ *[other] Εύρεση στις προτιμήσεις
+ }
+managed-notice = Το πρόγραμμα περιήγησής σας ρυθμίζεται από τον οργανισμό σας.
+category-list =
+ .aria-label = Κατηγορίες
+pane-general-title = Γενικά
+category-general =
+ .tooltiptext = { pane-general-title }
+pane-home-title = Αρχική
+category-home =
+ .tooltiptext = { pane-home-title }
+pane-search-title = Αναζήτηση
+category-search =
+ .tooltiptext = { pane-search-title }
+pane-privacy-title = Απόρρητο & ασφάλεια
+category-privacy =
+ .tooltiptext = { pane-privacy-title }
+pane-sync-title2 = { -sync-brand-short-name }
+category-sync2 =
+ .tooltiptext = { pane-sync-title2 }
+pane-experimental-title = Πειράματα του { -brand-short-name }
+category-experimental =
+ .tooltiptext = Πειράματα του { -brand-short-name }
+pane-experimental-subtitle = Συνεχίστε με προσοχή
+pane-experimental-search-results-header = Πειράματα { -brand-short-name }: Συνεχίστε με προσοχή
+pane-experimental-description = Η αλλαγή παραμέτρων των σύνθετων προτιμήσεων μπορεί να επηρεάσει την απόδοση ή την ασφάλεια του { -brand-short-name }.
+pane-experimental-reset =
+ .label = Επαναφορά προεπιλογών
+ .accesskey = Ε
+help-button-label = Υποστήριξη { -brand-short-name }
+addons-button-label = Επεκτάσεις & θέματα
+focus-search =
+ .key = f
+close-button =
+ .aria-label = Κλείσιμο
+
+## Browser Restart Dialog
+
+feature-enable-requires-restart = Θα πρέπει να γίνει επανεκκίνηση του { -brand-short-name } για ενεργοποίηση αυτής της λειτουργίας.
+feature-disable-requires-restart = Θα πρέπει να γίνει επανεκκίνηση του { -brand-short-name } για απενεργοποίηση αυτής της λειτουργίας..
+should-restart-title = Επανεκκίνηση του { -brand-short-name }
+should-restart-ok = Επανεκκίνηση του { -brand-short-name } τώρα
+cancel-no-restart-button = Ακύρωση
+restart-later = Επανεκκίνηση αργότερα
+
+## Extension Control Notifications
+##
+## These strings are used to inform the user
+## about changes made by extensions to browser settings.
+##
+## <img data-l10n-name="icon"/> is going to be replaced by the extension icon.
+##
+## Variables:
+## $name (String): name of the extension
+
+# This string is shown to notify the user that their home page
+# is being controlled by an extension.
+extension-controlled-homepage-override = Μια επέκταση, το <img data-l10n-name="icon"/> { $name }, ελέγχει την αρχική σελίδα.
+# This string is shown to notify the user that their new tab page
+# is being controlled by an extension.
+extension-controlled-new-tab-url = Μια επέκταση, το <img data-l10n-name="icon"/> { $name }, ελέγχει τη σελίδα νέας καρτέλας.
+# This string is shown to notify the user that the password manager setting
+# is being controlled by an extension
+extension-controlled-password-saving = Μια επέκταση, το <img data-l10n-name="icon"/> { $name }, ελέγχει αυτή τη ρύθμιση.
+# This string is shown to notify the user that their notifications permission
+# is being controlled by an extension.
+extension-controlled-web-notifications = Μια επέκταση, το <img data-l10n-name="icon"/> { $name }, ελέγχει αυτή τη ρύθμιση.
+# This string is shown to notify the user that the default search engine
+# is being controlled by an extension.
+extension-controlled-default-search = Μια επέκταση, <img data-l10n-name="icon"/> { $name }, έχει ορίσει την προεπιλεγμένη μηχανή αναζήτησης.
+# This string is shown to notify the user that Container Tabs
+# are being enabled by an extension.
+extension-controlled-privacy-containers = Μια επέκταση, το <img data-l10n-name="icon"/> { $name }, απαιτεί θεματικές καρτέλες.
+# This string is shown to notify the user that their content blocking "All Detected Trackers"
+# preferences are being controlled by an extension.
+extension-controlled-websites-content-blocking-all-trackers = Μια επέκταση, το <img data-l10n-name="icon"/> { $name }, ελέγχει αυτή τη ρύθμιση.
+# This string is shown to notify the user that their proxy configuration preferences
+# are being controlled by an extension.
+extension-controlled-proxy-config = Μια επέκταση, το <img data-l10n-name="icon"/> { $name }, ελέγχει τον τρόπο σύνδεσης του { -brand-short-name } με το διαδίκτυο.
+# This string is shown after the user disables an extension to notify the user
+# how to enable an extension that they disabled.
+#
+# <img data-l10n-name="addons-icon"/> will be replaced with Add-ons icon
+# <img data-l10n-name="menu-icon"/> will be replaced with Menu icon
+extension-controlled-enable = Για να ενεργοποιήσετε την επέκταση, μεταβείτε στο <img data-l10n-name="addons-icon"/> "Πρόσθετα" στο μενού <img data-l10n-name="menu-icon"/>.
+
+## Preferences UI Search Results
+
+search-results-header = Αποτελέσματα αναζήτησης
+# `<span data-l10n-name="query"></span>` will be replaced by the search term.
+search-results-empty-message =
+ { PLATFORM() ->
+ [windows] Λυπούμαστε! Δεν υπάρχουν αποτελέσματα για το “<span data-l10n-name="query"></span>” στις Επιλογές.
+ *[other] Λυπούμαστε! Δεν υπάρχουν αποτελέσματα για το “<span data-l10n-name="query"></span>” στις Προτιμήσεις.
+ }
+search-results-help-link = Χρειάζεστε βοήθεια; Επισκεφθείτε την <a data-l10n-name="url">Υποστήριξη { -brand-short-name }</a>
+
+## General Section
+
+startup-header = Εκκίνηση
+# { -brand-short-name } will be 'Firefox Developer Edition',
+# since this setting is only exposed in Firefox Developer Edition
+separate-profile-mode =
+ .label = Να επιτρέπεται στο { -brand-short-name } και στο Firefox η ταυτόχρονη εκτέλεση
+use-firefox-sync = Συμβουλή: Θα γίνεται χρήση ξεχωριστών προφίλ. Χρησιμοποιήστε το { -sync-brand-short-name } για κοινή χρήση δεδομένων.
+get-started-not-logged-in = Σύνδεση στο { -sync-brand-short-name }…
+get-started-configured = Άνοιγμα προτιμήσεων του { -sync-brand-short-name }
+always-check-default =
+ .label = Να γίνεται πάντα έλεγχος για το αν το { -brand-short-name } είναι το προεπιλεγμένο πρόγραμμα περιήγησής σας
+ .accesskey = Π
+is-default = Το { -brand-short-name } είναι το προεπιλεγμένο πρόγραμμα περιήγησής σας
+is-not-default = Το { -brand-short-name } δεν είναι το προεπιλεγμένο πρόγραμμα περιήγησης
+set-as-my-default-browser =
+ .label = Ορισμός ως προεπιλογή…
+ .accesskey = Π
+startup-restore-previous-session =
+ .label = Επαναφορά προηγούμενης συνεδρίας
+ .accesskey = σ
+startup-restore-warn-on-quit =
+ .label = Προειδοποίηση κατά την έξοδο από το πρόγραμμα περιήγησης
+disable-extension =
+ .label = Απενεργοποίηση επέκτασης
+tabs-group-header = Καρτέλες
+ctrl-tab-recently-used-order =
+ .label = Εναλλαγή καρτελών με το Ctrl+Tab σε σειρά πρόσφατης χρήσης
+ .accesskey = T
+open-new-link-as-tabs =
+ .label = Άνοιγμα συνδέσμων σε καρτέλες αντί για νέα παράθυρα
+ .accesskey = π
+warn-on-close-multiple-tabs =
+ .label = Προειδοποίηση κατά το κλείσιμο πολλαπλών καρτελών
+ .accesskey = π
+warn-on-open-many-tabs =
+ .label = Προειδοποίηση όταν το άνοιγμα πολλαπλών καρτελών ενδέχεται να επιβραδύνει το { -brand-short-name }
+ .accesskey = β
+switch-links-to-new-tabs =
+ .label = Κατά το άνοιγμα ενός συνδέσμου σε νέα καρτέλα, άμεση εναλλαγή σε αυτή
+ .accesskey = η
+show-tabs-in-taskbar =
+ .label = Προβολή προεπισκόπησης καρτελών στη γραμμή εργασιών των Windows
+ .accesskey = ε
+browser-containers-enabled =
+ .label = Ενεργοποίηση θεματικών καρτελών
+ .accesskey = ν
+browser-containers-learn-more = Μάθετε περισσότερα
+browser-containers-settings =
+ .label = Ρυθμίσεις…
+ .accesskey = ι
+containers-disable-alert-title = Κλείσιμο όλων των θεματικών καρτελών;
+containers-disable-alert-desc =
+ { $tabCount ->
+ [one] Αν απενεργοποιήσετε τις θεματικές καρτέλες τώρα, θα κλείσει { $tabCount } θεματική καρτέλα. Θέλετε σίγουρα να απενεργοποιήσετε τις θεματικές καρτέλες;
+ *[other] Αν απενεργοποιήσετε τις θεματικές καρτέλες τώρα, θα κλείσουν { $tabCount } θεματικές καρτέλες. Θέλετε σίγουρα να απενεργοποιήσετε τις θεματικές καρτέλες;
+ }
+containers-disable-alert-ok-button =
+ { $tabCount ->
+ [one] Κλείσιμο { $tabCount } θεματικής καρτέλας
+ *[other] Κλείσιμο { $tabCount } θεματικών καρτελών
+ }
+containers-disable-alert-cancel-button = Να παραμείνουν ενεργές
+containers-remove-alert-title = Αφαίρεση θεματικής ενότητας;
+# Variables:
+# $count (Number) - Number of tabs that will be closed.
+containers-remove-alert-msg =
+ { $count ->
+ [one] Αν αφαιρέσετε αυτή τη θεματική κατηγορία τώρα, θα κλείσει { $count } θεματική καρτέλα. Θέλετε σίγουρα να αφαιρέσετε αυτή τη θεματική κατηγορία;
+ *[other] Αν αφαιρέσετε αυτή τη θεματική κατηγορία τώρα, θα κλείσουν { $count } θεματικές καρτέλες. Θέλετε σίγουρα να αφαιρέσετε αυτή τη θεματική κατηγορία;
+ }
+containers-remove-ok-button = Αφαίρεση αυτής της θεματικής κατηγορίας
+containers-remove-cancel-button = Να μην αφαιρεθεί η θεματική κατηγορία
+
+## General Section - Language & Appearance
+
+language-and-appearance-header = Γλώσσα και εμφάνιση
+fonts-and-colors-header = Γραμματοσειρές & χρώματα
+default-font = Προεπιλεγμένη γραμματοσειρά
+ .accesskey = Π
+default-font-size = Μέγεθος
+ .accesskey = Μ
+advanced-fonts =
+ .label = Για προχωρημένους…
+ .accesskey = Γ
+colors-settings =
+ .label = Χρώματα...
+ .accesskey = Χ
+# Zoom is a noun, and the message is used as header for a group of options
+preferences-zoom-header = Ζουμ
+preferences-default-zoom = Προεπιλεγμένο ζουμ
+ .accesskey = ζ
+preferences-default-zoom-value =
+ .label = { $percentage }%
+preferences-zoom-text-only =
+ .label = Ζουμ μόνο στο κείμενο
+ .accesskey = κ
+language-header = Γλώσσα
+choose-language-description = Επιλέξτε την προτιμώμενη γλώσσα για την εμφάνιση σελίδων
+choose-button =
+ .label = Επιλογή…
+ .accesskey = λ
+choose-browser-language-description = Επιλέξτε τις γλώσσες εμφάνισης μενού, μηνυμάτων και ειδοποιήσεων από το { -brand-short-name }.
+manage-browser-languages-button =
+ .label = Ορισμός εναλλακτικών…
+ .accesskey = ν
+confirm-browser-language-change-description = Επανεκκίνηση του { -brand-short-name } για εφαρμογή αλλαγών
+confirm-browser-language-change-button = Εφαρμογή και επανεκκίνηση
+translate-web-pages =
+ .label = Μετάφραση περιεχομένου του ιστού
+ .accesskey = τ
+# The <img> element is replaced by the logo of the provider
+# used to provide machine translations for web pages.
+translate-attribution = Μεταφράσεις από <img data-l10n-name="logo"/>
+translate-exceptions =
+ .label = Εξαιρέσεις…
+ .accesskey = ξ
+# Variables:
+# $localeName (string) - Localized name of the locale to be used.
+use-system-locale =
+ .label = Χρησιμοποιήστε τις ρυθμίσεις του συστήματος σας για το “{ $localeName }” για μορφοποίηση ημερομηνίας, ώρας, αριθμών και μετρήσεων.
+check-user-spelling =
+ .label = Έλεγχος ορθογραφίας κατά την πληκτρολόγηση
+ .accesskey = π
+
+## General Section - Files and Applications
+
+files-and-applications-title = Αρχεία και εφαρμογές
+download-header = Λήψεις
+download-save-to =
+ .label = Αποθήκευση αρχείων σε
+ .accesskey = θ
+download-choose-folder =
+ .label =
+ { PLATFORM() ->
+ [macos] Επιλογή…
+ *[other] Περιήγηση…
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [macos] π
+ *[other] η
+ }
+download-always-ask-where =
+ .label = Να γίνεται πάντα ερώτηση για την τοποθεσία αποθήκευσης αρχείων
+ .accesskey = α
+applications-header = Εφαρμογές
+applications-description = Επιλέξτε πώς διαχειρίζεται το { -brand-short-name } τα ληφθέντα αρχεία από το διαδίκτυο ή τις εφαρμογές που χρησιμοποιείτε κατά την περιήγηση.
+applications-filter =
+ .placeholder = Αναζήτηση τύπων αρχείων ή εφαρμογών
+applications-type-column =
+ .label = Τύπος περιεχομένου
+ .accesskey = Τ
+applications-action-column =
+ .label = Ενέργεια
+ .accesskey = Ε
+# Variables:
+# $extension (String) - file extension (e.g .TXT)
+applications-file-ending = Αρχείο { $extension }
+applications-action-save =
+ .label = Αποθήκευση αρχείου
+# Variables:
+# $app-name (String) - Name of an application (e.g Adobe Acrobat)
+applications-use-app =
+ .label = Χρήση εφαρμογής "{ $app-name }"
+# Variables:
+# $app-name (String) - Name of an application (e.g Adobe Acrobat)
+applications-use-app-default =
+ .label = Χρήση εφαρμογής "{ $app-name }" (προεπιλογή)
+applications-use-os-default =
+ .label =
+ { PLATFORM() ->
+ [macos] Χρήση προεπιλεγμένης εφαρμογής macOS
+ [windows] Χρήση προεπιλεγμένης εφαρμογής Windows
+ *[other] Χρήση προεπιλεγμένης εφαρμογής συστήματος
+ }
+applications-use-other =
+ .label = Χρήση άλλης…
+applications-select-helper = Επιλογή βοηθητικής εφαρμογής
+applications-manage-app =
+ .label = Λεπτομέρειες εφαρμογής…
+applications-always-ask =
+ .label = Πάντα ερώτηση
+applications-type-pdf = Portable Document Format (PDF)
+# Variables:
+# $type (String) - the MIME type (e.g application/binary)
+applications-type-pdf-with-type = { applications-type-pdf } ({ $type })
+# Variables:
+# $type-description (String) - Description of the type (e.g "Portable Document Format")
+# $type (String) - the MIME type (e.g application/binary)
+applications-type-description-with-type = { $type-description } ({ $type })
+# Variables:
+# $extension (String) - file extension (e.g .TXT)
+# $type (String) - the MIME type (e.g application/binary)
+applications-file-ending-with-type = { applications-file-ending } ({ $type })
+# Variables:
+# $plugin-name (String) - Name of a plugin (e.g Adobe Flash)
+applications-use-plugin-in =
+ .label = Χρήση { $plugin-name } (στο { -brand-short-name })
+applications-open-inapp =
+ .label = Άνοιγμα στο { -brand-short-name }
+
+## The strings in this group are used to populate
+## selected label element based on the string from
+## the selected menu item.
+
+applications-use-plugin-in-label =
+ .value = { applications-use-plugin-in.label }
+applications-action-save-label =
+ .value = { applications-action-save.label }
+applications-use-app-label =
+ .value = { applications-use-app.label }
+applications-open-inapp-label =
+ .value = { applications-open-inapp.label }
+applications-always-ask-label =
+ .value = { applications-always-ask.label }
+applications-use-app-default-label =
+ .value = { applications-use-app-default.label }
+applications-use-other-label =
+ .value = { applications-use-other.label }
+applications-use-os-default-label =
+ .value = { applications-use-os-default.label }
+
+##
+
+drm-content-header = Περιεχόμενο διαχείρισης ψηφιακών δικαιωμάτων (DRM)
+play-drm-content =
+ .label = Αναπαραγωγή περιεχομένου με έλεγχο DRM
+ .accesskey = Α
+play-drm-content-learn-more = Μάθετε περισσότερα
+update-application-title = Ενημερώσεις του { -brand-short-name }
+update-application-description = Διατηρείτε το { -brand-short-name } ενημερωμένο για καλύτερη απόδοση, σταθερότητα και ασφάλεια.
+update-application-version = Έκδοση { $version } <a data-l10n-name="learn-more">Τι νέο υπάρχει</a>
+update-history =
+ .label = Εμφάνιση ιστορικού ενημερώσεων…
+ .accesskey = ν
+update-application-allow-description = Να επιτρέπεται στο { -brand-short-name }
+update-application-auto =
+ .label = Αυτόματη εγκατάσταση ενημερώσεων (συνιστάται)
+ .accesskey = Α
+update-application-check-choose =
+ .label = Έλεγχος για ενημερώσεις, αλλά με δυνατότητα επιλογής για εγκατάσταση
+ .accesskey = Ε
+update-application-manual =
+ .label = Να μην γίνεται ποτέ έλεγχος για ενημερώσεις (δεν προτείνεται)
+ .accesskey = Ν
+update-application-warning-cross-user-setting = Αυτή η ρύθμιση θα εφαρμοστεί σε όλους τους λογαριασμούς των Windows και τα προφίλ του { -brand-short-name } που χρησιμοποιούν αυτή την εγκατάσταση του { -brand-short-name }.
+update-application-use-service =
+ .label = Χρήση μιας υπηρεσίας παρασκηνίου για την εγκατάσταση ενημερώσεων
+ .accesskey = υ
+update-setting-write-failure-title = Σφάλμα αποθήκευσης προτιμήσεων ενημερώσεων
+# Variables:
+# $path (String) - Path to the configuration file
+# The newlines between the main text and the line containing the path is
+# intentional so the path is easier to identify.
+update-setting-write-failure-message =
+ Το { -brand-short-name } αντιμετώπισε σφάλμα και δεν αποθήκευσε αυτή την αλλαγή. Σημειώστε ότι η ρύθμιση αυτής της προτίμησης ενημερώσεων απαιτεί δικαίωμα εγγραφής στο παρακάτω αρχείο. Εσείς ή κάποιος διαχειριστής συστήματος ενδέχεται να μπορέσει να επιλύσει το σφάλμα, χορηγώντας στην ομάδα Χρήστες τον πλήρη έλεγχο για αυτό το αρχείο.
+
+ Αδυναμία εγγραφής στο αρχείο: { $path }
+update-in-progress-title = Ενημέρωση σε εξέλιξη
+update-in-progress-message = Θέλετε το { -brand-short-name } να συνεχίσει με αυτή την ενημέρωση;
+update-in-progress-ok-button = &Απόρριψη
+# Continue is the cancel button so pressing escape or using a platform standard
+# method of closing the UI will not discard the update.
+update-in-progress-cancel-button = &Συνέχεια
+
+## General Section - Performance
+
+performance-title = Επιδόσεις
+performance-use-recommended-settings-checkbox =
+ .label = Χρήση προτεινόμενων ρυθμίσεων επιδόσεων
+ .accesskey = Χ
+performance-use-recommended-settings-desc = Αυτές οι ρυθμίσεις είναι προσαρμοσμένες στο υλικό και το λειτουργικό σύστημα του υπολογιστή σας.
+performance-settings-learn-more = Μάθετε περισσότερα
+performance-allow-hw-accel =
+ .label = Χρήση επιτάχυνσης υλικού όταν είναι διαθέσιμη
+ .accesskey = λ
+performance-limit-content-process-option = Όριο διεργασιών περιεχομένου
+ .accesskey = Ο
+performance-limit-content-process-enabled-desc = Οι επιπρόσθετες διεργασίες περιεχομένου μπορούν να βελτιώσουν τις επιδόσεις κατά τη χρήση πολλαπλών καρτελών, αλλά θα χρησιμοποιούν περισσότερη μνήμη.
+performance-limit-content-process-blocked-desc = Η τροποποίηση του αριθμού των διεργασιών περιεχομένου είναι δυνατή μόνο στο { -brand-short-name } με τη δυνατότητα πολλαπλών διεργασιών. <a data-l10n-name="learn-more">Μάθετε πώς μπορείτε να ελέγξετε εάν είναι ενεργοποιημένη η λειτουργία πολλαπλών διεργασιών</a>
+# Variables:
+# $num - default value of the `dom.ipc.processCount` pref.
+performance-default-content-process-count =
+ .label = { $num } (προεπιλογή)
+
+## General Section - Browsing
+
+browsing-title = Περιήγηση
+browsing-use-autoscroll =
+ .label = Χρήση αυτόματης κύλισης
+ .accesskey = α
+browsing-use-smooth-scrolling =
+ .label = Χρήση ομαλής κύλισης
+ .accesskey = μ
+browsing-use-onscreen-keyboard =
+ .label = Εμφάνιση πληκτρολογίου αφής όταν χρειάζεται
+ .accesskey = π
+browsing-use-cursor-navigation =
+ .label = Πάντα χρήση των πλήκτρων του δρομέα για πλοήγηση στις ιστοσελίδες
+ .accesskey = ω
+browsing-search-on-start-typing =
+ .label = Αναζήτηση κειμένου κατά την έναρξη πληκτρολόγησης
+ .accesskey = ν
+browsing-picture-in-picture-toggle-enabled =
+ .label = Ενεργοποίηση στοιχείων ελέγχου βίντεο σε λειτουργία εικόνας εντός εικόνας
+ .accesskey = Ε
+browsing-picture-in-picture-learn-more = Μάθετε περισσότερα
+browsing-media-control =
+ .label = Έλεγχος πολυμέσων μέσω πληκτρολογίου, ακουστικών ή εικονικού περιβάλλοντος
+ .accesskey = λ
+browsing-media-control-learn-more = Μάθετε περισσότερα
+browsing-cfr-recommendations =
+ .label = Πρόταση επεκτάσεων κατά την περιήγησή σας
+ .accesskey = Π
+browsing-cfr-features =
+ .label = Πρόταση λειτουργιών όσο περιηγείστε
+ .accesskey = ρ
+browsing-cfr-recommendations-learn-more = Μάθετε περισσότερα
+
+## General Section - Proxy
+
+network-settings-title = Ρυθμίσεις δικτύου
+network-proxy-connection-description = Ρυθμίστε τον τρόπο σύνδεσης του { -brand-short-name } στο διαδίκτυο.
+network-proxy-connection-learn-more = Μάθετε περισσότερα
+network-proxy-connection-settings =
+ .label = Ρυθμίσεις…
+ .accesskey = θ
+
+## Home Section
+
+home-new-windows-tabs-header = Νέα παράθυρα και καρτέλες
+home-new-windows-tabs-description2 = Επιλέξτε τι θα βλέπετε όταν ανοίγετε την αρχική σας σελίδα, νέα παράθυρα και νέες καρτέλες.
+
+## Home Section - Home Page Customization
+
+home-homepage-mode-label = Αρχική σελίδα και νέα παράθυρα
+home-newtabs-mode-label = Νέες καρτέλες
+home-restore-defaults =
+ .label = Επαναφορά προεπιλογών
+ .accesskey = Ε
+# "Firefox" should be treated as a brand and kept in English,
+# while "Home" and "(Default)" can be localized.
+home-mode-choice-default =
+ .label = Αρχική σελίδα Firefox (Προεπιλογή)
+home-mode-choice-custom =
+ .label = Προσαρμοσμένα URL…
+home-mode-choice-blank =
+ .label = Κενή σελίδα
+home-homepage-custom-url =
+ .placeholder = Επικόλληση URL…
+# This string has a special case for '1' and [other] (default). If necessary for
+# your language, you can add {$tabCount} to your translations and use the
+# standard CLDR forms, or only use the form for [other] if both strings should
+# be identical.
+use-current-pages =
+ .label =
+ { $tabCount ->
+ [1] Χρήση τρέχουσας σελίδας
+ *[other] Χρήση τρεχουσών σελίδων
+ }
+ .accesskey = Τ
+choose-bookmark =
+ .label = Χρήση σελιδοδείκτη…
+ .accesskey = σ
+
+## Home Section - Firefox Home Content Customization
+
+home-prefs-content-header = Περιεχόμενο αρχικής σελίδας Firefox
+home-prefs-content-description = Επιλέξτε τι περιεχόμενο θέλετε στην αρχική σελίδα του Firefox σας.
+home-prefs-search-header =
+ .label = Διαδικτυακή αναζήτηση
+home-prefs-topsites-header =
+ .label = Κορυφαίες ιστοσελίδες
+home-prefs-topsites-description = Οι ιστοσελίδες που επισκέπτεστε περισσότερο
+home-prefs-topsites-by-option-sponsored =
+ .label = Χορηγούμενες κορυφαίες ιστοσελίδες
+home-prefs-shortcuts-header =
+ .label = Συντομεύσεις
+home-prefs-shortcuts-description = Ιστοσελίδες που αποθηκεύετε ή επισκέπτεστε
+home-prefs-shortcuts-by-option-sponsored =
+ .label = Χορηγούμενες συντομεύσεις
+
+## Variables:
+## $provider (String): Name of the corresponding content provider, e.g "Pocket".
+
+home-prefs-recommended-by-header =
+ .label = Προτάσεις του { $provider }
+home-prefs-recommended-by-description-update = Εξαιρετικό περιεχόμενο από όλο το διαδίκτυο, με την επιμέλεια του { $provider }
+home-prefs-recommended-by-description-new = Εξαιρετικό περιεχόμενο από το { $provider }, μέρος της οικογένειας του { -brand-product-name }
+
+##
+
+home-prefs-recommended-by-learn-more = Πώς λειτουργεί
+home-prefs-recommended-by-option-sponsored-stories =
+ .label = Χορηγούμενες ιστορίες
+home-prefs-highlights-header =
+ .label = Κορυφαίες στιγμές
+home-prefs-highlights-description = Μια συλλογή ιστοσελίδων που έχετε αποθηκεύσει ή επισκεφθεί
+home-prefs-highlights-option-visited-pages =
+ .label = Σελίδες που έχετε επισκεφθεί
+home-prefs-highlights-options-bookmarks =
+ .label = Σελιδοδείκτες
+home-prefs-highlights-option-most-recent-download =
+ .label = Πιο πρόσφατες λήψεις
+home-prefs-highlights-option-saved-to-pocket =
+ .label = Αποθηκευμένες σελίδες του { -pocket-brand-name }
+home-prefs-recent-activity-header =
+ .label = Πρόσφατη δραστηριότητα
+home-prefs-recent-activity-description = Μια συλλογή πρόσφατων ιστοσελίδων και περιεχομένου
+# For the "Snippets" feature traditionally on about:home.
+# Alternative translation options: "Small Note" or something that
+# expresses the idea of "a small message, shortened from something else,
+# and non-essential but also not entirely trivial and useless.
+home-prefs-snippets-header =
+ .label = Αποσπάσματα
+home-prefs-snippets-description = Ενημερώσεις από τη { -vendor-short-name } και το { -brand-product-name }
+home-prefs-snippets-description-new = Συμβουλές και ειδήσεις από τη { -vendor-short-name } και το { -brand-product-name }
+home-prefs-sections-rows-option =
+ .label =
+ { $num ->
+ [one] { $num } σειρά
+ *[other] { $num } σειρές
+ }
+
+## Search Section
+
+search-bar-header = Γραμμή αναζήτησης
+search-bar-hidden =
+ .label = Χρήση της γραμμής διευθύνσεων για αναζήτηση και πλοήγηση
+search-bar-shown =
+ .label = Προσθήκη γραμμής αναζήτησης στη γραμμή εργαλείων
+search-engine-default-header = Προεπιλεγμένη μηχανή αναζήτησης
+search-engine-default-desc-2 = Αυτή είναι η προεπιλεγμένη μηχανή αναζήτησης στη γραμμή διευθύνσεων και τη γραμμή αναζήτησης. Μπορείτε να την αλλάξετε ανά πάσα στιγμή.
+search-engine-default-private-desc-2 = Επιλέξτε μια διαφορετική προεπιλεγμένη μηχανή αναζήτησης μόνο για ιδιωτικά παράθυρα
+search-separate-default-engine =
+ .label = Χρήση αυτής της μηχανής αναζήτησης σε ιδιωτικά παράθυρα
+ .accesskey = Χ
+search-suggestions-header = Προτάσεις αναζήτησης
+search-suggestions-desc = Επιλέξτε πώς εμφανίζονται οι προτάσεις από τις μηχανές αναζήτησης.
+search-suggestions-option =
+ .label = Παροχή προτάσεων αναζήτησης
+ .accesskey = Π
+search-show-suggestions-url-bar-option =
+ .label = Εμφάνιση προτάσεων αναζήτησης στα αποτελέσματα της γραμμής διευθύνσεων
+ .accesskey = τ
+# This string describes what the user will observe when the system
+# prioritizes search suggestions over browsing history in the results
+# that extend down from the address bar. In the original English string,
+# "ahead" refers to location (appearing most proximate to), not time
+# (appearing before).
+search-show-suggestions-above-history-option =
+ .label = Εμφάνιση προτάσεων αναζήτησης πριν το ιστορικό περιήγησης στα αποτελέσματα γραμμής διευθύνσεων
+search-show-suggestions-private-windows =
+ .label = Εμφάνιση προτάσεων αναζήτησης σε ιδιωτικά παράθυρα
+suggestions-addressbar-settings-generic = Αλλαγή προτιμήσεων για άλλες προτάσεις στη γραμμή διευθύνσεων
+search-suggestions-cant-show = Οι προτάσεις αναζήτησης δεν θα εμφανίζονται στη γραμμή διευθύνσεων, καθώς έχετε ρυθμίσει το { -brand-short-name } ώστε να μην διατηρεί ποτέ το ιστορικό.
+search-one-click-header = Μηχανές αναζήτησης με ένα κλικ
+search-one-click-header2 = Συντομεύσεις αναζήτησης
+search-one-click-desc = Επιλέξτε τις εναλλακτικές μηχανές αναζήτησης που εμφανίζονται κάτω από τη γραμμή διευθύνσεων και τη γραμμή αναζήτησης όταν αρχίσετε να πληκτρολογείτε μια λέξη-κλειδί.
+search-choose-engine-column =
+ .label = Μηχανή αναζήτησης
+search-choose-keyword-column =
+ .label = Λέξη-κλειδί
+search-restore-default =
+ .label = Επαναφορά προεπιλεγμένων μηχανών αναζήτησης
+ .accesskey = φ
+search-remove-engine =
+ .label = Αφαίρεση
+ .accesskey = Α
+search-add-engine =
+ .label = Προσθήκη
+ .accesskey = Π
+search-find-more-link = Εύρεση περισσότερων μηχανών αναζήτησης
+# This warning is displayed when the chosen keyword is already in use
+# ('Duplicate' is an adjective)
+search-keyword-warning-title = Διπλή λέξη-κλειδί
+# Variables:
+# $name (String) - Name of a search engine.
+search-keyword-warning-engine = Έχετε επιλέξει μια λέξη-κλειδί που χρησιμοποιείται ήδη από το “{ $name }”. Παρακαλώ επιλέξτε κάποια άλλη.
+search-keyword-warning-bookmark = Έχετε επιλέξει μια λέξη-κλειδί που χρησιμοποιείται ήδη από ένα σελιδοδείκτη. Παρακαλώ επιλέξτε κάποια άλλη.
+
+## Containers Section
+
+containers-back-button =
+ .aria-label =
+ { PLATFORM() ->
+ [windows] Πίσω στις επιλογές
+ *[other] Πίσω στις προτιμήσεις
+ }
+containers-header = Θεματικές καρτέλες
+containers-add-button =
+ .label = Προσθήκη νέας θεματικής ενότητας
+ .accesskey = Π
+containers-new-tab-check =
+ .label = Επιλέξτε κατηγορία για κάθε νέα καρτέλα
+ .accesskey = Ε
+containers-preferences-button =
+ .label = Προτιμήσεις
+containers-remove-button =
+ .label = Αφαίρεση
+
+## Firefox Account - Signed out. Note that "Sync" and "Firefox Account" are now
+## more discrete ("signed in" no longer means "and sync is connected").
+
+sync-signedout-caption = Πάρτε μαζί σας το διαδίκτυο
+sync-signedout-description = Συγχρονίστε τους σελιδοδείκτες, το ιστορικό, τις καρτέλες, τους κωδικούς πρόσβασης, τα πρόσθετα, καθώς και τις προτιμήσεις σας σε όλες τις συσκευές σας.
+sync-signedout-account-signin2 =
+ .label = Σύνδεση στο { -sync-brand-short-name }…
+ .accesskey = ν
+# This message contains two links and two icon images.
+# `<img data-l10n-name="android-icon"/>` - Android logo icon
+# `<a data-l10n-name="android-link">` - Link to Android Download
+# `<img data-l10n-name="ios-icon">` - iOS logo icon
+# `<a data-l10n-name="ios-link">` - Link to iOS Download
+#
+# They can be moved within the sentence as needed to adapt
+# to your language, but should not be changed or translated.
+sync-mobile-promo = Κάντε λήψη του Firefox για <img data-l10n-name="android-icon"/> <a data-l10n-name="android-link">Android</a> ή <img data-l10n-name="ios-icon"/> <a data-l10n-name="ios-link">iOS</a> για συγχρονισμό με την κινητή σας συσκευή.
+
+## Firefox Account - Signed in
+
+sync-profile-picture =
+ .tooltiptext = Αλλαγή εικόνας προφίλ
+sync-sign-out =
+ .label = Αποσύνδεση…
+ .accesskey = ν
+sync-manage-account = Διαχείριση λογαριασμού
+ .accesskey = η
+sync-signedin-unverified = { $email } Μη επαληθευμένος.
+sync-signedin-login-failure = Παρακαλούμε συνδεθείτε ξανά για επανασύνδεση { $email }
+sync-resend-verification =
+ .label = Εκ νέου αποστολή επαλήθευσης
+ .accesskey = λ
+sync-remove-account =
+ .label = Αφαίρεση λογαριασμού
+ .accesskey = Α
+sync-sign-in =
+ .label = Σύνδεση
+ .accesskey = σ
+
+## Sync section - enabling or disabling sync.
+
+prefs-syncing-on = Συγχρονισμός: ΕΝΕΡΓΟΣ
+prefs-syncing-off = Συγχρονισμός: ΑΝΕΝΕΡΓΟΣ
+prefs-sync-setup =
+ .label = Ρύθμιση { -sync-brand-short-name }…
+ .accesskey = Ρ
+prefs-sync-offer-setup-label = Συγχρονίστε τους σελιδοδείκτες, το ιστορικό, τις καρτέλες, τους κωδικούς πρόσβασης, τα πρόσθετα και τις προτιμήσεις σας με όλες τις συσκευές σας.
+prefs-sync-now =
+ .labelnotsyncing = Συγχρονισμός τώρα
+ .accesskeynotsyncing = τ
+ .labelsyncing = Συγχρονισμός…
+
+## The list of things currently syncing.
+
+sync-currently-syncing-heading = Αυτή τη στιγμή, συγχρονίζονται τα εξής στοιχεία:
+sync-currently-syncing-bookmarks = Σελιδοδείκτες
+sync-currently-syncing-history = Ιστορικό
+sync-currently-syncing-tabs = Ανοικτές καρτέλες
+sync-currently-syncing-logins-passwords = Συνδέσεις και κωδικοί πρόσβασης
+sync-currently-syncing-addresses = Διευθύνσεις
+sync-currently-syncing-creditcards = Πιστωτικές κάρτες
+sync-currently-syncing-addons = Πρόσθετα
+sync-currently-syncing-prefs =
+ { PLATFORM() ->
+ [windows] Επιλογές
+ *[other] Προτιμήσεις
+ }
+sync-change-options =
+ .label = Αλλαγή…
+ .accesskey = Α
+
+## The "Choose what to sync" dialog.
+
+sync-choose-what-to-sync-dialog =
+ .title = Επιλέξτε στοιχεία για συγχρονισμό
+ .style = width: 36em; min-height: 35em;
+ .buttonlabelaccept = Αποθήκευση αλλαγών
+ .buttonaccesskeyaccept = π
+ .buttonlabelextra2 = Αποσύνδεση…
+ .buttonaccesskeyextra2 = Α
+sync-engine-bookmarks =
+ .label = Σελιδοδείκτες
+ .accesskey = δ
+sync-engine-history =
+ .label = Ιστορικό
+ .accesskey = ρ
+sync-engine-tabs =
+ .label = Ανοικτές καρτέλες
+ .tooltiptext = Μια λίστα με όλα όσα είναι ανοικτά στις συγχρονισμένες συσκευές
+ .accesskey = κ
+sync-engine-logins-passwords =
+ .label = Συνδέσεις και κωδικοί πρόσβασης
+ .tooltiptext = Αποθηκευμένα ονόματα χρήστη και κωδικοί πρόσβασης
+ .accesskey = Σ
+sync-engine-addresses =
+ .label = Διευθύνσεις
+ .tooltiptext = Διευθύνσεις αποστολής που έχετε αποθηκεύσει (μόνο για υπολογιστές)
+ .accesskey = ν
+sync-engine-creditcards =
+ .label = Πιστωτικές κάρτες
+ .tooltiptext = Ονόματα, αριθμοί και ημερομηνίες λήξης (μόνο για υπολογιστές)
+ .accesskey = Π
+sync-engine-addons =
+ .label = Πρόσθετα
+ .tooltiptext = Επεκτάσεις και θέματα για το Firefox για υπολογιστές
+ .accesskey = Π
+sync-engine-prefs =
+ .label =
+ { PLATFORM() ->
+ [windows] Επιλογές
+ *[other] Προτιμήσεις
+ }
+ .tooltiptext = Γενικές ρυθμίσεις, ρυθμίσεις απορρήτου και ασφάλειας που έχετε αλλάξει
+ .accesskey = ς
+
+## The device name controls.
+
+sync-device-name-header = Όνομα συσκευής
+sync-device-name-change =
+ .label = Αλλαγή ονόματος συσκευής…
+ .accesskey = λ
+sync-device-name-cancel =
+ .label = Ακύρωση
+ .accesskey = κ
+sync-device-name-save =
+ .label = Αποθήκευση
+ .accesskey = θ
+sync-connect-another-device = Σύνδεση άλλης συσκευής
+
+## Privacy Section
+
+privacy-header = Απόρρητο προγράμματος περιήγησης
+
+## Privacy Section - Logins and Passwords
+
+# The search keyword isn't shown to users but is used to find relevant settings in about:preferences.
+pane-privacy-logins-and-passwords-header = Συνδέσεις & κωδικοί πρόσβασης
+ .searchkeywords = { -lockwise-brand-short-name }
+# Checkbox to control whether UI is shown to users to save or fill logins/passwords.
+forms-ask-to-save-logins =
+ .label = Ερώτηση για αποθήκευση συνδέσεων και κωδικών πρόσβασης για ιστοσελίδες
+ .accesskey = β
+forms-exceptions =
+ .label = Εξαιρέσεις…
+ .accesskey = ξ
+forms-generate-passwords =
+ .label = Πρόταση και δημιουργία ισχυρών κωδικών πρόσβασης
+ .accesskey = ρ
+forms-breach-alerts =
+ .label = Εμφάνιση ειδοποιήσεων για κωδικούς πρόσβασης από παραβιασμένες ιστοσελίδες
+ .accesskey = μ
+forms-breach-alerts-learn-more-link = Μάθετε περισσότερα
+# Checkbox which controls filling saved logins into fields automatically when they appear, in some cases without user interaction.
+forms-fill-logins-and-passwords =
+ .label = Αυτόματη συμπλήρωση συνδέσεων και κωδικών πρόσβασης
+ .accesskey = ρ
+forms-saved-logins =
+ .label = Αποθηκευμένες συνδέσεις…
+ .accesskey = π
+forms-master-pw-use =
+ .label = Χρήση κύριου κωδικού πρόσβασης
+ .accesskey = Χ
+forms-primary-pw-use =
+ .label = Χρήση κύριου κωδικού πρόσβασης
+ .accesskey = Χ
+forms-primary-pw-learn-more-link = Μάθετε περισσότερα
+# This string uses the former name of the Primary Password feature
+# ("Master Password" in English) so that the preferences can be found
+# when searching for the old name. The accesskey is unused.
+forms-master-pw-change =
+ .label = Αλλαγή κύριου κωδικού…
+ .accesskey = γ
+forms-master-pw-fips-title = Βρίσκεστε σε λειτουργία FIPS . Το FIPS απαιτεί ένα μη-κενό Κύριο κωδικό.
+forms-primary-pw-change =
+ .label = Αλλαγή κύριου κωδικού πρόσβασης…
+ .accesskey = κ
+# Leave this message empty if the translation for "Primary Password" matches
+# "Master Password" in your language. If you're editing the FTL file directly,
+# use { "" } as the value.
+forms-primary-pw-former-name = { "" }
+forms-primary-pw-fips-title = Είστε σε λειτουργία FIPS. Το FIPS απαιτεί μη κενό κύριο κωδικό πρόσβασης.
+forms-master-pw-fips-desc = Αποτυχία αλλαγής κωδικού
+
+## OS Authentication dialog
+
+# This message can be seen by trying to add a Master Password.
+master-password-os-auth-dialog-message-win = Για να δημιουργήσετε κύριο κωδικό πρόσβασής σας, εισάγετε τα διαπιστευτήρια σύνδεσης των Windows. Αυτό συμβάλλει στην προστασία των λογαριασμών σας.
+# This message can be seen by trying to add a Master Password.
+# The macOS strings are preceded by the operating system with "Firefox is trying to "
+# and includes subtitle of "Enter password for the user "xxx" to allow this." These
+# notes are only valid for English. Please test in your locale.
+master-password-os-auth-dialog-message-macosx = δημιουργήσει κύριο κωδικό πρόσβασης
+# This message can be seen by trying to add a Primary Password.
+primary-password-os-auth-dialog-message-win = Για να δημιουργήσετε έναν κύριο κωδικό πρόσβασης, εισάγετε τα διαπιστευτήρια των Windows σας. Αυτό θα συμβάλλει στην ασφάλεια των λογαριασμών σας.
+# This message can be seen by trying to add a Primary Password.
+# The macOS strings are preceded by the operating system with "Firefox is trying to "
+# and includes subtitle of "Enter password for the user "xxx" to allow this." These
+# notes are only valid for English. Please test in your locale.
+primary-password-os-auth-dialog-message-macosx = δημιουργήσει κύριο κωδικό πρόσβασης
+master-password-os-auth-dialog-caption = { -brand-full-name }
+
+## Privacy Section - History
+
+history-header = Ιστορικό
+# This label is followed, on the same line, by a dropdown list of options
+# (Remember history, etc.).
+# In English it visually creates a full sentence, e.g.
+# "Firefox will" + "Remember history".
+#
+# If this doesn't work for your language, you can translate this message:
+# - Simply as "Firefox", moving the verb into each option.
+# This will result in "Firefox" + "Will remember history", etc.
+# - As a stand-alone message, for example "Firefox history settings:".
+history-remember-label = Το { -brand-short-name }
+ .accesskey = ο
+history-remember-option-all =
+ .label = Θα διατηρεί το ιστορικό
+history-remember-option-never =
+ .label = Δεν θα διατηρεί ποτέ το ιστορικό
+history-remember-option-custom =
+ .label = Θα κάνει χρήση προσαρμοσμένων ρυθμίσεων ιστορικού
+history-remember-description = Το { -brand-short-name } θα αποθηκεύει το ιστορικό περιήγησης, λήψεων, φορμών και αναζητήσεων.
+history-dontremember-description = Το { -brand-short-name } θα χρησιμοποιεί τις ίδιες ρυθμίσεις με την ιδιωτική περιήγηση και δεν θα διατηρεί το ιστορικό περιήγησης σας.
+history-private-browsing-permanent =
+ .label = Μόνιμη λειτουργία ιδιωτικής περιήγησης
+ .accesskey = ι
+history-remember-browser-option =
+ .label = Διατήρηση ιστορικού περιήγησης και λήψεων
+ .accesskey = τ
+history-remember-search-option =
+ .label = Διατήρηση ιστορικού αναζήτησης και φορμών
+ .accesskey = φ
+history-clear-on-close-option =
+ .label = Εκκαθάριση ιστορικού όταν κλείνει το { -brand-short-name }
+ .accesskey = κ
+history-clear-on-close-settings =
+ .label = Ρυθμίσεις…
+ .accesskey = θ
+history-clear-button =
+ .label = Εκκαθάριση ιστορικού…
+ .accesskey = σ
+
+## Privacy Section - Site Data
+
+sitedata-header = Cookies και δεδομένα ιστοσελίδων
+sitedata-total-size-calculating = Υπολογισμός μεγέθους δεδομένων ιστοσελίδας και προσωρινής μνήμης…
+# Variables:
+# $value (Number) - Value of the unit (for example: 4.6, 500)
+# $unit (String) - Name of the unit (for example: "bytes", "KB")
+sitedata-total-size = Τα αποθηκευμένα cookies, δεδομένα ιστοσελίδων και η προσωρινή μνήμη, αυτή τη στιγμή, καταλαμβάνουν { $value } { $unit } χώρου στο δίσκο.
+sitedata-learn-more = Μάθετε περισσότερα
+sitedata-delete-on-close =
+ .label = Διαγραφή cookies και δεδομένων ιστοσελίδων όταν κλείνει το { -brand-short-name }
+ .accesskey = c
+sitedata-delete-on-close-private-browsing = Στη λειτουργία μόνιμης ιδιωτικής περιήγησης, τα cookies και τα δεδομένα ιστοσελίδων θα διαγράφονται πάντα όταν κλείνει το { -brand-short-name }.
+sitedata-allow-cookies-option =
+ .label = Αποδοχή cookies και δεδομένων ιστοσελίδων
+ .accesskey = Α
+sitedata-disallow-cookies-option =
+ .label = Φραγή cookies και δεδομένων ιστοσελίδων
+ .accesskey = Φ
+# This label means 'type of content that is blocked', and is followed by a drop-down list with content types below.
+# The list items are the strings named sitedata-block-*-option*.
+sitedata-block-desc = Αποκλεισμένος τύπος
+ .accesskey = τ
+sitedata-option-block-cross-site-trackers =
+ .label = Ιχνηλάτες μεταξύ ιστοσελίδων
+sitedata-option-block-cross-site-and-social-media-trackers =
+ .label = Ιχνηλάτες μεταξύ ιστοσελίδων και κοινωνικών μέσων
+sitedata-option-block-cross-site-tracking-cookies-including-social-media =
+ .label = Cookies καταγραφής μεταξύ ιστοσελίδων — περιλαμβάνει cookies κοινωνικών δικτύων
+sitedata-option-block-cross-site-cookies-including-social-media =
+ .label = Cookies μεταξύ ιστοσελίδων — περιλαμβάνει cookies κοινωνικών δικτύων
+sitedata-option-block-cross-site-and-social-media-trackers-plus-isolate =
+ .label = Cookies ιχνηλάτησης και κοινωνικών μέσω μεταξύ ιστοσελίδων και απομόνωση των υπόλοιπων
+sitedata-option-block-unvisited =
+ .label = Cookies από ιστοσελίδες που δεν έχετε επισκεφθεί
+sitedata-option-block-all-third-party =
+ .label = Όλα τα cookies τρίτων (ενδέχεται να προκαλέσει δυσλειτουργία σε ιστοσελίδες)
+sitedata-option-block-all =
+ .label = Όλα τα cookies (θα προκαλέσει δυσλειτουργία σε ιστοσελίδες)
+sitedata-clear =
+ .label = Απαλοιφή δεδομένων…
+ .accesskey = ι
+sitedata-settings =
+ .label = Διαχείριση δεδομένων…
+ .accesskey = Δ
+sitedata-cookies-permissions =
+ .label = Διαχείριση δικαιωμάτων…
+ .accesskey = δ
+sitedata-cookies-exceptions =
+ .label = Διαχείριση εξαιρέσεων…
+ .accesskey = σ
+
+## Privacy Section - Address Bar
+
+addressbar-header = Γραμμή διευθύνσεων
+addressbar-suggest = Κατά τη χρήση της γραμμής διευθύνσεων, να γίνεται πρόταση
+addressbar-locbar-history-option =
+ .label = Ιστορικού περιήγησης
+ .accesskey = Ι
+addressbar-locbar-bookmarks-option =
+ .label = Σελιδοδεικτών
+ .accesskey = δ
+addressbar-locbar-openpage-option =
+ .label = Ανοικτών καρτελών
+ .accesskey = Ο
+# Shortcuts refers to the shortcut tiles on the new tab page, previously known as top sites. Translation should be consistent.
+addressbar-locbar-shortcuts-option =
+ .label = Συντομεύσεις
+ .accesskey = Σ
+addressbar-locbar-topsites-option =
+ .label = Κορυφαίων ιστοσελίδων
+ .accesskey = Κ
+addressbar-locbar-engines-option =
+ .label = Μηχανές αναζήτησης
+ .accesskey = α
+addressbar-suggestions-settings = Αλλαγή προτιμήσεων για τις προτάσεις μηχανών αναζήτησης
+
+## Privacy Section - Content Blocking
+
+content-blocking-enhanced-tracking-protection = Ενισχυμένη προστασία από καταγραφή
+content-blocking-section-top-level-description = Οι ιχνηλάτες σάς ακολουθούν στο διαδίκτυο για να συλλέξουν πληροφορίες σχετικά με τις συνήθειες και τα ενδιαφέροντά σας. Το { -brand-short-name } αποκλείει πολλούς από αυτούς τους ιχνηλάτες και άλλα κακόβουλα σενάρια.
+content-blocking-learn-more = Μάθετε περισσότερα
+content-blocking-fpi-incompatibility-warning = Χρησιμοποιείτε τη λειτουργία First Party Isolation (FPI), που παρακάμπτει ορισμένες ρυθμίσεις του { -brand-short-name } σχετικά με τα cookies.
+
+## These strings are used to define the different levels of
+## Enhanced Tracking Protection.
+
+# "Standard" in this case is an adjective, meaning "default" or "normal".
+enhanced-tracking-protection-setting-standard =
+ .label = Τυπική
+ .accesskey = Τ
+enhanced-tracking-protection-setting-strict =
+ .label = Αυστηρή
+ .accesskey = Α
+enhanced-tracking-protection-setting-custom =
+ .label = Προσαρμοσμένη
+ .accesskey = Π
+
+##
+
+content-blocking-etp-standard-desc = Ισορροπία μεταξύ προστασίας και επιδόσεων. Οι σελίδες θα φορτώνονται κανονικά.
+content-blocking-etp-strict-desc = Ισχυρότερη προστασία, αλλά πιθανή δυσλειτουργία μερικών ιστοσελίδων ή περιεχομένου.
+content-blocking-etp-custom-desc = Επιλέξτε ιχνηλάτες και σενάρια για αποκλεισμό.
+content-blocking-private-windows = Περιεχόμενο καταγραφής σε ιδιωτικά παράθυρα
+content-blocking-cross-site-cookies = Cookies μεταξύ ιστοσελίδων
+content-blocking-cross-site-tracking-cookies = Cookies ιχνηλάτησης μεταξύ ιστοσελίδων
+content-blocking-cross-site-tracking-cookies-plus-isolate = Cookies ιχνηλάτησης μεταξύ ιστοσελίδων και απομόνωση των υπόλοιπων
+content-blocking-social-media-trackers = Ιχνηλάτες κοινωνικών δικτύων
+content-blocking-all-cookies = Όλα τα cookies
+content-blocking-unvisited-cookies = Cookies από ιστοσελίδες που δεν έχετε επισκεφθεί
+content-blocking-all-windows-tracking-content = Περιεχόμενο καταγραφής σε όλα τα παράθυρα
+content-blocking-all-third-party-cookies = Όλα τα cookies τρίτων
+content-blocking-cryptominers = Cryptominers
+content-blocking-fingerprinters = Fingerprinters
+content-blocking-warning-title = Προσοχή!
+content-blocking-and-isolating-etp-warning-description = Η φραγή ιχνηλατών και η απομόνωση cookies μπορούν να επηρεάσουν τη λειτουργικότητα ορισμένων ιστοσελίδων. Φορτώστε εκ νέου μια σελίδα με ιχνηλάτες για να φορτώσετε όλο το περιεχόμενο.
+content-blocking-and-isolating-etp-warning-description-2 = Αυτή η ρύθμιση ενδέχεται να εμποδίσει την εμφάνιση περιεχομένου ή τη σωστή λειτουργία σε ορισμένες ιστοσελίδες. Αν μια ιστοσελίδα δεν λειτουργεί σωστά, μπορείτε να απενεργοποιήσετε την προστασία από καταγραφή για να γίνει φόρτωση όλου του περιεχομένου σε αυτή την ιστοσελίδα.
+content-blocking-warning-learn-how = Μάθετε πώς
+content-blocking-reload-description = Θα πρέπει να φορτώσετε ξανά τις καρτέλες σας για εφαρμογή των αλλαγών αυτών.
+content-blocking-reload-tabs-button =
+ .label = Ανανέωση όλων των καρτελών
+ .accesskey = Α
+content-blocking-tracking-content-label =
+ .label = Περιεχόμενο καταγραφής
+ .accesskey = Π
+content-blocking-tracking-protection-option-all-windows =
+ .label = Σε όλα τα παράθυρα
+ .accesskey = ό
+content-blocking-option-private =
+ .label = Μόνο σε ιδιωτικά παράθυρα
+ .accesskey = ι
+content-blocking-tracking-protection-change-block-list = Αλλαγή λίστας φραγής
+content-blocking-cookies-label =
+ .label = Cookies
+ .accesskey = C
+content-blocking-expand-section =
+ .tooltiptext = Περισσότερες πληροφορίες
+# Cryptomining refers to using scripts on websites that can use a computer’s resources to mine cryptocurrency without a user’s knowledge.
+content-blocking-cryptominers-label =
+ .label = Cryptominers
+ .accesskey = y
+# Browser fingerprinting is a method of tracking users by the configuration and settings information (their "digital fingerprint")
+# that is visible to websites they browse, rather than traditional tracking methods such as IP addresses and unique cookies.
+content-blocking-fingerprinters-label =
+ .label = Fingerprinters
+ .accesskey = F
+
+## Privacy Section - Tracking
+
+tracking-manage-exceptions =
+ .label = Διαχείριση εξαιρέσεων…
+ .accesskey = χ
+
+## Privacy Section - Permissions
+
+permissions-header = Δικαιώματα
+permissions-location = Τοποθεσία
+permissions-location-settings =
+ .label = Ρυθμίσεις…
+ .accesskey = θ
+permissions-xr = Εικονική πραγματικότητα
+permissions-xr-settings =
+ .label = Ρυθμίσεις…
+ .accesskey = μ
+permissions-camera = Κάμερα
+permissions-camera-settings =
+ .label = Ρυθμίσεις…
+ .accesskey = θ
+permissions-microphone = Μικρόφωνο
+permissions-microphone-settings =
+ .label = Ρυθμίσεις…
+ .accesskey = θ
+permissions-notification = Ειδοποιήσεις
+permissions-notification-settings =
+ .label = Ρυθμίσεις…
+ .accesskey = θ
+permissions-notification-link = Μάθετε περισσότερα
+permissions-notification-pause =
+ .label = Παύση ειδοποιήσεων μέχρι να επανεκκινηθεί το { -brand-short-name }
+ .accesskey = ε
+permissions-autoplay = Αυτόματη αναπαραγωγή
+permissions-autoplay-settings =
+ .label = Ρυθμίσεις...
+ .accesskey = θ
+permissions-block-popups =
+ .label = Φραγή αναδυόμενων παραθύρων
+ .accesskey = Φ
+permissions-block-popups-exceptions =
+ .label = Εξαιρέσεις…
+ .accesskey = Ε
+permissions-addon-install-warning =
+ .label = Προειδοποίηση όταν οι ιστοσελίδες προσπαθούν να εγκαταστήσουν πρόσθετα
+ .accesskey = Π
+permissions-addon-exceptions =
+ .label = Εξαιρέσεις…
+ .accesskey = Ε
+permissions-a11y-privacy-checkbox =
+ .label = Απαγόρευση πρόσβασης στο πρόγραμμα περιήγησής σας από υπηρεσίες προσβασιμότητας
+ .accesskey = π
+permissions-a11y-privacy-link = Μάθετε περισσότερα
+
+## Privacy Section - Data Collection
+
+collection-header = Συλλογή και χρήση δεδομένων { -brand-short-name }
+collection-description = Αγωνιζόμαστε για να σάς παρέχουμε επιλογές και συλλέγουμε μόνο αυτά που χρειαζόμαστε, ώστε να παρέχουμε και να βελτιώσουμε το { -brand-short-name } για όλους. Ζητούμε πάντα την άδεια πριν λάβουμε προσωπικές πληροφορίες.
+collection-privacy-notice = Σημείωση απορρήτου
+collection-health-report-telemetry-disabled = Δεν επιτρέπεται πλέον στο { -vendor-short-name } η συλλογή τεχνικών δεδομένων και δεδομένων αλληλεπίδρασης. Όλα τα προηγούμενα δεδομένα θα διαγραφούν μέσα σε 30 ημέρες.
+collection-health-report-telemetry-disabled-link = Μάθετε περισσότερα
+collection-health-report =
+ .label = Να επιτρέπεται στο { -brand-short-name } η αποστολή τεχνικών και διαδραστικών δεδομένων στη { -vendor-short-name }
+ .accesskey = δ
+collection-health-report-link = Μάθετε περισσότερα
+collection-studies =
+ .label = Να επιτρέπεται στο { -brand-short-name } να εγκαθιστά και να εκτελεί μελέτες
+collection-studies-link = Προβολή μελετών του { -brand-short-name }
+addon-recommendations =
+ .label = Αποδοχή εξατομικευμένων προτάσεων για επεκτάσεις από το { -brand-short-name }
+addon-recommendations-link = Μάθετε περισσότερα
+# This message is displayed above disabled data sharing options in developer builds
+# or builds with no Telemetry support available.
+collection-health-report-disabled = Η αναφορά δεδομένων είναι ανενεργή για αυτή την έκδοση
+collection-backlogged-crash-reports =
+ .label = Να επιτρέπεται στο { -brand-short-name } η αποστολή αναφορών σφαλμάτων που εκκρεμούν εκ μέρους σας
+ .accesskey = σ
+collection-backlogged-crash-reports-link = Μάθετε περισσότερα
+
+## Privacy Section - Security
+##
+## It is important that wording follows the guidelines outlined on this page:
+## https://developers.google.com/safe-browsing/developers_guide_v2#AcceptableUsage
+
+security-header = Ασφάλεια
+security-browsing-protection = Παραπλανητικό περιεχόμενο και προστασία από επικίνδυνο λογισμικό
+security-enable-safe-browsing =
+ .label = Φραγή επικίνδυνου και παραπλανητικού περιεχομένου
+ .accesskey = Α
+security-enable-safe-browsing-link = Μάθετε περισσότερα
+security-block-downloads =
+ .label = Φραγή επικίνδυνων λήψεων
+ .accesskey = λ
+security-block-uncommon-software =
+ .label = Προειδοποίηση για ανεπιθύμητο και ασυνήθιστο λογισμικό
+ .accesskey = Σ
+
+## Privacy Section - Certificates
+
+certs-header = Πιστοποιητικά
+certs-personal-label = Όταν ένας διακομιστής απαιτεί το προσωπικό σας πιστοποιητικό
+certs-select-auto-option =
+ .label = Αυτόματη επιλογή
+ .accesskey = Α
+certs-select-ask-option =
+ .label = Ερώτηση κάθε φορά
+ .accesskey = Ε
+certs-enable-ocsp =
+ .label = Ερώτηση στους διακομιστές για OCSP ανταπόκριση, ώστε να επιβεβαιωθεί η τρέχουσα εγκυρότητα των πιστοποιητικών
+ .accesskey = Ρ
+certs-view =
+ .label = Προβολή πιστοποιητικών…
+ .accesskey = Π
+certs-devices =
+ .label = Συσκευές ασφαλείας…
+ .accesskey = Σ
+space-alert-learn-more-button =
+ .label = Μάθετε περισσότερα
+ .accesskey = Μ
+space-alert-over-5gb-pref-button =
+ .label =
+ { PLATFORM() ->
+ [windows] Άνοιγμα επιλογών
+ *[other] Άνοιγμα προτιμήσεων
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] Π
+ *[other] Π
+ }
+space-alert-over-5gb-message =
+ { PLATFORM() ->
+ [windows] Δεν απομένει χώρος στο δίσκο για το { -brand-short-name }. Το περιεχόμενο των ιστοσελίδων ενδέχεται να μην εμφανίζεται κανονικά. Μπορείτε να εκκαθαρίσετε τα αποθηκευμένα δεδομένα στις Επιλογές > Απόρρητο & ασφάλεια > Cookies και δεδομένα ιστοσελίδων.
+ *[other] Δεν απομένει χώρος στο δίσκο για το { -brand-short-name }. Το περιεχόμενο των ιστοσελίδων ενδέχεται να μην εμφανίζεται κανονικά. Μπορείτε να εκκαθαρίσετε τα αποθηκευμένα δεδομένα στις Προτιμήσεις > Απόρρητο & ασφάλεια > Cookies και δεδομένα ιστοσελίδων.
+ }
+space-alert-under-5gb-ok-button =
+ .label = OK, το 'πιασα
+ .accesskey = K
+space-alert-under-5gb-message = Το { -brand-short-name } δεν έχει επαρκή χώρο δίσκου. Το περιεχόμενο των ιστοσελίδων ενδέχεται να μην εμφανίζεται σωστά. Επισκεφθείτε το “Μάθετε περισσότερα” για να βελτιστοποιήσετε τη χρήση δίσκου σας για καλύτερη εμπειρία περιήγησης.
+
+## Privacy Section - HTTPS-Only
+
+httpsonly-header = Λειτουργία Μόνο-HTTPS
+httpsonly-description = Το HTTPS παρέχει μια ασφαλή, κρυπτογραφημένη σύνδεση μεταξύ του { -brand-short-name } και των ιστοσελίδων που επισκέπτεστε. Οι περισσότερες ιστοσελίδες υποστηρίζουν HTTPS και αν είναι ενεργή η λειτουργία μόνο-HTTPS, τότε το { -brand-short-name } θα αναβαθμίζει όλες τις συνδέσεις σε HTTPS.
+httpsonly-learn-more = Μάθετε περισσότερα
+httpsonly-radio-enabled =
+ .label = Ενεργοποίηση λειτουργίας Μόνο-HTTPS σε όλα τα παράθυρα
+httpsonly-radio-enabled-pbm =
+ .label = Ενεργοποίηση Μόνο-HTTPS μόνο σε ιδιωτικά παράθυρα
+httpsonly-radio-disabled =
+ .label = Να μην ενεργοποιηθεί η λειτουργία Μόνο-HTTPS
+
+## The following strings are used in the Download section of settings
+
+desktop-folder-name = Επιφάνεια εργασίας
+downloads-folder-name = Στοιχεία λήψεων
+choose-download-folder-title = Επιλογή φακέλου λήψεων:
+# Variables:
+# $service-name (String) - Name of a cloud storage provider like Dropbox, Google Drive, etc...
+save-files-to-cloud-storage =
+ .label = Αποθήκευση αρχείων στο { $service-name }
diff --git a/l10n-el/browser/browser/preferences/selectBookmark.ftl b/l10n-el/browser/browser/preferences/selectBookmark.ftl
new file mode 100644
index 0000000000..3ab60ec02a
--- /dev/null
+++ b/l10n-el/browser/browser/preferences/selectBookmark.ftl
@@ -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/.
+
+select-bookmark-window =
+ .title = Ορισμός αρχικής σελίδας
+ .style = width: 32em;
+
+select-bookmark-desc = Επιλέξτε ένα σελιδοδείκτη για να γίνει η αρχική σας σελίδα. Αν επιλέξετε ένα φάκελο, οι σελιδοδείκτες που βρίσκονται σε αυτό το φάκελο θα ανοίγουν σε καρτέλες.
diff --git a/l10n-el/browser/browser/preferences/siteDataSettings.ftl b/l10n-el/browser/browser/preferences/siteDataSettings.ftl
new file mode 100644
index 0000000000..6fff476b48
--- /dev/null
+++ b/l10n-el/browser/browser/preferences/siteDataSettings.ftl
@@ -0,0 +1,57 @@
+# 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/.
+
+
+## Settings
+
+site-data-settings-window =
+ .title = Διαχείριση cookies και δεδομένων ιστοσελίδων
+site-data-settings-description = Οι ακόλουθες ιστοσελίδες αποθηκεύουν cookies και δεδομένα στον υπολογιστή σας. Το { -brand-short-name } διατηρεί τα δεδομένα από τις ιστοσελίδες με μόνιμη αποθήκευση μέχρι να τα διαγράψετε, ενώ διαγράφει τα δεδομένα από ιστοσελίδες με μη μόνιμη αποθήκευση, όταν χρειάζεται αποθηκευτικός χώρος.
+site-data-search-textbox =
+ .placeholder = Αναζήτηση ιστοσελίδων
+ .accesskey = Α
+site-data-column-host =
+ .label = Ιστοσελίδα
+site-data-column-cookies =
+ .label = Cookies
+site-data-column-storage =
+ .label = Αποθήκευση
+site-data-column-last-used =
+ .label = Τελευταία χρήση
+# This label is used in the "Host" column for local files, which have no host.
+site-data-local-file-host = (τοπικό αρχείο)
+site-data-remove-selected =
+ .label = Αφαίρεση επιλεγμένων
+ .accesskey = α
+site-data-button-cancel =
+ .label = Ακύρωση
+ .accesskey = Α
+site-data-button-save =
+ .label = Αποθήκευση αλλαγών
+ .accesskey = λ
+site-data-settings-dialog =
+ .buttonlabelaccept = Αποθήκευση αλλαγών
+ .buttonaccesskeyaccept = λ
+# Variables:
+# $value (Number) - Value of the unit (for example: 4.6, 500)
+# $unit (String) - Name of the unit (for example: "bytes", "KB")
+site-storage-usage =
+ .value = { $value } { $unit }
+site-storage-persistent =
+ .value = { site-storage-usage.value } (Επίμονο)
+site-data-remove-all =
+ .label = Αφαίρεση όλων
+ .accesskey = φ
+site-data-remove-shown =
+ .label = Αφαίρεση όλων των προβεβλημένων
+ .accesskey = φ
+
+## Removing
+
+site-data-removing-dialog =
+ .title = { site-data-removing-header }
+ .buttonlabelaccept = Αφαίρεση
+site-data-removing-header = Αφαίρεση των cookies και των δεδομένων ιστοσελίδων
+site-data-removing-desc = Η αφαίρεση των cookies και των δεδομένων ιστοσελίδων ενδέχεται να σάς αποσυνδέσει από ιστοσελίδες. Θέλετε σίγουρα να κάνετε τις αλλαγές;
+site-data-removing-table = Θα αφαιρεθούν τα cookies και τα δεδομένα ιστοσελίδων για τις εξής ιστοσελίδες
diff --git a/l10n-el/browser/browser/preferences/translation.ftl b/l10n-el/browser/browser/preferences/translation.ftl
new file mode 100644
index 0000000000..809daae636
--- /dev/null
+++ b/l10n-el/browser/browser/preferences/translation.ftl
@@ -0,0 +1,33 @@
+# 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/.
+
+translation-window =
+ .title = Εξαιρέσεις - Μετάφραση
+ .style = width: 36em
+translation-close-key =
+ .key = w
+translation-languages-disabled-desc = Η μετάφραση δεν θα προσφέρεται για τις εξής γλώσσες
+translation-languages-column =
+ .label = Γλώσσες
+translation-languages-button-remove =
+ .label = Αφαίρεση γλώσσας
+ .accesskey = φ
+translation-languages-button-remove-all =
+ .label = Αφαίρεση όλων των γλωσσών
+ .accesskey = λ
+translation-sites-disabled-desc = Η μετάφραση δεν θα προσφέρεται για τις εξής ιστοσελίδες
+translation-sites-column =
+ .label = Ιστοσελίδες
+translation-sites-button-remove =
+ .label = Αφαίρεση ιστοσελίδας
+ .accesskey = ι
+translation-sites-button-remove-all =
+ .label = Αφαίρεση όλων των ιστοσελίδων
+ .accesskey = ν
+translation-button-close =
+ .label = Κλείσιμο
+ .accesskey = Κ
+translation-dialog =
+ .buttonlabelaccept = Κλείσιμο
+ .buttonaccesskeyaccept = Κ
diff --git a/l10n-el/browser/browser/protections.ftl b/l10n-el/browser/browser/protections.ftl
new file mode 100644
index 0000000000..26153c2023
--- /dev/null
+++ b/l10n-el/browser/browser/protections.ftl
@@ -0,0 +1,239 @@
+# 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/.
+
+# Variables:
+# $count (Number) - Number of tracking events blocked.
+graph-week-summary =
+ { $count ->
+ [one] Το { -brand-short-name } απέκλεισε { $count } ιχνηλάτη την προηγούμενη εβδομάδα
+ *[other] Το { -brand-short-name } απέκλεισε { $count } ιχνηλάτες την προηγούμενη εβδομάδα
+ }
+
+# Variables:
+# $count (Number) - Number of tracking events blocked.
+# $earliestDate (Number) - Unix timestamp in ms, representing a date. The
+# earliest date recorded in the database.
+graph-total-tracker-summary =
+ { $count ->
+ [one] <b>{ $count }</b> ιχνηλάτης αποκλείστηκε από τις { DATETIME($earliestDate, day: "numeric", month: "long", year: "numeric") }
+ *[other] <b>{ $count }</b> ιχνηλάτες αποκλείστηκαν από τις { DATETIME($earliestDate, day: "numeric", month: "long", year: "numeric") }
+ }
+
+# Text displayed instead of the graph when in Private Mode
+graph-private-window = Το { -brand-short-name } συνεχίζει να αποκλείει τους ιχνηλάτες στα ιδιωτικά παράθυρα, αλλά δεν διατηρείται αρχείο καταγραφής των αποκλεισμένων στοιχείων.
+# Weekly summary of the graph when the graph is empty in Private Mode
+graph-week-summary-private-window = Αποκλεισμένοι ιχνηλάτες του { -brand-short-name } αυτή την εβδομάδα
+
+protection-report-webpage-title = Πίνακας προστασίας
+protection-report-page-content-title = Πίνακας προστασίας
+# This message shows when all privacy protections are turned off, which is why we use the word "can", Firefox is able to protect your privacy, but it is currently not.
+protection-report-page-summary = Το { -brand-short-name } μπορεί να προστατεύει το απόρρητό σας στο παρασκήνιο, ενώ περιηγείστε. Ορίστε μια εξατομικευμένη περίληψη αυτών των μεθόδων προστασίας, καθώς και τα εργαλεία για να αποκτήσετε τον έλεγχο της διαδικτυακής σας ασφάλειας.
+# This message shows when at least some protections are turned on, we are more assertive compared to the message above, Firefox is actively protecting you.
+protection-report-page-summary-default = Το { -brand-short-name } προστατεύει το απόρρητό σας στο παρασκήνιο, ενώ περιηγείστε. Ορίστε μια εξατομικευμένη περίληψη αυτών των μεθόδων προστασίας, καθώς και τα εργαλεία για να αποκτήσετε τον έλεγχο της διαδικτυακής σας ασφάλειας.
+
+protection-report-settings-link = Διαχείριση ρυθμίσεων απορρήτου και ασφαλείας
+
+etp-card-title-always = Ενισχυμένη προστασία από καταγραφή: Πάντα ενεργή
+etp-card-title-custom-not-blocking = Ενισχυμένη προστασία από καταγραφή: Ανενεργή
+etp-card-content-description = Το { -brand-short-name } σταματά αυτόματα τις εταιρείες που σας παρακολουθούν κρυφά στο διαδίκτυο.
+protection-report-etp-card-content-custom-not-blocking = Όλες οι μέθοδοι προστασίας είναι ανενεργές. Επιλέξτε ποιοι ιχνηλάτες θα αποκλείονται από τις ρυθμίσεις προστασίας του { -brand-short-name }.
+protection-report-manage-protections = Διαχείριση ρυθμίσεων
+
+# This string is used to label the X axis of a graph. Other days of the week are generated via Intl.DateTimeFormat,
+# capitalization for this string should match the output for your locale.
+graph-today = Σήμερα
+
+# This string is used to describe the graph for screenreader users.
+graph-legend-description = Ένα γράφημα με το συνολικό αριθμό κάθε τύπου ιχνηλάτη που έχει αποκλειστεί αυτή την εβδομάδα.
+
+social-tab-title = Ιχνηλάτες κοινωνικών δικτύων
+social-tab-contant = Τα κοινωνικά δίκτυα τοποθετούν ιχνηλάτες σε άλλες ιστοσελίδες για να παρακολουθούν ό,τι κάνετε και βλέπετε στο διαδίκτυο. Αυτό επιτρέπει στις εταιρείες κοινωνικών μέσων να μάθουν περισσότερα για εσάς πέρα από αυτά που κοινοποιείτε στα προφίλ κοινωνικών μέσων.<a data-l10n-name="learn-more-link">Μάθετε περισσότερα</a>
+
+cookie-tab-title = Cookies ιχνηλάτησης μεταξύ ιστοσελίδων
+cookie-tab-content = Αυτά τα cookies σας ακολουθούν από ιστοσελίδα σε ιστοσελίδα για να συλλέξουν δεδομένα για ό,τι κάνετε στο διαδίκτυο. Δημιουργούνται από τρίτους, όπως διαφημιστές και εταιρείες ανάλυσης. Η φραγή cookies ιχνηλάτησης μεταξύ ιστοσελίδων μειώνει τον αριθμό των διαφημίσεων που σας παρακολουθούν. <a data-l10n-name="learn-more-link">Μάθετε περισσότερα</a>
+
+tracker-tab-title = Περιεχόμενο καταγραφής
+tracker-tab-description = Οι ιστοσελίδες ενδέχεται να φορτώνουν εξωτερικές διαφημίσεις, βίντεο και άλλο περιεχόμενο με κώδικα καταγραφής. Η φραγή περιεχομένου καταγραφής μπορεί να συμβάλλει στην ταχύτερη φόρτωση των ιστοσελίδων, αλλά ορισμένα κουμπιά, φόρμες και πεδία σύνδεσης ενδέχεται να μην λειτουργούν. <a data-l10n-name="learn-more-link">Μάθετε περισσότερα</a>
+
+fingerprinter-tab-title = Fingerprinters
+fingerprinter-tab-content = Τα fingerprinters συλλέγουν ρυθμίσεις από το πρόγραμμα περιήγησης και τον υπολογιστή σας για να δημιουργήσει ένα προφίλ για εσάς. Με τη χρήση αυτού του ψηφιακού αποτυπώματος, μπορούν να σας παρακολουθούν σε διάφορες ιστοσελίδες. <a data-l10n-name="learn-more-link">Μάθετε περισσότερα</a>
+
+cryptominer-tab-title = Cryptominers
+cryptominer-tab-content = Τα cryptominers χρησιμοποιούν την υπολογιστική ισχύ του συστήματός σας για να εξορύξουν κρυπτονομίσματα. Τα σενάρια εξόρυξης κρυπτονομισμάτων εξαντλούν την μπαταρία σας, επιβραδύνουν τον υπολογιστή σας, ενώ ενδέχεται να δείτε αυξημένες χρεώσεις στο λογαριασμό τους ρεύματος. <a data-l10n-name="learn-more-link">Μάθετε περισσότερα</a>
+
+protections-close-button2 =
+ .aria-label = Κλείσιμο
+ .title = Κλείσιμο
+
+mobile-app-title = Φραγή ιχνηλατών διαφημίσεων σε περισσότερες συσκευές
+mobile-app-card-content = Χρησιμοποιήστε το πρόγραμμα περιήγησης για κινητές συσκευές με ενσωματωμένη προστασία από την καταγραφή διαφημίσεων.
+mobile-app-links = Πρόγραμμα περιήγησης { -brand-product-name } για <a data-l10n-name="android-mobile-inline-link">Android</a> και <a data-l10n-name="ios-mobile-inline-link">iOS</a>
+
+lockwise-title = Δεν θα ξεχάσετε ποτέ ξανά κωδικό πρόσβασης
+lockwise-title-logged-in2 = Διαχείριση κωδικών πρόσβασης
+lockwise-header-content = Το { -lockwise-brand-name } αποθηκεύει με ασφάλεια τους κωδικούς πρόσβασης στο πρόγραμμα περιήγησής σας.
+lockwise-header-content-logged-in = Αποθηκεύστε και συγχρονίστε με ασφάλεια τους κωδικούς πρόσβασής σας σε όλες τις συσκευές σας.
+protection-report-save-passwords-button = Αποθήκευση κωδικών πρόσβασης
+ .title = Αποθήκευση κωδικών πρόσβασης στο { -lockwise-brand-short-name }
+protection-report-manage-passwords-button = Διαχείριση κωδικών πρόσβασης
+ .title = Διαχείριση κωδικών πρόσβασης στο { -lockwise-brand-short-name }
+lockwise-mobile-app-title = Πάρτε τους κωδικούς πρόσβασής σας παντού
+lockwise-no-logins-card-content = Χρησιμοποιήστε τους αποθηκευμένους κωδικούς πρόσβασης του { -brand-short-name } σε όλες τις συσκευές.
+lockwise-app-links = { -lockwise-brand-name } για <a data-l10n-name="lockwise-android-inline-link">Android</a> και <a data-l10n-name="lockwise-ios-inline-link">iOS</a>
+
+# Variables:
+# $count (Number) - Number of passwords exposed in data breaches.
+lockwise-scanned-text-breached-logins =
+ { $count ->
+ [one] 1 κωδικός πρόσβασης ενδέχεται να έχει εκτεθεί σε παραβίαση δεδομένων.
+ *[other] { $count } κωδικοί πρόσβασης ενδέχεται να έχουν εκτεθεί σε παραβίαση δεδομένων.
+ }
+
+# While English doesn't use the number in the plural form, you can add $count to your language
+# if needed for grammatical reasons.
+# Variables:
+# $count (Number) - Number of passwords stored in Lockwise.
+lockwise-scanned-text-no-breached-logins =
+ { $count ->
+ [one] 1 κωδικός πρόσβασης αποθηκεύτηκε με ασφάλεια.
+ *[other] Οι κωδικοί πρόσβασής σας αποθηκεύτηκαν με ασφάλεια.
+ }
+lockwise-how-it-works-link = Πώς λειτουργεί
+
+turn-on-sync = Ενεργοποίηση { -sync-brand-short-name }…
+ .title = Μετάβαση στις προτιμήσεις συγχρονισμού
+
+monitor-title = Προσέξτε για διαρροές δεδομένων
+monitor-link = Πώς λειτουργεί
+monitor-header-content-no-account = Ελέγξτε το { -monitor-brand-name } για να δείτε αν έχετε επηρεαστεί από γνωστή παραβίαση δεδομένων και λάβετε ειδοποιήσεις σχετικά με νέες παραβιάσεις.
+monitor-header-content-signed-in = Το { -monitor-brand-name } σας προειδοποιεί αν οι πληροφορίες σας έχουν εμφανιστεί σε παραβίαση δεδομένων.
+monitor-sign-up-link = Εγγραφή για ειδοποιήσεις παραβιάσεων
+ .title = Εγγραφή για ειδοποιήσεις παραβιάσεων στο { -monitor-brand-name }
+auto-scan = Έγινε αυτόματη σάρωση σήμερα
+
+monitor-emails-tooltip =
+ .title = Προβολή διευθύνσεων email υπό εποπτεία στο { -monitor-brand-short-name }
+monitor-breaches-tooltip =
+ .title = Προβολή γνωστών παραβιάσεων δεδομένων στο { -monitor-brand-short-name }
+monitor-passwords-tooltip =
+ .title = Προβολή εκτεθειμένων κωδικών πρόσβασης στο { -monitor-brand-short-name }
+
+# This string is displayed after a large numeral that indicates the total number
+# of email addresses being monitored. Don’t add $count to
+# your localization, because it would result in the number showing twice.
+info-monitored-emails =
+ { $count ->
+ [one] διεύθυνση email υπό εποπτεία
+ *[other] διευθύνσεις email υπό εποπτεία
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of known data breaches. Don’t add $count to
+# your localization, because it would result in the number showing twice.
+info-known-breaches-found =
+ { $count ->
+ [one] γνωστή παραβίαση δεδομένων έχει εκθέσει τις πληροφορίες σας
+ *[other] γνωστές παραβιάσεις δεδομένων έχουν εκθέσει τις πληροφορίες σας
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of known data breaches that are marked as resolved by the user. Don’t add $count
+# to your localization, because it would result in the number showing twice.
+info-known-breaches-resolved =
+ { $count ->
+ [one] Γνωστή παραβίαση δεδομένων επισημάνθηκε ως επιλυμένη
+ *[other] Γνωστές παραβιάσεις δεδομένων επισημάνθηκαν ως επιλυμένες
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of exposed passwords. Don’t add $count to
+# your localization, because it would result in the number showing twice.
+info-exposed-passwords-found =
+ { $count ->
+ [one] κωδικός πρόσβασης έχει εκτεθεί σε όλες τις παραβιάσεις
+ *[other] κωδικοί πρόσβασης έχουν εκτεθεί σε όλες τις παραβιάσεις
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of exposed passwords that are marked as resolved by the user. Don’t add $count
+# to your localization, because it would result in the number showing twice.
+info-exposed-passwords-resolved =
+ { $count ->
+ [one] Εκτεθειμένος κωδικός πρόσβασης σε μη επιλυμένες παραβιάσεις
+ *[other] Εκτεθειμένοι κωδικοί πρόσβασης σε μη επιλυμένες παραβιάσεις
+ }
+
+monitor-no-breaches-title = Καλά νέα!
+monitor-no-breaches-description = Δεν έχετε γνωστές παραβιάσεις. Αν αλλάξει αυτό, θα σας ενημερώσουμε.
+monitor-view-report-link = Προβολή αναφοράς
+ .title = Επίλυση παραβιάσεων στο { -monitor-brand-short-name }
+monitor-breaches-unresolved-title = Επίλυση παραβιάσεων
+monitor-breaches-unresolved-description = Αφού ελέγξετε τις λεπτομέρειες παραβίασης και λάβετε μέτρα για την προστασία των πληροφοριών σας, μπορείτε να επισημάνετε τις παραβιάσεις ως επιλυμένες.
+monitor-manage-breaches-link = Διαχείριση παραβιάσεων
+ .title = Διαχείριση παραβιάσεων στο { -monitor-brand-short-name }
+monitor-breaches-resolved-title = Ωραία! Επιλύσατε όλες τις γνωστές παραβιάσεις.
+monitor-breaches-resolved-description = Αν το email σας εμφανιστεί σε νέες παραβιάσεις, θα σας ενημερώσουμε.
+
+# Variables:
+# $numBreachesResolved (Number) - Number of breaches marked as resolved by the user on Monitor.
+# $numBreaches (Number) - Number of breaches in which a user's data was involved, detected by Monitor.
+monitor-partial-breaches-title =
+ { $numBreaches ->
+ [one] { $numBreachesResolved } από { $numBreaches } παραβίαση επισημάνθηκε ως επιλυμένη
+ *[other] { $numBreachesResolved }από { $numBreaches } παραβιάσεις επισημάνθηκαν ως επιλυμένες
+ }
+
+# Variables:
+# $percentageResolved (Number) - Percentage of breaches marked as resolved by a user on Monitor.
+monitor-partial-breaches-percentage = { $percentageResolved }% ολοκλήρωση
+
+monitor-partial-breaches-motivation-title-start = Τέλεια αρχή!
+monitor-partial-breaches-motivation-title-middle = Συνεχίστε!
+monitor-partial-breaches-motivation-title-end = Σχεδόν τελειώσατε! Συνεχίστε.
+monitor-partial-breaches-motivation-description = Επιλύστε τις υπόλοιπες παραβιάσεις σας στο { -monitor-brand-short-name }.
+monitor-resolve-breaches-link = Επίλυση παραβιάσεων
+ .title = Επίλυση παραβιάσεων στο { -monitor-brand-short-name }
+
+## The title attribute is used to display the type of protection.
+## The aria-label is spoken by screen readers to make the visual graph accessible to blind users.
+##
+## Variables:
+## $count (Number) - Number of specific trackers
+## $percentage (Number) - Percentage this type of tracker contributes to the whole graph
+
+bar-tooltip-social =
+ .title = Ιχνηλάτες κοινωνικών δικτύων
+ .aria-label =
+ { $count ->
+ [one] { $count } ιχνηλάτης κοινωνικών δικτύων ({ $percentage }%)
+ *[other] { $count } ιχνηλάτες κοινωνικών δικτύων { $percentage }%)
+ }
+bar-tooltip-cookie =
+ .title = Cookies ιχνηλάτησης μεταξύ ιστοσελίδων
+ .aria-label =
+ { $count ->
+ [one] { $count } cookie ιχνηλάτησης μεταξύ ιστοσελίδων ({ $percentage }%)
+ *[other] { $count } cookies ιχνηλάτησης μεταξύ ιστοσελίδων ({ $percentage }%)
+ }
+bar-tooltip-tracker =
+ .title = Περιεχόμενο καταγραφής
+ .aria-label =
+ { $count ->
+ [one] { $count } περιεχόμενο καταγραφής ({ $percentage }%)
+ *[other] { $count } περιεχόμενα καταγραφής ({ $percentage }%)
+ }
+bar-tooltip-fingerprinter =
+ .title = Fingerprinters
+ .aria-label =
+ { $count ->
+ [one] { $count } fingerprinter ({ $percentage }%)
+ *[other] { $count } fingerprinters ({ $percentage }%)
+ }
+bar-tooltip-cryptominer =
+ .title = Cryptominers
+ .aria-label =
+ { $count ->
+ [one] { $count } cryptominer ({ $percentage }%)
+ *[other] { $count } cryptominers ({ $percentage }%)
+ }
diff --git a/l10n-el/browser/browser/protectionsPanel.ftl b/l10n-el/browser/browser/protectionsPanel.ftl
new file mode 100644
index 0000000000..42f671a945
--- /dev/null
+++ b/l10n-el/browser/browser/protectionsPanel.ftl
@@ -0,0 +1,98 @@
+# 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/.
+
+protections-panel-sendreportview-error = Προέκυψε σφάλμα κατά την αποστολή της αναφοράς. Παρακαλούμε δοκιμάστε ξανά αργότερα.
+# A link shown when ETP is disabled for a site. Opens the breakage report subview when clicked.
+protections-panel-sitefixedsendreport-label = Η ιστοσελίδα διορθώθηκε; Αποστολή αναφοράς
+
+## These strings are used to define the different levels of
+## Enhanced Tracking Protection.
+
+protections-popup-footer-protection-label-strict = Αυστηρή
+ .label = Αυστηρή
+protections-popup-footer-protection-label-custom = Προσαρμοσμένη
+ .label = Προσαρμοσμένη
+protections-popup-footer-protection-label-standard = Τυπική
+ .label = Τυπική
+
+##
+
+# The text a screen reader speaks when focused on the info button.
+protections-panel-etp-more-info =
+ .aria-label = Περισσότερες πληροφορίες σχετικά με την Ενισχυμένη προστασία από καταγραφή
+protections-panel-etp-on-header = Η ενισχυμένη προστασία από καταγραφή είναι ενεργή για αυτή την ιστοσελίδα
+protections-panel-etp-off-header = Η ενισχυμένη προστασία από καταγραφή είναι ανενεργή για αυτή την ιστοσελίδα
+# The link to be clicked to open the sub-panel view
+protections-panel-site-not-working = Δεν λειτουργεί η ιστοσελίδα;
+# The heading/title of the sub-panel view
+protections-panel-site-not-working-view =
+ .title = Δεν λειτουργεί η ιστοσελίδα;
+
+## The "Allowed" header also includes a "Why?" link that, when hovered, shows
+## a tooltip explaining why these items were not blocked in the page.
+
+protections-panel-not-blocking-why-label = Γιατί;
+protections-panel-not-blocking-why-etp-on-tooltip = Ο αποκλεισμός αυτών θα μπορούσε να καταστρέψει τα στοιχεία μερικών ιστοσελίδων. Χωρίς τους ιχνηλάτες, μερικά κουμπιά, φόρμες και πεδία σύνδεσης ενδέχεται να μην λειτουργούν.
+protections-panel-not-blocking-why-etp-off-tooltip = Όλοι οι ιχνηλάτες σε αυτή την ιστοσελίδα έχουν φορτωθεί επειδή η προστασία είναι ανενεργή.
+
+##
+
+protections-panel-no-trackers-found = Δεν εντοπίστηκαν ιχνηλάτες γνωστοί στο { -brand-short-name } σε αυτή τη σελίδα.
+protections-panel-content-blocking-tracking-protection = Περιεχόμενο καταγραφής
+protections-panel-content-blocking-socialblock = Ιχνηλάτες κοινωνικών δικτύων
+protections-panel-content-blocking-cryptominers-label = Cryptominers
+protections-panel-content-blocking-fingerprinters-label = Fingerprinters
+
+## In the protections panel, Content Blocking category items are in three sections:
+## "Blocked" for categories being blocked in the current page,
+## "Allowed" for categories detected but not blocked in the current page, and
+## "None Detected" for categories not detected in the current page.
+## These strings are used in the header labels of each of these sections.
+
+protections-panel-blocking-label = Αποκλείστηκε
+protections-panel-not-blocking-label = Επιτρέπεται
+protections-panel-not-found-label = Δεν εντοπίστηκε κανένα
+
+##
+
+protections-panel-settings-label = Ρυθμίσεις προστασίας
+# This should match the "appmenuitem-protection-dashboard-title" string in browser/appmenu.ftl.
+protections-panel-protectionsdashboard-label = Πίνακας προστασίας
+
+## In the Site Not Working? view, we suggest turning off protections if
+## the user is experiencing issues with any of a variety of functionality.
+
+# The header of the list
+protections-panel-site-not-working-view-header = Απενεργοποιήστε τις προστασίες αν αντιμετωπίζετε προβλήματα με τα εξής:
+# The list items, shown in a <ul>
+protections-panel-site-not-working-view-issue-list-login-fields = Πεδία σύνδεσης
+protections-panel-site-not-working-view-issue-list-forms = Φόρμες
+protections-panel-site-not-working-view-issue-list-payments = Πληρωμές
+protections-panel-site-not-working-view-issue-list-comments = Σχόλια
+protections-panel-site-not-working-view-issue-list-videos = Βίντεο
+protections-panel-site-not-working-view-send-report = Αποστολή αναφοράς
+
+##
+
+protections-panel-cross-site-tracking-cookies = Αυτά τα cookies σας ακολουθούν από ιστοσελίδα σε ιστοσελίδα για να συλλέξουν δεδομένα σχετικά με το τι κάνετε στο διαδίκτυο. Δημιουργούνται από τρίτους, όπως διαφημιστές και εταιρείες ανάλυσης.
+protections-panel-cryptominers = Τα cryptominers χρησιμοποιούν την υπολογιστική ισχύ του συστήματός σας για να εξορύξουν κρυπτονομίσματα. Τα σενάρια εξόρυξης κρυπτονομισμάτων εξαντλούν την μπαταρία σας, επιβραδύνουν τον υπολογιστή σας, ενώ ενδέχεται να δείτε αυξημένες χρεώσεις στο λογαριασμό τους ρεύματος.
+protections-panel-fingerprinters = Τα fingerprinters συλλέγουν ρυθμίσεις από το πρόγραμμα περιήγησης και τον υπολογιστή σας για να δημιουργήσει ένα προφίλ για εσάς. Με τη χρήση αυτού του ψηφιακού αποτυπώματος, μπορούν να σας παρακολουθούν σε διάφορες ιστοσελίδες.
+protections-panel-tracking-content = Οι ιστοσελίδες ενδέχεται να φορτώνουν εξωτερικές διαφημίσεις, βίντεο και άλλο περιεχόμενο με κώδικα καταγραφής. Η φραγή περιεχομένου καταγραφής μπορεί να συμβάλλει στην ταχύτερη φόρτωση των ιστοσελίδων, αλλά ορισμένα κουμπιά, φόρμες και πεδία σύνδεσης ενδέχεται να μην λειτουργούν.
+protections-panel-social-media-trackers = Τα κοινωνικά δίκτυα τοποθετούν ιχνηλάτες σε άλλες ιστοσελίδες για να παρακολουθούν ό,τι κάνετε και βλέπετε στο διαδίκτυο. Αυτό επιτρέπει στις εταιρείες κοινωνικών μέσων να μάθουν περισσότερα για εσάς πέρα από αυτά που κοινοποιείτε στα προφίλ κοινωνικών μέσων.
+protections-panel-content-blocking-manage-settings =
+ .label = Διαχείριση ρυθμίσεων προστασίας
+ .accesskey = Δ
+protections-panel-content-blocking-breakage-report-view =
+ .title = Αναφορά κατεστραμμένης ιστοσελίδας
+protections-panel-content-blocking-breakage-report-view-description = Ο αποκλεισμός ορισμένων ιχνηλατών μπορεί να προκαλέσει προβλήματα με ορισμένες ιστοσελίδες. Όταν αναφέρετε τέτοια προβλήματα, συμβάλλετε στη βελτίωση του { -brand-short-name } για όλους. Με την αποστολή της αναφοράς, θα αποσταλεί ένα URL, καθώς και πληροφορίες για τις ρυθμίσεις του προγράμματος περιήγησής σας στη Mozilla. <label data-l10n-name="learn-more">Μάθετε περισσότερα</label>
+protections-panel-content-blocking-breakage-report-view-collection-url = URL
+protections-panel-content-blocking-breakage-report-view-collection-url-label =
+ .aria-label = URL
+protections-panel-content-blocking-breakage-report-view-collection-comments = Προαιρετικό: Περιγράψτε το πρόβλημα
+protections-panel-content-blocking-breakage-report-view-collection-comments-label =
+ .aria-label = Προαιρετικό: Περιγράψτε το πρόβλημα
+protections-panel-content-blocking-breakage-report-view-cancel =
+ .label = Ακύρωση
+protections-panel-content-blocking-breakage-report-view-send-report =
+ .label = Αποστολή αναφοράς
diff --git a/l10n-el/browser/browser/safeMode.ftl b/l10n-el/browser/browser/safeMode.ftl
new file mode 100644
index 0000000000..1324e32794
--- /dev/null
+++ b/l10n-el/browser/browser/safeMode.ftl
@@ -0,0 +1,16 @@
+# 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/.
+
+safe-mode-window =
+ .title = Ασφαλής λειτουργία του { -brand-short-name }
+ .style = max-width: 430px
+start-safe-mode =
+ .label = Εκκίνηση σε Ασφαλή λειτουργία
+refresh-profile =
+ .label = Ανανέωση του { -brand-short-name }
+safe-mode-description = Η Ασφαλής λειτουργία είναι μια ειδική λειτουργία του { -brand-short-name } που μπορεί να χρησιμοποιηθεί για την αντιμετώπιση πιθανών προβλημάτων.
+safe-mode-description-details = Τα πρόσθετα και οι προσαρμοσμένες ρυθμίσεις σας θα απενεργοποιηθούν προσωρινά και τα χαρακτηριστικά του { -brand-short-name } ενδέχεται να μην λειτουργούν όπως τώρα.
+refresh-profile-instead = Μπορείτε επίσης να παραλείψετε την αντιμετώπιση προβλημάτων και να δοκιμάσετε την ανανέωση του { -brand-short-name }.
+# Shown on the safe mode dialog after multiple startup crashes.
+auto-safe-mode-description = Το { -brand-short-name } τερματίστηκε απρόσμενα κατά την εκκίνηση. Αυτό μπορεί να προκλήθηκε από κάποιο πρόσθετο ή άλλα προβλήματα. Μπορείτε να προσπαθήσετε να επιλύσετε το πρόβλημα στην Ασφαλή λειτουργία.
diff --git a/l10n-el/browser/browser/safebrowsing/blockedSite.ftl b/l10n-el/browser/browser/safebrowsing/blockedSite.ftl
new file mode 100644
index 0000000000..749318fc0a
--- /dev/null
+++ b/l10n-el/browser/browser/safebrowsing/blockedSite.ftl
@@ -0,0 +1,33 @@
+# 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/.
+
+safeb-blocked-phishing-page-title = Παραπλανητική ιστοσελίδα
+safeb-blocked-malware-page-title = Η επίσκεψη σε αυτή την ιστοσελίδα μπορεί να βλάψει τον υπολογιστή σας
+safeb-blocked-unwanted-page-title = Η ακόλουθη ιστοσελίδα ενδέχεται να περιέχει επιβλαβή προγράμματα
+safeb-blocked-harmful-page-title = Η ιστοσελίδα αυτή ενδέχεται να περιέχει κακόβουλο λογισμικό
+safeb-blocked-phishing-page-short-desc = Το { -brand-short-name } απέκλεισε αυτή τη σελίδα, επειδή ενδέχεται να σάς παραπλανήσει ώστε να κάνετε κάτι επικίνδυνο, όπως να εγκαταστήσετε λογισμικό ή να αποκαλύψετε προσωπικά δεδομένα, όπως κωδικούς πρόσβασης ή πιστωτικές κάρτες.
+safeb-blocked-malware-page-short-desc = Το { -brand-short-name } απέκλεισε αυτή τη σελίδα, επειδή ενδέχεται να επιχειρήσει να εγκαταστήσει κακόβουλο λογισμικό που μπορεί να υποκλέψει ή να διαγράψει προσωπικές πληροφορίες στον υπολογιστή σας.
+safeb-blocked-unwanted-page-short-desc = Το { -brand-short-name } απέκλεισε αυτή τη σελίδα, επειδή ενδέχεται να προσπαθήσει να σάς παραπλανήσει ώστε να εγκαταστήσετε προγράμματα που βλάπτουν την εμπειρία περιήγησής σας (για παράδειγμα, αλλάζοντας την αρχική σας σελίδα ή εμφανίζοντας επιπλέον διαφημίσεις στις ιστοσελίδες που επισκέπτεστε).
+safeb-blocked-harmful-page-short-desc = Το { -brand-short-name } απέκλεισε αυτή τη σελίδα, επειδή ενδέχεται να αποπειραθεί να εγκαταστήσει επικίνδυνες εφαρμογές, που υποκλέπτουν ή διαγράφουν τις πληροφορίες σας (για παράδειγμα, φωτογραφίες, κωδικοί πρόσβασης, μηνύματα και πιστωτικές κάρτες).
+safeb-palm-advisory-desc = Παροχή υποδείξεων από <a data-l10n-name='advisory_provider'>{ $advisoryname }</a>.
+safeb-palm-accept-label = Επιστροφή
+safeb-palm-see-details-label = Δείτε λεπτομέρειες
+safeb-blocked-phishing-page-error-desc-override = Το <span data-l10n-name='sitename'>{ $sitename }</span> έχει <a data-l10n-name='error_desc_link'>αναφερθεί ως παραπλανητική ιστοσελίδα</a>. Μπορείτε να <a data-l10n-name='report_detection'>αναφέρετε το πρόβλημα</a> ή να <a data-l10n-name='ignore_warning_link'>αγνοήσετε τον κίνδυνο</a> και να συνεχίσετε σε αυτή την επισφαλή ιστοσελίδα.
+safeb-blocked-phishing-page-error-desc-no-override = Το <span data-l10n-name='sitename'>{ $sitename }</span> έχει <a data-l10n-name='error_desc_link'>αναφερθεί ως παραπλανητική ιστοσελίδα</a>. Μπορείτε να <a data-l10n-name='report_detection'>αναφέρετε το πρόβλημα</a>.
+safeb-blocked-phishing-page-learn-more = Μάθετε περισσότερα σχετικά με τις παραπλανητικές ιστοσελίδες και το ηλεκτρονικό ψάρεμα στο <a data-l10n-name='learn_more_link'>www.antiphishing.org</a>. Μάθετε περισσότερα σχετικά με την προστασία από ηλεκτρονικό ψάρεμα και κακόβουλο λογισμικό του { -brand-short-name } στο <a data-l10n-name='firefox_support'>support.mozilla.org</a>.
+safeb-blocked-malware-page-error-desc-override = Το <span data-l10n-name='sitename'>{ $sitename }</span> έχει <a data-l10n-name='error_desc_link'> αναφερθεί ότι περιέχει κακόβουλο λογισμικό</a>. Μπορείτε να <a data-l10n-name='report_detection'>αναφέρετε το πρόβλημα</a> ή να <a data-l10n-name='ignore_warning_link'> αγνοήσετε τον κίνδυνο</a> και να μεταβείτε σε αυτή την επισφαλή ιστοσελίδα.
+safeb-blocked-malware-page-error-desc-no-override = Το <span data-l10n-name='sitename'>{ $sitename }</span> έχει <a data-l10n-name='error_desc_link'> αναφερθεί ότι περιέχει κακόβουλο λογισμικό</a>. Μπορείτε να <a data-l10n-name='report_detection'>αναφέρετε το πρόβλημα</a>.
+safeb-blocked-malware-page-learn-more = Μάθετε περισσότερα σχετικά με το επιβλαβές διαδικτυακό περιεχόμενο, όπως ιοί και άλλο κακόβουλο λογισμικό, καθώς και το πώς να προστατέψετε τον υπολογιστή σας στο <a data-l10n-name='learn_more_link'>StopBadware.org</a>. Μάθετε περισσότερα σχετικά με την προστασία από ηλεκτρονικό ψάρεμα και κακόβουλο λογισμικό του { -brand-short-name } στο <a data-l10n-name='firefox_support'>support.mozilla.org</a>.
+safeb-blocked-malware-page-error-desc-override-sumo = Το <span data-l10n-name='sitename'>{ $sitename }</span> έχει <a data-l10n-name='error_desc_link'>αναφερθεί ότι περιέχει κακόβουλο λογισμικό</a>. Μπορείτε να <a data-l10n-name='ignore_warning_link'>αγνοήσετε τον κίνδυνο</a> και να συνεχίσετε σε αυτή την επισφαλή ιστοσελίδα.
+safeb-blocked-malware-page-error-desc-no-override-sumo = Το <span data-l10n-name='sitename'>{ $sitename }</span> έχει <a data-l10n-name='error_desc_link'>αναφερθεί ότι περιέχει κακόβουλο λογισμικό</a>.
+safeb-blocked-malware-page-learn-more-sumo = Μάθετε περισσότερα σχετικά με την προστασία από ηλεκτρονικό ψάρεμα και κακόβουλο λογισμικό του { -brand-short-name } στο <a data-l10n-name='firefox_support'>support.mozilla.org</a>.
+safeb-blocked-unwanted-page-error-desc-override = Το <span data-l10n-name='sitename'>{ $sitename }</span> έχει <a data-l10n-name='error_desc_link'>αναφερθεί ότι περιέχει επιβλαβές λογισμικό</a>. Μπορείτε να <a data-l10n-name='ignore_warning_link'>αγνοήσετε τον κίνδυνο</a> και να συνεχίσετε σε αυτή την επισφαλή ιστοσελίδα.
+safeb-blocked-unwanted-page-error-desc-no-override = Το <span data-l10n-name='sitename'>{ $sitename }</span> έχει <a data-l10n-name='error_desc_link'>αναφερθεί ότι περιέχει επιβλαβές λογισμικό</a>.
+safeb-blocked-unwanted-page-learn-more = Μάθετε περισσότερα σχετικά με το επιβλαβές και ανεπιθύμητο λογισμικό στην <a data-l10n-name='learn_more_link'>Πολιτική ανεπιθύμητου λογισμικού</a>. Μάθετε περισσότερα σχετικά με την προστασία από ηλεκτρονικό ψάρεμα και κακόβουλο λογισμικό του { -brand-short-name } στο <a data-l10n-name='firefox_support'>support.mozilla.org</a>.
+safeb-blocked-harmful-page-error-desc-override = Το <span data-l10n-name='sitename'>{ $sitename }</span> έχει <a data-l10n-name='error_desc_link'>αναφερθεί ότι περιέχει πιθανώς επιβλαβή εφαρμογή</a>. Μπορείτε να <a data-l10n-name='ignore_warning_link'>αγνοήσετε τον κίνδυνο</a> και να συνεχίσετε σε αυτή την επισφαλή ιστοσελίδα.
+safeb-blocked-harmful-page-error-desc-no-override = Το <span data-l10n-name='sitename'>{ $sitename }</span> έχει <a data-l10n-name='error_desc_link'>αναφερθεί ότι περιέχει πιθανώς επιβλαβή εφαρμογή</a>.
+safeb-blocked-harmful-page-learn-more = Μάθετε περισσότερα σχετικά με την προστασία από ηλεκτρονικό ψάρεμα και κακόβουλο λογισμικό του { -brand-short-name } στο <a data-l10n-name='firefox_support'>support.mozilla.org</a>.
+safeb-palm-notdeceptive =
+ .label = Αυτή δεν είναι παραπλανητική ιστοσελίδα…
+ .accesskey = δ
diff --git a/l10n-el/browser/browser/sanitize.ftl b/l10n-el/browser/browser/sanitize.ftl
new file mode 100644
index 0000000000..46133e6e10
--- /dev/null
+++ b/l10n-el/browser/browser/sanitize.ftl
@@ -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/.
+
+sanitize-prefs =
+ .title = Ρυθμίσεις εκκαθάρισης ιστορικού
+ .style = width: 34em
+
+sanitize-prefs-style =
+ .style = width: 17em
+
+dialog-title =
+ .title = Εκκαθάριση πρόσφατου ιστορικού
+ .style = width: 34em
+
+# When "Time range to clear" is set to "Everything", this message is used for the
+# title instead of dialog-title.
+dialog-title-everything =
+ .title = Εκκαθάριση όλου του ιστορικού
+ .style = width: 34em
+
+clear-data-settings-label = Όταν κλείνει, το { -brand-short-name } να κάνει αυτόματη εκκαθάριση των παρακάτω
+
+## clear-time-duration-prefix is followed by a dropdown list, with
+## values localized using clear-time-duration-value-* messages.
+## clear-time-duration-suffix is left empty in English, but can be
+## used in other languages to change the structure of the message.
+##
+## This results in English:
+## Time range to clear: (Last Hour, Today, etc.)
+
+clear-time-duration-prefix =
+ .value = Χρονικό διάστημα εκκαθάρισης:{ " " }
+ .accesskey = τ
+
+clear-time-duration-value-last-hour =
+ .label = Τελευταία ώρα
+
+clear-time-duration-value-last-2-hours =
+ .label = Τελευταίες δύο ώρες
+
+clear-time-duration-value-last-4-hours =
+ .label = Τελευταίες τέσσερις ώρες
+
+clear-time-duration-value-today =
+ .label = Σήμερα
+
+clear-time-duration-value-everything =
+ .label = Όλα
+
+clear-time-duration-suffix =
+ .value = { "" }
+
+## These strings are used as section comments and checkboxes
+## to select the items to remove
+
+history-section-label = Ιστορικό
+
+item-history-and-downloads =
+ .label = Ιστορικό περιήγησης & λήψεων
+ .accesskey = π
+
+item-cookies =
+ .label = Cookies
+ .accesskey = C
+
+item-active-logins =
+ .label = Ενεργές συνδέσεις
+ .accesskey = υ
+
+item-cache =
+ .label = Προσωρινή μνήμη
+ .accesskey = ω
+
+item-form-search-history =
+ .label = Ιστορικό αναζήτησης & φορμών
+ .accesskey = φ
+
+data-section-label = Δεδομένα
+
+item-site-preferences =
+ .label = Προτιμήσεις σελίδων
+ .accesskey = Π
+
+item-offline-apps =
+ .label = Δεδομένα ιστοσελίδων
+ .accesskey = δ
+
+sanitize-everything-undo-warning = Δεν είναι δυνατή η αναίρεση αυτής της ενέργειας.
+
+window-close =
+ .key = w
+
+sanitize-button-ok =
+ .label = Εκκαθάριση τώρα
+
+# The label for the default button between the user clicking it and the window
+# closing. Indicates the items are being cleared.
+sanitize-button-clearing =
+ .label = Εκκαθάριση
+
+# Warning that appears when "Time range to clear" is set to "Everything" in Clear
+# Recent History dialog, provided that the user has not modified the default set
+# of history items to clear.
+sanitize-everything-warning = Όλο το ιστορικό θα εκκαθαριστεί.
+
+# Warning that appears when "Time range to clear" is set to "Everything" in Clear
+# Recent History dialog, provided that the user has modified the default set of
+# history items to clear.
+sanitize-selected-warning = Όλα τα επιλεγμένα στοιχεία θα εκκαθαριστούν.
diff --git a/l10n-el/browser/browser/screenshots.ftl b/l10n-el/browser/browser/screenshots.ftl
new file mode 100644
index 0000000000..128e56451f
--- /dev/null
+++ b/l10n-el/browser/browser/screenshots.ftl
@@ -0,0 +1,47 @@
+# 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/.
+
+screenshots-context-menu = Λήψη στιγμιότυπου
+
+screenshots-my-shots-button = Οι λήψεις μου
+screenshots-instructions = Σύρετε ή κάντε κλικ στη σελίδα για να επιλέξετε μια περιοχή. Για ακύρωση πιέστε το πλήκτρο ESC.
+screenshots-cancel-button = Ακύρωση
+screenshots-save-visible-button = Αποθήκευση ορατής περιοχής
+screenshots-save-page-button = Αποθήκευση ολόκληρης σελίδας
+screenshots-download-button = Λήψη
+screenshots-download-button-tooltip = Λήψη στιγμιότυπου
+screenshots-copy-button = Αντιγραφή
+screenshots-copy-button-tooltip = Αντιγραφή στιγμιότυπου στο πρόχειρο
+
+screenshots-meta-key =
+ { PLATFORM() ->
+ [macos] ⌘
+ *[other] Ctrl
+ }
+screenshots-notification-link-copied-title = Ο σύνδεσμος αντιγράφηκε
+screenshots-notification-link-copied-details = Ο σύνδεσμος προς την λήψη σας αντιγράφηκε στο πρόχειρο. Πατήστε { screenshots-meta-key }-V για επικόλληση.
+
+screenshots-notification-image-copied-title = Το στιγμιότυπο αντιγράφηκε
+screenshots-notification-image-copied-details = Το στιγμιότυπο έχει αντιγραφεί στο πρόχειρο. Πατήστε { screenshots-meta-key }-V για επικόλληση.
+
+screenshots-request-error-title = Εκτός λειτουργίας.
+screenshots-request-error-details = Συγνώμη! Δεν μπορέσαμε να αποθηκεύουμε την λήψη σας. Προσπαθήστε ξανά αργότερα.
+
+screenshots-connection-error-title = Δεν μπορούμε να συνδεθούμε στις λήψεις σας.
+screenshots-connection-error-details = Ελέγξτε τη σύνδεσή σας στο Internet. Εάν είστε σε θέση να συνδεθείτε στο Internet, ίσως υπάρχει ένα προσωρινό πρόβλημα με την υπηρεσία { -screenshots-brand-name }.
+
+screenshots-login-error-details = Δεν μπορέσαμε να αποθηκεύσουμε την λήψη σας γιατί υπάρχει κάποιο πρόβλημα με την υπηρεσία { -screenshots-brand-name }. Προσπαθήστε ξανά αργότερα.
+
+screenshots-unshootable-page-error-title = Δεν μπορούμε να λάβουμε στιγμιότυπο αυτής της σελίδας.
+screenshots-unshootable-page-error-details = Δεν μπορεί να γίνει λήψη στιγμιότυπου καθώς αυτή δεν είναι μια τυπική σελίδα του Διαδικτύου.
+
+screenshots-self-screenshot-error-title = Δεν μπορεί να γίνει λήψη ενός στιγμιότυπου της σελίδας { -screenshots-brand-name }!
+
+screenshots-empty-selection-error-title = Η επιλογή σας είναι πολύ μικρή
+
+screenshots-private-window-error-title = Το { -screenshots-brand-name } είναι απενεργοποιημένο στη λειτουργία ιδιωτικής περιήγησης
+screenshots-private-window-error-details = Λυπούμαστε για την ταλαιπωρία. Εργαζόμαστε πάνω σε αυτό το χαρακτηριστικό για μελλοντικές εκδόσεις.
+
+screenshots-generic-error-title = Ωχ! Κάτι πήγε στραβά στην υπηρεσία { -screenshots-brand-name }.
+screenshots-generic-error-details = Δεν είμαστε σίγουροι για το τι ακριβώς συνέβη. Προσπαθήστε ξανά ή κάντε λήψη σε μια άλλη σελίδα.
diff --git a/l10n-el/browser/browser/search.ftl b/l10n-el/browser/browser/search.ftl
new file mode 100644
index 0000000000..f6bc9c00ba
--- /dev/null
+++ b/l10n-el/browser/browser/search.ftl
@@ -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/.
+
+
+## These strings are used for errors when installing OpenSearch engines, e.g.
+## via "Add Search Engine" on the address bar or search bar.
+## Variables
+## $location-url (String) - the URL of the OpenSearch engine that was attempted to be installed.
+
+opensearch-error-duplicate-title = Σφάλμα εγκατάστασης
+opensearch-error-duplicate-desc = Το { -brand-short-name } δεν μπόρεσε να εγκαταστήσει το άρθρωμα αναζήτησης από το "{ $location-url }", επειδή υπάρχει ήδη μια μηχανή με το ίδιο όνομα.
+opensearch-error-format-title = Μη έγκυρη μορφή
+opensearch-error-format-desc = Το { -brand-short-name } δεν μπόρεσε να εγκαταστήσει τη μηχανή αναζήτησης από το: { $location-url }
+opensearch-error-download-title = Σφάλμα λήψης
+opensearch-error-download-desc = Το { -brand-short-name } δεν μπόρεσε να κάνει λήψη του αρθρώματος αναζήτησης από: { $location-url }
+
+##
+
diff --git a/l10n-el/browser/browser/setDesktopBackground.ftl b/l10n-el/browser/browser/setDesktopBackground.ftl
new file mode 100644
index 0000000000..3f20a7483c
--- /dev/null
+++ b/l10n-el/browser/browser/setDesktopBackground.ftl
@@ -0,0 +1,40 @@
+# 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/.
+
+set-desktop-background-window =
+ .title = Ορισμός ταπετσαρίας επιφάνειας εργασίας
+
+set-desktop-background-accept =
+ .label = Ορισμός ταπετσαρίας επιφάνειας εργασίας
+
+open-desktop-prefs =
+ .label = Άνοιγμα προτιμήσεων επιφάνειας εργασίας
+
+set-background-preview-unavailable = Μη διαθέσιμη προεπισκόπηση
+
+# This refers to the wallpaper "spanning" multiple monitors when the
+# user has more than one. Only some of the entire image will be on
+# each monitor. This should ideally match the wording in Windows' own
+# Desktop Background settings page.
+set-background-span =
+ .label = Διάστημα
+
+set-background-color = Χρώμα:
+
+set-background-position = Θέση:
+
+set-background-tile =
+ .label = Πλακίδιο
+
+set-background-center =
+ .label = Κέντρο
+
+set-background-stretch =
+ .label = Τέντωμα
+
+set-background-fill =
+ .label = Γέμισμα
+
+set-background-fit =
+ .label = Προσαρμογή
diff --git a/l10n-el/browser/browser/sidebarMenu.ftl b/l10n-el/browser/browser/sidebarMenu.ftl
new file mode 100644
index 0000000000..bc8e57ab78
--- /dev/null
+++ b/l10n-el/browser/browser/sidebarMenu.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/.
+
+sidebar-menu-bookmarks =
+ .label = Σελιδοδείκτες
+
+sidebar-menu-history =
+ .label = Ιστορικό
+
+sidebar-menu-synced-tabs =
+ .label = Συγχρονισμένες καρτέλες
+
+sidebar-menu-close =
+ .label = Κλείσιμο πλευρικής γραμμής
diff --git a/l10n-el/browser/browser/sync.ftl b/l10n-el/browser/browser/sync.ftl
new file mode 100644
index 0000000000..1b77a322f7
--- /dev/null
+++ b/l10n-el/browser/browser/sync.ftl
@@ -0,0 +1,21 @@
+# 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/.
+
+fxa-toolbar-sync-syncing =
+ .label = Συγχρονισμός…
+fxa-toolbar-sync-syncing-tabs =
+ .label = Συγχρονισμός καρτελών…
+sync-disconnect-dialog-title = Αποσύνδεση { -sync-brand-short-name };
+sync-disconnect-dialog-body = Το { -brand-product-name } θα σταματήσει το συγχρονισμό του λογαριασμού σας, αλλά δεν θα διαγράψει κανένα δεδομένο περιήγησης σε αυτή τη συσκευή.
+fxa-disconnect-dialog-title = Αποσύνδεση { -brand-product-name };
+fxa-disconnect-dialog-body = Το { -brand-product-name } θα αποσυνδεθεί από το λογαριασμό σας, αλλά δεν θα διαγράψει κανένα δεδομένο περιήγησης σε αυτή τη συσκευή.
+sync-disconnect-dialog-button = Αποσύνδεση
+fxa-signout-dialog-heading = Αποσύνδεση από τον { -fxaccount-brand-name };
+fxa-signout-dialog-body = Τα συγχρονισμένα δεδομένα θα παραμείνουν στον λογαριασμό σας.
+fxa-signout-checkbox =
+ .label = Διαγραφή δεδομένων συσκευής (συνδέσεις, κωδικοί πρόσβασης, ιστορικό, σελιδοδείκτες κ.λπ.).
+fxa-signout-dialog =
+ .title = Αποσύνδεση από τον { -fxaccount-brand-name }
+ .style = min-width: 375px;
+ .buttonlabelaccept = Αποσύνδεση
diff --git a/l10n-el/browser/browser/syncedTabs.ftl b/l10n-el/browser/browser/syncedTabs.ftl
new file mode 100644
index 0000000000..0ea86ab052
--- /dev/null
+++ b/l10n-el/browser/browser/syncedTabs.ftl
@@ -0,0 +1,43 @@
+# 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/.
+
+synced-tabs-sidebar-title = Συγχρονισμένες καρτέλες
+synced-tabs-sidebar-noclients-subtitle = Θέλετε να δείτε τις καρτέλες σας από άλλες συσκευές εδώ;
+synced-tabs-sidebar-intro = Δείτε μια λίστα με καρτέλες από τις άλλες σας συσκευές.
+synced-tabs-sidebar-unverified = Ο λογαριασμός σας πρέπει να επαληθευτεί.
+synced-tabs-sidebar-notabs = Δεν υπάρχουν ανοικτές καρτέλες
+synced-tabs-sidebar-openprefs = Ανοίξτε τις προτιμήσεις του { -sync-brand-short-name }
+synced-tabs-sidebar-tabsnotsyncing = Ενεργοποιήστε τον συγχρονισμό καρτελών για να δείτε μια λίστα από καρτέλες από τις άλλες σας συσκευές.
+synced-tabs-sidebar-connect-another-device = Σύνδεση άλλης συσκευής
+synced-tabs-sidebar-search =
+ .placeholder = Αναζήτηση συγχρονισμένων καρτελών
+synced-tabs-context-open =
+ .label = Άνοιγμα
+ .accesskey = Ο
+synced-tabs-context-open-in-new-tab =
+ .label = Άνοιγμα σε νέα καρτέλα
+ .accesskey = κ
+synced-tabs-context-open-in-new-window =
+ .label = Άνοιγμα σε νέο παράθυρο
+ .accesskey = ν
+synced-tabs-context-open-in-new-private-window =
+ .label = Άνοιγμα σε νέο ιδιωτικό παράθυρο
+ .accesskey = Π
+synced-tabs-context-bookmark-single-tab =
+ .label = Προσθήκη καρτέλας στους σελιδοδείκτες…
+ .accesskey = Π
+synced-tabs-context-copy =
+ .label = Αντιγραφή
+ .accesskey = α
+synced-tabs-context-open-all-in-tabs =
+ .label = Άνοιγμα όλων σε καρτέλες
+ .accesskey = Α
+synced-tabs-context-manage-devices =
+ .label = Διαχείριση συσκευών…
+ .accesskey = Σ
+synced-tabs-context-sync-now =
+ .label = Συγχρονισμός τώρα
+ .accesskey = Σ
+fxa-sign-in = Σύνδεση στο { -sync-brand-short-name }
+turn-on-sync = Ενεργοποίηση { -sync-brand-short-name }
diff --git a/l10n-el/browser/browser/tabContextMenu.ftl b/l10n-el/browser/browser/tabContextMenu.ftl
new file mode 100644
index 0000000000..75dc03dd7d
--- /dev/null
+++ b/l10n-el/browser/browser/tabContextMenu.ftl
@@ -0,0 +1,96 @@
+# 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/.
+
+reload-tab =
+ .label = Ανανέωση καρτέλας
+ .accesskey = Α
+select-all-tabs =
+ .label = Επιλογή όλων των καρτελών
+ .accesskey = Ε
+duplicate-tab =
+ .label = Αντιγραφή καρτέλας
+ .accesskey = Α
+duplicate-tabs =
+ .label = Αντιγραφή καρτελών
+ .accesskey = Α
+close-tabs-to-the-end =
+ .label = Κλείσιμο καρτελών στα δεξιά
+ .accesskey = ξ
+close-other-tabs =
+ .label = Κλείσιμο των άλλων καρτελών
+ .accesskey = ω
+reload-tabs =
+ .label = Ανανέωση καρτελών
+ .accesskey = Α
+pin-tab =
+ .label = Καρφίτσωμα καρτέλας
+ .accesskey = ρ
+unpin-tab =
+ .label = Ξεκαρφίτσωμα καρτέλας
+ .accesskey = κ
+pin-selected-tabs =
+ .label = Καρφίτσωμα καρτελών
+ .accesskey = Κ
+unpin-selected-tabs =
+ .label = Ξεκαρφίτσωμα καρτελών
+ .accesskey = λ
+bookmark-selected-tabs =
+ .label = Αποθήκευση καρτελών…
+ .accesskey = Α
+bookmark-tab =
+ .label = Αποθήκευση καρτέλας
+ .accesskey = Α
+reopen-in-container =
+ .label = Άνοιγμα ξανά σε θεματική καρτέλα
+ .accesskey = ξ
+move-to-start =
+ .label = Μετακίνηση στην αρχή
+ .accesskey = α
+move-to-end =
+ .label = Μετακίνηση στο τέλος
+ .accesskey = τ
+move-to-new-window =
+ .label = Μετακίνηση σε νέο παράθυρο
+ .accesskey = π
+tab-context-close-multiple-tabs =
+ .label = Κλείσιμο πολλαπλών καρτελών
+ .accesskey = π
+
+## Variables:
+## $tabCount (Number): the number of tabs that are affected by the action.
+
+tab-context-undo-close-tabs =
+ .label =
+ { $tabCount ->
+ [1] Αναίρεση κλεισίματος καρτέλας
+ [one] Αναίρεση κλεισίματος καρτέλας
+ *[other] Αναίρεση κλεισίματος καρτελών
+ }
+ .accesskey = Α
+close-tab =
+ .label = Κλείσιμο καρτέλας
+ .accesskey = Κ
+close-tabs =
+ .label = Κλείσιμο καρτελών
+ .accesskey = ν
+move-tabs =
+ .label = Μετακίνηση καρτελών
+ .accesskey = ν
+move-tab =
+ .label = Μετακίνηση καρτέλας
+ .accesskey = ν
+tab-context-close-tabs =
+ .label =
+ { $tabCount ->
+ [1] Κλείσιμο καρτέλας
+ *[other] Κλείσιμο καρτελών
+ }
+ .accesskey = Κ
+tab-context-move-tabs =
+ .label =
+ { $tabCount ->
+ [1] Μετακίνηση καρτέλας
+ *[other] Μετακίνηση καρτελών
+ }
+ .accesskey = τ
diff --git a/l10n-el/browser/browser/toolbarContextMenu.ftl b/l10n-el/browser/browser/toolbarContextMenu.ftl
new file mode 100644
index 0000000000..3a3184978c
--- /dev/null
+++ b/l10n-el/browser/browser/toolbarContextMenu.ftl
@@ -0,0 +1,75 @@
+# 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/.
+
+toolbar-context-menu-reload-selected-tab =
+ .label = Ανανέωση επιλεγμένης καρτέλας
+ .accesskey = Α
+toolbar-context-menu-reload-selected-tabs =
+ .label = Ανανέωση επιλεγμένων καρτελών
+ .accesskey = Α
+toolbar-context-menu-bookmark-selected-tab =
+ .label = Αποθήκευση επιλεγμένης καρτέλας…
+ .accesskey = κ
+toolbar-context-menu-bookmark-selected-tabs =
+ .label = Αποθήκευση επιλεγμένων καρτελών…
+ .accesskey = κ
+toolbar-context-menu-select-all-tabs =
+ .label = Επιλογή όλων των καρτελών
+ .accesskey = Ε
+toolbar-context-menu-undo-close-tabs =
+ .label =
+ { $tabCount ->
+ [1] Αναίρεση κλεισίματος καρτέλας
+ [one] Αναίρεση κλεισίματος καρτέλας
+ *[other] Αναίρεση κλεισίματος καρτελών
+ }
+ .accesskey = Α
+toolbar-context-menu-manage-extension =
+ .label = Διαχείριση επέκτασης
+ .accesskey = ε
+toolbar-context-menu-remove-extension =
+ .label = Αφαίρεση επέκτασης
+ .accesskey = φ
+# This label is used in the extensions toolbar buttons context menus,
+# a user can use this command to submit to Mozilla an abuse report
+# related to that extension. "Report" is a verb.
+toolbar-context-menu-report-extension =
+ .label = Αναφορά επέκτασης
+ .accesskey = φ
+# Can appear on the same context menu as menubarCmd ("Menu Bar") and
+# personalbarCmd ("Bookmarks Toolbar"), so they should have different
+# access keys.
+toolbar-context-menu-pin-to-overflow-menu =
+ .label = Καρφίτσωμα στο αναδυόμενο μενού
+ .accesskey = Κ
+toolbar-context-menu-auto-hide-downloads-button =
+ .label = Αυτόματη απόκρυψη στη γραμμή εργαλείων
+ .accesskey = Α
+toolbar-context-menu-remove-from-toolbar =
+ .label = Αφαίρεση από τη γραμμή εργαλείων
+ .accesskey = Α
+toolbar-context-menu-view-customize-toolbar =
+ .label = Προσαρμογή…
+ .accesskey = Π
+toolbar-context-menu-bookmarks-toolbar-always-show =
+ .label = Πάντα
+ .accesskey = Π
+toolbar-context-menu-bookmarks-toolbar-never-show =
+ .label = Ποτέ
+ .accesskey = τ
+toolbar-context-menu-bookmarks-toolbar-on-new-tab =
+ .label = Μόνο σε νέα καρτέλα
+ .accesskey = Μ
+toolbar-context-menu-bookmarks-toolbar-always-show-2 =
+ .label = Πάντα εμφάνιση
+ .accesskey = ν
+toolbar-context-menu-bookmarks-toolbar-never-show-2 =
+ .label = Ποτέ εμφάνιση
+ .accesskey = Π
+toolbar-context-menu-bookmarks-toolbar-on-new-tab-2 =
+ .label = Εμφάνιση μόνο στη νέα καρτέλα
+ .accesskey = μ
+toolbar-context-menu-bookmarks-show-other-bookmarks =
+ .label = Εμφάνιση άλλων σελιδοδεικτών
+ .accesskey = φ
diff --git a/l10n-el/browser/browser/touchbar/touchbar.ftl b/l10n-el/browser/browser/touchbar/touchbar.ftl
new file mode 100644
index 0000000000..f5e5e2842a
--- /dev/null
+++ b/l10n-el/browser/browser/touchbar/touchbar.ftl
@@ -0,0 +1,38 @@
+# 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/.
+
+# Strings in this file are used to localize button titles displayed on the
+# MacBook Touch Bar.
+back = Πίσω
+forward = Εμπρός
+reload = Ανανέωση
+home = Αρχική
+fullscreen = Πλήρης οθόνη
+touchbar-fullscreen-exit = Έξοδος από πλήρη οθόνη
+find = Εύρεση
+new-tab = Νέα καρτέλα
+add-bookmark = Προσθήκη σελιδοδείκτη
+reader-view = Προβολή ανάγνωσης
+# Meant to match the string displayed in an empty URL bar.
+open-location = Αναζήτηση ή εισαγωγή διεύθυνσης
+share = Κοινή χρήση
+close-window = Κλείσιμο παραθύρου
+open-sidebar = Πλευρικές γραμμές
+
+# This string describes shortcuts for search.
+search-popover = Συντομεύσεις αναζήτησης
+# Describes searches limited to a specific scope
+# (e.g. searching only in history).
+search-search-in = Αναζήτηση σε:
+
+## Various categories of shortcuts for search.
+
+search-bookmarks = Σελιδοδείκτες
+search-history = Ιστορικό
+search-opentabs = Ανοικτές καρτέλες
+search-tags = Ετικέτες
+search-titles = Τίτλοι
+
+##
+
diff --git a/l10n-el/browser/browser/webrtcIndicator.ftl b/l10n-el/browser/browser/webrtcIndicator.ftl
new file mode 100644
index 0000000000..14c4c9257b
--- /dev/null
+++ b/l10n-el/browser/browser/webrtcIndicator.ftl
@@ -0,0 +1,40 @@
+# 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/.
+
+
+# Note: This is currently placed under browser/base/content so that we can
+# get the strings to appear without having our localization community need
+# to go through and translate everything. Once these strings are ready for
+# translation, we'll move it to the locales folder.
+
+# This string is used so that the window has a title in tools that enumerate/look for window
+# titles. It is not normally visible anywhere.
+webrtc-indicator-title = { -brand-short-name } - Δείκτης κοινής χρήσης
+webrtc-sharing-window = Μοιράζεστε το παράθυρο μιας άλλης εφαρμογής.
+webrtc-sharing-browser-window = Μοιράζεστε το { -brand-short-name }.
+webrtc-sharing-screen = Μοιράζεστε ολόκληρη την οθόνη σας.
+webrtc-stop-sharing-button = Διακοπή κοινής χρήσης
+webrtc-microphone-button =
+ .title = Το μικρόφωνο σας είναι σε κοινή χρήση. Κάντε κλικ για έλεγχο κοινής χρήσης.
+webrtc-camera-button =
+ .title = Η κάμερα σας είναι σε κοινή χρήση. Κάντε κλικ για έλεγχο κοινής χρήσης.
+webrtc-microphone-unmuted =
+ .title = Απενεργοποίηση μικροφώνου
+webrtc-microphone-muted =
+ .title = Ενεργοποίηση μικροφώνου
+webrtc-camera-unmuted =
+ .title = Απενεργοποίηση κάμερας
+webrtc-camera-muted =
+ .title = Ενεργοποίηση κάμερας
+webrtc-minimize =
+ .title = Ελαχιστοποίηση δείκτη
+# This string will display as a tooltip on supported systems where we show
+# device sharing state in the OS notification area. We do not use these strings
+# on macOS, as global menu bar items do not have native tooltips.
+webrtc-camera-system-menu =
+ .label = Κάνετε κοινή χρήση της κάμεράς σας. Κάντε κλικ για έλεγχο κοινής χρήσης.
+webrtc-microphone-system-menu =
+ .label = Κάνετε κοινή χρήση του μικροφώνου σας. Κάντε κλικ για έλεγχο κοινής χρήσης.
+webrtc-screen-system-menu =
+ .label = Κάνετε κοινή χρήση παραθύρου ή οθόνης. Κάντε κλικ για έλεγχο κοινής χρήσης.
diff --git a/l10n-el/browser/chrome/browser-region/region.properties b/l10n-el/browser/chrome/browser-region/region.properties
new file mode 100644
index 0000000000..f6e1907abe
--- /dev/null
+++ b/l10n-el/browser/chrome/browser-region/region.properties
@@ -0,0 +1,22 @@
+# 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: REVIEW_REQUIRED
+# Please do not commit any changes to this file without a review from
+# the l10n-drivers team (this includes en-US). In order to get one,
+# please file a bug, add the "productization" keyword and CC l10n@mozilla.com.
+
+# increment this number when anything gets changed in the list below. This will
+# cause Firefox to re-read these prefs and inject any new handlers into the
+# profile database. Note that "new" is defined as "has a different URL"; this
+# means that it's not possible to update the name of existing handler, so
+# don't make any spelling errors here.
+gecko.handlerService.defaultHandlersVersion=2
+
+# The default set of protocol handlers for mailto:
+gecko.handlerService.schemes.mailto.0.name=Yahoo! Mail
+gecko.handlerService.schemes.mailto.0.uriTemplate=https://compose.mail.yahoo.com/?To=%s
+gecko.handlerService.schemes.mailto.1.name=Gmail
+gecko.handlerService.schemes.mailto.1.uriTemplate=https://mail.google.com/mail/?extsrc=mailto&url=%s
+
diff --git a/l10n-el/browser/chrome/browser/accounts.properties b/l10n-el/browser/chrome/browser/accounts.properties
new file mode 100644
index 0000000000..3bff595518
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/accounts.properties
@@ -0,0 +1,129 @@
+# 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 (reconnectDescription) - %S = Email address of user's Firefox Account
+reconnectDescription = Επανασύνδεση %S
+
+# LOCALIZATION NOTE (verifyDescription) - %S = Email address of user's Firefox Account
+verifyDescription = Επαλήθευση %S
+
+# These strings are shown in a desktop notification after the
+# user requests we resend a verification email.
+verificationSentTitle = Η επιβεβαίωση εστάλη
+# LOCALIZATION NOTE (verificationSentBody) - %S = Email address of user's Firefox Account
+verificationSentBody = Έχει σταλεί ένα σύνδεσμος επαλήθευσης στην διεύθυνση %S.
+verificationNotSentTitle = Αδυναμία αποστολής επιβεβαίωσης
+verificationNotSentBody = Δεν μπορέσαμε να στείλουμε ένα email επαλήθευσης, παρακαλούμε δοκιμάστε ξανά αργότερα.
+
+# LOCALIZATION NOTE (deviceConnDisconnTitle) - the title shown in a notification
+# when either this device or another device has connected to, or disconnected
+# from, a Firefox Account.
+deviceConnDisconnTitle = Λογαριασμός Firefox
+
+# LOCALIZATION NOTE (otherDeviceConnectedBody, otherDeviceConnectedBody.noDeviceName)
+# These strings are used in a notification shown when a new device joins the
+# Firefox account.
+# %S is the name of the new device; otherDeviceConnectedBody.noDeviceName is shown
+# instead of otherDeviceConnectedBody when the name is not known.
+otherDeviceConnectedBody = Αυτός ο υπολογιστής είναι πλέον συνδεδεμένος με το %S.
+otherDeviceConnectedBody.noDeviceName = Αυτός ο υπολογιστής είναι πλέον συνδεδεμένος με μια νέα συσκευή.
+
+# LOCALIZATION NOTE (thisDeviceConnectedBody) - used in a notification shown
+# after a Firefox Account is connected to the current device.
+thisDeviceConnectedBody = Έχετε συνδεθεί επιτυχώς
+
+# LOCALIZATION NOTE (thisDeviceDisconnectedBody) - used in a notification shown
+# after the Firefox Account was disconnected remotely.
+thisDeviceDisconnectedBody = Αυτός ο υπολογιστείς έχει αποσυνδεθεί.
+
+# LOCALIZATION NOTE (sendToAllDevices.menuitem)
+# Displayed in the Send Tab/Page/Link to Device context menu when right clicking a tab, a page or a link.
+sendToAllDevices.menuitem = Αποστολή σε όλες τις συσκευές
+
+# LOCALIZATION NOTE (manageDevices.menuitem)
+# Displayed in the Send Tab/Page/Link to Device context menu when right clicking a tab, a page or a link.
+manageDevices.menuitem = Διαχείριση συσκευών…
+
+# LOCALIZATION NOTE (sendTabToDevice.unconfigured, sendTabToDevice.unconfigured.label2)
+# Displayed in the Send Tabs context menu when right clicking a tab, a page or a link
+# and the Sync account is unconfigured. Redirects to a marketing page.
+sendTabToDevice.unconfigured.label2 = Χωρίς σύνδεση
+sendTabToDevice.unconfigured = Μάθετε για την αποστολή καρτελών…
+
+# LOCALIZATION NOTE (sendTabToDevice.signintofxa)
+# Displayed in the Send Tabs context menu and the page action panel when FxA is not
+# configured. Allows users to immediately sign into FxA via the preferences.
+# %S is replaced by brandProductName.
+sendTabToDevice.signintofxa = Σύνδεση στο %S…
+
+# LOCALIZATION NOTE (sendTabToDevice.singledevice, sendTabToDevice.connectdevice,
+# sendTabToDevice.singledevice.status)
+# Displayed in the Send Tabs context menu when right clicking a tab, a page or a link
+# and the Sync account has only 1 device. The sendTabToDevice.singledevice link
+# redirects to a marketing page, the sendTabToDevice.connectdevice redirects
+# to an FxAccounts page that tells to you to connect another device.
+sendTabToDevice.singledevice.status = Δεν συνδέθηκαν συσκευές
+sendTabToDevice.singledevice = Μάθετε για την αποστολή καρτελών…
+sendTabToDevice.connectdevice = Σύνδεση άλλης συσκευής…
+
+# LOCALIZATION NOTE (sendTabToDevice.verify, sendTabToDevice.verify.status)
+# Displayed in the Send Tabs context menu when right clicking a tab, a page or a link
+# and the Sync account is unverified. Redirects to the Sync preferences page.
+sendTabToDevice.verify.status = Ο λογαριασμός δεν επαληθεύτηκε
+sendTabToDevice.verify = Επαλήθευση λογαριασμού…
+
+# LOCALIZATION NOTE (tabArrivingNotification.title, tabArrivingNotificationWithDevice.title,
+# multipleTabsArrivingNotification.title, unnamedTabsArrivingNotification2.body,
+# unnamedTabsArrivingNotificationMultiple2.body, unnamedTabsArrivingNotificationNoDevice.body,
+# singleTabArrivingWithTruncatedURL.body)
+# These strings are used in a notification shown when we're opening tab(s) another device sent us to display.
+
+# LOCALIZATION NOTE (tabArrivingNotification.title, tabArrivingNotificationWithDevice.title)
+# The body for these is the URL of the tab received
+tabArrivingNotification.title = Ελήφθη καρτέλα
+# LOCALIZATION NOTE (tabArrivingNotificationWithDevice.title) %S is the device name
+tabArrivingNotificationWithDevice.title = Καρτέλα από τη συσκευή %S
+
+multipleTabsArrivingNotification.title = Ελήφθησαν καρτέλες
+# LOCALIZATION NOTE (unnamedTabsArrivingNotification2.body):
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs received and #2 is the device name.
+unnamedTabsArrivingNotification2.body = Έφτασε #1 καρτέλα από τη συσκευή #2;Έφτασαν #1 καρτέλες από τη συσκευή #2
+# LOCALIZATION NOTE (unnamedTabsArrivingNotificationMultiple2.body):
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs received.
+unnamedTabsArrivingNotificationMultiple2.body = Έφτασε #1 καρτέλα από τις συνδεδεμένες συσκευές σας;Έφτασαν #1 καρτέλες από τις συνδεδεμένες συσκευές σας
+
+# LOCALIZATION NOTE (unnamedTabsArrivingNotificationNoDevice.body):
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs received
+# This version is used when we don't know any device names.
+unnamedTabsArrivingNotificationNoDevice.body = Έφτασε #1 καρτέλα;Έφτασαν #1 καρτέλες
+
+# LOCALIZATION NOTE (singleTabArrivingWithTruncatedURL.body):
+# Used when a tab from a remote device arrives but the URL must be truncated.
+# Should display the URL with an indication that it's benen truncated.
+# %S is the portion of the URL that remains after truncation.
+singleTabArrivingWithTruncatedURL.body = %S…
+
+# LOCALIZATION NOTE (account.title):
+# Used as a default header for the FxA toolbar menu.
+account.title = Λογαριασμός
+
+# LOCALIZATION NOTE (account.accountSettings):
+# Used as the description below user's email in the FxA toolbar menu.
+account.accountSettings = Ρυθμίσεις λογαριασμού
+
+# LOCALIZATION NOTE (account.finishAccountSetup):
+# Used as the FxA toolbar menu item value when user has not
+# finished setting up an account.
+account.finishAccountSetup = Ολοκλήρωση ρύθμισης λογαριασμού
+
+# LOCALIZATION NOTE (account.reconnectToFxA):
+# Used as the FxA toolbar menu item title when the user
+# needs to reconnect their account.
+account.reconnectToFxA = Επανασύνδεση στο λογαριασμό Firefox
diff --git a/l10n-el/browser/chrome/browser/app-extension-fields.properties b/l10n-el/browser/chrome/browser/app-extension-fields.properties
new file mode 100644
index 0000000000..d94da59b2e
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/app-extension-fields.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/.
+
+# LOCALIZATION NOTE (extension.firefox-compact-light@mozilla.org.name): This is displayed in about:addons -> Appearance
+extension.firefox-compact-light@mozilla.org.name=Φωτεινό
+extension.firefox-compact-light@mozilla.org.description=Ένα θέμα με φωτεινό σύνολο χρωμάτων.
+
+# LOCALIZATION NOTE (extension.firefox-compact-dark@mozilla.org.name): This is displayed in about:addons -> Appearance
+extension.firefox-compact-dark@mozilla.org.name=Σκούρο
+extension.firefox-compact-dark@mozilla.org.description=Ένα θέμα με σκούρο σύνολο χρωμάτων.
+
+# LOCALIZATION NOTE (extension.firefox-alpenglow@mozilla.org.name): This is displayed in about:addons -> Appearance
+extension.firefox-alpenglow@mozilla.org.name=Firefox Alpenglow
+extension.firefox-alpenglow@mozilla.org.description=Χρήση πολύχρωμης εμφάνισης για τα κουμπιά, τα μενού και τα παράθυρα.
diff --git a/l10n-el/browser/chrome/browser/baseMenuOverlay.dtd b/l10n-el/browser/chrome/browser/baseMenuOverlay.dtd
new file mode 100644
index 0000000000..adbe19e442
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/baseMenuOverlay.dtd
@@ -0,0 +1,18 @@
+<!-- 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 aboutProduct2.label "Σχετικά με το &brandShorterName;">
+<!ENTITY aboutProduct2.accesskey "τ">
+
+<!ENTITY preferencesCmdMac.label "Προτιμήσεις…">
+
+<!ENTITY servicesMenuMac.label "Υπηρεσίες">
+
+<!ENTITY hideThisAppCmdMac2.label "Απόκρυψη &brandShorterName;">
+
+<!ENTITY hideOtherAppsCmdMac.label "Απόκρυψη άλλων">
+
+<!ENTITY showAllAppsCmdMac.label "Εμφάνιση όλων">
+
+<!ENTITY touchBarCmdMac.label "Προσαρμογή γραμμής αφής…">
diff --git a/l10n-el/browser/chrome/browser/brandings.dtd b/l10n-el/browser/chrome/browser/brandings.dtd
new file mode 100644
index 0000000000..46a76ff0ff
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/brandings.dtd
@@ -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/. -->
+
+<!-- LOCALIZATION NOTE:
+ The following feature names must be treated as a brand, and kept in English.
+ They cannot be:
+ - Declined to adapt to grammatical case.
+ - Transliterated.
+ - Translated. -->
+
+<!ENTITY sendFullName "Firefox Send">
+<!ENTITY monitorFullName "Firefox Monitor">
diff --git a/l10n-el/browser/chrome/browser/browser.dtd b/l10n-el/browser/chrome/browser/browser.dtd
new file mode 100644
index 0000000000..a1bbd65fd5
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/browser.dtd
@@ -0,0 +1,290 @@
+<!-- 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 : FILE This file contains the browser main menu items -->
+<!-- LOCALIZATION NOTE : FILE Do not translate commandkeys -->
+
+<!ENTITY appmenu.tooltip "Άνοιγμα μενού">
+<!ENTITY navbarOverflow.label "Περισσότερα εργαλεία…">
+
+<!-- Tab context menu -->
+
+<!-- LOCALIZATION NOTE (pinTab.label, unpinTab.label): "Pin" is being
+used as a metaphor for expressing the fact that these tabs are "pinned" to the
+left edge of the tabstrip. Really we just want the string to express the idea
+that this is a lightweight and reversible action that keeps your tab where you
+can reach it easily. -->
+<!ENTITY pinTab.label "Καρφίτσωμα καρτέλας">
+<!ENTITY unpinTab.label "Ξεκαρφίτσωμα καρτέλας">
+
+<!ENTITY listAllTabs.label "Προβολή καρτελών σε λίστα">
+
+<!ENTITY tabCmd.label "Νέα καρτέλα">
+<!ENTITY openFileCmd.label "Άνοιγμα αρχείου…">
+<!ENTITY printCmd.label "Εκτύπωση…">
+
+<!ENTITY taskManagerCmd.label "Διαχείριση εργασιών">
+
+<!ENTITY menubarCmd.label "Γραμμή μενού">
+<!ENTITY menubarCmd.accesskey "μ">
+<!-- LOCALIZATION NOTE: The accessibleLabel is a spoken label that should not
+include the word "toolbar" or such, because screen readers already know that
+this container is a toolbar. This avoids double-speaking. -->
+<!ENTITY navbar.accessibleLabel "Πλοήγηση">
+<!ENTITY personalbarCmd.label "Γραμμή σελιδοδεικτών">
+<!ENTITY personalbarCmd.accesskey "γ">
+<!-- LOCALIZATION NOTE: The accessibleLabel is a spoken label that should not
+include the word "toolbar" or such, because screen readers already know that
+this container is a toolbar. This avoids double-speaking. -->
+<!ENTITY personalbar.accessibleLabel "Σελιδοδείκτες">
+<!ENTITY bookmarksToolbarItem.label "Στοιχεία γραμμής σελιδοδεικτών">
+
+<!ENTITY fullScreenCmd.label "Πλήρης οθόνη">
+
+
+<!ENTITY pictureInPictureHideToggle.label "Απόκρυψη διακόπτη εικόνας εντός εικόνας">
+<!ENTITY pictureInPictureHideToggle.accesskey "Α">
+
+<!-- LOCALIZATION NOTE (fxa.menu) Used to define the different labels
+ for the Firefox Account toolbar menu screen. The `Signed in as` text is
+ followed by the user's email. -->
+<!ENTITY fxa.menu.syncSettings2.label "Ρυθμίσεις &syncBrand.shortName.label;">
+<!ENTITY fxa.menu.connectAnotherDevice2.label "Σύνδεση άλλης συσκευής…">
+<!ENTITY fxa.menu.firefoxAccount "&syncBrand.fxAccount.label;">
+
+<!ENTITY fxa.menu.signin.label "Σύνδεση στο &brandProductName;">
+<!ENTITY fxa.menu.turnOnSync.label "Ενεργοποίηση &syncBrand.shortName.label;">
+<!ENTITY fxa.menu.firefoxServices.label "Υπηρεσίες &brandProductName;">
+<!ENTITY fxa.menu.account.label "Λογαριασμός">
+<!ENTITY fxa.menu.settings.label "Ρυθμίσεις">
+<!ENTITY fxa.menu.accountSettings.label "Ρυθμίσεις λογαριασμού">
+<!ENTITY fxa.menu.manageAccount2.label "Διαχείριση λογαριασμού">
+<!ENTITY fxa.menu.signOut.label "Αποσύνδεση…">
+<!ENTITY fxa.menu.setupSync.label "Ρύθμιση &syncBrand.shortName.label;…">
+
+<!-- LOCALIZATION NOTE (fxa.service) Used to define the different FxA services
+ for the Firefox Account toolbar menu screen. -->
+<!ENTITY fxa.service.sendTab.description "Στείλτε άμεσα μια καρτέλα σε κάθε συσκευή που έχετε συνδεθεί.">
+
+<!-- LOCALIZATION NOTE (fullscreenWarning.beforeDomain.label,
+ fullscreenWarning.afterDomain.label): these two strings are used
+ respectively before and after the domain requiring fullscreen.
+ Localizers can use one of them, or both, to better adapt this
+ sentence to their language. -->
+<!ENTITY fullscreenWarning.beforeDomain.label "Το ">
+<!ENTITY fullscreenWarning.afterDomain.label "εκτελείται σε πλήρη οθόνη">
+<!ENTITY fullscreenWarning.generic.label "Αυτό το έγγραφο εμφανίζεται σε πλήρη οθόνη">
+
+<!-- LOCALIZATION NOTE (exitDOMFullscreen.button,
+ exitDOMFullscreenMac.button): the "escape" button on PC keyboards
+ is uppercase, while on Mac keyboards it is lowercase -->
+<!ENTITY exitDOMFullscreen.button "Έξοδος από πλήρη οθόνη (Esc)">
+<!ENTITY exitDOMFullscreenMac.button "Έξοδος από πλήρη οθόνη (esc)">
+
+<!-- LOCALIZATION NOTE (pointerlockWarning.beforeDomain.label,
+ pointerlockWarning.afterDomain.label): these two strings are used
+ respectively before and after the domain requiring pointerlock.
+ Localizers can use one of them, or both, to better adapt this
+ sentence to their language. -->
+<!ENTITY pointerlockWarning.beforeDomain.label "Το ">
+<!ENTITY pointerlockWarning.afterDomain.label "ελέγχει τον κέρσορα. Πατήστε Esc για ανάκτηση ελέγχου.">
+<!ENTITY pointerlockWarning.generic.label "Αυτό το έγγραφο ελέγχει τον κέρσορα. Πατήστε Esc για ανάκτηση ελέγχου.">
+
+<!ENTITY showAllBookmarks2.label "Προβολή όλων των σελιδοδεικτών">
+<!ENTITY recentBookmarks.label "Πρόσφατοι σελιδοδείκτες">
+<!ENTITY bookmarksToolbarChevron.tooltip "Προβολή περισσότερων σελιδοδεικτών">
+
+<!ENTITY printButton.label "Εκτύπωση">
+<!ENTITY printButton.tooltip "Εκτύπωση σελίδας">
+
+<!ENTITY searchItem.title "Αναζήτηση">
+
+<!-- Toolbar items -->
+<!ENTITY homeButton.label "Αρχική σελίδα">
+<!ENTITY homeButton.defaultPage.tooltip "Αρχική σελίδα του &brandShortName;">
+
+<!ENTITY bookmarksButton.label "Σελιδοδείκτες">
+
+<!ENTITY bookmarksSubview.label "Σελιδοδείκτες">
+<!ENTITY bookmarksMenuButton2.label "Μενού σελιδοδεικτών">
+<!ENTITY bookmarksMenuButton.other.label "Άλλοι σελιδοδείκτες">
+<!ENTITY bookmarksMenuButton.mobile.label "Σελιδοδείκτες κινητού">
+<!ENTITY viewBookmarksSidebar2.label "Προβολή στήλης σελιδοδεικτών">
+<!ENTITY hideBookmarksSidebar.label "Απόκρυψη στήλης σελιδοδεικτών">
+<!ENTITY viewBookmarksToolbar.label "Προβολή γραμμής σελιδοδεικτών">
+<!ENTITY hideBookmarksToolbar.label "Απόκρυψη γραμμής σελιδοδεικτών">
+<!ENTITY searchBookmarks.label "Αναζήτηση σελιδοδεικτών">
+<!ENTITY bookmarkingTools.label "Εργαλεία σελιδοδεικτών">
+<!ENTITY addBookmarksMenu.label "Προσθήκη μενού σελιδοδεικτών στη γραμμή εργαλείων">
+<!ENTITY removeBookmarksMenu.label "Αφαίρεση μενού σελιδοδεικτών από τη γραμμή εργαλείων">
+
+<!ENTITY historyButton.label "Ιστορικό">
+
+<!ENTITY downloads.label "Λήψεις">
+<!-- LOCALIZATION NOTE (libraryDownloads.label): This label is similar to
+ - downloads.label, but used in the Library panel. -->
+<!ENTITY libraryDownloads.label "Λήψεις">
+<!ENTITY addons.label "Πρόσθετα">
+
+<!ENTITY webDeveloperMenu.label "Προγραμματισμός ιστού">
+
+<!ENTITY newNavigatorCmd.label "Νέο παράθυρο">
+<!ENTITY newPrivateWindow.label "Νέο ιδιωτικό παράθυρο">
+
+<!ENTITY editMenu.label "Επεξεργασία">
+<!ENTITY preferencesCmd2.label "Επιλογές">
+<!ENTITY preferencesCmdUnix.label "Προτιμήσεις">
+<!ENTITY logins.label "Συνδέσεις και κωδικοί πρόσβασης">
+
+<!ENTITY overflowCustomizeToolbar.label "Προσαρμογή γραμμής εργαλείων…">
+<!ENTITY overflowCustomizeToolbar.accesskey "ο">
+
+<!ENTITY historyMenu.label "Ιστορικό">
+<!ENTITY historyUndoMenu.label "Πρόσφατα κλεισμένες καρτέλες">
+<!-- LOCALIZATION NOTE (historyUndoWindowMenu): see bug 394759 -->
+<!ENTITY historyUndoWindowMenu.label "Πρόσφατα κλεισμένα παράθυρα">
+
+<!ENTITY appMenuHistory.showAll.label "Προβολή όλου του ιστορικού">
+<!ENTITY appMenuHistory.clearRecent.label "Εκκαθάριση πρόσφατου ιστορικού…">
+<!ENTITY appMenuHistory.restoreSession.label "Επαναφορά προηγούμενης συνεδρίας">
+<!ENTITY appMenuHistory.viewSidebar.label "Προβολή στήλης ιστορικού">
+<!ENTITY appMenuHistory.hideSidebar.label "Απόκρυψη στήλης ιστορικού">
+<!ENTITY appMenuHistory.recentHistory.label "Πρόσφατο ιστορικό">
+<!ENTITY appMenuHelp.label "Βοήθεια">
+
+<!ENTITY appMenuRemoteTabs.label "Συγχρονισμένες καρτέλες">
+<!-- LOCALIZATION NOTE (appMenuRemoteTabs.notabs.label): This is shown beneath
+ the name of a device when that device has no open tabs -->
+<!ENTITY appMenuRemoteTabs.notabs.label "Δεν υπάρχουν ανοικτές καρτέλες">
+<!-- LOCALIZATION NOTE (appMenuRemoteTabs.showMore.label, appMenuRemoteTabs.showMore.tooltip):
+ This is shown after the tabs list if we can display more tabs by clicking on the button -->
+<!ENTITY appMenuRemoteTabs.showMore.label "Εμφάνιση περισσότερων">
+<!ENTITY appMenuRemoteTabs.showMore.tooltip "Εμφάνιση περισσότερων καρτελών από αυτή τη συσκευή">
+<!-- LOCALIZATION NOTE (appMenuRemoteTabs.showAll.label, appMenuRemoteTabs.showAll.tooltip):
+ This is shown after the tabs list if we can all the remaining tabs by clicking on the button -->
+<!ENTITY appMenuRemoteTabs.showAll.label "Εμφάνιση όλων">
+<!ENTITY appMenuRemoteTabs.showAll.tooltip "Εμφάνιση όλων των καρτελών από αυτή τη συσκευή">
+<!-- LOCALIZATION NOTE (appMenuRemoteTabs.tabsnotsyncing.label): This is shown
+ when Sync is configured but syncing tabs is disabled. -->
+<!ENTITY appMenuRemoteTabs.tabsnotsyncing.label "Ενεργοποιήστε τον συγχρονισμό καρτελών για να δείτε μια λίστα από καρτέλες από τις άλλες σας συσκευές.">
+<!-- LOCALIZATION NOTE (appMenuRemoteTabs.noclients.subtitle): This is shown
+ when Sync is configured but this appears to be the only device attached to
+ the account. We also show links to download Firefox for android/ios. -->
+<!ENTITY appMenuRemoteTabs.noclients.subtitle "Θέλετε να δείτε τις καρτέλες από τις άλλες σας συσκευές εδώ;">
+<!ENTITY appMenuRemoteTabs.opensyncprefs.label "Άνοιγμα προτιμήσεων συγχρονισμού">
+<!ENTITY appMenuRemoteTabs.welcome.label "Δείτε μια λίστα με καρτέλες από τις άλλες σας συσκευές.">
+<!ENTITY appMenuRemoteTabs.unverified.label "Ο λογαριασμός σας πρέπει να επαληθευτεί.">
+<!ENTITY appMenuRemoteTabs.signintosync.label "Σύνδεση στο &syncBrand.shortName.label;…">
+<!ENTITY appMenuRemoteTabs.turnonsync.label "Ενεργοποίηση &syncBrand.shortName.label;…">
+<!ENTITY appMenuRemoteTabs.managedevices.label "Διαχείριση συσκευών…">
+<!ENTITY appMenuRemoteTabs.sidebar.label "Προβολή στήλης συγχρονισμένων καρτελών">
+<!ENTITY appMenuRemoteTabs.hidesidebar.label "Απόκρυψη στήλης συγχρονισμένων καρτελών">
+<!ENTITY appMenuRemoteTabs.connectdevice.label "Σύνδεση άλλης συσκευής">
+
+<!ENTITY appMenuRecentHighlights.label "Πρόσφατες κορυφαίες στιγμές">
+
+<!ENTITY customizeMenu.addToToolbar.label "Προσθήκη στη γραμμή εργαλείων">
+<!ENTITY customizeMenu.addToToolbar.accesskey "Α">
+<!-- LOCALIZATION NOTE (customizeMenu.addToOverflowMenu.label,
+ customizeMenu.unpinFromOverflowMenu.label)
+ The overflow menu is the menu that appears if you click the chevron (>> button)
+ in the location bar. -->
+<!ENTITY customizeMenu.addToOverflowMenu.label "Προσθήκη στο αναδυόμενο μενού">
+<!ENTITY customizeMenu.addToOverflowMenu.accesskey "Μ">
+<!ENTITY customizeMenu.unpinFromOverflowMenu.label "Ξεκαρφίτσωμα από το αναδυόμενο μενού">
+<!ENTITY customizeMenu.unpinFromOverflowMenu.accesskey "Ξ">
+<!ENTITY customizeMenu.removeFromToolbar.label "Αφαίρεση από τη γραμμή εργαλείων">
+<!ENTITY customizeMenu.removeFromToolbar.accesskey "Α">
+<!ENTITY customizeMenu.addMoreItems.label "Προσθήκη περισσότερων αντικειμένων…">
+<!ENTITY customizeMenu.addMoreItems.accesskey "α">
+
+<!-- LOCALIZATION NOTE (moreMenu.label) This label is used in the new Photon
+ app (hamburger) menu. When clicked, it opens a subview that contains
+ secondary commands. -->
+<!ENTITY moreMenu.label "Περισσότερα">
+
+<!ENTITY contentSearchSubmit.tooltip "Υποβολή αναζήτησης">
+
+<!-- LOCALIZATION NOTE (searchInput.placeholder):
+ This string is displayed in the search box when the input field is empty. -->
+<!ENTITY searchInput.placeholder "Αναζήτηση">
+<!ENTITY searchIcon.tooltip "Αναζήτηση">
+
+<!ENTITY openLinkCmdInTab.accesskey "τ">
+
+<!ENTITY pageAction.copyLink.label "Αντιγραφή συνδέσμου">
+
+<!-- LOCALIZATION NOTE(pocket-button.tooltiptext, saveToPocketCmd.label, saveLinkToPocketCmd.label, pocketMenuitem.label):
+ "Pocket" is a brand name. -->
+<!ENTITY saveToPocketCmd.label "Αποθήκευση σελίδας στο Pocket">
+<!ENTITY pocketMenuitem.label "Προβολή λίστας Pocket">
+
+<!ENTITY emailPageCmd.label "Αποστολή συνδέσμου…">
+
+<!-- Media (video/audio) controls -->
+
+<!-- LOCALIZATION NOTE :
+fullZoomEnlargeCmd.commandkey3, fullZoomReduceCmd.commandkey2 and
+fullZoomResetCmd.commandkey2 are alternative acceleration keys for zoom.
+If shift key is needed with your locale popular keyboard for them,
+you can use these alternative items. Otherwise, their values should be empty. -->
+
+<!ENTITY fullZoom.label "Ζουμ">
+
+<!ENTITY sidebarCloseButton.tooltip "Κλείσιμο πλευρικής στήλης">
+
+<!ENTITY quitApplicationCmdWin2.label "Έξοδος">
+<!ENTITY quitApplicationCmdWin2.accesskey "ξ">
+<!ENTITY quitApplicationCmdWin2.tooltip "Έξοδος από το &brandShorterName;">
+<!ENTITY quitApplicationCmd.label "Έξοδος">
+<!ENTITY quitApplicationCmd.accesskey "ξ">
+<!ENTITY quitApplicationCmdMac2.label "Έξοδος από το &brandShorterName;">
+
+<!ENTITY allowPopups.accesskey "ν">
+<!-- On Windows we use the term "Options" to describe settings, but
+ on Linux and Mac OS X we use "Preferences" - carry that distinction
+ over into this string, which is used in the "popup blocked" info bar . -->
+<!ENTITY editPopupSettingsUnix.label "Επεξεργασία προτιμήσεων φραγής αναδυόμενων παραθύρων…">
+<!ENTITY editPopupSettings.label "Επεξεργασία επιλογών φραγής αναδυόμενων παραθύρων…">
+<!ENTITY editPopupSettings.accesskey "ξ">
+<!ENTITY dontShowMessage.accesskey "Ν">
+
+<!ENTITY findOnCmd.label "Εύρεση στη σελίδα…">
+
+<!ENTITY spellAddDictionaries.label "Προσθήκη λεξικών…">
+<!ENTITY spellAddDictionaries.accesskey "θ">
+
+
+<!-- Name for the tabs toolbar as spoken by screen readers.
+ The word "toolbar" is appended automatically and should not be contained below! -->
+<!ENTITY tabsToolbar.label "Καρτέλες περιηγητή">
+
+<!ENTITY syncBrand.shortName.label "Sync">
+
+<!ENTITY customizeMode.autoHideDownloadsButton.label "Αυτόματη απόκρυψη">
+
+
+<!ENTITY uiTour.infoPanel.close "Κλείσιμο">
+
+<!ENTITY panicButton.thankyou.msg1 "Έγινε εκκαθάριση του πρόσφατου ιστορικού σας.">
+<!ENTITY panicButton.thankyou.msg2 "Καλή και ασφαλή περιήγηση!">
+<!ENTITY panicButton.thankyou.buttonlabel "Ευχαριστώ!">
+
+<!ENTITY updateAvailable.panelUI.label "Λήψη ενημέρωσης για το &brandShorterName;">
+<!ENTITY updateManual.panelUI.label "Λήψη μιας φρέσκιας έκδοσης του &brandShorterName;">
+<!ENTITY updateUnsupported.panelUI.label "Δεν μπορείτε να εκτελέσετε περαιτέρω ενημερώσεις">
+<!ENTITY updateRestart.panelUI.label2 "Επανεκκίνηση για ενημέρωση του &brandShorterName;">
+
+<!ENTITY sendToDevice.syncNotReady.label "Συγχρονισμός συσκευών…">
+
+<!ENTITY pageAction.shareUrl.label "Κοινή χρήση">
+<!ENTITY pageAction.shareMore.label "Περισσότερα…">
+
+<!ENTITY libraryButton.tooltip "Προβολή ιστορικού, σελιδοδεικτών και πολλών άλλων">
+
+<!-- LOCALIZATION NOTE: (accessibilityIndicator.tooltip): This is used to
+ display a tooltip for accessibility indicator in toolbar/tabbar. It is also
+ used as a textual label for the indicator used by assistive technology
+ users. -->
+<!ENTITY accessibilityIndicator.tooltip "Οι λειτουργίες προσβασιμότητας ενεργοποιήθηκαν">
diff --git a/l10n-el/browser/chrome/browser/browser.properties b/l10n-el/browser/chrome/browser/browser.properties
new file mode 100644
index 0000000000..653b3bcafb
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/browser.properties
@@ -0,0 +1,1064 @@
+# 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/.
+
+nv_timeout=Λήξη χρόνου
+openFile=Άνοιγμα αρχείου
+
+droponhometitle=Ορισμός αρχικής σελίδας
+droponhomemsg=Θέλετε να γίνει αυτό το έγγραφο η νέα σας αρχική σελίδα;
+droponhomemsgMultiple=Θέλετε να γίνουν αυτά τα έγγραφα οι νέες σας αρχικές σελίδες;
+
+# context menu strings
+
+# LOCALIZATION NOTE (contextMenuSearch): %1$S is the search engine,
+# %2$S is the selection string.
+contextMenuSearch=Αναζήτηση στο %1$S για "%2$S"
+contextMenuSearch.accesskey=ζ
+contextMenuPrivateSearch=Αναζήτηση σε ιδιωτικό παράθυρο
+contextMenuPrivateSearch.accesskey=ζ
+# LOCALIZATION NOTE (contextMenuPrivateSearchOtherEngine): %S is the search
+# engine name as set for Private Browsing mode. This label is only used when
+# this engine is different from the default engine name used in normal mode.
+contextMenuPrivateSearchOtherEngine=Αναζήτηση με %S σε ιδιωτικό παράθυρο
+contextMenuPrivateSearchOtherEngine.accesskey=σ
+
+# bookmark dialog strings
+
+bookmarkAllTabsDefault=[Όνομα φακέλου]
+
+xpinstallPromptMessage=Το %S εμπόδισε την ερώτηση αυτής της ιστοσελίδας για εγκατάσταση λογισμικού στον υπολογιστή σας.
+# LOCALIZATION NOTE (xpinstallPromptMessage.header)
+# The string contains the hostname of the site the add-on is being installed from.
+xpinstallPromptMessage.header=Να επιτραπεί στο %S η εγκατάσταση ενός προσθέτου;
+xpinstallPromptMessage.message=Προσπαθείτε να εγκαταστήσετε ένα πρόσθετο από το %S. Βεβαιωθείτε ότι εμπιστεύεστε αυτή την ιστοσελίδα πριν συνεχίσετε.
+xpinstallPromptMessage.header.unknown=Να επιτρέπεται σε μια άγνωστη ιστοσελίδα η εγκατάσταση προσθέτου;
+xpinstallPromptMessage.message.unknown=Προσπαθείτε να εγκαταστήσετε ένα πρόσθετο από μια άγνωστη ιστοσελίδα. Βεβαιωθείτε ότι εμπιστεύεστε αυτή την ιστοσελίδα πριν συνεχίσετε.
+xpinstallPromptMessage.learnMore=Μάθετε περισσότερα σχετικά με την ασφαλή εγκατάσταση πρόσθετων
+xpinstallPromptMessage.dontAllow=Απόρριψη
+xpinstallPromptMessage.dontAllow.accesskey=ρ
+xpinstallPromptMessage.neverAllow=Ποτέ αποδοχή
+xpinstallPromptMessage.neverAllow.accesskey=Π
+# Accessibility Note:
+# Be sure you do not choose an accesskey that is used elsewhere in the active context (e.g. main menu bar, submenu of the warning popup button)
+# See https://website-archive.mozilla.org/www.mozilla.org/access/access/keyboard/ for details
+xpinstallPromptMessage.install=Συνέχεια εγκατάστασης
+xpinstallPromptMessage.install.accesskey=Σ
+
+xpinstallDisabledMessageLocked=Η εγκατάσταση λογισμικού έχει απενεργοποιηθεί από το διαχειριστή του συστήματος σας.
+xpinstallDisabledMessage=Η εγκατάσταση λογισμικού είναι ανενεργή. Κάντε κλικ στο Ενεργοποίηση και δοκιμάστε ξανά.
+xpinstallDisabledButton=Ενεργοποίηση
+xpinstallDisabledButton.accesskey=ν
+
+# LOCALIZATION NOTE (addonInstallBlockedByPolicy)
+# This message is shown when the installation of an add-on is blocked by
+# enterprise policy. %1$S is replaced by the name of the add-on.
+# %2$S is replaced by the ID of add-on. %3$S is a custom message that
+# the administration can add to the message.
+addonInstallBlockedByPolicy=Το %1$S (%2$S) έχει αποκλειστεί από το διαχειριστή του συστήματός σας.%3$S
+addonInstallFullScreenBlocked=Η εγκατάσταση προσθέτων δεν επιτρέπεται κατά τη χρήση ή πριν την είσοδο σε λειτουργία πλήρους οθόνης.
+
+# LOCALIZATION NOTE (webextPerms.header)
+# This string is used as a header in the webextension permissions dialog,
+# %S is replaced with the localized name of the extension being installed.
+# See https://bug1308309.bmoattachments.org/attachment.cgi?id=8814612
+# for an example of the full dialog.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.header=Προσθήκη %S;
+
+webextPerms.unsignedWarning=Προσοχή: Αυτό το πρόσθετο δεν είναι επαληθευμένο. Τα κακόβουλα πρόσθετα μπορούν να κλέψουν τις προσωπικές σας πληροφορίες ή να θέσουν σε κίνδυνο τον υπολογιστή σας. Να εγκαταστήσετε αυτό το πρόσθετο μόνο αν εμπιστεύεστε την προέλευσή του.
+
+# LOCALIZATION NOTE (webextPerms.listIntro)
+# This string will be followed by a list of permissions requested
+# by the webextension.
+webextPerms.listIntro=Απαιτεί την άδειά σας για:
+webextPerms.learnMore=Μάθετε περισσότερα σχετικά με τα δικαιώματα
+webextPerms.add.label=Προσθήκη
+webextPerms.add.accessKey=Π
+webextPerms.cancel.label=Ακύρωση
+webextPerms.cancel.accessKey=Α
+
+# LOCALIZATION NOTE (webextPerms.sideloadMenuItem)
+# %1$S will be replaced with the localized name of the sideloaded add-on.
+# %2$S will be replace with the name of the application (e.g., Firefox, Nightly)
+webextPerms.sideloadMenuItem=Το %1$S προστέθηκε στο %2$S
+
+# LOCALIZATION NOTE (webextPerms.sideloadHeader)
+# This string is used as a header in the webextension permissions dialog
+# when the extension is side-loaded.
+# %S is replaced with the localized name of the extension being installed.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.sideloadHeader=Το %S προστέθηκε
+webextPerms.sideloadText2=Ένα άλλο πρόγραμμα στον υπολογιστή σας εγκατέστησε ένα πρόσθετο που ενδέχεται να επηρεάσει το πρόγραμμα περιήγησής σας. Παρακαλώ ελέγξτε τα αιτήματα δικαιωμάτων αυτού του πρόσθετου και επιλέξτε Ενεργοποίηση ή Ακύρωση (για να παραμείνει ανενεργό).
+webextPerms.sideloadTextNoPerms=Ένα άλλο πρόγραμμα στον υπολογιστή σας εγκατέστησε ένα πρόσθετο που ενδέχεται να επηρεάσει το πρόγραμμα περιήγησής σας. Παρακαλώ επιλέξτε Ενεργοποίηση ή Ακύρωση (για να παραμείνει ανενεργό).
+
+webextPerms.sideloadEnable.label=Ενεργοποίηση
+webextPerms.sideloadEnable.accessKey=Ε
+webextPerms.sideloadCancel.label=Ακύρωση
+webextPerms.sideloadCancel.accessKey=Α
+
+# LOCALIZATION NOTE (webextPerms.updateMenuItem)
+# %S will be replaced with the localized name of the extension which
+# has been updated.
+webextPerms.updateMenuItem=Το %S απαιτεί νέα δικαιώματα
+
+# LOCALIZATION NOTE (webextPerms.updateText)
+# %S is replaced with the localized name of the updated extension.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.updateText=Το %S έχει ενημερωθεί. Πρέπει να εγκρίνετε νέα δικαιώματα πριν εγκατασταθεί η ενημερωμένη έκδοση. Αν επιλέξετε “Ακύρωση”, θα διατηρηθεί η τρέχουσα έκδοση του προσθέτου.
+
+webextPerms.updateAccept.label=Ενημέρωση
+webextPerms.updateAccept.accessKey=Ε
+
+# LOCALIZATION NOTE (webextPerms.optionalPermsHeader)
+# %S is replace with the localized name of the extension requested new
+# permissions.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.optionalPermsHeader=Το %S απαιτεί επιπρόσθετα δικαιώματα.
+webextPerms.optionalPermsListIntro=Θέλει να:
+webextPerms.optionalPermsAllow.label=Αποδοχή
+webextPerms.optionalPermsAllow.accessKey=Α
+webextPerms.optionalPermsDeny.label=Άρνηση
+webextPerms.optionalPermsDeny.accessKey=ρ
+
+webextPerms.description.bookmarks=Ανάγνωση και τροποποίηση σελιδοδεικτών
+webextPerms.description.browserSettings=Ανάγνωση και τροποποίηση των ρυθμίσεων του προγράμματος περιήγησης
+webextPerms.description.browsingData=Εκκαθάριση πρόσφατου ιστορικού περιήγησης, cookies και σχετικών δεδομένων
+webextPerms.description.clipboardRead=Λήψη δεδομένων από το πρόχειρο
+webextPerms.description.clipboardWrite=Εισαγωγή δεδομένων στο πρόχειρο
+webextPerms.description.devtools=Επέκταση των εργαλείων προγραμματιστή για πρόσβαση στα δεδομένα σας στις ανοιχτές καρτέλες
+webextPerms.description.downloads=Λήψη αρχείων και ανάγνωση/τροποποίηση ιστορικού λήψεων του προγράμματος περιήγησης
+webextPerms.description.downloads.open=Άνοιγμα ληφθέντων αρχείων του υπολογιστή σας
+webextPerms.description.find=Ανάγνωση κειμένου από όλες τις ανοικτές καρτέλες
+webextPerms.description.geolocation=Πρόσβαση στην τοποθεσία σας
+webextPerms.description.history=Πρόσβαση στο ιστορικό περιήγησης
+webextPerms.description.management=Εποπτεία χρήσης επεκτάσεων και διαχείριση θεμάτων
+# LOCALIZATION NOTE (webextPerms.description.nativeMessaging)
+# %S will be replaced with the name of the application
+webextPerms.description.nativeMessaging=Ανταλλαγή μηνυμάτων με προγράμματα εκτός του %S
+webextPerms.description.notifications=Εμφάνιση ειδοποιήσεων σε εσάς
+webextPerms.description.pkcs11=Παροχή κρυπτογραφικών υπηρεσιών ταυτοποίησης
+webextPerms.description.privacy=Ανάγνωση και τροποποίηση ρυθμίσεων απορρήτου
+webextPerms.description.proxy=Έλεγχος ρυθμίσεων διαμεσολαβητή προγράμματος περιήγησης
+webextPerms.description.sessions=Πρόσβαση στις πρόσφατα κλεισμένες καρτέλες
+webextPerms.description.tabs=Πρόσβαση στις καρτέλες περιήγησης
+webextPerms.description.tabHide=Απόκρυψη και εμφανιση καρτελών προγράμματος περιήγησης
+webextPerms.description.topSites=Πρόσβαση στο ιστορικό περιήγησης
+webextPerms.description.webNavigation=Πρόσβαση στις ενέργειες του περιηγητή κατά την πλοήγηση
+
+webextPerms.hostDescription.allUrls=Πρόσβαση στα δεδομένα σας για όλες τις ιστοσελίδες
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.wildcard)
+# %S will be replaced by the DNS domain for which a webextension
+# is requesting access (e.g., mozilla.org)
+webextPerms.hostDescription.wildcard=Πρόσβαση στα δεδομένα σας για ιστοτόπους στην διεύθυνση πλοήγησης %S
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.tooManyWildcards):
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 will be replaced by an integer indicating the number of additional
+# domains for which this webextension is requesting permission.
+webextPerms.hostDescription.tooManyWildcards=Πρόσβαση στα δεδομένα σας για την άλλη διεύθυνση πλοήγησης #1;Πρόσβαση στα δεδομένα σας για τις άλλες διευθύνσεις πλοήγησης #1
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.oneSite)
+# %S will be replaced by the DNS host name for which a webextension
+# is requesting access (e.g., www.mozilla.org)
+webextPerms.hostDescription.oneSite=Πρόσβαση στα δεδομένα σας για %S
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.tooManySites)
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 will be replaced by an integer indicating the number of additional
+# hosts for which this webextension is requesting permission.
+webextPerms.hostDescription.tooManySites=Πρόσβαση στα δεδομένα σας σε άλλη #1 ιστοσελίδα;Πρόσβαση στα δεδομένα σας σε άλλες #1 ιστοσελίδες
+
+# LOCALIZATION NOTE (webext.defaultSearch.description)
+# %1$S is replaced with the localized named of the extension that is asking to change the default search engine.
+# %2$S is replaced with the name of the current search engine
+# %3$S is replaced with the name of the new search engine
+webext.defaultSearch.description=Το %1$S θα ήθελε να αλλάξει την προεπιλεγμένη μηχανή αναζήτησης από %2$S σε %3$S. Συμφωνείτε;
+webext.defaultSearchYes.label=Ναι
+webext.defaultSearchYes.accessKey=Ν
+webext.defaultSearchNo.label=Όχι
+webext.defaultSearchNo.accessKey=Ό
+
+# LOCALIZATION NOTE (webext.remove.confirmation.title)
+# %S is the name of the extension which is about to be removed.
+webext.remove.confirmation.title=Αφαίρεση %S
+# LOCALIZATION NOTE (webext.remove.confirmation.message)
+# %1$S is the name of the extension which is about to be removed.
+# %2$S is brandShorterName
+webext.remove.confirmation.message=Αφαίρεση του %1$S από το %2$S;
+webext.remove.confirmation.button=Αφαίρεση
+# LOCALIZATION NOTE (webext.remove.abuseReportCheckbox.message)
+# %S is vendorShortName
+webext.remove.abuseReportCheckbox.message=Θέλω να αναφέρω αυτή την επέκταση στη %S
+
+# LOCALIZATION NOTE (addonPostInstall.message1)
+# %1$S is replaced with the localized named of the extension that was
+# just installed.
+# %2$S is replaced with the localized name of the application.
+addonPostInstall.message1=Το %1$S προστέθηκε στο %2$S.
+
+# LOCALIZATION NOTE (addonDownloadingAndVerifying):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Also see https://bugzilla.mozilla.org/show_bug.cgi?id=570012 for mockups
+addonDownloadingAndVerifying=Γίνεται λήψη και επαλήθευση του πρόσθετου…;Γίνεται λήψη και επαλήθευση #1 πρόσθετων…
+addonDownloadVerifying=Επαλήθευση
+
+addonInstall.unsigned=(Μη επαληθευμένο)
+addonInstall.cancelButton.label=Ακύρωση
+addonInstall.cancelButton.accesskey=Α
+addonInstall.acceptButton2.label=Προσθήκη
+addonInstall.acceptButton2.accesskey=Π
+
+# LOCALIZATION NOTE (addonConfirmInstallMessage,addonConfirmInstallUnsigned):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is brandShortName
+# #2 is the number of add-ons being installed
+addonConfirmInstall.message=Αυτή η ιστοσελίδα επιθυμεί να εγκαταστήσει ένα πρόσθετο στο #1:;Αυτή η ιστοσελίδα επιθυμεί να εγκαταστήσει #2 πρόσθετα στο #1:
+addonConfirmInstallUnsigned.message=Προσοχή: Αυτή η ιστοσελίδα επιθυμεί να εγκαταστήσει ένα μη επαληθευμένο πρόσθετο στο #1. Συνεχίστε με δική σας ευθύνη.;Προσοχή: Αυτή η ιστοσελίδα επιθυμεί να εγκαταστήσει #2 μη επαληθευμένα πρόσθετα στο #1. Συνεχίστε με δική σας ευθύνη.
+
+# LOCALIZATION NOTE (addonConfirmInstallSomeUnsigned.message):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is brandShortName
+# #2 is the total number of add-ons being installed (at least 2)
+addonConfirmInstallSomeUnsigned.message=;Προσοχή: Αυτή η ιστοσελίδα επιθυμεί να εγκαταστήσει #2 πρόσθετα στο #1, εκ των οποίων ορισμένα δεν είναι επαληθευμένα. Συνεχίστε με δική σας ευθύνη.
+
+# LOCALIZATION NOTE (addonInstalled):
+# %S is the name of the add-on
+addonInstalled=Το %S εγκαταστάθηκε με επιτυχία.
+# LOCALIZATION NOTE (addonsGenericInstalled):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of add-ons
+addonsGenericInstalled=#1 πρόσθετο έχει εγκατασταθεί επιτυχώς.;#1 πρόσθετα έχουν εγκατασταθεί επιτυχώς.
+
+# LOCALIZATION NOTE (addonInstallError-1, addonInstallError-2, addonInstallError-3, addonInstallError-4, addonInstallError-5, addonLocalInstallError-1, addonLocalInstallError-2, addonLocalInstallError-3, addonLocalInstallError-4, addonLocalInstallError-5):
+# %1$S is the application name, %2$S is the add-on name
+addonInstallError-1=Δεν ήταν δυνατή η λήψη του προσθέτου, λόγω μιας αποτυχίας στη σύνδεση.
+addonInstallError-2=Δεν ήταν δυνατή η εγκατάσταση του προσθέτου, επειδή δεν αντιστοιχεί στο πρόσθετο που περίμενε το %1$S.
+addonInstallError-3=Δεν ήταν δυνατή η εγκατάσταση του ληφθέντος προσθέτου, επειδή φαίνεται να είναι κατεστραμμένο.
+addonInstallError-4=Δεν ήταν δυνατή η εγκατάσταση του %2$S, επειδή το %1$S δεν μπόρεσε να τροποποιήσει το απαραίτητο αρχείο.
+addonInstallError-5=Το %1$S εμπόδισε την εγκατάσταση ενός μη επαληθευμένου προσθέτου από αυτή την ιστοσελίδα.
+addonLocalInstallError-1=Δεν ήταν δυνατή η εγκατάσταση αυτού του προσθέτου, λόγω σφάλματος στο σύστημα αρχείων.
+addonLocalInstallError-2=Δεν ήταν δυνατή η εγκατάσταση αυτού του προσθέτου, επειδή δεν αντιστοιχεί στο πρόσθετο που περίμενε το %1$S.
+addonLocalInstallError-3=Δεν ήταν δυνατή η εγκατάσταση αυτού του προσθέτου, επειδή φαίνεται να είναι κατεστραμμένο.
+addonLocalInstallError-4=Δεν ήταν δυνατή η εγκατάσταση του %2$S, επειδή το %1$S δεν μπόρεσε να τροποποιήσει το απαραίτητο αρχείο.
+addonLocalInstallError-5=Δεν ήταν δυνατή η εγκατάσταση αυτού του προσθέτου, επειδή δεν έχει επαληθευτεί.
+
+# LOCALIZATION NOTE (addonInstallErrorIncompatible):
+# %1$S is the application name, %2$S is the application version, %3$S is the add-on name
+addonInstallErrorIncompatible=Δεν ήταν δυνατή η εγκατάσταση του %3$S, επειδή δεν είναι συμβατό με το %1$S %2$S.
+
+# LOCALIZATION NOTE (addonInstallErrorBlocklisted): %S is add-on name
+addonInstallErrorBlocklisted=Δεν ήταν δυνατή η εγκατάσταση του %S, επειδή υπάρχει μεγάλος κίνδυνος πρόκλησης προβλημάτων σταθερότητας ή ασφάλειας.
+
+unsignedAddonsDisabled.message=Ένα ή περισσότερα εγκατεστημένα πρόσθετα δεν μπορούν να επαληθευτούν και έχουν απενεργοποιηθεί.
+unsignedAddonsDisabled.learnMore.label=Μάθετε περισσότερα
+unsignedAddonsDisabled.learnMore.accesskey=Μ
+
+# LOCALIZATION NOTE (popupWarning.message): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is brandShortName and #2 is the number of pop-ups blocked.
+popupWarning.message=Το #1 εμπόδισε το άνοιγμα αναδυόμενου παραθύρου από αυτή την ιστοσελίδα.;Το #1 εμπόδισε το άνοιγμα #2 αναδυόμενων παραθύρων από αυτή την ιστοσελίδα.
+# LOCALIZATION NOTE (popupWarning.exceeded.message): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# The singular form is left empty for English, since the number of blocked pop-ups is always greater than 1.
+# #1 is brandShortName and #2 is the number of pop-ups blocked.
+popupWarning.exceeded.message=;Το #1 απέτρεψε το άνοιγμα περισσότερων από #2 αναδυόμενων παραθύρων.
+popupWarningButton=Επιλογές
+popupWarningButton.accesskey=λ
+popupWarningButtonUnix=Προτιμήσεις
+popupWarningButtonUnix.accesskey=ρ
+popupAllow=Αποδοχή αναδυόμενων από %S
+popupBlock=Φραγή αναδυόμενων από %S
+popupWarningDontShowFromMessage=Να μην εμφανίζεται αυτό το μήνυμα όταν γίνεται φραγή
+popupShowPopupPrefix=Εμφάνιση ‘%S’
+
+# LOCALIZATION NOTE (popupShowBlockedPopupsIndicatorText): Semicolon separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of pop-ups blocked.
+popupShowBlockedPopupsIndicatorText=Εμφάνιση #1 αποκλεισμένου αναδυόμενου παραθύρου…;Εμφάνιση #1 αποκλεισμένων αναδυόμενων παραθύρων…
+
+# LOCALIZATION NOTE (geolocationLastAccessIndicatorText): %S is the relative time of the most recent geolocation access (e.g. 5 min. ago)
+geolocationLastAccessIndicatorText=Τελευταία πρόσβαση %S
+
+# LOCALIZATION NOTE (openProtocolHandlerPermissionEntryLabel): %S is the scheme of the protocol the site may open an application for. For example: mailto
+openProtocolHandlerPermissionEntryLabel=Σύνδεσμοι %S://
+
+crashedpluginsMessage.title=Το άρθρωμα %S κατέρρευσε.
+crashedpluginsMessage.reloadButton.label=Ανανέωση σελίδας
+crashedpluginsMessage.reloadButton.accesskey=ν
+crashedpluginsMessage.submitButton.label=Υποβολή αναφοράς κατάρρευσης
+crashedpluginsMessage.submitButton.accesskey=β
+crashedpluginsMessage.learnMore=Μάθετε περισσότερα…
+
+# Keyword fixup messages
+# LOCALIZATION NOTE (keywordURIFixup.message): Used when the user tries to visit
+# a local host page, by the time the DNS request recognizes it, we have already
+# loaded a search page for the given word. An infobar then asks to the user
+# whether he rather wanted to visit the host. %S is the recognized host.
+keywordURIFixup.message=Μήπως θέλατε να μεταβείτε στο %S;
+keywordURIFixup.goTo=Ναι, να μεταβώ στο %S
+keywordURIFixup.goTo.accesskey=Ν
+keywordURIFixup.dismiss=Όχι, ευχαριστώ
+keywordURIFixup.dismiss.accesskey=Ό
+
+pluginInfo.unknownPlugin=Άγνωστο
+
+# Flash activation doorhanger UI
+flashActivate.message=Θέλετε να επιτρέψετε την εκτέλεση του Adobe Flash σε αυτή την ιστοσελίδα; Να επιτρέπετε το Adobe Flash μόνο σε ιστοσελίδες που εμπιστεύεστε.
+flashActivate.outdated.message=Θέλετε να επιτρέψετε την εκτέλεση μιας παλαιότερης έκδοσης του Adobe Flash σε αυτή την ιστοσελίδα; Μια παλαιά έκδοση ενδέχεται να επηρεάσει την απόδοση και την ασφάλεια του προγράμματος περιήγησης σας.
+flashActivate.noAllow=Απόρριψη
+flashActivate.allow=Αποδοχή
+flashActivate.noAllow.accesskey=ρ
+flashActivate.allow.accesskey=Α
+
+# in-page UI
+# LOCALIZATION NOTE (PluginClickToActivate2): Two changes were done to the
+# previous version of the string. The first is that we changed the wording from
+# "Activate" to "Run", because it's shorter and feels less technical in English.
+# Feel free to keep using the previous wording in your language if it's already
+# the best one.
+# The second change is that we removed the period at the end of the phrase, because
+# it's not natural in our UI, and the underline was removed from this, so it doesn't
+# look like a link anymore. We suggest that everyone removes that period too.
+PluginClickToActivate2=Εκτέλεση του %S
+PluginVulnerableUpdatable=Αυτό το άρθρωμα είναι επισφαλές και πρέπει να ενημερωθεί.
+PluginVulnerableNoUpdate=Αυτό το άρθρωμα έχει κενά ασφαλείας.
+
+# Sanitize
+# LOCALIZATION NOTE (update.downloadAndInstallButton.label): %S is replaced by the
+# version of the update: "Update to 28.0".
+update.downloadAndInstallButton.label=Ενημέρωση σε %S
+update.downloadAndInstallButton.accesskey=Ε
+
+menuOpenAllInTabs.label=Άνοιγμα όλων σε καρτέλες
+
+# History menu
+menuRestoreAllTabs.label=Επαναφορά όλων των καρτελών
+# LOCALIZATION NOTE (menuRestoreAllWindows, menuUndoCloseWindowLabel, menuUndoCloseWindowSingleTabLabel):
+# see bug 394759
+menuRestoreAllWindows.label=Επαναφορά όλων των παραθύρων
+# LOCALIZATION NOTE (menuUndoCloseWindowLabel): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 Window Title, #2 Number of tabs
+menuUndoCloseWindowLabel=#1 (και #2 άλλη καρτέλα);#1 (και #2 άλλες καρτέλες)
+menuUndoCloseWindowSingleTabLabel=#1
+
+# Unified Back-/Forward Popup
+tabHistory.current=Παραμονή στη σελίδα
+tabHistory.goBack=Επιστροφή στη σελίδα
+tabHistory.goForward=Μετάβαση μπροστά σε αυτή τη σελίδα
+
+# URL Bar
+pasteAndGo.label=Επικόλληση & μετάβαση
+# LOCALIZATION NOTE (reloadButton.tooltip):
+# %S is the keyboard shortcut for reloading the current page
+reloadButton.tooltip=Ανανέωση τρέχουσας σελίδας (%S)
+# LOCALIZATION NOTE (stopButton.tooltip):
+# %S is the keyboard shortcut for stopping loading the page
+stopButton.tooltip=Διακοπή φόρτωσης σελίδας (%S)
+# LOCALIZATION NOTE (urlbar-zoom-button.tooltip):
+# %S is the keyboard shortcut for resetting the zoom level to 100%
+urlbar-zoom-button.tooltip=Επαναφορά επιπέδου ζουμ (%S)
+# LOCALIZATION NOTE (reader-mode-button.tooltip):
+# %S is the keyboard shortcut for entering/exiting reader view
+reader-mode-button.tooltip=Εναλλαγή προβολής ανάγνωσης (%S)
+# LOCALIZATION NOTE (urlbar.placeholder):
+# %S is the name of the user's current search engine
+urlbar.placeholder=Αναζήτηση με %S ή πληκτρολόγηση διεύθυνσης
+
+# LOCALIZATION NOTE(zoom-button.label): %S is the current page zoom level,
+# %% will be displayed as a single % character (% is commonly used to define
+# format specifiers, so it needs to be escaped).
+zoom-button.label = %S%%
+
+# Block autorefresh
+refreshBlocked.goButton=Αποδοχή
+refreshBlocked.goButton.accesskey=Α
+refreshBlocked.refreshLabel=Το %S εμπόδισε την αυτόματη ανανέωση αυτής της σελίδας.
+refreshBlocked.redirectLabel=Το %S εμπόδισε την αυτόματη ανακατεύθυνση αυτής της σελίδας σε μια άλλη σελίδα.
+
+# General bookmarks button
+# LOCALIZATION NOTE (bookmarksMenuButton.tooltip):
+# %S is the keyboard shortcut for "Show All Bookmarks"
+bookmarksMenuButton.tooltip=Προβολή σελιδοδεικτών (%S)
+
+# Downloads button tooltip
+# LOCALIZATION NOTE (downloads.tooltip):
+# %S is the keyboard shortcut for "Downloads"
+downloads.tooltip=Προβολή προόδου τρεχουσών λήψεων (%S)
+
+# Print button tooltip on OS X
+# LOCALIZATION NOTE (printButton.tooltip):
+# Use the unicode ellipsis char, \u2026,
+# or use "..." if \u2026 doesn't suit traditions in your locale.
+# %S is the keyboard shortcut for "Print"
+printButton.tooltip=Εκτύπωση σελίδας… (%S)
+
+# New Window button tooltip
+# LOCALIZATION NOTE (newWindowButton.tooltip):
+# %S is the keyboard shortcut for "New Window"
+newWindowButton.tooltip=Άνοιγμα νέου παραθύρου (%S)
+
+# New Tab button tooltip
+# LOCALIZATION NOTE (newTabButton.tooltip):
+# %S is the keyboard shortcut for "New Tab"
+newTabButton.tooltip=Άνοιγμα νέας καρτέλας (%S)
+newTabContainer.tooltip=Άνοιγμα νέας καρτέλας (%S)\nΠατήστε παρατεταμένα για άνοιγμα νέας θεματικής καρτέλας
+newTabAlwaysContainer.tooltip=Επιλέξτε κατηγορία για άνοιγμα νέας καρτέλας
+
+# Offline web applications
+offlineApps.available2=Θα επιτρέψετε στο %S την αποθήκευση δεδομένων στον υπολογιστή σας;
+offlineApps.allowStoring.label=Αποδοχή αποθήκευσης
+offlineApps.allowStoring.accesskey=θ
+offlineApps.dontAllow.label=Απόρριψη
+offlineApps.dontAllow.accesskey=ρ
+
+# Canvas permission prompt
+# LOCALIZATION NOTE (canvas.siteprompt): %S is hostname
+canvas.siteprompt=Θα επιτρέψετε στο %S τη χρήση των δεδομένων εικόνας του καμβά HTML5; Αυτό ενδέχεται να χρησιμοποιηθεί για ταυτοποίηση του υπολογιστή σας.
+canvas.notAllow=Απόρριψη
+canvas.notAllow.accesskey=ρ
+canvas.allow=Αποδοχή πρόσβασης
+canvas.allow.accesskey=Α
+canvas.remember=Απομνημόνευση επιλογής
+
+# WebAuthn prompts
+# LOCALIZATION NOTE (webauthn.registerPrompt2): %S is hostname
+webauthn.registerPrompt2=Το %S ζητά να καταχωρήσει ένα λογαριασμό με ένα κλειδί ασφαλείας σας. Μπορείτε να κάνετε σύνδεση και εξουσιοδότηση τώρα, ή να ακυρώσετε.
+# LOCALIZATION NOTE (webauthn.registerDirectPrompt2):
+# %1$S is hostname. %2$S is brandShortName.
+# The website is asking for extended information about your
+# hardware authenticator that shouldn't be generally necessary. Permitting
+# this is safe if you only use one account at this website. If you have
+# multiple accounts at this website, and you use the same hardware
+# authenticator, then the website could link those accounts together.
+# And this is true even if you use a different profile / browser (or even Tor
+# Browser). To avoid this, you should use different hardware authenticators
+# for different accounts on this website.
+webauthn.registerDirectPrompt2=Το %1$S ζητά εκτεταμένες πληροφορίες για το κλειδί ασφαλείας σας, κάτι που ενδέχεται να επηρεάσει το απόρρητό σας.\n\n Το %2$S μπορεί να διατηρήσει την ανωνυμία σας, αλλά η ιστοσελίδα ίσως απορρίψει το κλειδί. Εάν απορριφθεί, μπορείτε να δοκιμάσετε ξανά.
+# LOCALIZATION NOTE (webauthn.signPrompt2): %S is hostname
+webauthn.signPrompt2=Το %S ζητά να πραγματοποιήσει έλεγχο ταυτότητας χρησιμοποιώντας ένα καταχωρημένο κλειδί ασφαλείας. Μπορείτε να κάνετε σύνδεση και εξουσιοδότηση τώρα, ή να ακυρώσετε.
+webauthn.cancel=Ακύρωση
+webauthn.cancel.accesskey=α
+webauthn.proceed=Συνέχεια
+webauthn.proceed.accesskey=σ
+webauthn.anonymize=Ανωνυμία με κάθε τρόπο
+
+# Spoof Accept-Language prompt
+privacy.spoof_english=Η αλλαγή των ρυθμίσεων γλώσσας στα αγγλικά θα κάνει πιο δύσκολη την αναγνώρισή σας και θα ενισχύσει το απόρρητό σας. Θέλετε να ζητήσετε την αγγλική έκδοση των ιστοσελίδων;
+
+# LOCALIZATION NOTE (identity.headerMainWithHost, identity.headerSecurityWithHost):
+# %S is the hostname of the site that is being displayed.
+identity.headerMainWithHost=Πληροφορίες ιστοσελίδας για %S
+identity.headerSecurityWithHost=Ασφάλεια σύνδεσης για %S
+identity.identified.verifier=Επαληθεύτηκε από: %S
+identity.identified.verified_by_you=Έχετε προσθέσει μια εξαίρεση ασφαλείας για αυτή τη σελίδα
+identity.identified.state_and_country=%S, %S
+identity.ev.contentOwner2=Το πιστοποιητικό εκδόθηκε για: %S
+
+# LOCALIZATION NOTE (identity.notSecure.label):
+# Keep this string as short as possible, this is displayed in the URL bar
+# use a synonym for "safe" or "private" if "secure" is too long.
+identity.notSecure.label=Μη ασφαλής
+identity.notSecure.tooltip=Η σύνδεση δεν είναι ασφαλής
+
+identity.extension.label=Επέκταση (%S)
+identity.extension.tooltip=Φορτώθηκε από επέκταση: %S
+identity.showDetails.tooltip=Εμφάνιση λεπτομερειών σύνδεσης
+
+# LOCALIZATION NOTE (contentBlocking.trackersView.blocked.label):
+# This label is shown next to a tracker in the trackers subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Blocked"
+contentBlocking.trackersView.blocked.label=Αποκλεισμένο
+
+contentBlocking.trackersView.empty.label=Κανένα σε αυτή την ιστοσελίδα
+
+# LOCALIZATION NOTE (contentBlocking.cookies.blockingTrackers.label, contentBlocking.cookies.blocking3rdParty.label,
+# contentBlocking.cookies.blockingUnvisited.label,contentBlocking.cookies.blockingAll.label):
+contentBlocking.cookies.blockingTrackers3.label=Cookies ιχνηλάτησης μεταξύ ιστοσελίδων
+contentBlocking.cookies.blocking3rdParty2.label=Cookies τρίτων
+contentBlocking.cookies.blockingUnvisited2.label=Cookies ιστοσελίδων που δεν έχετε επισκεφθεί
+contentBlocking.cookies.blockingAll2.label=Όλα τα cookies
+
+contentBlocking.cookiesView.firstParty.label=Από αυτή την ιστοσελίδα
+# LOCALIZATION NOTE (contentBlocking.cookiesView.firstParty.empty.label):
+# This references the header from contentBlocking.cookiesView.firstParty.label:
+# "[Cookies] From This Site: None detected on this site".
+contentBlocking.cookiesView.firstParty.empty.label=Κανένα σε αυτή την ιστοσελίδα
+
+contentBlocking.cookiesView.trackers2.label=Cookies ιχνηλάτησης μεταξύ ιστοσελίδων
+# LOCALIZATION NOTE (contentBlocking.cookiesView.trackers.empty.label):
+# This references the header from contentBlocking.cookiesView.trackers.label:
+# "Tracking Cookies: None detected on this site".
+contentBlocking.cookiesView.trackers.empty.label=Κανένα σε αυτή την ιστοσελίδα
+
+contentBlocking.cookiesView.thirdParty.label=Cookies τρίτων
+# LOCALIZATION NOTE (contentBlocking.cookiesView.thirdParty.empty.label):
+# This references the header from contentBlocking.cookiesView.thirdParty.label:
+# "Third-Party Cookies: None detected on this site".
+contentBlocking.cookiesView.thirdParty.empty.label=Κανένα σε αυτή την ιστοσελίδα
+
+# LOCALIZATION NOTE (contentBlocking.cookiesView.allowed.label):
+# This label is shown next to a cookie origin in the cookies subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Allowed"
+contentBlocking.cookiesView.allowed.label=Επιτρέπεται
+# LOCALIZATION NOTE (contentBlocking.cookiesView.blocked.label):
+# This label is shown next to a cookie origin in the cookies subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Blocked"
+contentBlocking.cookiesView.blocked.label=Αποκλεισμένο
+# LOCALIZATION NOTE (contentBlocking.cookiesView.removeButton.tooltip): %S is the domain of the site.
+contentBlocking.cookiesView.removeButton.tooltip=Απαλοιφή εξαίρεσης cookie για το %S
+
+# LOCALIZATION NOTE (contentBlocking.fingerprintersView.blocked.label):
+# This label is shown next to a fingerprinter in the fingerprinters subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Blocked"
+contentBlocking.fingerprintersView.blocked.label=Αποκλείστηκε
+
+# LOCALIZATION NOTE (contentBlocking.cryptominersView.blocked.label):
+# This label is shown next to a cryptominer in the cryptominers subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Blocked"
+contentBlocking.cryptominersView.blocked.label=Αποκλείστηκε
+
+trackingProtection.icon.activeTooltip2=Φραγή ιχνηλατών κοινωνικών μέσων, cookies ιχνηλάτησης μεταξύ ιστοσελίδων και fingerprinters.
+trackingProtection.icon.disabledTooltip2=Η ενισχυμένη προστασία από καταγραφή είναι ανενεργή για αυτή την ιστοσελίδα.
+# LOCALIZATION NOTE (trackingProtection.icon.noTrackersDetectedTooltip): %S is brandShortName.
+trackingProtection.icon.noTrackersDetectedTooltip=Δεν εντοπίστηκαν ιχνηλάτες γνωστοί στο %S σε αυτή τη σελίδα.
+
+# LOCALIZATION NOTE (protections.header):
+# Header of the Protections Panel. %S is replaced with the site's hostname.
+protections.header=Προστασία για %S
+
+# LOCALIZATION NOTE (protections.disableAriaLabel):
+# Text that gets spoken by a screen reader if the button will disable protections.
+# %s is the site's hostname.
+protections.disableAriaLabel=Απενεργοποίηση προστασίας για %S
+
+# LOCALIZATION NOTE (protections.enableAriaLabel):
+# Text that gets spoken by a screen reader if the button will enable protections.
+# %s is the site's hostname.
+protections.enableAriaLabel=Ενεργοποίηση προστασίας για %S
+
+# Blocking and Not Blocking sub-views in the Protections Panel
+protections.blocking.fingerprinters.title=Αποκλεισμένα fingerprinters
+protections.blocking.cryptominers.title=Αποκλεισμένα cryptominers
+protections.blocking.cookies.trackers.title=Αποκλεισμένα cookies ιχνηλάτησης μεταξύ ιστοσελίδων
+protections.blocking.cookies.3rdParty.title=Αποκλεισμένα cookies τρίτων
+protections.blocking.cookies.all.title=Αποκλείονται όλα τα cookies
+protections.blocking.cookies.unvisited.title=Αποκλείονται τα cookies ιστοσελίδων που δεν έχετε επισκεφθεί
+protections.blocking.trackingContent.title=Αποκλείεται περιεχόμενο καταγραφής
+protections.blocking.socialMediaTrackers.title=Αποκλείονται ιχνηλάτες κοινωνικών δικτύων
+protections.notBlocking.fingerprinters.title=Δεν αποκλείονται fingerprinters
+protections.notBlocking.cryptominers.title=Δεν αποκλείονται cryptominers
+protections.notBlocking.cookies.3rdParty.title=Δεν γίνεται φραγή cookies τρίτων
+protections.notBlocking.cookies.all.title=Δεν γίνεται φραγή cookies
+protections.notBlocking.crossSiteTrackingCookies.title=Δεν αποκλείονται cookies ιχνηλάτησης μεταξύ ιστοσελίδων
+protections.notBlocking.trackingContent.title=Δεν αποκλείεται περιεχόμενο καταγραφής
+protections.notBlocking.socialMediaTrackers.title=Δεν αποκλείονται ιχνηλάτες κοινωνικών μέσων
+
+# Footer section in the Protections Panel
+# LOCALIZATION NOTE (protections.footer.blockedTrackerCounter.description,
+# protections.footer.blockedTrackerCounter.tooltip):
+# This text indicates the total number of trackers blocked on all sites. In
+# its tooltip, we show the date when we started counting this number.
+# LOCALIZATION NOTE (protections.footer.blockedTrackerCounter.description):
+# Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Replacement for #1 is a locale-string converted positive integer.
+protections.footer.blockedTrackerCounter.description=#1 αποκλεισμένο;#1 αποκλεισμένα
+# LOCALIZATION NOTE (protections.footer.blockedTrackerCounter.tooltip):
+# %S is the date on which we started counting (e.g., July 17, 2019).
+protections.footer.blockedTrackerCounter.tooltip=Από %S
+
+# Milestones section in the Protections Panel
+# LOCALIZATION NOTE (protections.milestone.description):
+# Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is replaced with brandShortName.
+# #2 is replaced with the (locale-formatted) number of trackers blocked
+# #3 is replaced by a locale-formatted date with short month and numeric year.
+# In English this looks like "Firefox blocked over 10,000 trackers since Oct 2019"
+protections.milestone.description=Το #1 απέκλεισε #2 ιχνηλάτη από τον #3;Το #1 απέκλεισε #2 ιχνηλάτες από τον #3
+
+# Edit Bookmark UI
+editBookmarkPanel.newBookmarkTitle=Νέος σελιδοδείκτης
+editBookmarkPanel.editBookmarkTitle=Επεξεργασία σελιδοδείκτη
+editBookmarkPanel.cancel.label=Ακύρωση
+editBookmarkPanel.cancel.accesskey=Α
+
+# LOCALIZATION NOTE (editBookmark.removeBookmarks.label): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Replacement for #1 is the number of bookmarks to be removed.
+# If this causes problems with localization you can also do "Remove Bookmarks (#1)"
+# instead of "Remove #1 Bookmarks".
+editBookmark.removeBookmarks.label=Αφαίρεση σελιδοδείκτη;Αφαίρεση #1 σελιδοδεικτών
+editBookmark.removeBookmarks.accesskey=Α
+
+# Application menu
+
+# LOCALIZATION NOTE(zoomReduce-button.tooltip): %S is the keyboard shortcut.
+zoomReduce-button.tooltip = Σμίκρυνση (%S)
+# LOCALIZATION NOTE(zoomReset-button.tooltip): %S is the keyboard shortcut.
+zoomReset-button.tooltip = Επαναφορά επιπέδου ζουμ (%S)
+# LOCALIZATION NOTE(zoomEnlarge-button.tooltip): %S is the keyboard shortcut.
+zoomEnlarge-button.tooltip = Μεγέθυνση (%S)
+
+# LOCALIZATION NOTE (cut-button.tooltip): %S is the keyboard shortcut.
+cut-button.tooltip = Αποκοπή (%S)
+# LOCALIZATION NOTE (copy-button.tooltip): %S is the keyboard shortcut.
+copy-button.tooltip = Αντιγραφή (%S)
+# LOCALIZATION NOTE (paste-button.tooltip): %S is the keyboard shortcut.
+paste-button.tooltip = Επικόλληση (%S)
+
+# Geolocation UI
+
+geolocation.allowLocation=Αποδοχή πρόσβασης
+geolocation.allowLocation.accesskey=π
+geolocation.dontAllowLocation=Απόρριψη
+geolocation.dontAllowLocation.accesskey=ρ
+geolocation.shareWithSite3=Θα επιτρέψετε στο %S την πρόσβαση στην τοποθεσία σας;
+geolocation.shareWithFile3=Θα επιτρέψετε σε αυτό το τοπικό αρχείο την πρόσβαση στην τοποθεσία σας;
+# LOCALIZATION NOTE(geolocation.shareWithSiteUnsafeDelegation):
+# %1$S is the first party origin, %2$S is the third party origin.
+geolocation.shareWithSiteUnsafeDelegation=Θα επιτρέψετε στο %1$S να δώσει στο %2$S την άδεια για πρόσβαση στην τοποθεσία σας;
+geolocation.remember=Απομνημόνευση επιλογής
+
+# Virtual Reality Device UI
+xr.allow=Αποδοχή πρόσβασης στην εικονική πραγματικότητα
+xr.allow.accesskey=Α
+xr.dontAllow=Απόρριψη
+xr.dontAllow.accesskey=ψ
+xr.shareWithSite3=Θα επιτρέψετε στο %S την πρόσβαση σε συσκευές εικονικής πραγματικότητας; Ενδέχεται να εκτεθούν ευαίσθητες πληροφορίες.
+xr.shareWithFile3=Θα επιτρέψετε σε αυτό το τοπικό αρχείο την πρόσβαση σε συσκευές εικονικής πραγματικότητας; Ενδέχεται να εκτεθούν ευαίσθητες πληροφορίες.
+xr.remember=Απομνημόνευση απόφασης
+
+# Persistent storage UI
+persistentStorage.allow=Αποδοχή
+persistentStorage.allow.accesskey=Α
+persistentStorage.neverAllow.label=Οριστική απόρριψη
+persistentStorage.neverAllow.accesskey=Ο
+persistentStorage.notNow.label=Όχι τώρα
+persistentStorage.notNow.accesskey=ρ
+persistentStorage.allowWithSite=Θα επιτρέψετε στο %S να αποθηκεύσει δεδομένα στην επίμονη αποθήκευση;
+
+webNotifications.allow=Αποδοχή ειδοποιήσεων
+webNotifications.allow.accesskey=Ε
+webNotifications.notNow=Όχι τώρα
+webNotifications.notNow.accesskey=τ
+webNotifications.never=Οριστική απόρριψη
+webNotifications.never.accesskey=τ
+webNotifications.receiveFromSite2=Αποδοχή αποστολής ειδοποιήσεων από το %S;
+
+# Phishing/Malware Notification Bar.
+# LOCALIZATION NOTE (notADeceptiveSite, notAnAttack)
+# The two button strings will never be shown at the same time, so
+# it's okay for them to have the same access key
+safebrowsing.getMeOutOfHereButton.label=Θέλω να φύγω από εδώ!
+safebrowsing.getMeOutOfHereButton.accessKey=γ
+safebrowsing.deceptiveSite=Παραπλανητική ιστοσελίδα!
+safebrowsing.notADeceptiveSiteButton.label=Αυτή δεν είναι παραπλανητική ιστοσελίδα…
+safebrowsing.notADeceptiveSiteButton.accessKey=Δ
+safebrowsing.reportedAttackSite=Έχει αναφερθεί ως ιστοσελίδα επιθέσεων!
+safebrowsing.notAnAttackButton.label=Δεν είναι μια σελίδα κακόβουλων επιθέσεων…
+safebrowsing.notAnAttackButton.accessKey=κ
+safebrowsing.reportedUnwantedSite=Έχει αναφερθεί ως τοποθεσία ανεπιθύμητου λογισμικού!
+safebrowsing.reportedHarmfulSite=Αναφέρθηκε επιβλαβής ιστοσελίδα!
+
+# Ctrl-Tab
+# LOCALIZATION NOTE (ctrlTab.listAllTabs.label): #1 represents the number
+# of tabs in the current browser window. It will always be 2 at least.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+ctrlTab.listAllTabs.label=;Προβολή όλων των #1 καρτελών
+
+# LOCALIZATION NOTE (addKeywordTitleAutoFill): %S will be replaced by the page's title
+# Used as the bookmark name when saving a keyword for a search field.
+addKeywordTitleAutoFill=Αναζήτηση %S
+
+# safeModeRestart
+safeModeRestartPromptTitle=Επανεκκίνηση με ανενεργά πρόσθετα
+safeModeRestartPromptMessage=Θέλετε σίγουρα να απενεργοποιήσετε όλα τα πρόσθετα και να κάνετε επανεκκίνηση;
+safeModeRestartButton=Επανεκκίνηση
+
+# LOCALIZATION NOTE (browser.menu.showCharacterEncoding): Set to the string
+# "true" (spelled and capitalized exactly that way) to show the "Text
+# Encoding" menu in the main Firefox button on Windows. Any other value will
+# hide it. Regardless of the value of this setting, the "Text Encoding"
+# menu will always be accessible via the "Web Developer" menu.
+# This is not a string to translate; it just controls whether the menu shows
+# up in the Firefox button. If users frequently use the "Text Encoding"
+# menu, set this to "true". Otherwise, you can leave it as "false".
+browser.menu.showCharacterEncoding=false
+
+# Mozilla data reporting notification (Telemetry, Firefox Health Report, etc)
+dataReportingNotification.message = Το %1$S στέλνει αυτόματα μερικά δεδομένα στη %2$S, έτσι ώστε να μπορέσουμε να βελτιώσουμε την εμπειρία σας.
+dataReportingNotification.button.label = Επιλέξτε τι θα μοιράζεστε
+dataReportingNotification.button.accessKey = ξ
+
+# Process hang reporter
+processHang.label = Μια ιστοσελίδα επιβραδύνει το πρόγραμμα περιήγησής σας. Τι θα θέλατε να κάνετε;
+# LOCALIZATION NOTE (processHang.add-on.label): %1$S is the name of the
+# extension. %2$S is the name of the product (e.g., Firefox)
+processHang.add-on.label = Ένα σενάριο στην επέκταση “%1$S” προκαλεί επιβράδυνση του %2$S.
+processHang.add-on.learn-more.text = Μάθετε περισσότερα
+processHang.button_stop.label = Διακοπή
+processHang.button_stop.accessKey = Δ
+processHang.button_stop_sandbox.label = Προσωρινή απενεργοποίηση επέκτασης στη σελίδα
+processHang.button_stop_sandbox.accessKey = Ε
+processHang.button_wait.label = Αναμονή
+processHang.button_wait.accessKey = ν
+processHang.button_debug.label = Αποσφαλμάτωση σεναρίου
+processHang.button_debug.accessKey = π
+
+# LOCALIZATION NOTE (fullscreenButton.tooltip): %S is the keyboard shortcut for full screen
+fullscreenButton.tooltip=Προβολή παραθύρου σε πλήρη οθόνη (%S)
+
+# These are visible when opening the popup inside the bookmarks sidebar
+sidebar.moveToLeft=Μετακίνηση πλευρικής γραμμής στα αριστερά
+sidebar.moveToRight=Μετακίνηση στήλης στα δεξιά
+
+# LOCALIZATION NOTE (getUserMedia.shareCamera2.message,
+# getUserMedia.shareMicrophone2.message,
+# getUserMedia.shareScreen3.message,
+# getUserMedia.shareCameraAndMicrophone2.message,
+# getUserMedia.shareCameraAndAudioCapture2.message,
+# getUserMedia.shareScreenAndMicrophone3.message,
+# getUserMedia.shareScreenAndAudioCapture3.message,
+# getUserMedia.shareAudioCapture2.message):
+# %S is the website origin (e.g. www.mozilla.org)
+getUserMedia.shareCamera2.message = Αποδοχή χρήσης κάμερας από το %S;
+getUserMedia.shareMicrophone2.message = Αποδοχή χρήσης μικροφώνου από το %S;
+getUserMedia.shareScreen3.message = Αποδοχή θέασης οθόνης από το %S;
+getUserMedia.shareCameraAndMicrophone2.message = Αποδοχή χρήσης κάμερας και μικροφώνου από το %S;
+getUserMedia.shareCameraAndAudioCapture2.message = Αποδοχή χρήσης της κάμερας και ακρόασης του ήχου σε αυτήν την καρτέλα από το %S;
+getUserMedia.shareScreenAndMicrophone3.message = Αποδοχή χρήσης του μικροφώνου και θέασης της οθόνης από το %S;
+getUserMedia.shareScreenAndAudioCapture3.message = Αποδοχή ακρόασης του ήχου αυτής της καρτέλας και θέασης της οθόνης από το %S;
+getUserMedia.shareAudioCapture2.message = Θα επιτρέψετε στο %S να ακούει τον ήχο αυτής της καρτέλας;
+
+# LOCALIZATION NOTE (getUserMedia.shareCameraUnsafeDelegation.message,
+# getUserMedia.shareMicrophoneUnsafeDelegation.message,
+# getUserMedia.shareScreenUnsafeDelegation.message,
+# getUserMedia.shareCameraAndMicrophoneUnsafeDelegation.message,
+# getUserMedia.shareCameraAndAudioCaptureUnsafeDelegation.message,
+# getUserMedia.shareScreenAndMicrophoneUnsafeDelegation.message,
+# getUserMedia.shareScreenAndAudioCaptureUnsafeDelegation.message,
+# %1$S is the first party origin.
+# %2$S is the third party origin.
+getUserMedia.shareCameraUnsafeDelegation.message = Θα επιτρέψετε στο %1$S να δώσει στο %2$S πρόσβαση στην κάμερά σας;
+getUserMedia.shareMicrophoneUnsafeDelegations.message = Θα επιτρέψετε στο %1$S να δώσει στο %2$S πρόσβαση στο μικρόφωνό σας;
+getUserMedia.shareScreenUnsafeDelegation.message = Θα επιτρέψετε στο %1$S να δώσει στο %2$S άδεια για προβολή της οθόνη σας;
+getUserMedia.shareCameraAndMicrophoneUnsafeDelegation.message = Θα επιτρέψετε στο %1$S να δώσει στο %2$S πρόσβαση στην κάμερα και το μικρόφωνό σας;
+getUserMedia.shareCameraAndAudioCaptureUnsafeDelegation.message = Θα επιτρέψετε στο %1$S να δώσει στο %2$S πρόσβαση στην κάμερά σας και δικαίωμα ακρόασης του ήχου αυτής της καρτέλας;
+getUserMedia.shareScreenAndMicrophoneUnsafeDelegation.message = Θα επιτρέψετε στο %1$S να δώσει στο %2$S πρόσβαση στο μικρόφωνό σας και να προβάλει την οθόνη σας;
+getUserMedia.shareScreenAndAudioCaptureUnsafeDelegation.message = Θα επιτρέψετε στο %1$S να δώσει στο %2$S την άδεια για ακρόαση του ήχου αυτής της καρτέλας και για προβολή της οθόνης σας;
+
+# LOCALIZATION NOTE (getUserMedia.shareScreenWarning.message): NB: inserted via innerHTML, so please don't use <, > or & in this string.
+# %S will be the 'learn more' link
+getUserMedia.shareScreenWarning.message = Να μοιράζεστε οθόνες μόνο με αξιόπιστες ιστοσελίδες. Η κοινή χρήση μπορεί να επιτρέψει σε παραπλανητικές ιστοσελίδες να περιηγηθούν με την ταυτότητά σας και να υποκλέψουν ιδιωτικά δεδομένα. %S
+# LOCALIZATION NOTE (getUserMedia.shareFirefoxWarning.message): NB: inserted via innerHTML, so please don't use <, > or & in this string.
+# %1$S is brandShortName (eg. Firefox)
+# %2$S will be the 'learn more' link
+getUserMedia.shareFirefoxWarning.message = Να μοιράζεστε το %1$S μόνο με αξιόπιστες ιστοσελίδες. Η κοινή χρήση μπορεί να επιτρέψει σε παραπλανητικές ιστοσελίδες να περιηγηθούν με την ταυτότητά σας και να υποκλέψουν ιδιωτικά δεδομένα. %2$S
+# LOCALIZATION NOTE(getUserMedia.shareScreen.learnMoreLabel): NB: inserted via innerHTML, so please don't use <, > or & in this string.
+getUserMedia.shareScreen.learnMoreLabel = Μάθετε περισσότερα
+getUserMedia.selectWindowOrScreen.label=Παράθυρο ή οθόνη προς διαμοιρασμό:
+getUserMedia.selectWindowOrScreen.accesskey=Π
+getUserMedia.pickWindowOrScreen.label = Επιλέξτε παράθυρο ή οθόνη
+getUserMedia.shareEntireScreen.label = Ολόκληρη η οθόνη
+getUserMedia.sharePipeWirePortal.label = Χρήση ρυθμίσεων λειτουργικού συστήματος
+# LOCALIZATION NOTE (getUserMedia.shareMonitor.label):
+# %S is screen number (digits 1, 2, etc)
+# Example: Screen 1, Screen 2,..
+getUserMedia.shareMonitor.label = Οθόνη %S
+# LOCALIZATION NOTE (getUserMedia.shareApplicationWindowCount.label):
+# Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Replacement for #1 is the name of the application.
+# Replacement for #2 is the number of windows currently displayed by the application.
+getUserMedia.shareApplicationWindowCount.label=#1 (#2 παράθυρο);#1 (#2 παράθυρα)
+# LOCALIZATION NOTE (getUserMedia.allow.label,
+# getUserMedia.dontAllow.label):
+# These two buttons are the possible answers to the various prompts in the
+# "getUserMedia.share{device}.message" strings.
+getUserMedia.allow.label = Αποδοχή
+getUserMedia.allow.accesskey = Α
+getUserMedia.dontAllow.label = Απόρριψη
+getUserMedia.dontAllow.accesskey = ρ
+getUserMedia.remember=Απομνημόνευση επιλογής
+# LOCALIZATION NOTE (getUserMedia.reasonForNoPermanentAllow.screen3,
+# getUserMedia.reasonForNoPermanentAllow.audio,
+# getUserMedia.reasonForNoPermanentAllow.insecure):
+# %S is brandShortName
+getUserMedia.reasonForNoPermanentAllow.screen3=Το %S δεν μπορεί να επιτρέψει μόνιμη πρόσβαση στην οθόνη σας.
+getUserMedia.reasonForNoPermanentAllow.audio=Το %S δεν μπορεί να επιτρέψει μόνιμη πρόσβαση στον ήχο της καρτέλας σας χωρίς να ρωτήσει ποια καρτέλα θα διαμοιραστεί.
+getUserMedia.reasonForNoPermanentAllow.insecure=Η σύνδεσή σας με αυτή την ιστοσελίδα δεν είναι ασφαλής. Για την προστασία σας, το %S θα επιτρέψει την πρόσβαση μόνο για αυτή τη συνεδρία.
+
+getUserMedia.sharingMenu.label = Καρτέλες που μοιράζονται συσκευές
+getUserMedia.sharingMenu.accesskey = σ
+# LOCALIZATION NOTE (getUserMedia.sharingMenuCamera
+# getUserMedia.sharingMenuMicrophone,
+# getUserMedia.sharingMenuAudioCapture,
+# getUserMedia.sharingMenuApplication,
+# getUserMedia.sharingMenuScreen,
+# getUserMedia.sharingMenuWindow,
+# getUserMedia.sharingMenuBrowser,
+# getUserMedia.sharingMenuCameraMicrophone,
+# getUserMedia.sharingMenuCameraMicrophoneApplication,
+# getUserMedia.sharingMenuCameraMicrophoneScreen,
+# getUserMedia.sharingMenuCameraMicrophoneWindow,
+# getUserMedia.sharingMenuCameraMicrophoneBrowser,
+# getUserMedia.sharingMenuCameraAudioCapture,
+# getUserMedia.sharingMenuCameraAudioCaptureApplication,
+# getUserMedia.sharingMenuCameraAudioCaptureScreen,
+# getUserMedia.sharingMenuCameraAudioCaptureWindow,
+# getUserMedia.sharingMenuCameraAudioCaptureBrowser,
+# getUserMedia.sharingMenuCameraApplication,
+# getUserMedia.sharingMenuCameraScreen,
+# getUserMedia.sharingMenuCameraWindow,
+# getUserMedia.sharingMenuCameraBrowser,
+# getUserMedia.sharingMenuMicrophoneApplication,
+# getUserMedia.sharingMenuMicrophoneScreen,
+# getUserMedia.sharingMenuMicrophoneWindow,
+# getUserMedia.sharingMenuMicrophoneBrowser,
+# getUserMedia.sharingMenuAudioCaptureApplication,
+# getUserMedia.sharingMenuAudioCaptureScreen,
+# getUserMedia.sharingMenuAudioCaptureWindow,
+# getUserMedia.sharingMenuAudioCaptureBrowser):
+# %S is the website origin (e.g. www.mozilla.org)
+getUserMedia.sharingMenuCamera = %S (κάμερα)
+getUserMedia.sharingMenuMicrophone = %S (μικρόφωνο)
+getUserMedia.sharingMenuAudioCapture = %S (ήχος καρτέλας)
+getUserMedia.sharingMenuApplication = %S (εφαρμογή)
+getUserMedia.sharingMenuScreen = %S (οθόνη)
+getUserMedia.sharingMenuWindow = %S (παράθυρο)
+getUserMedia.sharingMenuBrowser = %S (καρτέλα)
+getUserMedia.sharingMenuCameraMicrophone = %S (κάμερα και μικρόφωνο)
+getUserMedia.sharingMenuCameraMicrophoneApplication = %S (κάμερα, μικρόφωνο και εφαρμογή)
+getUserMedia.sharingMenuCameraMicrophoneScreen = %S (κάμερα, μικρόφωνο και οθόνη)
+getUserMedia.sharingMenuCameraMicrophoneWindow = %S (κάμερα, μικρόφωνο και παράθυρο)
+getUserMedia.sharingMenuCameraMicrophoneBrowser = %S (κάμερα, μικρόφωνο και καρτέλα)
+getUserMedia.sharingMenuCameraAudioCapture = %S (κάμερα και ήχος καρτέλας)
+getUserMedia.sharingMenuCameraAudioCaptureApplication = %S (κάμερα, ήχος καρτέλας και εφαρμογή)
+getUserMedia.sharingMenuCameraAudioCaptureScreen = %S (κάμερα, ήχος καρτέλας και οθόνη)
+getUserMedia.sharingMenuCameraAudioCaptureWindow = %S (κάμερα, ήχος καρτέλας και παράθυρο)
+getUserMedia.sharingMenuCameraAudioCaptureBrowser = %S (κάμερα, ήχος καρτέλας και καρτέλα)
+getUserMedia.sharingMenuCameraApplication = %S (κάμερα και εφαρμογή)
+getUserMedia.sharingMenuCameraScreen = %S (κάμερα και οθόνη)
+getUserMedia.sharingMenuCameraWindow = %S (κάμερα και παράθυρο)
+getUserMedia.sharingMenuCameraBrowser = %S (κάμερα και καρτέλα)
+getUserMedia.sharingMenuMicrophoneApplication = %S (μικρόφωνο και εφαρμογή)
+getUserMedia.sharingMenuMicrophoneScreen = %S (μικρόφωνο και οθόνη)
+getUserMedia.sharingMenuMicrophoneWindow = %S (μικρόφωνο και παράθυρο)
+getUserMedia.sharingMenuMicrophoneBrowser = %S (μικρόφωνο και καρτέλα)
+getUserMedia.sharingMenuAudioCaptureApplication = %S (ήχος καρτέλας και εφαρμογή)
+getUserMedia.sharingMenuAudioCaptureScreen = %S (ήχος καρτέλας και οθόνη)
+getUserMedia.sharingMenuAudioCaptureWindow = %S (ήχος καρτέλας και παράθυρο)
+getUserMedia.sharingMenuAudioCaptureBrowser = %S (ήχος καρτέλας και καρτέλα)
+# LOCALIZATION NOTE(getUserMedia.sharingMenuUnknownHost): this is used for the website
+# origin for the sharing menu if no readable origin could be deduced from the URL.
+getUserMedia.sharingMenuUnknownHost = Άγνωστη προέλευση
+
+# LOCALIZATION NOTE(emeNotifications.drmContentPlaying.message2): %S is brandShortName.
+emeNotifications.drmContentPlaying.message2 = Κάποιοι ήχοι ή βίντεο σε αυτή την ιστοσελίδα χρησιμοποιούν λογισμικό DRM, που ενδέχεται να περιορίσει αυτά που μπορείτε να κάνετε με το %S.
+emeNotifications.drmContentPlaying.button.label = Ρύθμιση…
+emeNotifications.drmContentPlaying.button.accesskey = Ρ
+
+# LOCALIZATION NOTE(emeNotifications.drmContentDisabled.message): NB: inserted via innerHTML, so please don't use <, > or & in this string. %S will be the 'learn more' link
+emeNotifications.drmContentDisabled.message = Πρέπει να ενεργοποιήσετε το DRM για να αναπαραγάγετε κάποιο ήχο ή βίντεο σε αυτή τη σελίδα. %S
+emeNotifications.drmContentDisabled.button.label = Ενεργοποίηση DRM
+emeNotifications.drmContentDisabled.button.accesskey = Ε
+# LOCALIZATION NOTE(emeNotifications.drmContentDisabled.learnMoreLabel): NB: inserted via innerHTML, so please don't use <, > or & in this string.
+emeNotifications.drmContentDisabled.learnMoreLabel = Μάθετε περισσότερα
+
+# LOCALIZATION NOTE(emeNotifications.drmContentCDMInstalling.message): NB: inserted via innerHTML, so please don't use <, > or & in this string. %S is brandShortName
+emeNotifications.drmContentCDMInstalling.message = Το %S εγκαθιστά κάποια απαραίτητα στοιχεία προκειμένου να γίνει αναπαραγωγή ήχου ή βίντεο σε αυτή τη σελίδα. Παρακαλώ δοκιμάστε ξανά αργότερα.
+
+emeNotifications.unknownDRMSoftware = Άγνωστο
+
+# LOCALIZATION NOTE - %S is brandShortName
+slowStartup.message = Το %S φαίνεται να… αργεί… να ξεκινήσει.
+slowStartup.helpButton.label = Μάθετε πως να τον κάνετε πιο γρήγορο
+slowStartup.helpButton.accesskey = θ
+slowStartup.disableNotificationButton.label = Να μην εμφανιστεί ξανά αυτή η ειδοποίηση
+slowStartup.disableNotificationButton.accesskey = μ
+
+# LOCALIZATION NOTE - %S is brandShortName
+flashHang.message = Το %S άλλαξε μερικές ρυθμίσεις του Adobe Flash για βελτίωση επιδόσεων.
+flashHang.helpButton.label = Μάθετε περισσότερα…
+flashHang.helpButton.accesskey = θ
+
+# LOCALIZATION NOTE (customizeMode.tabTitle): %S is brandShortName
+customizeMode.tabTitle = Προσαρμογή του %S
+
+e10s.accessibilityNotice.acceptButton.label = OK
+e10s.accessibilityNotice.acceptButton.accesskey = O
+
+# LOCALIZATION NOTE (e10s.accessibilityNotice.jawsMessage): %S is brandShortName
+e10s.accessibilityNotice.jawsMessage = Η προβολή του περιεχομένου καρτέλας είναι ανενεργή λόγω ασυμβατότητας του %S με το λογισμικό προσβασιμότητάς σας. Παρακαλώ ενημερώστε το πρόγραμμα ανάγνωσης οθόνης σας ή χρησιμοποιήστε το Firefox Extended Support Release.
+
+# LOCALIZATION NOTE (userContextPersonal.label,
+# userContextWork.label,
+# userContextShopping.label,
+# userContextBanking.label,
+# userContextNone.label):
+# These strings specify the four predefined contexts included in support of the
+# Contextual Identity / Containers project. Each context is meant to represent
+# the context that the user is in when interacting with the site. Different
+# contexts will store cookies and other information from those sites in
+# different, isolated locations. You can enable the feature by typing
+# about:config in the URL bar and changing privacy.userContext.enabled to true.
+# Once enabled, you can open a new tab in a specific context by clicking
+# File > New Container Tab > (1 of 4 contexts). Once opened, you will see these
+# strings on the right-hand side of the URL bar.
+userContextPersonal.label = Προσωπικά
+userContextWork.label = Εργασία
+userContextBanking.label = Τραπεζική
+userContextShopping.label = Αγορές
+userContextNone.label = Καμία θεματική κατηγορία
+
+userContextPersonal.accesskey = π
+userContextWork.accesskey = ε
+userContextBanking.accesskey = ρ
+userContextShopping.accesskey = ο
+userContextNone.accesskey = Κ
+
+userContext.aboutPage.label = Διαχείριση θεματικών ενοτήτων
+userContext.aboutPage.accesskey = Μ
+
+userContextOpenLink.label = Άνοιγμα συνδέσμου σε νέα %S καρτέλα
+
+muteTab.label = Σίγαση καρτέλας
+muteTab.accesskey = σ
+unmuteTab.label = Άρση σίγασης καρτέλας
+unmuteTab.accesskey = σ
+playTab.label = Αναπαραγωγή καρτέλας
+playTab.accesskey = Α
+
+muteSelectedTabs2.label = Σίγαση καρτελών
+# LOCALIZATION NOTE (muteSelectedTabs2.accesskey): The accesskey should
+# match the accesskey for muteTab.accesskey
+muteSelectedTabs2.accesskey = Σ
+unmuteSelectedTabs2.label = Αναίρεση σίγασης καρτελών
+# LOCALIZATION NOTE (unmuteSelectedTabs2.accesskey): The accesskey should
+# match the accesskey for unmuteTab.accesskey
+unmuteSelectedTabs2.accesskey = ν
+playTabs.label = Αναπαραγωγή καρτελών
+playTabs.accesskey = π
+
+# LOCALIZATION NOTE (sendTabsToDevice.label):
+# Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs sent to the device.
+sendTabsToDevice.label = Αποστολή καρτέλας σε συσκευή;Αποστολή #1 καρτελών σε συσκευή
+sendTabsToDevice.accesskey = π
+
+# LOCALIZATION NOTE (pageAction.sendTabsToDevice.label):
+# Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs sent to the device.
+pageAction.sendTabsToDevice.label = Αποστολή καρτέλας σε συσκευή;Αποστολή #1 καρτελών σε συσκευή
+
+# LOCALIZATION NOTE (pendingCrashReports2.label): Semi-colon list of plural forms
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of pending crash reports
+pendingCrashReports2.label = Έχετε μια μη απεσταλμένη αναφορά σφάλματος;Έχετε #1 μη απεσταλμένες αναφορές σφαλμάτων
+pendingCrashReports.viewAll = Προβολή
+pendingCrashReports.send = Αποστολή
+pendingCrashReports.alwaysSend = Πάντα αποστολή
+
+decoder.noCodecs.button = Μάθετε πώς
+decoder.noCodecs.accesskey = Θ
+decoder.noCodecsLinux.message = Για την αναπαραγωγή βίντεο, ενδέχεται να χρειάζεται η εγκατάσταση των απαραίτητων αποκωδικοποιητών βίντεο.
+decoder.noHWAcceleration.message = Για τη βελτίωση της ποιότητας των βίντεο, ενδέχεται να χρειάζεται η εγκατάσταση του Πακέτου δυνατοτήτων media της Microsoft.
+decoder.noPulseAudio.message = Για την αναπαραγωγή ήχου, ίσως χρειαστεί να εγκαταστήσετε το λογισμικό PulseAudio.
+decoder.unsupportedLibavcodec.message = Το libavcodec παρουσιάζει ευπάθειες ασφάλειας ή δεν υποστηρίζεται και πρέπει να ενημερωθεί για την αναπαραγωγή βίντεο.
+
+decoder.decodeError.message = Προέκυψε σφάλμα κατά την αποκωδικοποίηση ενός πόρου πολυμέσων.
+decoder.decodeError.button = Αναφορά ζητήματος ιστοσελίδας
+decoder.decodeError.accesskey = Α
+decoder.decodeWarning.message = Προέκυψε ανακτήσιμο σφάλμα κατά την αποκωδικοποίηση ενός πόρου πολυμέσων.
+
+# LOCALIZATION NOTE (captivePortal.infoMessage3):
+# Shown in a notification bar when we detect a captive portal is blocking network access
+# and requires the user to log in before browsing.
+captivePortal.infoMessage3 = Πρέπει να συνδεθείτε σε αυτό το δίκτυο πριν μπορέσετε να αποκτήσετε πρόσβαση στο διαδίκτυο.
+# LOCALIZATION NOTE (captivePortal.showLoginPage2):
+# The label for a button shown in the info bar in all tabs except the login page tab.
+# The button shows the portal login page tab when clicked.
+captivePortal.showLoginPage2 = Άνοιγμα σελίδας σύνδεσης σε δίκτυο
+
+permissions.remove.tooltip = Εκκαθάριση δικαιώματος και ερώτηση ξανά
+
+permissions.fullscreen.promptCanceled = Ακυρώθηκαν τα εκκρεμή αιτήματα δικαιωμάτων: τα αιτήματα δικαιωμάτων δεν πρέπει να εκδίδονται πριν την είσοδο σε πλήρη οθόνη DOM.
+permissions.fullscreen.fullScreenCanceled = Έγινε έξοδος από την πλήρη οθόνη DOM: τα αιτήματα δικαιωμάτων δεν πρέπει να εκδίδονται κατά τη χρήση σε πλήρη οθόνη DOM.
+
+# LOCALIZATION NOTE (aboutDialog.architecture.*):
+# The sixtyFourBit and thirtyTwoBit strings describe the architecture of the
+# current Firefox build: 32-bit or 64-bit. These strings are used in parentheses
+# between the Firefox version and the "What's new" link in the About dialog,
+# e.g.: "48.0.2 (32-bit) <What's new>" or "51.0a1 (2016-09-05) (64-bit)".
+aboutDialog.architecture.sixtyFourBit = 64-bit
+aboutDialog.architecture.thirtyTwoBit = 32-bit
+
+# LOCALIZATION NOTE (certImminentDistrust.message):
+# Shown in the browser console when visiting a website that is trusted today,
+# but won't be in the future unless the site operator makes a change.
+certImminentDistrust.message = Το πιστοποιητικό ασφαλείας που χρησιμοποιείται σε αυτή την ιστοσελίδα δεν θα θεωρείται αξιόπιστο σε μελλοντική έκδοση. Για περισσότερες πληροφορίες, επισκεφθείτε το https://wiki.mozilla.org/CA/Upcoming_Distrust_Actions
+
+midi.Allow.label = Αποδοχή
+midi.Allow.accesskey = Α
+midi.DontAllow.label = Απόρριψη
+midi.DontAllow.accesskey = ρ
+midi.remember=Απομνημόνευση απόφασης
+midi.shareWithFile.message = Θα επιτρέψετε σε αυτό το τοπικό αρχείο την πρόσβαση στις συσκευές MIDI σας;
+# LOCALIZATION NOTE (midi.shareWithSite.message): %S is the name of the site URL (https://...) requesting MIDI access
+midi.shareWithSite.message = Θα επιτρέψετε στο %S την πρόσβαση στις συσκευές MIDI σας;
+midi.shareSysexWithFile.message = Θα επιτρέψετε σε αυτό το τοπικό αρχείο την πρόσβαση στις συσκευές MIDI σας και την αποστολή/λήψη μηνυμάτων SysEx;
+# LOCALIZATION NOTE (midi.shareSysexWithSite.message): %S is the name of the site URL (https://...) requesting MIDI access
+midi.shareSysexWithSite.message = Θα επιτρέψετε στο %S την πρόσβαση στις συσκευές MIDI σας και την αποστολή/λήψη μηνυμάτων SysEx;
+
+# LOCALIZATION NOTE (panel.back):
+# This is used by screen readers to label the "back" button in various browser
+# popup panels, including the sliding subviews of the main menu.
+panel.back = Πίσω
+
+storageAccess.Allow.label = Αποδοχή πρόσβασης
+storageAccess.Allow.accesskey = Α
+storageAccess.DontAllow.label = Φραγή πρόσβασης
+storageAccess.DontAllow.accesskey = Φ
+# LOCALIZATION NOTE (storageAccess2.message):
+# %1$S is the name of the site URL (www.site1.example) trying to track the user's activity.
+# %2$S is the name of the site URL (www.site2.example) that the user is visiting. This is the same domain name displayed in the address bar.
+storageAccess2.message = Θα επιτρέψετε στο %1$S την πρόσβαση στη δραστηριότητά σας στο %2$S;
+
+# LOCALIZATION NOTE (storageAccess3.message, storageAccess.hintText):
+# %1$S and %3$S are both the name of the site URL (www.site1.example) trying to track the user's activity.
+# %2$S is the name of the site URL (www.site2.example) that the user is visiting. This is the same domain name displayed in the address bar.
+storageAccess3.message = Θα επιτρέψετε στο %1$S τη χρήση των cookies και των δεδομένων ιστοσελίδας στο %2$S; Αυτό ενδέχεται να επιτρέψει στο %3$S να παρακολουθεί τη δραστηριότητά σας σε αυτή την ιστοσελίδα.
+storageAccess.hintText = Θα πρέπει να αποκλείσετε την πρόσβαση αν δεν εμπιστεύεστε ή αναγνωρίζετε το %1$S.
+
+
+
+confirmationHint.sendToDevice.label = Απεστάλη!
+confirmationHint.copyURL.label = Αντιγράφηκε στο πρόχειρο!
+confirmationHint.pageBookmarked.label = Αποθηκεύτηκε στη βιβλιοθήκη!
+confirmationHint.addSearchEngine.label = Προστέθηκε μηχανής αναζήτησης!
+confirmationHint.pinTab.label = Καρφιτσώθηκε!
+confirmationHint.pinTab.description = Κάντε δεξί κλικ στην καρτέλα για ξεκαρφίτσωμα.
+confirmationHint.passwordSaved.label = Ο κωδικός πρόσβασης αποθηκεύτηκε!
+confirmationHint.loginRemoved.label = Η σύνδεση αφαιρέθηκε!
+confirmationHint.breakageReport.label = Απεστάλη αναφορά. Ευχαριστούμε!
+
+# LOCALIZATION NOTE (livebookmarkMigration.title):
+# Used by the export of user's live bookmarks to an OPML file as a title for the file.
+# %S will be replaced with brandShortName
+livebookmarkMigration.title = %S δυναμικοί σελιδοδείκτες
+
+# LOCALIZATION NOTE (gnomeSearchProviderSearch):
+# Used for search by Gnome Shell activity screen, %S is a searched string.
+gnomeSearchProviderSearch=Αναζήτηση στο διαδίκτυο για %S
diff --git a/l10n-el/browser/chrome/browser/customizableui/customizableWidgets.properties b/l10n-el/browser/chrome/browser/customizableui/customizableWidgets.properties
new file mode 100644
index 0000000000..dbf35ea021
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/customizableui/customizableWidgets.properties
@@ -0,0 +1,100 @@
+# 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/.
+
+history-panelmenu.label = Ιστορικό
+# LOCALIZATION NOTE(history-panelmenu.tooltiptext2): %S is the keyboard shortcut
+history-panelmenu.tooltiptext2 = Εμφάνιση ιστορικού (%S)
+
+remotetabs-panelmenu.label = Συγχρονισμένες καρτέλες
+remotetabs-panelmenu.tooltiptext2 = Εμφάνιση καρτελών από άλλες συσκευές
+
+privatebrowsing-button.label = Νέο ιδιωτικό παράθυρο
+# LOCALIZATION NOTE(privatebrowsing-button.tooltiptext): %S is the keyboard shortcut
+privatebrowsing-button.tooltiptext = Άνοιγμα σε νέο παράθυρο ιδιωτικής περιήγησης (%S)
+
+save-page-button.label = Αποθήκευση σελίδας
+# LOCALIZATION NOTE(save-page-button.tooltiptext3): %S is the keyboard shortcut
+save-page-button.tooltiptext3 = Αποθήκευση σελίδας (%S)
+
+find-button.label = Εύρεση
+# LOCALIZATION NOTE(find-button.tooltiptext3): %S is the keyboard shortcut.
+find-button.tooltiptext3 = Εύρεση στη σελίδα (%S)
+
+open-file-button.label = Άνοιγμα αρχείου
+# LOCALIZATION NOTE (open-file-button.tooltiptext3): %S is the keyboard shortcut.
+open-file-button.tooltiptext3 = Άνοιγμα αρχείου (%S)
+
+developer-button.label = Προγραμματιστής
+# LOCALIZATION NOTE(developer-button.tooltiptext): %S is the keyboard shortcut
+developer-button.tooltiptext2 = Άνοιγμα εργαλείων προγραμματιστή ιστού (%S)
+
+profiler-button.label = Πρόγραμμα δημιουργίας προφίλ
+profiler-button.tooltiptext = Καταγραφή προφίλ επιδόσεων
+
+sidebar-button.label = Πλευρικές στήλες
+sidebar-button.tooltiptext2 = Προβολή πλευρικών στηλών
+
+add-ons-button.label = Πρόσθετα
+# LOCALIZATION NOTE(add-ons-button.tooltiptext3): %S is the keyboard shortcut
+add-ons-button.tooltiptext3 = Διαχείριση των πρόσθετών σας (%S)
+
+preferences-button.label = Προτιμήσεις
+preferences-button.tooltiptext2 = Άνοιγμα προτιμήσεων
+preferences-button.tooltiptext.withshortcut = Άνοιγμα προτιμήσεων (%S)
+# LOCALIZATION NOTE (preferences-button.labelWin): Windows-only label for Options
+preferences-button.labelWin = Επιλογές
+# LOCALIZATION NOTE (preferences-button.tooltipWin): Windows-only tooltip for Options
+preferences-button.tooltipWin2 = Άνοιγμα επιλογών
+
+zoom-controls.label = Στοιχεία ελέγχου ζουμ
+zoom-controls.tooltiptext2 = Στοιχεία ελέγχου ζουμ
+
+zoom-out-button.label = Σμίκρυνση
+# LOCALIZATION NOTE(zoom-out-button.tooltiptext2): %S is the keyboard shortcut.
+zoom-out-button.tooltiptext2 = Σμίκρυνση (%S)
+
+# LOCALIZATION NOTE(zoom-reset-button.tooltiptext2): %S is the keyboard shortcut.
+zoom-reset-button.tooltiptext2 = Επαναφορά επιπέδου ζουμ (%S)
+
+zoom-in-button.label = Μεγέθυνση
+# LOCALIZATION NOTE(zoom-in-button.tooltiptext2): %S is the keyboard shortcut.
+zoom-in-button.tooltiptext2 = Μεγέθυνση (%S)
+
+edit-controls.label = Κουμπιά επεξεργασίας
+edit-controls.tooltiptext2 = Κουμπιά επεξεργασίας
+
+cut-button.label = Αποκοπή
+# LOCALIZATION NOTE(cut-button.tooltiptext2): %S is the keyboard shortcut.
+cut-button.tooltiptext2 = Αποκοπή (%S)
+
+copy-button.label = Αντιγραφή
+# LOCALIZATION NOTE(copy-button.tooltiptext2): %S is the keyboard shortcut.
+copy-button.tooltiptext2 = Αντιγραφή (%S)
+
+paste-button.label = Επικόλληση
+# LOCALIZATION NOTE(paste-button.tooltiptext2): %S is the keyboard shortcut.
+paste-button.tooltiptext2 = Επικόλληση (%S)
+
+# LOCALIZATION NOTE (characterencoding-button2.label): The \u00ad text at the beginning
+# of the string is used to disable auto hyphenation on the button text when it is displayed
+# in the menu panel.
+characterencoding-button2.label = \u00adΚωδικοποίηση κειμένου
+characterencoding-button2.tooltiptext = Εμφάνιση επιλογών κωδικοποίησης κειμένου
+
+email-link-button.label = Αποστολή συνδέσμου
+email-link-button.tooltiptext3 = Αποστολή συνδέσμου σε αυτή τη σελίδα
+
+# LOCALIZATION NOTE(quit-button.tooltiptext.linux2): %1$S is the brand name (e.g. Firefox),
+# %2$S is the keyboard shortcut
+quit-button.tooltiptext.linux2 = Κλείσιμο %1$S (%2$S)
+# LOCALIZATION NOTE(quit-button.tooltiptext.mac): %1$S is the brand name (e.g. Firefox),
+# %2$S is the keyboard shortcut
+quit-button.tooltiptext.mac = Κλείσιμο %1$S (%2$S)
+
+panic-button.label = Διαγραφή
+panic-button.tooltiptext = Διαγραφή μέρους του ιστορικού περιήγησης
+
+toolbarspring.label = Ευέλικτο διάστημα
+toolbarseparator.label = Διαχωριστικό
+toolbarspacer.label = Διάστημα
diff --git a/l10n-el/browser/chrome/browser/downloads/downloads.properties b/l10n-el/browser/chrome/browser/downloads/downloads.properties
new file mode 100644
index 0000000000..b5ca76a2d0
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/downloads/downloads.properties
@@ -0,0 +1,99 @@
+# 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 (stateStarting):
+# Indicates that the download is starting.
+stateStarting=Εκκίνηση…
+# LOCALIZATION NOTE (stateFailed):
+# Indicates that the download failed because of an error.
+stateFailed=Απέτυχε
+# LOCALIZATION NOTE (statePaused):
+# Indicates that the download was paused by the user.
+statePaused=Σε παύση
+# LOCALIZATION NOTE (stateCanceled):
+# Indicates that the download was canceled by the user.
+stateCanceled=Ακυρώθηκε
+# LOCALIZATION NOTE (stateCompleted):
+# Indicates that the download was completed.
+stateCompleted=Ολοκληρώθηκε
+# LOCALIZATION NOTE (stateBlockedParentalControls):
+# Indicates that the download was blocked by the Parental Controls feature of
+# Windows. "Parental Controls" should be consistently named and capitalized
+# with the display of this feature in Windows. The following article can
+# provide a reference for the translation of "Parental Controls" in various
+# languages:
+# http://windows.microsoft.com/en-US/windows-vista/Set-up-Parental-Controls
+stateBlockedParentalControls=Αποκλείστηκε από το Γονικό Έλεγχο
+# LOCALIZATION NOTE (blockedMalware, blockedPotentiallyUnwanted,
+# blockedUncommon2):
+# These strings are shown in the panel for some types of blocked downloads. You
+# may need to adjust "downloads.width" in "downloads.dtd" if this turns out to
+# be longer than the other existing status strings.
+blockedMalware=Αυτό το αρχείο περιέχει ιό ή κακόβουλο λογισμικό.
+blockedPotentiallyUnwanted=Αυτό το αρχείο ενδέχεται να βλάψει τον υπολογιστή σας.
+blockedInsecure = Δεν ήταν δυνατή η ασφαλής λήψη αυτού του αρχείου.
+blockedPotentiallyInsecure=Δεν έγινε λήψη του αρχείου: Πιθανός κίνδυνος ασφαλείας.
+blockedUncommon2=Δεν γίνεται συχνά λήψη αυτού του αρχείου.
+
+# LOCALIZATION NOTE (fileMovedOrMissing):
+# Displayed when a complete download which is not at the original folder.
+fileMovedOrMissing=Το αρχείο μετακινήθηκε ή λείπει
+
+# LOCALIZATION NOTE (unblockHeaderUnblock, unblockHeaderOpen,
+# unblockTypeMalware, unblockTypePotentiallyUnwanted2,
+# unblockTypeUncommon2, unblockTip2, unblockButtonOpen,
+# unblockButtonUnblock, unblockButtonConfirmBlock, unblockInsecure):
+# These strings are displayed in the dialog shown when the user asks a blocked
+# download to be unblocked. The severity of the threat is expressed in
+# descending order by the unblockType strings, it is higher for files detected
+# as malware and lower for uncommon downloads.
+unblockHeaderUnblock=Θέλετε σίγουρα να επιτρέψετε αυτή τη λήψη;
+unblockHeaderOpen=Θέλετε σίγουρα να ανοίξετε αυτό το αρχείο;
+unblockTypeMalware=Αυτό το αρχείο περιέχει ιό ή άλλο κακόβουλο λογισμικό που ενδέχεται να βλάψει τον υπολογιστή σας.
+unblockTypePotentiallyUnwanted2=Το αρχείο είναι μεταμφιεσμένο ως χρήσιμο, αλλά μπορεί να προκαλέσει μη αναμενόμενες αλλαγές στα προγράμματα και τις ρυθμίσεις σας.
+unblockTypeUncommon2=Δεν γίνεται συχνά λήψη αυτού του αρχείου και μπορεί να μην είναι ασφαλές για άνοιγμα. Ενδέχεται να περιέχει ιό ή να προκαλέσει μη αναμενόμενες αλλαγές στα προγράμματα και τις ρυθμίσεις σας.
+unblockInsecure=Το αρχείο χρησιμοποιεί μια μη ασφαλή σύνδεση. Μπορεί να είναι κατεστραμμένο ή να έχει παραβιαστεί κατά τη διαδικασία λήψης.
+unblockTip2=Μπορείτε να αναζητήσετε μια εναλλακτική πηγή λήψης ή να δοκιμάσετε ξανά αργότερα.
+unblockButtonOpen=Άνοιγμα
+unblockButtonUnblock=Αποδοχή λήψης
+unblockButtonConfirmBlock=Διαγραφή αρχείου
+
+# LOCALIZATION NOTE (sizeWithUnits):
+# %1$S is replaced with the size number, and %2$S with the measurement unit.
+sizeWithUnits=%1$S %2$S
+sizeUnknown=Άγνωστο μέγεθος
+
+# LOCALIZATION NOTE (statusSeparator, statusSeparatorBeforeNumber):
+# These strings define templates for the separation of different elements in the
+# status line of a download item. As a separator, by default we use the Unicode
+# character U+2014 'EM DASH' (long dash). Examples of status lines include
+# "Canceled - 222.net", "1.1 MB - website2.com", or "Paused - 1.1 MB". Note
+# that we use a wider space after the separator when it is followed by a number,
+# just to avoid visually confusing it with with a minus sign with some fonts.
+# If you use a different separator, this might not be necessary. However, there
+# is usually no need to change the separator or the order of the substitutions,
+# even for right-to-left languages, unless the defaults are not suitable.
+statusSeparator=%1$S \u2014 %2$S
+statusSeparatorBeforeNumber=%1$S \u2014 %2$S
+
+# LOCALIZATION NOTE (otherDownloads3):
+# This is displayed in an item at the bottom of the Downloads Panel when
+# there are more downloads than can fit in the list in the panel. Use a
+# semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/Localization_and_Plurals
+otherDownloads3=Γίνεται μεταφόρτωση %1$S αρχείου;Γίνεται μεταφόρτωση %1$S αρχείων
+
+# LOCALIZATION NOTE (showLabel, showMacLabel):
+# This is displayed when you hover a download item in the Library widget view.
+# showMacLabel is only shown on Mac OSX.
+showLabel=Άνοιγμα φακέλου λήψης
+showMacLabel=Άνοιγμα στο Finder
+# LOCALIZATION NOTE (openFileLabel):
+# Displayed when hovering a complete download, indicates that it's possible to
+# open the file using an app available in the system.
+openFileLabel=Άνοιγμα αρχείου
+# LOCALIZATION NOTE (retryLabel):
+# Displayed when hovering a download which is able to be retried by users,
+# indicates that it's possible to download this file again.
+retryLabel=Επανάληψη λήψης
diff --git a/l10n-el/browser/chrome/browser/feeds/subscribe.properties b/l10n-el/browser/chrome/browser/feeds/subscribe.properties
new file mode 100644
index 0000000000..c95cc561d1
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/feeds/subscribe.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/.
+
+# LOCALIZATION NOTE (addProtocolHandlerMessage):
+# Message displayed when adding a protocol handler:
+# %1$S is the application's domain, %2$S is the type of protocol
+addProtocolHandlerMessage=Προσθήκη του “%1$S” ως εφαρμογής για συνδέσμους %2$S;
+addProtocolHandlerAddButton=Προσθήκη εφαρμογής
+addProtocolHandlerAddButtonAccesskey=Π
diff --git a/l10n-el/browser/chrome/browser/fxmonitor.properties b/l10n-el/browser/chrome/browser/fxmonitor.properties
new file mode 100644
index 0000000000..49ae7faa50
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/fxmonitor.properties
@@ -0,0 +1,49 @@
+# 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 https://mozilla.org/MPL/2.0/.
+
+# 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 of the popup
+fxmonitor.popupHeader=Έχετε λογαριασμό σε αυτή τη σελίδα;
+# Firefox Monitor must be treated as a brand, and kept in English.
+# It cannot be:
+# - Declined to adapt to grammatical case.
+# - Transliterated.
+# - Translated.
+fxmonitor.brandName=Firefox Monitor
+# Tooltip text for the popup's anchor icon in the URL bar
+# %S is replaced with fxmonitor.brandName.
+fxmonitor.anchorIcon.tooltiptext=Η ιστοσελίδα αναφέρθηκε στο %S
+# Text content of popup. Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This version is only used when the number of accounts is smaller than 100,000.
+# The placeholders are:
+# #1: The exact number of accounts compromised in the breach.
+# #2: The name of the breached site.
+# #3: The year of the breach.
+# #4: The brand name ("Firefox Monitor").
+fxmonitor.popupText=#1 λογαριασμός από το #2 παραβιάστηκε το #3. Ελέγξτε το #4 για να δείτε αν κινδυνεύει ο δικός σας.;#1 λογαριασμοί από το #2 παραβιάστηκαν το #3. Ελέγξτε το #4 για να δείτε αν κινδυνεύει ο δικός σας.
+# Text content of popup. Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This version is only used when the number of accounts is greater than 100,000.
+# The placeholders are:
+# #1: The number of accounts compromised in the breach, rounded down to the
+# most significant digit.
+# Ex.: 234,567 -> More than 200,000 accounts [...]
+# 345,678,901 -> More than 300,000,000 accounts [...]
+# 4,567,890,123 -> More than 4,000,000,000 accounts [...]
+# #2: The name of the breached site.
+# #3: The year of the breach.
+# #4: The brand name ("Firefox Monitor").
+fxmonitor.popupTextRounded=Περισσότεροι από #1 λογαριασμοί από το #2 παραβιάστηκαν το #3. Ελέγξτε το #4 για να δείτε αν κινδυνεύει ο δικός σας.;Περισσότεροι από #1 λογαριασμοί από το #2 παραβιάστηκαν το #3. Ελέγξτε το #4 για να δείτε αν κινδυνεύει ο δικός σας.
+# %S is replaced with fxmonitor.brandName.
+fxmonitor.checkButton.label=Έλεγχος %S
+fxmonitor.checkButton.accessKey=Ε
+fxmonitor.dismissButton.label=Απόρριψη
+fxmonitor.dismissButton.accessKey=Α
+# %S is replaced with fxmonitor.brandName.
+fxmonitor.neverShowButton.label=Να μην εμφανίζονται ειδοποιήσεις του %S
+fxmonitor.neverShowButton.accessKey=Ν
diff --git a/l10n-el/browser/chrome/browser/migration/migration.dtd b/l10n-el/browser/chrome/browser/migration/migration.dtd
new file mode 100644
index 0000000000..52cddf34ef
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/migration/migration.dtd
@@ -0,0 +1,53 @@
+<!-- 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 migrationWizard.title "Βοηθός εισαγωγής">
+
+<!ENTITY importFrom.label "Εισαγωγή επιλογών, σελιδοδεικτών, ιστορικού, κωδικών πρόσβασης και άλλων δεδομένων από:">
+<!ENTITY importFromUnix.label "Εισαγωγή προτιμήσεων, σελιδοδεικτών, ιστορικού, κωδικών πρόσβασης και άλλων δεδομένων από:">
+
+<!ENTITY importFromIE.label "Microsoft Internet Explorer">
+<!ENTITY importFromIE.accesskey "M">
+<!ENTITY importFromEdge.label "Microsoft Edge">
+<!ENTITY importFromEdge.accesskey "E">
+<!ENTITY importFromEdgeLegacy.label "Microsoft Edge Legacy">
+<!ENTITY importFromEdgeLegacy.accesskey "L">
+<!ENTITY importFromEdgeBeta.label "Microsoft Edge Beta">
+<!ENTITY importFromEdgeBeta.accesskey "d">
+<!ENTITY importFromNothing.label "Να μην εισαχθεί τίποτα">
+<!ENTITY importFromNothing.accesskey "Ν">
+<!ENTITY importFromSafari.label "Safari">
+<!ENTITY importFromSafari.accesskey "S">
+<!ENTITY importFromCanary.label "Chrome Canary">
+<!ENTITY importFromCanary.accesskey "n">
+<!ENTITY importFromChrome.label "Chrome">
+<!ENTITY importFromChrome.accesskey "C">
+<!ENTITY importFromChromeBeta.label "Chrome Beta">
+<!ENTITY importFromChromeBeta.accesskey "B">
+<!ENTITY importFromChromeDev.label "Chrome Dev">
+<!ENTITY importFromChromeDev.accesskey "D">
+<!ENTITY importFromChromium.label "Chromium">
+<!ENTITY importFromChromium.accesskey "u">
+<!ENTITY importFromFirefox.label "Firefox">
+<!ENTITY importFromFirefox.accesskey "X">
+<!ENTITY importFrom360se.label "360 Secure Browser">
+<!ENTITY importFrom360se.accesskey "3">
+
+<!ENTITY noMigrationSources.label "Δεν βρέθηκαν προγράμματα τα οποία περιέχουν σελιδοδείκτες, ιστορικό ή δεδομένα κωδικών.">
+
+<!ENTITY importSource.title "Εισαγωγή ρυθμίσεων και δεδομένων">
+<!ENTITY importItems.title "Στοιχεία προς εισαγωγή">
+<!ENTITY importItems.label "Επιλέξτε στοιχεία προς εισαγωγή:">
+
+<!ENTITY migrating.title "Εισαγωγή…">
+<!ENTITY migrating.label "Γίνεται εισαγωγή των παρακάτω στοιχείων αυτή τη στιγμή…">
+
+<!ENTITY selectProfile.title "Επιλογή προφίλ">
+<!ENTITY selectProfile.label "Τα ακόλουθα προφίλ είναι διαθέσιμα για εισαγωγή από:">
+
+<!ENTITY done.title "Η εισαγωγή ολοκληρώθηκε">
+<!ENTITY done.label "Τα ακόλουθα στοιχεία εισήχθησαν επιτυχώς:">
+
+<!ENTITY closeSourceBrowser.label "Παρακαλούμε βεβαιωθείτε ότι το επιλεγμένο πρόγραμμα περιήγησης είναι κλειστό πριν συνεχίσετε.">
diff --git a/l10n-el/browser/chrome/browser/migration/migration.properties b/l10n-el/browser/chrome/browser/migration/migration.properties
new file mode 100644
index 0000000000..410a661ed1
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/migration/migration.properties
@@ -0,0 +1,76 @@
+# 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/.
+
+profileName_format=%S %S
+
+# Browser Specific
+sourceNameIE=Ιnternet Explorer
+sourceNameEdge=Microsoft Edge
+sourceNameEdgeBeta=Microsoft Edge Beta
+sourceNameSafari=Safari
+sourceNameCanary=Google Chrome Canary
+sourceNameChrome=Google Chrome
+sourceNameChromeBeta=Google Chrome Beta
+sourceNameChromeDev=Google Chrome Dev
+sourceNameChromium=Chromium
+sourceNameFirefox=Mozilla Firefox
+sourceName360se=360 Secure Browser
+
+importedBookmarksFolder=Από %S
+
+importedSafariReadingList=Λίστα ανάγνωσης (Από Safari)
+importedEdgeReadingList=Λίστα ανάγνωσης (Από Edge)
+
+# Import Sources
+# Note: When adding an import source for profile reset, add the string name to
+# resetProfile.js if it should be listed in the reset dialog.
+1_ie=Επιλογές διαδικτύου
+1_edge=Ρυθμίσεις
+1_safari=Προτιμήσεις
+1_chrome=Προτιμήσεις
+1_360se=Προτιμήσεις
+
+2_ie=Cookies
+2_edge=Cookies
+2_safari=Cookies
+2_chrome=Cookies
+2_firefox=Cookies
+2_360se=Cookies
+
+4_ie=Ιστορικό περιήγησης
+4_edge=Ιστορικό περιήγησης
+4_safari=Ιστορικό περιήγησης
+4_chrome=Ιστορικό περιήγησης
+4_firefox_history_and_bookmarks=Ιστορικό περιήγησης και σελιδοδείκτες
+4_360se=Ιστορικό περιήγησης
+
+8_ie=Ιστορικό αποθηκευμένων φορμών
+8_edge=Ιστορικό αποθηκευμένων φορμών
+8_safari=Ιστορικό αποθηκευμένων φορμών
+8_chrome=Ιστορικό αποθηκευμένων φορμών
+8_firefox=Ιστορικό αποθηκευμένων φορμών
+8_360se=Ιστορικό αποθηκευμένων φορμών
+
+16_ie=Αποθηκευμένοι κωδικοί πρόσβασης
+16_edge=Αποθηκευμένοι κωδικοί πρόσβασης
+16_safari=Αποθηκευμένοι κωδικοί πρόσβασης
+16_chrome=Αποθηκευμένοι κωδικοί πρόσβασης
+16_firefox=Αποθηκευμένοι κωδικοί πρόσβασης
+16_360se=Αποθηκευμένοι κωδικοί πρόσβασης
+
+32_ie=Αγαπημένα
+32_edge=Αγαπημένα
+32_safari=Σελιδοδείκτες
+32_chrome=Σελιδοδείκτες
+32_360se=Σελιδοδείκτες
+
+64_ie=Άλλα δεδομένα
+64_edge=Άλλα δεδομένα
+64_safari=Άλλα δεδομένα
+64_chrome=Άλλα δεδομένα
+64_firefox_other=Άλλα δεδομένα
+64_360se=Άλλα δεδομένα
+
+128_firefox=Παράθυρα και καρτέλες
+
diff --git a/l10n-el/browser/chrome/browser/newInstall.dtd b/l10n-el/browser/chrome/browser/newInstall.dtd
new file mode 100644
index 0000000000..30d84a9f24
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/newInstall.dtd
@@ -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/. -->
+
+<!-- LOCALIZATION NOTE: For this feature, "installation" is used to mean "this
+ discrete download of Firefox" and "version" is used to mean "the specific
+ revision number of a given Firefox channel". These terms are not synonymous.
+-->
+
+<!ENTITY window.title "Σημαντικές ειδήσεις">
+<!ENTITY window.style "width: 490px">
+<!ENTITY sync "Για να συγχρονίσετε τις πληροφορίες που έχετε ήδη αποθηκεύσει στο Firefox με αυτή την εγκατάσταση του &brandShortName;, συνδεθείτε στο &syncBrand.fxAccount.label; σας.">
+<!ENTITY continue-button "Συνέχεια">
+
+<!ENTITY mainText "Αυτή η εγκατάσταση του &brandShortName; έχει ένα νέο προφίλ. Δεν μοιράζεται σελιδοδείκτες, κωδικούς πρόσβασης και προτιμήσεις χρήστη με άλλες εγκαταστάσεις του Firefox (συμπεριλαμβανομένων των Firefox, Firefox ESR, Firefox Beta, Firefox Developer Edition και Firefox Nightly) σε αυτό τον υπολογιστή.">
diff --git a/l10n-el/browser/chrome/browser/places/bookmarkProperties.properties b/l10n-el/browser/chrome/browser/places/bookmarkProperties.properties
new file mode 100644
index 0000000000..93e95c7414
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/places/bookmarkProperties.properties
@@ -0,0 +1,16 @@
+# 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/.
+
+dialogAcceptLabelAddItem=Προσθήκη
+dialogAcceptLabelSaveItem=Αποθήκευση
+dialogAcceptLabelAddMulti=Προσθήκη σελιδοδεικτών
+dialogAcceptLabelEdit=Αποθήκευση
+dialogTitleAddBookmark=Νέος σελιδοδείκτης
+dialogTitleAddFolder=Νέος φάκελος
+dialogTitleAddMulti=Νέοι σελιδοδείκτες
+dialogTitleEdit=Ιδιότητες για “%S”
+
+bookmarkAllTabsDefault=[Όνομα φακέλου]
+newFolderDefault=Νέος φάκελος
+newBookmarkDefault=Νέος σελιδοδείκτης
diff --git a/l10n-el/browser/chrome/browser/places/places.dtd b/l10n-el/browser/chrome/browser/places/places.dtd
new file mode 100644
index 0000000000..37a94b8802
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/places/places.dtd
@@ -0,0 +1,62 @@
+<!-- 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 (places.library.title): use "Library", "Archive" or "Repository" -->
+<!ENTITY places.library.title "Βιβλιοθήκη">
+<!ENTITY places.library.width "700">
+<!ENTITY places.library.height "500">
+<!ENTITY organize.label "Οργάνωση">
+<!ENTITY organize.accesskey "Ο">
+<!ENTITY organize.tooltip "Οργάνωση των σελιδοδεικτών σας">
+
+<!ENTITY file.close.label "Κλείσιμο">
+<!ENTITY file.close.accesskey "Κ">
+<!ENTITY cmd.close.key "w">
+<!ENTITY views.label "Προβολές">
+<!ENTITY views.accesskey "β">
+<!ENTITY views.tooltip "Αλλαγή προβολής">
+<!ENTITY view.columns.label "Προβολή στηλών">
+<!ENTITY view.columns.accesskey "ρ">
+<!ENTITY view.sort.label "Ταξινόμηση">
+<!ENTITY view.sort.accesskey "ξ">
+<!ENTITY view.unsorted.label "Χωρίς ταξινόμηση">
+<!ENTITY view.unsorted.accesskey "Χ">
+<!ENTITY view.sortAscending.label "Σειρά ταξινόμησης Α > Ω">
+<!ENTITY view.sortAscending.accesskey "Α">
+<!ENTITY view.sortDescending.label "Σειρά ταξινόμησης Ω > Α">
+<!ENTITY view.sortDescending.accesskey "Ω">
+
+<!ENTITY importBookmarksFromHTML.label "Εισαγωγή σελιδοδεικτών από HTML…">
+<!ENTITY importBookmarksFromHTML.accesskey "ι">
+<!ENTITY exportBookmarksToHTML.label "Εξαγωγή σελιδοδεικτών σε HTML…">
+<!ENTITY exportBookmarksToHTML.accesskey "ξ">
+<!ENTITY importOtherBrowser.label "Εισαγωγή δεδομένων από άλλο φυλλομετρητή…">
+<!ENTITY importOtherBrowser.accesskey "λ">
+
+<!ENTITY cmd.backup.label "Αντίγραφο ασφαλείας...">
+<!ENTITY cmd.backup.accesskey "φ">
+<!ENTITY cmd.restore2.label "Επαναφορά">
+<!ENTITY cmd.restore2.accesskey "π">
+<!ENTITY cmd.restoreFromFile.label "Επιλογή αρχείου...">
+<!ENTITY cmd.restoreFromFile.accesskey "λ">
+
+<!ENTITY col.name.label "Όνομα">
+<!ENTITY col.tags.label "Ετικέτες">
+<!ENTITY col.url.label "Τοποθεσία">
+<!ENTITY col.mostrecentvisit.label "Πιο πρόσφατη επίσκεψη">
+<!ENTITY col.visitcount.label "Αριθμός επισκέψεων">
+<!ENTITY col.dateadded.label "Προσθήκη">
+<!ENTITY col.lastmodified.label "Τελευταία τροποποίηση">
+
+<!ENTITY cmd.find.key "f">
+
+<!ENTITY maintenance.label "Εισαγωγή και αντίγραφο">
+<!ENTITY maintenance.accesskey "ι">
+<!ENTITY maintenance.tooltip "Εισαγωγή και αντίγραφα ασφαλείας σελιδοδεικτών">
+
+<!ENTITY backButton.tooltip "Επιστροφή">
+
+<!ENTITY forwardButton.tooltip "Μετάβαση μπροστά">
+
+<!ENTITY detailsPane.selectAnItemText.description "Επιλέξτε ένα στοιχείο για προβολή και επεξεργασία ιδιοτήτων">
diff --git a/l10n-el/browser/chrome/browser/places/places.properties b/l10n-el/browser/chrome/browser/places/places.properties
new file mode 100644
index 0000000000..db654f0f6f
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/places/places.properties
@@ -0,0 +1,74 @@
+# 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/.
+
+load-js-data-url-error=Για λόγους ασφαλείας, url με javascript ή δεδομένα δεν φορτώνονται από το παράθυρο του ιστορικού ή της πλευρικής στήλης.
+noTitle=(χωρίς τίτλο)
+
+bookmarksMenuEmptyFolder=(Κενό)
+
+bookmarksBackupTitle=Όνομα αντιγράφου ασφαλείας σελιδοδεικτών
+
+bookmarksRestoreAlertTitle=Επαναφορά σελιδοδεικτών
+bookmarksRestoreAlert=Αυτή η ενέργεια θα αντικαταστήσει όλους τους τρέχοντες σελιδοδείκτες με αυτούς στο αντίγραφο ασφαλείας. Είστε σίγουροι;
+bookmarksRestoreTitle=Επιλογή ενός αντιγράφου σελιδοδεικτών
+bookmarksRestoreFilterName=JSON
+
+bookmarksRestoreFormatError=Μη υποστηριζόμενος τύπος αρχείου.
+bookmarksRestoreParseError=Αποτυχία επεξεργασίας του αντίγραφου ασφαλείας.
+
+# LOCALIZATION NOTE (view.sortBy.1.name.label): sortBy properties are versioned.
+# When any of these changes, all of the properties must be bumped, and the
+# change must be annotated here. Both label and accesskey must be updated.
+# - version 1: changed view.sortBy.1.date.
+view.sortBy.1.name.label=Ταξινόμηση κατά όνομα
+view.sortBy.1.name.accesskey=ν
+view.sortBy.1.url.label=Ταξινόμηση κατά τοποθεσία
+view.sortBy.1.url.accesskey=θ
+view.sortBy.1.date.label=Ταξινόμηση κατά ημερομηνία επίσκεψης
+view.sortBy.1.date.accesskey=ψ
+view.sortBy.1.visitCount.label=Ταξινόμηση κατά αριθμό επισκέψεων
+view.sortBy.1.visitCount.accesskey=θ
+view.sortBy.1.dateAdded.label=Ταξινόμηση κατά σειρά προσθήκης
+view.sortBy.1.dateAdded.accesskey=η
+view.sortBy.1.lastModified.label=Ταξινόμηση κατά τελευταία τροποποίηση
+view.sortBy.1.lastModified.accesskey=λ
+view.sortBy.1.tags.label=Ταξινόμηση κατά ετικέτα
+view.sortBy.1.tags.accesskey=τ
+
+searchBookmarks=Αναζήτηση σελιδοδεικτών
+searchHistory=Αναζήτηση ιστορικού
+searchDownloads=Αναζήτηση λήψεων
+
+SelectImport=Εισαγωγή αρχείου σελιδοδεικτών
+EnterExport=Εξαγωγή αρχείου σελιδοδεικτών
+
+detailsPane.noItems=Κανένα στοιχείο
+# LOCALIZATION NOTE (detailsPane.itemsCountLabel): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of items
+# example: 111 items
+detailsPane.itemsCountLabel=Ένα στοιχείο;#1 στοιχεία
+
+# LOCALIZATION NOTE (lockPrompt.text)
+# %S will be replaced with the application name.
+lockPrompt.title=Σφάλμα εκκίνησης προγράμματος περιήγησης
+lockPrompt.text=Οι σελιδοδείκτες και το ιστορικό δεν θα λειτουργούν επειδή ένα από τα αρχεία του %S χρησιμοποιείται από μια άλλη εφαρμογή. Κάποιες εφαρμογές ασφάλειας μπορεί να προκαλέσουν τέτοια προβλήματα.
+lockPromptInfoButton.label=Μάθετε περισσότερα
+lockPromptInfoButton.accessKey=Μ
+
+# LOCALIZATION NOTE (cmd.deleteSinglePage.accesskey,
+# cmd.deleteMultiplePages.accesskey): these accesskeys can use the same
+# character, since they're never displayed at the same time
+cmd.deleteSinglePage.label=Διαγραφή σελίδας
+cmd.deleteSinglePage.accesskey=Δ
+cmd.deleteMultiplePages.label=Διαγραφή σελίδων
+cmd.deleteMultiplePages.accesskey=Δ
+
+# LOCALIZATION NOTE (cmd.bookmarkSinglePage.accesskey,
+# cmd.bookmarkMultiplePages.accesskey): these accesskeys can use the same
+# character, since they're never displayed at the same time
+cmd.bookmarkSinglePage.label=Προσθήκη σελίδας στους σελιδοδείκτες
+cmd.bookmarkSinglePage.accesskey=σ
+cmd.bookmarkMultiplePages.label=Προσθήκη σελίδων στους σελιδοδείκτες
+cmd.bookmarkMultiplePages.accesskey=σ
diff --git a/l10n-el/browser/chrome/browser/pocket.properties b/l10n-el/browser/chrome/browser/pocket.properties
new file mode 100644
index 0000000000..fafde4bc80
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/pocket.properties
@@ -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/.
+
+addtags = Προσθήκη ετικετών
+alreadyhaveacct = Είστε ήδη χρήστης του Pocket;
+errorgeneric = Προέκυψε σφάλμα κατά την προσπάθεια αποθήκευσης στο Pocket.
+learnmore = Μάθετε περισσότερα
+loginnow = Σύνδεση
+maxtaglength = Οι ετικέτες έχουν όριο 25 χαρακτήρες
+onlylinkssaved = Μόνο οι σύνδεσμοι μπορούν να αποθηκευτούν
+pagenotsaved = Η σελίδα δεν αποθηκεύτηκε
+pageremoved = Η σελίδα αφαιρέθηκε
+pagesaved = Αποθηκεύτηκε στο Pocket
+processingremove = Αφαίρεση σελίδας…
+processingtags = Προσθήκη ετικετών…
+removepage = Αφαίρεση σελίδας
+save = Αποθήκευση
+saving = Αποθήκευση…
+signupemail = Εγγραφή με email
+signuptosave = Εγγραφείτε στο Pocket. Δωρεάν.
+suggestedtags = Προτεινόμενες ετικέτες
+tagline = Αποθηκεύστε άρθρα και βίντεο από το Firefox για προβολή στο Pocket από οποιαδήποτε συσκευή, ανά πάσα στιγμή.
+taglinestory_one = Κάντε κλικ στο κουμπί του Pocket για να αποθηκεύσετε οποιοδήποτε άρθρο, βίντεο ή σελίδα από το Firefox.
+taglinestory_two = Προβολή στο Pocket σε οποιαδήποτε συσκευή, ανά πάσα στιγμή.
+tagssaved = Προστέθηκαν ετικέτες
+tos = Συνεχίζοντας, συμφωνείτε με τους <a href="%1$S" target="_blank">όρους υπηρεσίας</a> και την <a href="%2$S" target="_blank">πολιτική απορρήτου</a> του Pocket
+tryitnow = Δοκιμάστε το τώρα
+signupfirefox = Εγγραφή με Λογαριασμό Firefox
+viewlist = Προβολή λίστας
+
diff --git a/l10n-el/browser/chrome/browser/safebrowsing/safebrowsing.properties b/l10n-el/browser/chrome/browser/safebrowsing/safebrowsing.properties
new file mode 100644
index 0000000000..d6e696f9ad
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/safebrowsing/safebrowsing.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/.
+
+errorReportFalseDeceptiveTitle=Αυτή δεν είναι μια παραπλανητική ιστοσελίδα
+errorReportFalseDeceptiveMessage=Δεν είναι δυνατή η αναφορά αυτού του σφάλματος αυτή τη στιγμή.
diff --git a/l10n-el/browser/chrome/browser/search.properties b/l10n-el/browser/chrome/browser/search.properties
new file mode 100644
index 0000000000..666ace8d4b
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/search.properties
@@ -0,0 +1,45 @@
+# 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/.
+
+searchtip=Αναζήτηση με %S
+
+# LOCALIZATION NOTE (searchHeader): this is displayed at the top of the panel
+# showing search suggestions.
+# %S is replaced with the name of the current default search engine.
+searchHeader=Αναζήτηση %S
+
+# LOCALIZATION NOTE (cmd_pasteAndSearch): "Search" is a verb, this is the
+# search bar equivalent to the url bar's "Paste & Go"
+cmd_pasteAndSearch=Επικόλληση & αναζήτηση
+
+cmd_clearHistory=Εκκαθάριση ιστορικού αναζήτησης
+cmd_clearHistory_accesskey=κ
+
+# LOCALIZATION NOTE (cmd_addFoundEngine): %S is replaced by the name of
+# a search engine offered by a web page. Each engine is displayed as a
+# menuitem at the bottom of the search panel.
+cmd_addFoundEngine=Προσθήκη “%S”
+# LOCALIZATION NOTE (cmd_addFoundEngineMenu): When more than 5 engines
+# are offered by a web page, instead of listing all of them in the
+# search panel using the cmd_addFoundEngine string, they will be
+# grouped in a submenu using cmd_addFoundEngineMenu as a label.
+cmd_addFoundEngineMenu=Προσθήκη μηχανής αναζήτησης
+
+searchAddFoundEngine2=Προσθήκη μηχανής αναζήτησης
+
+# LOCALIZATION NOTE (searchForSomethingWith2):
+# This string is used to build the header above the list of one-click
+# search providers: "Search for <user-typed string> with:"
+searchForSomethingWith2=Αναζήτηση για %S με:
+
+# LOCALIZATION NOTE (searchWithHeader):
+# The wording of this string should be as close as possible to
+# searchForSomethingWith2. This string will be used when the user
+# has not typed anything.
+searchWithHeader=Αναζήτηση με:
+
+# LOCALIZATION NOTE (searchSettings):
+# This is the label for the button that opens Search preferences.
+searchSettings=Αλλαγή ρυθμίσεων αναζήτησης
+
diff --git a/l10n-el/browser/chrome/browser/shellservice.properties b/l10n-el/browser/chrome/browser/shellservice.properties
new file mode 100644
index 0000000000..bc1d470f4f
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/shellservice.properties
@@ -0,0 +1,28 @@
+# 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 (setDefaultBrowserMessage2, setDefaultBrowserConfirm.label):
+# %S will be replaced by brandShortName
+setDefaultBrowserMessage2 = Αξιοποιήστε στο έπακρο το %S, ορίζοντάς το ως προεπιλεγμένο πρόγραμμα περιήγησης
+setDefaultBrowserConfirm.label = Χρήση του %S ως προεπ. προγράμματος περιήγησης
+setDefaultBrowserConfirm.accesskey = Χ
+setDefaultBrowserOptions.label = Επιλογές
+setDefaultBrowserOptions.accesskey = Ε
+setDefaultBrowserNotNow.label = Όχι τώρα
+setDefaultBrowserNotNow.accesskey = Ό
+setDefaultBrowserNever.label = Να μην ερωτηθώ ξανά
+setDefaultBrowserNever.accesskey = Ν
+
+# LOCALIZATION NOTE (setDefaultBrowserTitle, setDefaultBrowserMessage, setDefaultBrowserDontAsk, setDefaultBrowserAlertConfirm.label, setDefaultBrowserAlertNotNow.label):
+# These strings are used as an alternative to the ones above, in a modal dialog.
+# %S will be replaced by brandShortName
+setDefaultBrowserTitle=Προεπιλεγμένο πρόγραμμα περιήγησης
+setDefaultBrowserMessage=Το %S δεν είναι το προεπιλεγμένο πρόγραμμα περιήγησης. Θα θέλατε να γίνει;
+setDefaultBrowserDontAsk=Να γίνεται πάντα έλεγχος κατά την εκκίνηση του %S.
+setDefaultBrowserAlertConfirm.label=Χρήση του %S ως προεπ. προγράμματος περιήγησης
+setDefaultBrowserAlertNotNow.label=Όχι τώρα
+
+desktopBackgroundLeafNameWin=Ταπετσαρία Επιφάνειας Εργασίας.bmp
+DesktopBackgroundDownloading=Αποθήκευση εικόνας…
+DesktopBackgroundSet=Ορισμός ταπετσαρίας επιφάνειας εργασίας
diff --git a/l10n-el/browser/chrome/browser/siteData.properties b/l10n-el/browser/chrome/browser/siteData.properties
new file mode 100644
index 0000000000..115baa4559
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/siteData.properties
@@ -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/.
+
+clearSiteDataPromptTitle=Εκκαθάριση όλων των cookies και των δεδομένων ιστοσελίδων
+# LOCALIZATION NOTE (clearSiteDataPromptText): %S = brandShortName
+clearSiteDataPromptText=Η επιλογή ‘Εκκαθάριση τώρα’ θα καθαρίσει όλα τα cookies και τα δεδομένα που αποθηκεύονται από το %S. Αυτό ενδέχεται να σάς αποσυνδέσει από ιστοσελίδες και να διαγράψει όλο το περιεχόμενο ιστού εκτός σύνδεσης.
+clearSiteDataNow=Εκκαθάριση τώρα
diff --git a/l10n-el/browser/chrome/browser/sitePermissions.properties b/l10n-el/browser/chrome/browser/sitePermissions.properties
new file mode 100644
index 0000000000..a741f8e177
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/sitePermissions.properties
@@ -0,0 +1,53 @@
+# 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 (state.current.allowed,
+# state.current.allowedForSession,
+# state.current.allowedTemporarily,
+# state.current.blockedTemporarily,
+# state.current.blocked,
+# state.current.hide):
+# This label is used to display active permission states in the site
+# identity popup (which does not have a lot of screen space).
+state.current.allowed = Επιτρέπεται
+state.current.allowedForSession = Επιτρέπεται για τη συνεδρία
+state.current.allowedTemporarily = Επιτρέπεται προσωρινά
+state.current.blockedTemporarily = Απαγορεύεται προσωρινά
+state.current.blocked = Απαγορεύεται
+state.current.prompt = Πάντα ερώτηση
+
+# LOCALIZATION NOTE (state.multichoice.alwaysAsk,
+# state.multichoice.allow,
+# state.multichoice.allowForSession,
+# state.multichoice.block):
+# Used to label permission state checkboxes in the page info dialog.
+state.multichoice.alwaysAsk = Πάντα ερώτηση
+state.multichoice.allow = Αποδοχή
+state.multichoice.allowForSession = Αποδοχή για τη συνεδρία
+state.multichoice.block = Φραγή
+
+state.multichoice.autoplayblock = Φραγή ήχου
+state.multichoice.autoplayblockall = Φραγή ήχου και βίντεο
+state.multichoice.autoplayallow = Αποδοχή ήχου και βίντεο
+
+permission.autoplay.label = Αυτόματη αναπαραγωγή
+permission.cookie.label = Τοποθέτηση cookies
+permission.desktop-notification3.label = Αποστολή ειδοποιήσεων
+permission.camera.label = Χρήση της κάμερας
+permission.microphone.label = Χρήση του μικροφώνου
+permission.screen.label = Κοινή χρήση οθόνης
+permission.install.label = Εγκατάσταση προσθέτων
+permission.popup.label = Άνοιγμα αναδυόμενων παραθύρων
+permission.geo.label = Πρόσβαση στην τοποθεσία σας
+permission.xr.label = Πρόσβαση σε συσκευές εικονικής πραγματικότητας
+permission.shortcuts.label = Παράκαμψη συντομεύσεων πληκτρολογίου
+permission.focus-tab-by-prompt.label = Εναλλαγή σε αυτή την καρτέλα
+permission.persistent-storage.label = Αποθήκευση δεδομένων στην επίμονη αποθήκευση
+permission.canvas.label = Εξαγωγή δεδομένων καμβά
+permission.midi.label = Πρόσβαση σε συσκευές MIDI
+permission.midi-sysex.label = Πρόσβαση σε συσκευές MIDI με υποστήριξη SysEx
+permission.https-only-load-insecure.label = Χρήση μη ασφαλούς HTTP
+# LOCALIZATION NOTE (permission.open-protocol-handler.label):
+# Open as a verb. "This site may open applications".
+permission.open-protocol-handler.label = Άνοιγμα εφαρμογών
diff --git a/l10n-el/browser/chrome/browser/syncBrand.dtd b/l10n-el/browser/chrome/browser/syncBrand.dtd
new file mode 100644
index 0000000000..1e93d57cb0
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/syncBrand.dtd
@@ -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/. -->
+
+<!ENTITY syncBrand.shortName.label "Sync">
+<!ENTITY syncBrand.fxAccount.label "Λογαριασμό Firefox">
diff --git a/l10n-el/browser/chrome/browser/syncSetup.properties b/l10n-el/browser/chrome/browser/syncSetup.properties
new file mode 100644
index 0000000000..004f63f4d3
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/syncSetup.properties
@@ -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/.
+
+# Several other strings are used (via Weave.Status.login), but they come from
+# /services/sync
+
+# Firefox Accounts based setup.
+continue.label = Συνέχεια
+
+relinkVerify.title = Προειδοποίηση Συγχώνευσης
+relinkVerify.heading = Θέλετε σίγουρα να συνδεθείτε στο Sync;
+# LOCALIZATION NOTE (relinkVerify.description): Email address of a user previously signed into sync.
+relinkVerify.description = Ένας άλλος χρήστης έχει συνδεθεί προηγουμένως στο Sync από αυτόν τον υπολογιστή. Η σύνδεση θα συγχωνεύσει τους σελιδοδείκτες, τους κωδικούς πρόσβασης και άλλες ρυθμίσεις του προγράμματος περιήγησης με την διεύθυνση %S
diff --git a/l10n-el/browser/chrome/browser/tabbrowser.properties b/l10n-el/browser/chrome/browser/tabbrowser.properties
new file mode 100644
index 0000000000..2aebb1fef1
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/tabbrowser.properties
@@ -0,0 +1,128 @@
+# 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/.
+
+tabs.emptyTabTitle=Νέα καρτέλα
+tabs.emptyPrivateTabTitle=Ιδιωτική περιήγηση
+tabs.closeTab=Κλείσιμο καρτέλας
+tabs.close=Κλείσιμο
+tabs.closeTitleTabs=Κλείσιμο καρτελών;
+tabs.closeAndQuitTitleTabs=Έξοδος και κλείσιμο καρτελών;
+tabs.closeAndQuitTitleTabsWin=Έξοδος και κλείσιμο καρτελών;
+# LOCALIZATION NOTE (tabs.closeWarningMultiple):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# The singular form is not considered since this string is used only for
+# multiple tabs.
+tabs.closeWarningMultiple=;Πρόκειται να κλείσετε #1 καρτέλες. Θέλετε σίγουρα να συνεχίσετε;
+# LOCALIZATION NOTE (tabs.closeWarningMultipleSessionRestore2):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# The forms for 0 or 1 items are not considered since this string is used only
+# for multiple tabs.
+# If
+# "Tabs in non-private windows will be restored when you restart"
+# is difficult to translate, you could translate
+# "Tabs (except those in private windows) will be restored when you restart"
+# instead.
+tabs.closeWarningMultipleSessionRestore2=;Πρόκειται να κλείσετε #1 καρτέλες. Οι καρτέλες των μη ιδιωτικών παραθύρων θα ανακτηθούν αφού κάνετε επανεκκίνηση. Θέλετε σίγουρα να συνεχίσετε;
+tabs.closeButtonMultiple=Κλείσιμο καρτελών
+tabs.closeWarningPromptMe=Προειδοποίηση πριν το κλείσιμο πολλαπλών καρτελών
+
+# LOCALIZATION NOTE (tabs.closeWarningMultipleWindows):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# The forms for 0 or 1 items are not considered since this string is used only for
+# multiple windows. The %S replacement form will be replaced with the contents
+# of tabs.closeWarningMultipleWindowsTabSnippet, which will contain the number
+# of tabs in these windows.
+# Note that every one of these plural forms must contain one instance of '%S'.
+tabs.closeWarningMultipleWindows=;Πρόκειται να κλείσετε #1 παράθυρα %S. Θέλετε σίγουρα να συνεχίσετε;
+# LOCALIZATION NOTE (tabs.closeWarningMultipleWindowsSessionRestore2):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# The forms for 0 or 1 items are not considered since this string is used only for
+# multiple windows. The %S replacement form will be replaced with the contents
+# of tabs.closeWarningMultipleWindowsTabSnippet, which will contain the number
+# of tabs in these windows.
+# If
+# "Tabs in non-private windows will be restored when you restart"
+# is difficult to translate, you could translate
+# "Tabs (except those in private windows) will be restored when you restart"
+# instead.
+# Note that every one of these plural forms must contain one instance of '%S'.
+tabs.closeWarningMultipleWindowsSessionRestore2=;Πρόκειται να κλείσετε #1 παράθυρα %S. Οι καρτέλες των μη ιδιωτικών παραθύρων θα ανακτηθούν αφού κάνετε επανεκκίνηση. Θέλετε σίγουρα να συνεχίσετε;
+
+# LOCALIZATION NOTE (tabs.closeWarningMultipleWindowsTabSnippet):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# The singular form is not considered since this string is used only for
+# multiple windows which must contain multiple tabs (in total).
+# This string will be inserted in tabs.closeWarningMultipleWindows
+tabs.closeWarningMultipleWindowsTabSnippet=;με #1 καρτέλες
+
+# LOCALIZATION NOTE (tabs.closeTabs.tooltip):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs that will be closed. This is ignored for the
+# single tab case in English, but can be used by other locales as necessary.
+tabs.closeTabs.tooltip=Κλείσιμο καρτέλας;Κλείσιμο #1 καρτελών
+
+# LOCALIZATION NOTE (tabs.muteAudio2.tooltip):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# %S is the keyboard shortcut for "Mute tab".
+# #1 is the number of tabs that will be muted. This is ignored for the
+# single tab case in English, but can be used by other locales as necessary.
+tabs.muteAudio2.tooltip=Σίγαση καρτέλας (%S);Σίγαση #1 καρτελών (%S)
+
+# LOCALIZATION NOTE (tabs.unmuteAudio2.tooltip):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# %S is the keyboard shortcut for "Unmute tab".
+# #1 is the number of tabs that will be unmuted. This is ignored for the
+# single tab case in English, but can be used by other locales as necessary.
+tabs.unmuteAudio2.tooltip=Άρση σίγασης καρτέλας (%S);Άρση σίγασης #1 καρτελών (%S)
+
+# LOCALIZATION NOTE (tabs.muteAudio2.background.tooltip):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs that will be muted. This is ignored for the
+# single tab case in English, but can be used by other locales as necessary.
+tabs.muteAudio2.background.tooltip=Σίγαση καρτέλας;Σίγαση #1 καρτελών
+
+# LOCALIZATION NOTE (tabs.unmuteAudio2.background.tooltip):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs that will be unmuted. This is ignored for the
+# single tab case in English, but can be used by other locales as necessary.
+tabs.unmuteAudio2.background.tooltip=Άρση σίγασης καρτέλας;Άρση σίγασης #1 καρτελών
+
+# LOCALIZATION NOTE (tabs.unblockAudio2.tooltip):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs that will have their audio unblocked. This is ignored for the
+# single tab case in English, but can be used by other locales as necessary.
+tabs.unblockAudio2.tooltip=Αναπαραγωγή καρτέλας;Αναπαραγωγή #1 καρτελών
+
+# LOCALIZATION NOTE (tabs.allowTabFocusByPromptForSite):
+# %S is the hostname of the site where dialogs are allowed to switch tabs
+tabs.allowTabFocusByPromptForSite=Να επιτρέπεται στους διαλόγους από το %S να σάς μεταφέρουν στη δική τους καρτέλα
+
+# LOCALIZATION NOTE (tabs.containers.tooltip):
+# Displayed as a tooltip on container tabs
+# %1$S is the title of the current tab
+# %2$S is the name of the current container
+tabs.containers.tooltip=%1$S — %2$S
+
+# LOCALIZATION NOTE (tabs.openWarningTitle, tabs.openWarningMultipleBranded, tabs.openButtonMultiple, tabs.openWarningPromptMeBranded):
+# These items are moved from chrome/browser/places/places.properties
+# Now they are not specific to bookmark.
+tabs.openWarningTitle=Επιβεβαίωση ανοίγματος
+tabs.openWarningMultipleBranded=Πρόκειται να ανοίξετε %S καρτέλες. Αυτό πιθανόν να επιβραδύνει το %S κατά τη φόρτωση των σελίδων. Θέλετε σίγουρα να συνεχίσετε;
+tabs.openButtonMultiple=Άνοιγμα καρτελών
+tabs.openWarningPromptMeBranded=Προειδοποίηση όταν το άνοιγμα πολλαπλών καρτελών ενδέχεται να επιβραδύνει το %S
+
+browsewithcaret.checkMsg=Να μην εμφανιστεί αυτός ο διάλογος ξανά.
+browsewithcaret.checkWindowTitle=Περιήγηση με κέρσορα
+browsewithcaret.checkLabel=Πατώντας το F7 ενεργοποιείται ή απενεργοποιείται η περιήγηση με κέρσορα. Αυτή η λειτουργία προβάλλει έναν κινούμενο κένσορα στις ιστοσελίδες και σας επιτρέπει να επιλέγετε κείμενο με το πληκτρολόγιο. Θέλετε να ενεργοποιήσετε την περιήγηση με κέρσορα;
diff --git a/l10n-el/browser/chrome/browser/taskbar.properties b/l10n-el/browser/chrome/browser/taskbar.properties
new file mode 100644
index 0000000000..301682beab
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/taskbar.properties
@@ -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/.
+
+taskbar.tasks.newTab.label=Άνοιγμα νέας καρτέλας
+taskbar.tasks.newTab.description=Άνοιγμα νέας καρτέλας περιήγησης.
+taskbar.tasks.newWindow.label=Άνοιγμα νέου παραθύρου
+taskbar.tasks.newWindow.description=Άνοιγμα νέου παραθύρου περιήγησης.
+taskbar.tasks.newPrivateWindow.label=Νέο ιδιωτικό παράθυρο
+taskbar.tasks.newPrivateWindow.description=Άνοιγμα νέου παραθύρου σε λειτουργία ιδιωτικής περιήγησης.
+taskbar.frequent.label=Συχνά
+taskbar.recent.label=Πρόσφατα
diff --git a/l10n-el/browser/chrome/browser/translation.dtd b/l10n-el/browser/chrome/browser/translation.dtd
new file mode 100644
index 0000000000..fedb680d04
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/translation.dtd
@@ -0,0 +1,59 @@
+<!-- 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 (translation.thisPageIsIn.label,
+ - translation.translateThisPage.label):
+ - These 2 strings are used to construct a sentence that contains a dropdown
+ - showing the detected language of the current web page.
+ - In en-US it looks like this:
+ - This page is in [detected language] Translate this page?
+ - "detected language" here is a language name coming from the
+ - global/languageNames.properties file; for some locales it may not be in
+ - the correct grammar case to keep the same structure of the original
+ - sentence. -->
+<!ENTITY translation.thisPageIsIn.label "Η σελίδα αυτή είναι στα">
+<!ENTITY translation.translateThisPage.label "Μετάφραση σελίδας;">
+<!ENTITY translation.translate.button "Μετάφραση">
+<!ENTITY translation.notNow.button "Όχι τώρα">
+
+<!ENTITY translation.translatingContent.label "Μετάφραση του περιεχόμενου της σελίδας…">
+
+<!-- LOCALIZATION NOTE (translation.translatedFrom.label,
+ - translation.translatedTo.label,
+ - translation.translatedToSuffix.label):
+ - These 3 strings are used to construct a sentence that contains 2 dropdowns
+ - showing the source and target language of a translated web page.
+ - In en-US it looks like this:
+ - This page has been translated from [from language] to [to language]
+ - "from language" and "to language" here are language names coming from the
+ - global/languageNames.properties file; for some locales they may not be in
+ - the correct grammar case to keep the same structure of the original
+ - sentence.
+ -
+ - translation.translatedToSuffix.label (empty in en-US) is for locales that
+ - need to display some text after the second drop down for the sentence to
+ - be grammatically correct. -->
+<!ENTITY translation.translatedFrom.label "Η σελίδα έχει μεταφραστεί από τα">
+<!ENTITY translation.translatedTo.label "στα">
+<!ENTITY translation.translatedToSuffix.label "">
+
+<!ENTITY translation.showOriginal.button "Εμφάνιση πρωτοτύπου">
+<!ENTITY translation.showTranslation.button "Εμφάνιση μετάφρασης">
+
+<!ENTITY translation.errorTranslating.label "Προέκυψε σφάλμα κατά τη μετάφραση της σελίδας.">
+<!ENTITY translation.tryAgain.button "Δοκιμή ξανά">
+
+<!ENTITY translation.serviceUnavailable.label "Η μετάφραση δεν είναι διαθέσιμη προς το παρόν. Παρακαλώ δοκιμάστε ξανά αργότερα.">
+
+<!ENTITY translation.options.menu "Επιλογές">
+<!-- LOCALIZATION NOTE (translation.options.neverForSite.accesskey,
+ - translation.options.preferences.accesskey):
+ - The accesskey values used here should not clash with the value used for
+ - translation.options.neverForLanguage.accesskey in translation.properties
+ -->
+<!ENTITY translation.options.neverForSite.label "Να μην γίνεται ποτέ μετάφραση αυτής της ιστοσελίδας">
+<!ENTITY translation.options.neverForSite.accesskey "π">
+<!ENTITY translation.options.preferences.label "Προτιμήσεις μετάφρασης">
+<!ENTITY translation.options.preferences.accesskey "μ">
+
diff --git a/l10n-el/browser/chrome/browser/translation.properties b/l10n-el/browser/chrome/browser/translation.properties
new file mode 100644
index 0000000000..aa50500b8f
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/translation.properties
@@ -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/.
+
+# LOCALIZATION NOTE (translation.options.neverForLanguage.label):
+# %S is a language name coming from the global/languageNames.properties file.
+translation.options.neverForLanguage.label=Ποτέ να μην γίνεται μετάφραση της γλώσσας %S
+
+# LOCALIZATION NOTE (translation.options.neverForLanguage.accesskey):
+# The accesskey value used here should not clash with the values used for
+# translation.options.*.accesskey in translation.dtd
+translation.options.neverForLanguage.accesskey=Π
diff --git a/l10n-el/browser/chrome/browser/uiDensity.properties b/l10n-el/browser/chrome/browser/uiDensity.properties
new file mode 100644
index 0000000000..953d136fa8
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/uiDensity.properties
@@ -0,0 +1,5 @@
+# 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/.
+
+uiDensity.menuitem-touch.acceltext=Λειτουργία tablet ενεργοποιημένη
diff --git a/l10n-el/browser/chrome/browser/webrtcIndicator.properties b/l10n-el/browser/chrome/browser/webrtcIndicator.properties
new file mode 100644
index 0000000000..4378d56e74
--- /dev/null
+++ b/l10n-el/browser/chrome/browser/webrtcIndicator.properties
@@ -0,0 +1,61 @@
+# 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 : FILE This file contains the webrtc global indicator strings
+
+# LOCALIZATION NOTE (webrtcIndicator.windowtitle): %S is the brand name (e.g. Firefox).
+# This string is used so that the window has a title in tools that enumerate/look for window
+# titles. It is not normally visible anywhere.
+webrtcIndicator.windowtitle = %S - Ένδειξη κοινής χρήσης
+
+webrtcIndicator.sharingCameraAndMicrophone.tooltip = Η κάμερα και το μικρόφωνό σας είναι κοινόχρηστα. Κάντε κλικ για έλεγχο κοινής χρήσης.
+webrtcIndicator.sharingCamera.tooltip = Η κάμερά σας είναι κοινόχρηστη. Κάντε κλικ για έλεγχο κοινής χρήσης.
+webrtcIndicator.sharingMicrophone.tooltip = Το μικρόφωνό σας είναι κοινόχρηστο. Κάντε κλικ για έλεγχο κοινής χρήσης.
+webrtcIndicator.sharingApplication.tooltip = Μια εφαρμογή είναι κοινόχρηστη. Κάντε κλικ για έλεγχο κοινής χρήσης.
+webrtcIndicator.sharingScreen.tooltip = Η οθόνη σας είναι κοινόχρηστη. Κάντε κλικ για έλεγχο κοινής χρήσης.
+webrtcIndicator.sharingWindow.tooltip = Ένα παράθυρο είναι κοινόχρηστο. Κάντε κλικ για έλεγχο κοινής χρήσης.
+webrtcIndicator.sharingBrowser.tooltip = Μια καρτέλα είναι κοινόχρηστη. Κάντε κλικ για έλεγχο κοινής χρήσης.
+
+
+# LOCALIZATION NOTE : The following strings are only used on Mac for
+# menus attached to icons near the clock on the mac menubar.
+
+# LOCALIZATION NOTE (webrtcIndicator.sharing*With.menuitem):
+# %S is the title of the tab using the share.
+webrtcIndicator.sharingCameraWith.menuitem = Κοινή χρήση κάμερας με “%S”
+webrtcIndicator.sharingMicrophoneWith.menuitem = Κοινή χρήση μικροφώνου με “%S”
+webrtcIndicator.sharingApplicationWith.menuitem = Κοινή χρήση εφαρμογής με “%S”
+webrtcIndicator.sharingScreenWith.menuitem = Κοινή χρήση οθόνης με “%S”
+webrtcIndicator.sharingWindowWith.menuitem = Κοινή χρήση παραθύρου με “%S”
+webrtcIndicator.sharingBrowserWith.menuitem = Κοινή χρήση καρτέλας με “%S”
+webrtcIndicator.controlSharing.menuitem = Έλεγχος κοινής χρήσης
+# LOCALIZATION NOTE (webrtcIndicator.sharingCameraWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+webrtcIndicator.sharingCameraWithNTabs.menuitem = Κοινή χρήση κάμερας με #1 καρτέλα;Κοινή χρήση κάμερας με #1 καρτέλες
+# LOCALIZATION NOTE (webrtcIndicator.sharingMicrophoneWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+webrtcIndicator.sharingMicrophoneWithNTabs.menuitem = Κοινή χρήση μικροφώνου με #1 καρτέλα;Κοινή χρήση μικροφώνου με #1 καρτέλες
+# LOCALIZATION NOTE (webrtcIndicator.sharingApplicationWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+webrtcIndicator.sharingApplicationWithNTabs.menuitem = Κοινή χρήση εφαρμογής με #1 καρτέλα;Κοινή χρήση εφαρμογών με #1 καρτέλες
+# LOCALIZATION NOTE (webrtcIndicator.sharingScreenWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+webrtcIndicator.sharingScreenWithNTabs.menuitem = Κοινή χρήση οθόνης με #1 καρτέλα;Κοινή χρήση οθόνης με #1 καρτέλες
+# LOCALIZATION NOTE (webrtcIndicator.sharingWindowWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+webrtcIndicator.sharingWindowWithNTabs.menuitem = Κοινή χρήση παραθύρου με #1 καρτέλα;Κοινή χρήση παραθύρων με #1 καρτέλες
+# LOCALIZATION NOTE (webrtcIndicator.sharingBrowserWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This message is shown when the contents of a tab is shared during a WebRTC
+# session, which currently is only possible with Loop/Hello.
+webrtcIndicator.sharingBrowserWithNTabs.menuitem = Κοινή χρήση καρτέλας με #1 καρτέλα;Κοινή χρήση καρτελών με #1 καρτέλες
+# LOCALIZATION NOTE (webrtcIndicator.controlSharingOn.menuitem):
+# %S is the title of the tab using the share.
+webrtcIndicator.controlSharingOn.menuitem = Έλεγχος κοινής χρήσης για “%S”
diff --git a/l10n-el/browser/chrome/overrides/appstrings.properties b/l10n-el/browser/chrome/overrides/appstrings.properties
new file mode 100644
index 0000000000..2cfc506bb2
--- /dev/null
+++ b/l10n-el/browser/chrome/overrides/appstrings.properties
@@ -0,0 +1,45 @@
+# 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/.
+
+malformedURI2=Παρακαλώ ελέγξτε αν το URL είναι σωστό και δοκιμάστε ξανά.
+fileNotFound=Το αρχείο %S δεν βρέθηκε. Ελέγξτε τη διαδρομή και προσπαθήστε ξανά.
+fileAccessDenied=Το αρχείο στο %S δεν είναι αναγνώσιμο.
+dnsNotFound2=Δεν μπορούμε να συνδεθούμε στο διακομιστή στο %S.
+unknownProtocolFound=Το Firefox δεν γνωρίζει πώς να ανοίξει αυτή τη διεύθυνση, επειδή ένα από τα ακόλουθα πρωτόκολλα (%S) δεν έχει συσχετιστεί με κανένα πρόγραμμα ή δεν επιτρέπεται σε αυτό το περιεχόμενο.
+connectionFailure=Υπήρξε πρόβλημα σύνδεσης στην προσπάθεια επικοινωνίας με %S.
+netInterrupt=Η σύνδεση στο %S τερματίστηκε απρόσμενα. Μερικά από τα δεδομένα μπορεί να μην έχουν μεταφερθεί.
+netTimeout=Λήξη προθεσμίας ενέργειας κατά την προσπάθεια σύνδεσης σε %S.
+redirectLoop=Υπέρβαση του ορίου ανακατεύθυνσης για αυτό το URL. Η φόρτωση διακόπηκε.
+## LOCALIZATION NOTE (confirmRepostPrompt): In this item, don’t translate "%S"
+confirmRepostPrompt=Για να εμφανιστεί αυτή η σελίδα, ο %S θα επαναλάβει οποιαδήποτε προηγούμενη ενέργεια (π.χ. αναζήτηση ή αγορά).
+resendButton.label=Αποστολή ξανά
+unknownSocketType=Δεν είναι η δυνατή η προβολή αυτού του εγγράφου μέχρι να εγκαταστήσετε τη Διαχείριση Προσωπικής ασφάλειας (PSM). Βρείτε και εγκαταστήστε τον PSM και προσπαθήστε ξανά, ή επικοινωνήστε με το διαχειριστή του συστήματος σας.
+netReset=Το έγγραφο δεν περιέχει δεδομένα.
+notCached=Αυτό το έγγραφο δεν είναι πια διαθέσιμο.
+netOffline=Το έγγραφο δε μπορεί να προβληθεί χωρίς σύνδεση.
+isprinting=Το έγγραφο δεν μπορεί να αλλαχθεί κατά την εκτύπωση ή την προεπισκόπηση εκτύπωσης
+deniedPortAccess=Η πρόσβαση στον καθορισμένο αριθμό θύρας έχει απενεργοποιηθεί για λόγους ασφάλειας.
+proxyResolveFailure=Ο διαμεσολαβητής που ρυθμίσατε δεν βρέθηκε. Ελέγξτε τις ρυθμίσεις του διαμεσολαβητή και προσπαθήστε ξανά.
+proxyConnectFailure=Άρνηση σύνδεσης κατά την προσπάθεια επικοινωνίας με το διαμεσολαβητή που ρυθμίσατε. Ελέγξτε τις ρυθμίσεις του διαμεσολαβητή και προσπαθήστε ξανά.
+contentEncodingError=Η σελίδα που προσπαθείτε να δείτε δεν μπορεί να εμφανιστεί επειδή χρησιμοποιεί μια μη έγκυρη ή μη υποστηριζόμενη μορφή συμπίεσης. Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους πληροφορήσετε για το πρόβλημα.
+unsafeContentType=Δεν είναι δυνατή η εμφάνιση αυτής της σελίδας επειδή εμπεριέχεται σε ένα τύπο αρχείου ο οποίος δεν είναι ασφαλής. Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε για το πρόβλημα.
+externalProtocolTitle=Αίτηση εξωτερικού πρωτοκόλλου
+externalProtocolPrompt=Πρέπει να εκκινηθεί μια εξωτερική εφαρμογή για το χειρισμό συνδέσμων %1$S.\n\n\nΑιτούμενος σύνδεσμος:\n\n%2$S\n\nΕφαρμογή: %3$S\n\n\nΑν δεν αναμένατε αυτό το αίτημα, ενδέχεται να είναι απόπειρα εκμετάλλευσης ενός κενού ασφαλείας στο άλλο πρόγραμμα. Ακυρώστε αυτό το αίτημα, εκτός κι αν είστε σίγουροι ότι δεν είναι κακόβουλο.\n
+#LOCALIZATION NOTE (externalProtocolUnknown): The following string is shown if the application name can't be determined
+externalProtocolUnknown=<Άγνωστο>
+externalProtocolChkMsg=Απομνημόνευση επιλογής για όλους τους συνδέσμους αυτού του τύπου.
+externalProtocolLaunchBtn=Εκκίνηση εφαρμογής
+malwareBlocked=Η ιστοσελίδα στο %S έχει αναφερθεί ως σελίδα κακόβουλων επιθέσεων και έχει αποκλειστεί βάσει των προτιμήσεων ασφαλείας σας.
+harmfulBlocked=Η ιστοσελίδα στο %S έχει αναφερθεί ως πιθανώς επιβλαβής και έχει αποκλειστεί βάσει των προτιμήσεων ασφαλείας σας.
+unwantedBlocked=Η ιστοσελίδα στο %S έχει αναφερθεί για την παροχή ανεπιθύμητου λογισμικού και έχει αποκλειστεί βάσει των προτιμήσεων ασφαλείας σας.
+deceptiveBlocked=Αυτή η ιστοσελίδα στο %S έχει αναφερθεί ως παραπλανητική ιστοσελίδα και έχει αποκλειστεί βάσει των προτιμήσεων ασφαλείας σας.
+cspBlocked=Αυτή η σελίδα έχει πολιτική ασφαλείας περιεχομένου που εμποδίζει τη φόρτωσή του με αυτό τον τρόπο.
+xfoBlocked=Αυτή η σελίδα έχει πολιτική X-Frame-Options που εμποδίζει τη φόρτωσή της σε αυτό το πλαίσιο.
+corruptedContentErrorv2=Η ιστοσελίδα στο %S έχει υποστεί παραβίαση πρωτοκόλλου δικτύου που δεν μπορεί να διορθωθεί.
+remoteXUL=Αυτή η σελίδα χρησιμοποιεί μια μη υποστηριζόμενη τεχνολογία που δεν είναι πια διαθέσιμη στον Firefox.
+## LOCALIZATION NOTE (sslv3Used) - Do not translate "%S".
+sslv3Used=Το Firefox δεν μπορεί να εγγυηθεί την ασφάλεια των δεδομένων σας στο %S, επειδή χρησιμοποιεί SSLv3, ένα χαλασμένο πρωτόκολλο ασφαλείας.
+inadequateSecurityError=Η ιστοσελίδα προσπάθησε να διαπραγματευτεί ένα ανεπαρκές επίπεδο ασφαλείας.
+blockedByPolicy=Ο οργανισμός σας έχει αποκλείσει την πρόσβαση σε αυτήν τη σελίδα ή την ιστοσελίδα.
+networkProtocolError=Το Firefox αντιμετώπισε μια παραβίαση πρωτοκόλλου δικτύου που δεν μπορεί να επιδιορθωθεί.
diff --git a/l10n-el/browser/chrome/overrides/netError.dtd b/l10n-el/browser/chrome/overrides/netError.dtd
new file mode 100644
index 0000000000..f09947d7d6
--- /dev/null
+++ b/l10n-el/browser/chrome/overrides/netError.dtd
@@ -0,0 +1,208 @@
+<!-- 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 % brandDTD SYSTEM "chrome://branding/locale/brand.dtd">
+%brandDTD;
+
+<!ENTITY loadError.label "Πρόβλημα φόρτωσης σελίδας">
+<!ENTITY retry.label "Δοκιμή ξανά">
+<!ENTITY returnToPreviousPage.label "Επιστροφή">
+<!ENTITY returnToPreviousPage1.label "Επιστροφή (Προτείνεται)">
+<!ENTITY advanced2.label "Για προχωρημένους…">
+<!ENTITY viewCertificate.label "Προβολή πιστοποιητικού">
+
+<!-- Specific error messages -->
+
+<!ENTITY connectionFailure.longDesc "&sharedLongDesc;">
+
+<!ENTITY deniedPortAccess.longDesc "">
+
+<!ENTITY dnsNotFound.pageTitle "Δε βρέθηκε ο διακομιστής">
+<!ENTITY dnsNotFound.longDesc1 "
+<strong>Αν η διεύθυνση είναι σωστή, ορίστε τρία ακόμη πράγματα που μπορείτε να δοκιμάσετε:</strong>
+<ul>
+ <li>Προσπαθήστε ξανά αργότερα.</li>
+ <li>Ελέγξτε τη σύνδεση δικτύου σας.</li>
+ <li>Αν έχετε συνδεθεί, αλλά υπό την εποπτεία ενός τείχους προστασίας, ελέγξτε αν το &brandShortName; έχει άδεια για πρόσβαση στο διαδίκτυο.</li>
+</ul>
+">
+
+<!ENTITY fileNotFound.longDesc "
+<ul>
+ <li>Ελέγξτε το όνομα του αρχείου για εσφαλμένα κεφαλαία ή άλλα ορθογραφικά λάθη.</li>
+ <li>Ελέγξτε αν το αρχείο έχει μετακινηθεί, μετονομαστεί ή διαγραφεί.</li>
+</ul>
+">
+
+<!ENTITY fileAccessDenied.longDesc "
+<ul>
+ <li>Ενδέχεται να έχει διαγραφεί, μετακινηθεί, ή να μην επιτρέπεται η πρόσβαση λόγω των δικαιωμάτων του αρχείου.</li>
+</ul>
+">
+
+<!ENTITY generic.longDesc "
+<p>Για κάποιο λόγο, το &brandShortName; δεν μπορεί να φορτώσει αυτή τη σελίδα.</p>
+">
+
+<!ENTITY captivePortal.title "Σύνδεση στο δίκτυο">
+<!ENTITY captivePortal.longDesc2 "
+<p>Πρέπει να συνδεθείτε σε αυτό το δίκτυο πριν μπορέσετε να αποκτήσετε πρόσβαση στο διαδίκτυο.</p>
+">
+
+<!ENTITY openPortalLoginPage.label2 "Άνοιγμα σελίδας σύνδεσης δικτύου">
+
+<!ENTITY malformedURI.pageTitle "Μη έγκυρο URL">
+
+<!ENTITY netInterrupt.longDesc "&sharedLongDesc;">
+
+<!ENTITY notCached.longDesc "<p>Το ζητούμενο έγγραφο δεν είναι διαθέσιμο στην προσωρινή μνήμη του &brandShortName;.</p><ul><li>Ως μέτρο ασφαλείας, το &brandShortName; δεν ζητά εκ νέου τα ευαίσθητα έγγραφα.</li><li>Κάντε κλικ στο Δοκιμή ξανά για να εκ νέου αίτηση του εγγράφου από την ιστοσελίδα.</li></ul>">
+
+<!ENTITY netOffline.longDesc2 "
+<ul>
+ <li>Πατήστε το &quot;Δοκιμή ξανά&quot; για εναλλαγή σε λειτουργία εντός σύνδεσης και εκ νέου φόρτωση της σελίδας.</li>
+</ul>
+">
+
+<!ENTITY contentEncodingError.longDesc "
+<ul>
+ <li>Παρακαλώ επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε σχετικά με αυτό το πρόβλημα.</li>
+</ul>
+">
+
+<!ENTITY unsafeContentType.longDesc "
+<ul>
+ <li>Παρακαλώ επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε σχετικά με αυτό το πρόβλημα.</li>
+</ul>
+">
+
+<!ENTITY netReset.longDesc "&sharedLongDesc;">
+
+<!ENTITY netTimeout.longDesc "&sharedLongDesc;">
+
+<!ENTITY unknownProtocolFound.longDesc "
+<ul>
+ <li>Ίσως να χρειάζεται να εγκαταστήσετε κάποιο άλλο λογισμικό για το άνοιγμα αυτής της διεύθυνσης.</li>
+</ul>
+">
+
+<!ENTITY proxyConnectFailure.longDesc "
+<ul>
+ <li>Ελέγξτε αν είναι σωστές οι ρυθμίσεις του διαμεσολαβητή.</li>
+ <li>Επικοινωνήστε με το διαχειριστή του συστήματος σας για να βεβαιωθείτε ότι ο διαμεσολαβητής
+λειτουργεί.</li>
+</ul>
+">
+
+<!ENTITY proxyResolveFailure.longDesc "
+<ul>
+ <li>>Ελέγξτε αν είναι σωστές οι ρυθμίσεις του διαμεσολαβητή.</li>
+ <li>Βεβαιωθείτε ότι είναι ενεργή η σύνδεση σας στο δίκτυο.</li>
+ <li>Αν ο υπολογιστής σας ή το δίκτυο σας προστατεύεται από ένα firewall ή χρησιμοποιεί ένα διαμεσολαβητή (proxy), βεβαιωθείτε ότι
+ επιτρέπεται στο &brandShortName; να έχει πρόσβαση στο διαδίκτυο.</li>
+</ul>
+">
+
+<!ENTITY redirectLoop.longDesc "
+<ul>
+ <li>Αυτό το πρόβλημα μπορεί να προέρχεται από την απενεργοποίηση ή την άρνηση αποδοχής των
+ cookies.</li>
+</ul>
+">
+
+<!ENTITY unknownSocketType.longDesc "
+<ul>
+ <li>Βεβαιωθείτε ότι έχετε εγκατεστημένο τον Personal Security
+ Manager.</li>
+ <li>Αυτό μπορεί να προέρχεται από μια μη-τυπική ρύθμιση του εξυπηρετητή.</li>
+</ul>
+">
+
+<!ENTITY nssFailure2.longDesc2 "
+<ul>
+ <li>Η σελίδα που προσπαθείτε να δείτε δεν μπορεί να εμφανιστεί επειδή δεν είναι δυνατή η πιστοποίηση της αυθεντικότητας των ληφθέντων δεδομένων.</li>
+ <li>Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους πληροφορήσετε για το πρόβλημα.</li>
+</ul>
+">
+
+<!-- Localization note (certerror.introPara2) - The text content of the span tag
+will be replaced at runtime with the name of the server to which the user
+was trying to connect. -->
+<!ENTITY certerror.introPara2 "Το &brandShortName; ανίχνευσε μια πιθανή απειλή ασφαλείας και δεν συνέχισε στο <span class='hostname'/>. Αν επισκεφθείτε αυτή την ιστοσελίδα, οι επιτιθέμενοι ίσως προσπαθήσουν να υποκλέψουν πληροφορίες, όπως κωδικούς πρόσβασης, emails ή λεπτομέρειες πιστωτικής κάρτας.">
+<!ENTITY certerror.sts.introPara "Το &brandShortName; ανίχνευσε μια πιθανή απειλή ασφαλείας και δεν συνέχισε στο <span class='hostname'/>, επειδή αυτή η ιστοσελίδα απαιτεί μια ασφαλή σύνδεση.">
+
+<!ENTITY certerror.expiredCert.introPara "Το &brandShortName; ανίχνευσε ένα ζήτημα και δεν συνέχισε στο <span class='hostname'/>. Είτε η ιστοσελίδα έχει ρυθμιστεί με λάθος τρόπο είτε το ρολόι του υπολογιστή σας έχει οριστεί σε λάθος ώρα.">
+<!ENTITY certerror.expiredCert.secondPara2 "Το πιστοποιητικό της ιστοσελίδας έχει πιθανώς λήξει, εμποδίζοντας την ασφαλή σύνδεση του &brandShortName;. Αν επισκεφθείτε αυτή την ιστοσελίδα, οι επιτιθέμενοι ενδέχεται να αποπειραθούν να υποκλέψουν πληροφορίες, όπως τους κωδικούς πρόσβασης, τα emails ή τις λεπτομέρειες των πιστωτικών καρτών σας.">
+<!ENTITY certerror.expiredCert.sts.secondPara "Το πιστοποιητικό της ιστοσελίδας έχει πιθανώς λήξει, εμποδίζοντας την ασφαλή σύνδεση του &brandShortName;.">
+
+<!ENTITY certerror.whatCanYouDoAboutItTitle "Τι μπορείτε να κάνετε γι' αυτό;">
+
+<!ENTITY certerror.unknownIssuer.whatCanYouDoAboutIt "
+<p>Το ζήτημα οφείλεται κατά πάσα πιθανότητα στην ιστοσελίδα και δεν μπορείτε να κάνετε τίποτα για να το διορθώσετε.</p>
+<p>Αν είστε σε εταιρικό δίκτυο ή χρησιμοποιείτε λογισμικό anti-virus, μπορείτε να απευθυνθείτε στις ομάδες υποστήριξης για βοήθεια. Μπορείτε επίσης να ειδοποιήσετε το διαχειριστή της ιστοσελίδας για το πρόβλημα.</p>
+">
+
+<!ENTITY certerror.expiredCert.whatCanYouDoAboutIt2 "
+<p>Το ρολόι του υπολογιστή σας έχει οριστεί σε <span id='wrongSystemTime_systemDate2'/>. Βεβαιωθείτε ότι ο υπολογιστής σας έχει ρυθμιστεί στη σωστή ώρα, ημερομηνία και ζώνη ώρας στις ρυθμίσεις συστήματος και, έπειτα, κάντε ανανέωση του <span class='hostname'/>.</p>
+<p>Αν το ρολόι έχει ήδη οριστεί στη σωστή ώρα, η ιστοσελίδα έχει πιθανότατα ρυθμιστεί εσφαλμένα και δεν μπορείτε να κάνετε τίποτα για να επιλύσετε το ζήτημα. Μπορείτε να ειδοποιήσετε το διαχειριστή της ιστοσελίδας σχετικά με το πρόβλημα.</p>
+">
+
+<!ENTITY certerror.badCertDomain.whatCanYouDoAboutIt "
+<p>Το ζήτημα οφείλεται κατά πάσα πιθανότητα στην ιστοσελίδα και δεν μπορείτε να κάνετε τίποτα για να το διορθώσετε. Μπορείτε να ειδοποιήσετε το διαχειριστή της ιστοσελίδας για το πρόβλημα.</p>
+">
+
+<!ENTITY sharedLongDesc "
+<ul>
+ <li>Η σελίδα μπορεί να είναι προσωρινά μη διαθέσιμη ή πολύ απασχολημένη. Προσπαθήστε ξανά
+ σε λίγο.</li>
+ <li>Αν δεν μπορείτε να φορτώσετε καμία σελίδα ελέγξτε τη σύνδεση του υπολογιστή σας
+στο δίκτυο.</li>
+ <li>Αν ο υπολογιστής σας ή το δίκτυο σας προστατεύεται από ένα firewall ή ένα διαμεσολαβητή, βεβαιωθείτε ότι
+ επιτρέπεται στο &brandShortName; να έχει πρόσβαση στον ιστό.</li>
+</ul>
+">
+
+<!ENTITY cspBlocked.longDesc "<p>Το &brandShortName; εμπόδισε τη φόρτωση της σελίδας με αυτό τον τρόπο, επειδή η σελίδα έχει μια πολιτική προστασίας περιεχομένου που δεν το επιτρέπει.</p>">
+
+<!ENTITY xfoBlocked.longDesc "<p>Το &brandShortName; εμπόδισε τη φόρτωση της σελίδας, επειδή η σελίδα έχει μια πολιτική X-Frame-Options που δεν το επιτρέπει.</p>">
+
+<!ENTITY corruptedContentErrorv2.longDesc "<p>Η σελίδα που προσπαθείτε να προβάλετε δεν μπορεί να εμφανιστεί, λόγω σφάλματος στην μετάδοση των δεδομένων.</p><ul><li>Ενημερώστε τους ιδιοκτήτες της ιστοσελίδας για αυτό το πρόβλημα.</li></ul>">
+
+<!ENTITY securityOverride.exceptionButton1Label "Αποδοχή ρίσκου και συνέχεια">
+
+<!ENTITY errorReporting.automatic2 "Αναφέρετε σφάλματα όπως αυτό για να βοηθήσετε τη Mozilla στον εντοπισμό και αποκλεισμό κακόβουλων ιστοσελίδων">
+<!ENTITY errorReporting.learnMore "Μάθετε περισσότερα…">
+
+<!ENTITY remoteXUL.longDesc "<p><ul><li>Παρακαλούμε επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε για αυτό το πρόβλημα.</li></ul></p>">
+
+<!-- LOCALIZATION NOTE (sslv3Used.longDesc2) - Do not translate
+ "SSL_ERROR_UNSUPPORTED_VERSION". -->
+<!ENTITY sslv3Used.longDesc2 "Πληροφορίες για προχωρημένους: SSL_ERROR_UNSUPPORTED_VERSION">
+
+<!ENTITY certerror.pagetitle2 "Προειδοποίηση: Πιθανός κίνδυνος ασφαλείας">
+<!ENTITY certerror.sts.pagetitle "Δεν έγινε σύνδεση: Πιθανό ζήτημα ασφαλείας">
+<!ENTITY certerror.whatShouldIDo.badStsCertExplanation1 "Το <span class='hostname'></span> έχει μια πολιτική ασφαλείας, που ονομάζεται HTTP Strict Transport Security (HSTS) και σημαίνει ότι το &brandShortName; μπορεί να συνδεθεί μόνο με ασφαλή τρόπο. Δεν μπορείτε να προσθέσετε μια εξαίρεση για να επισκεφθείτε αυτή την ιστοσελίδα.">
+<!ENTITY certerror.copyToClipboard.label "Αντιγραφή κειμένου στο πρόχειρο">
+
+<!-- LOCALIZATION NOTE (inadequateSecurityError.longDesc) - Do not translate
+ "NS_ERROR_NET_INADEQUATE_SECURITY". -->
+<!ENTITY inadequateSecurityError.longDesc "Το <p><span class='hostname'></span> χρησιμοποιεί παρωχημένη και ευάλωτη σε επίθεση τεχνολογία ασφάλειας. Ένας εισβολέας θα μπορούσε εύκολα να αποκαλύψει πληροφορίες που θεωρείτε ασφαλείς. Ο διαχειριστής του ιστότοπου θα πρέπει να τον διορθώσει προτού μπορέσετε να τον επισκεφθείτε.</p><p>Κωδικός σφάλματος: NS_ERROR_NET_INADEQUATE_SECURITY</p>">
+
+<!ENTITY blockedByPolicy.title "Αποκλεισμένη σελίδα">
+
+<!ENTITY certerror.mitm.longDesc "Το <span class='hostname'></span> είναι πιθανώς μια ασφαλής ιστοσελίδα, αλλά δεν ήταν δυνατή η δημιουργία ασφαλούς σύνδεσης. Αυτό το ζήτημα προκαλείται από το <span class='mitm-name'/>, που είναι λογισμικό είτε στον υπολογιστή σας είτε στο δίκτυό σας.">
+<!ENTITY certerror.mitm.whatCanYouDoAboutIt1 "Αν το λογισμικό προστασίας σας από ιούς περιλαμβάνει μια λειτουργία που σαρώνει κρυπτογραφημένες συνδέσεις (συχνά, ονομάζεται “σάρωση web” ή “σάρωση https”), μπορείτε να απενεργοποιήσετε αυτή τη λειτουργία. Αν αυτό δεν λειτουργεί, μπορείτε να καταργήσετε και να εγκαταστήσετε εκ νέου το λογισμικό προστασίας από ιούς.">
+<!ENTITY certerror.mitm.whatCanYouDoAboutIt2 "Αν είστε σε ένα εταιρικό δίκτυο, μπορείτε να επικοινωνήσετε με το τμήμα πληροφορικής σας.">
+<!ENTITY certerror.mitm.whatCanYouDoAboutIt3 "Αν δεν είστε εξοικειωμένοι με το <span class='mitm-name'/>, τότε ίσως πρόκειται για επίθεση και δεν θα πρέπει να συνεχίσετε στην ιστοσελίδα.">
+<!ENTITY certerror.mitm.sts.whatCanYouDoAboutIt3 "Αν δεν είστε εξοικειωμένοι με το <span class='mitm-name'/>, τότε ίσως πρόκειται για επίθεση και δεν μπορείτε να κάνετε τίποτα για να προσπελάσετε την ιστοσελίδα.">
+
+<!ENTITY clockSkewError.longDesc "Ο υπολογιστής σας νομίζει ότι είναι <span id='wrongSystemTime_systemDate1'/>, εμποδίζοντας την ασφαλή σύνδεση του &brandShortName;. Για να επισκεφθείτε το <span class='hostname'></span>, ενημερώστε το ρολόι του υπολογιστή στην τρέχουσα ημερομηνία, ώρα και ζώνη ώρας από τις ρυθμίσεις συστήματος και, έπειτα, κάντε ανανέωση του <span class='hostname'></span>.">
+
+<!ENTITY prefReset.longDesc "Μοιάζει να προκαλείται από τις ρυθμίσεις ασφαλείας του δικτύου σας. Θέλετε να αποκατασταθούν οι προεπιλεγμένες ρυθμίσεις;">
+<!ENTITY prefReset.label "Επαναφορά προεπιλεγμένων ρυθμίσεων">
+
+<!ENTITY enableTls10.longDesc "Αυτή η ιστοσελίδα ενδέχεται να μην υποστηρίζει το πρωτόκολλο TLS 1.2, το οποίο είναι η παλαιότερη έκδοση που υποστηρίζεται από το &brandShortName;. Η ενεργοποίηση του TLS 1.0 και του TLS 1.1 ίσως επιτρέψει αυτή τη σύνδεση.">
+<!ENTITY enableTls10.note "Τα TLS 1.0 και TLS 1.1 θα απενεργοποιηθούν οριστικά σε μια μελλοντική έκδοση.">
+<!ENTITY enableTls10.label "Ενεργοποίηση TLS 1.0 και 1.1">
+
+<!ENTITY networkProtocolError.longDesc "<p>Δεν είναι δυνατή η εμφάνιση αυτής της σελίδας επειδή υπήρξε ένα σφάλμα στο πρωτόκολλο δικτύου.</p><ul><li>Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε για το πρόβλημα.</li></ul>">
diff --git a/l10n-el/browser/chrome/overrides/settingsChange.dtd b/l10n-el/browser/chrome/overrides/settingsChange.dtd
new file mode 100644
index 0000000000..7f7dd41b70
--- /dev/null
+++ b/l10n-el/browser/chrome/overrides/settingsChange.dtd
@@ -0,0 +1,7 @@
+<!-- -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -->
+<!-- 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 settingsChangePreferences.label 'Μπορείτε να αλλάξετε τις ρυθμίσεις μέσω της καρτέλας "Εφαρμογές" στις Προτιμήσεις &brandShortName;.'>
+<!ENTITY settingsChangeOptions.label 'Μπορείτε να αλλάξετε τις ρυθμίσεις μέσω της καρτέλας "Εφαρμογές" στις Επιλογές &brandShortName;.'>
diff --git a/l10n-el/browser/crashreporter/crashreporter-override.ini b/l10n-el/browser/crashreporter/crashreporter-override.ini
new file mode 100644
index 0000000000..0a8930b8f5
--- /dev/null
+++ b/l10n-el/browser/crashreporter/crashreporter-override.ini
@@ -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/.
+
+# This file is in the UTF-8 encoding
+[Strings]
+# LOCALIZATION NOTE (CrashReporterProductErrorText2): The %s is replaced with a string containing detailed information.
+CrashReporterProductErrorText2=Το Firefox αντιμετώπισε ένα πρόβλημα και κατέρρευσε. Θα προσπαθήσουμε να ανακτήσουμε τις καρτέλες και τα παράθυρά σας όταν επανεκκινηθεί.\n\nΔυστυχώς, η εφαρμογή αναφοράς καταρρεύσεων δεν μπόρεσε να υποβάλλει μια αναφορά κατάρρευσης.\n\nΛεπτομέρειες: %s
+CrashReporterDescriptionText2=Το Firefox αντιμετώπισε ένα πρόβλημα και κατέρρευσε. Θα προσπαθήσουμε να ανακτήσουμε τις καρτέλες και τα παράθυρά σας όταν επανεκκινηθεί.\n\nΓια να μάς βοηθήσετε να διαγνώσουμε και να διορθώσουμε το πρόβλημα, μπορείτε να μάς στείλετε μια αναφορά κατάρρευσης.
diff --git a/l10n-el/browser/defaultagent/defaultagent_localized.ini b/l10n-el/browser/defaultagent/defaultagent_localized.ini
new file mode 100644
index 0000000000..427f2e8bf9
--- /dev/null
+++ b/l10n-el/browser/defaultagent/defaultagent_localized.ini
@@ -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/.
+
+# This file is in the UTF-8 encoding
+[Strings]
+DefaultBrowserAgentTaskDescription=Η διεργασία “Default Browser Agent” ελέγχει πότε αλλάζει η προεπιλογή από %MOZ_APP_DISPLAYNAME% σε άλλο πρόγραμμα περιήγησης. Αν η αλλαγή συμβεί κάτω από ύποπτες συνθήκες, οι χρήστες θα ειδοποιηθούν ώστε να επαναφέρουν την επιλογή στο %MOZ_APP_DISPLAYNAME% το πολύ δύο φορές. Αυτή η διεργασία εγκαθίσταται αυτόματα από το %MOZ_APP_DISPLAYNAME% και εγκαθίσταται εκ νέου όταν ενημερώνεται το %MOZ_APP_DISPLAYNAME%. Για να απενεργοποιήσετε αυτή τη διεργασία, ενημερώστε την προτίμηση “default-browser-agent.enabled” στη σελίδα about:config ή τη ρύθμιση πολιτικής “DisableDefaultBrowserAgent” στο %MOZ_APP_DISPLAYNAME% για επιχειρήσεις.
+
+DefaultBrowserNotificationTitle=Ορισμός του %MOZ_APP_DISPLAYNAME% ως προεπιλεγμένου προγράμματος περιήγησης
+DefaultBrowserNotificationText=Το %MOZ_APP_DISPLAYNAME% δεν είναι πλέον το προεπιλεγμένο πρόγραμμα περιήγησής σας. Θέλετε να οριστεί ως προεπιλογή;
+DefaultBrowserNotificationYesButtonText=Ναι
+DefaultBrowserNotificationNoButtonText=Όχι
diff --git a/l10n-el/browser/defines.inc b/l10n-el/browser/defines.inc
new file mode 100644
index 0000000000..d877e283b4
--- /dev/null
+++ b/l10n-el/browser/defines.inc
@@ -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/.
+#filter emptyLines
+
+#define MOZ_LANGPACK_CREATOR Kostas Papadimas
+
+# If non-English locales wish to credit multiple contributors, uncomment this
+# variable definition and use the format specified.
+#define MOZ_LANGPACK_CONTRIBUTORS
+
+#unfilter emptyLines
diff --git a/l10n-el/browser/extensions/formautofill/formautofill.properties b/l10n-el/browser/extensions/formautofill/formautofill.properties
new file mode 100644
index 0000000000..8c525c1088
--- /dev/null
+++ b/l10n-el/browser/extensions/formautofill/formautofill.properties
@@ -0,0 +1,241 @@
+# 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 (saveAddressesMessage): %S is brandShortName. This string is used on the doorhanger to
+# notify users that addresses are saved.
+saveAddressesMessage = Το %S πλέον αποθηκεύει διευθύνσεις ώστε να μπορείτε να συμπληρώνετε φόρμες γρηγορότερα.
+# LOCALIZATION NOTE (autofillOptionsLink, autofillOptionsLinkOSX): These strings are used in the doorhanger for
+# updating addresses. The link leads users to Form Autofill browser preferences.
+autofillOptionsLink = Επιλογές αυτόματης συμπλήρωσης φορμών
+autofillOptionsLinkOSX = Προτιμήσεις αυτόματης συμπλήρωσης φορμών
+# LOCALIZATION NOTE (autofillSecurityOptionsLink, autofillSecurityOptionsLinkOSX): These strings are used
+# in the doorhanger for saving credit card info. The link leads users to Form Autofill browser preferences.
+autofillSecurityOptionsLink = Επιλογές αυτόματης συμπλήρωσης φορμών και ασφαλείας
+autofillSecurityOptionsLinkOSX = Προτιμήσεις αυτόματης συμπλήρωσης φορμών και ασφαλείας
+# LOCALIZATION NOTE (changeAutofillOptions, changeAutofillOptionsOSX): These strings are used on the doorhanger
+# that notifies users that addresses are saved. The button leads users to Form Autofill browser preferences.
+changeAutofillOptions = Αλλαγή επιλογών αυτόματης συμπλήρωσης φορμών
+changeAutofillOptionsOSX = Αλλαγή προτιμήσεων αυτόματης συμπλήρωσης φορμών
+changeAutofillOptionsAccessKey = Α
+# LOCALIZATION NOTE (addressesSyncCheckbox): If Sync is enabled, this checkbox is displayed on the doorhanger
+# shown when saving addresses.
+addressesSyncCheckbox = Κοινή χρήση διευθύνσεων με τις συγχρονισμένες συσκευές
+# LOCALIZATION NOTE (creditCardsSyncCheckbox): If Sync is enabled and credit card sync is available,
+# this checkbox is displayed on the doorhanger shown when saving credit card.
+creditCardsSyncCheckbox = Κοινή χρήση πιστωτικών καρτών με τις συγχρονισμένες συσκευές
+# LOCALIZATION NOTE (updateAddressMessage, updateAddressDescriptionLabel, createAddressLabel, updateAddressLabel):
+# Used on the doorhanger when an address change is detected.
+updateAddressMessage = Θα θέλατε να ενημερώσετε τη διεύθυνσή σας με αυτές τις νέες πληροφορίες;
+updateAddressDescriptionLabel = Διεύθυνση προς ενημέρωση:
+createAddressLabel = Δημιουργία νέας διεύθυνσης
+createAddressAccessKey = Δ
+updateAddressLabel = Ενημέρωση διεύθυνσης
+updateAddressAccessKey = Ε
+# LOCALIZATION NOTE (saveCreditCardMessage, saveCreditCardDescriptionLabel, saveCreditCardLabel, cancelCreditCardLabel, neverSaveCreditCardLabel):
+# Used on the doorhanger when users submit payment with credit card.
+# LOCALIZATION NOTE (saveCreditCardMessage): %S is brandShortName.
+saveCreditCardMessage = Θα θέλατε το %S να αποθηκεύσει αυτή την πιστωτική κάρτα; (Ο κωδικός ασφαλείας δεν θα αποθηκευτεί)
+saveCreditCardDescriptionLabel = Πιστωτική κάρτα προς αποθήκευση:
+saveCreditCardLabel = Αποθήκευση πιστωτικής κάρτας
+saveCreditCardAccessKey = Α
+cancelCreditCardLabel = Να μην αποθηκευτεί
+cancelCreditCardAccessKey = Ν
+neverSaveCreditCardLabel = Να μη γίνεται ποτέ αποθήκευση πιστωτικών καρτών
+neverSaveCreditCardAccessKey = π
+# LOCALIZATION NOTE (updateCreditCardMessage, updateCreditCardDescriptionLabel, createCreditCardLabel, updateCreditCardLabel):
+# Used on the doorhanger when an credit card change is detected.
+updateCreditCardMessage = Θα θέλατε να ενημερώσετε την πιστωτική σας κάρτα με αυτές τις νέες πληροφορίες;
+updateCreditCardDescriptionLabel = Πιστωτική κάρτα προς ενημέρωση:
+createCreditCardLabel = Δημιουργία νέας πιστωτικής κάρτας
+createCreditCardAccessKey = Δ
+updateCreditCardLabel = Ενημέρωση πιστωτικής κάρτας
+updateCreditCardAccessKey = Ε
+# LOCALIZATION NOTE (openAutofillMessagePanel): Tooltip label for Form Autofill doorhanger icon on address bar.
+openAutofillMessagePanel = Άνοιγμα πίνακα μηνυμάτων αυτόματης συμπλήρωσης φορμών
+
+# LOCALIZATION NOTE ( (autocompleteFooterOptionShort, autocompleteFooterOptionOSXShort): Used as a label for the button,
+# displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+autocompleteFooterOptionShort = Περισσότερες επιλογές
+autocompleteFooterOptionOSXShort = Προτιμήσεις
+
+# LOCALIZATION NOTE (autocompleteFooterOption2):
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+autocompleteFooterOption2 = Επιλογές αυτόματης συμπλήρωσης φορμών
+# LOCALIZATION NOTE (autocompleteFooterOptionOSX2):
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+autocompleteFooterOptionOSX2 = Προτιμήσεις αυτόματης συμπλήρωσης φορμών
+# LOCALIZATION NOTE (autocompleteFooterOptionShort2):
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+# The short version is used for inputs below a certain width (e.g. 150px).
+autocompleteFooterOptionShort2 = Επιλογές αυτόματης συμπλήρωσης
+# LOCALIZATION NOTE (autocompleteFooterOptionOSXShort2):
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+# The short version is used for inputs below a certain width (e.g. 150px).
+autocompleteFooterOptionOSXShort2 = Προτιμήσεις αυτόματης συμπλήρωσης
+# LOCALIZATION NOTE (category.address, category.name, category.organization2, category.tel, category.email):
+# Used in autofill drop down suggestion to indicate what other categories Form Autofill will attempt to fill.
+category.address = διεύθυνση
+category.name = όνομα
+category.organization2 = εταιρεία
+category.tel = τηλέφωνο
+category.email = email
+# LOCALIZATION NOTE (fieldNameSeparator): This is used as a separator between categories.
+fieldNameSeparator = ,\u0020
+# LOCALIZATION NOTE (phishingWarningMessage, phishingWarningMessage2): The warning
+# text that is displayed for informing users what categories are about to be filled.
+# "%S" will be replaced with a list generated from the pre-defined categories.
+# The text would be e.g. Also autofills organization, phone, email.
+phishingWarningMessage = Επίσης, συμπληρώνει αυτόματα %S
+phishingWarningMessage2 = Συμπληρώνει αυτόματα %S
+# LOCALIZATION NOTE (insecureFieldWarningDescription): %S is brandShortName. This string is used in drop down
+# suggestion when users try to autofill credit card on an insecure website (without https).
+insecureFieldWarningDescription = Το %S έχει εντοπίσει μια μη ασφαλή ιστοσελίδα. Η αυτόματη συμπλήρωση φορμών έχει απενεργοποιηθεί προσωρινά.
+# LOCALIZATION NOTE (clearFormBtnLabel2): Label for the button in the dropdown menu that used to clear the populated
+# form.
+clearFormBtnLabel2 = Εκκαθάριση αυτόματης συμπλήρωσης φόρμας
+
+autofillHeader = Φόρμες & αυτόματη συμπλήρωση
+# LOCALIZATION NOTE (autofillAddressesCheckbox): Label for the checkbox that enables autofilling addresses.
+autofillAddressesCheckbox = Αυτόματη συμπλήρωση διευθύνσεων
+# LOCALIZATION NOTE (learnMoreLabel): Label for the link that leads users to the Form Autofill SUMO page.
+learnMoreLabel = Μάθετε περισσότερα
+# LOCALIZATION NOTE (savedAddressesBtnLabel): Label for the button that opens a dialog that shows the
+# list of saved addresses.
+savedAddressesBtnLabel = Αποθηκευμένες διευθύνσεις…
+# LOCALIZATION NOTE (autofillCreditCardsCheckbox): Label for the checkbox that enables autofilling credit cards.
+autofillCreditCardsCheckbox = Αυτόματη συμπλήρωση πιστωτικών καρτών
+# LOCALIZATION NOTE (savedCreditCardsBtnLabel): Label for the button that opens a dialog that shows the list
+# of saved credit cards.
+savedCreditCardsBtnLabel = Αποθηκευμένες πιστωτικές κάρτες…
+
+autofillReauthCheckboxMac = Απαιτείται έλεγχος ταυτότητας του macOS για αυτόματη συμπλήρωση, προβολή ή επεξεργασία αποθηκευμένων πιστωτικών καρτών.
+autofillReauthCheckboxWin = Απαιτείται έλεγχος ταυτότητας των Windows για αυτόματη συμπλήρωση, προβολή ή επεξεργασία αποθηκευμένων πιστωτικών καρτών.
+autofillReauthCheckboxLin = Απαιτείται έλεγχος ταυτότητας του Linux για αυτόματη συμπλήρωση, προβολή ή επεξεργασία αποθηκευμένων πιστωτικών καρτών.
+
+# LOCALIZATION NOTE (autofillReauthOSDialogMac): This string is
+# preceded by the operating system (macOS) with "Firefox is trying to ", and
+# has a period added to its end. Make sure to test in your locale.
+autofillReauthOSDialogMac = αλλάξει τις ρυθμίσεις ελέγχου ταυτότητας
+autofillReauthOSDialogWin = Για να αλλάξετε τις ρυθμίσεις ελέγχου ταυτότητας, εισαγάγετε τα διαπιστευτήρια σύνδεσης των Windows σας.
+autofillReauthOSDialogLin = Για να αλλάξετε τις ρυθμίσεις ελέγχου ταυτότητας, εισαγάγετε τα διαπιστευτήρια σύνδεσης των Linux σας.
+
+# LOCALIZATION NOTE (manageAddressesTitle, manageCreditCardsTitle): The dialog title for the list of addresses or
+# credit cards in browser preferences.
+manageAddressesTitle = Αποθηκευμένες διευθύνσεις
+manageCreditCardsTitle = Αποθηκευμένες πιστωτικές κάρτες
+# LOCALIZATION NOTE (addressesListHeader, creditCardsListHeader): The header for the list of addresses or credit cards
+# in browser preferences.
+addressesListHeader = Διευθύνσεις
+creditCardsListHeader = Πιστωτικές κάρτες
+removeBtnLabel = Αφαίρεση
+addBtnLabel = Προσθήκη…
+editBtnLabel = Επεξεργασία…
+# LOCALIZATION NOTE (manageDialogsWidth): This strings sets the default width for windows used to manage addresses and
+# credit cards.
+manageDialogsWidth = 560px
+
+# LOCALIZATION NOTE (addNewAddressTitle, editAddressTitle): The dialog title for creating or editing addresses
+# in browser preferences.
+addNewAddressTitle = Προσθήκη νέας διεύθυνσης
+editAddressTitle = Επεξεργασία διεύθυνσης
+givenName = Όνομα
+additionalName = Μεσαίο όνομα
+familyName = Επώνυμο
+organization2 = Εταιρεία
+streetAddress = Διεύθυνση οδού
+
+## address-level-3 (Sublocality) names
+# LOCALIZATION NOTE (neighborhood): Used in IR, MX
+neighborhood = Γειτονιά
+# LOCALIZATION NOTE (village_township): Used in MY
+village_township = Χωριό ή κωμόπολη
+island = Νησί
+# LOCALIZATION NOTE (townland): Used in IE
+townland = Κοινότητα
+
+## address-level-2 names
+city = Πόλη
+# LOCALIZATION NOTE (district): Used in HK, SD, SY, TR as Address Level-2
+# and used in KR as Sublocality.
+district = Συνοικία
+# LOCALIZATION NOTE (post_town): Used in GB, NO, SE
+post_town = Πόλη αποστολής
+# LOCALIZATION NOTE (suburb): Used in AU as Address Level-2
+# and used in ZZ as Sublocality.
+suburb = Προάστιο
+
+# address-level-1 names
+province = Επαρχία
+state = Περιφέρεια
+county = Κομητεία
+# LOCALIZATION NOTE (parish): Used in BB, JM
+parish = Ενορία
+# LOCALIZATION NOTE (prefecture): Used in JP
+prefecture = Νομαρχία
+# LOCALIZATION NOTE (area): Used in HK
+area = Περιοχή
+# LOCALIZATION NOTE (do_si): Used in KR
+do_si = Do/Si
+# LOCALIZATION NOTE (department): Used in NI, CO
+department = Τμήμα
+# LOCALIZATION NOTE (emirate): Used in AE
+emirate = Εμιράτο
+# LOCALIZATION NOTE (oblast): Used in RU and UA
+oblast = Oblast
+
+# LOCALIZATION NOTE (pin, postalCode, zip, eircode): Postal code name types
+# LOCALIZATION NOTE (pin): Used in IN
+pin = Ταχ. κώδικας
+postalCode = Ταχυδρομικός κώδικας
+zip = Ταχ. κώδικας
+# LOCALIZATION NOTE (eircode): Used in IE
+eircode = Eircode
+
+country = Χώρα ή περιοχή
+tel = Τηλέφωνο
+email = Email
+cancelBtnLabel = Ακύρωση
+saveBtnLabel = Αποθήκευση
+countryWarningMessage2 = Η αυτοσυμπλήρωση φορμών είναι διαθέσιμη μόνο σε ορισμένες χώρες προς το παρόν.
+
+# LOCALIZATION NOTE (addNewCreditCardTitle, editCreditCardTitle): The dialog title for creating or editing
+# credit cards in browser preferences.
+addNewCreditCardTitle = Προσθήκη νέας πιστωτικής κάρτας
+editCreditCardTitle = Επεξεργασία πιστωτικής κάρτας
+cardNumber = Αριθμός κάρτας
+invalidCardNumber = Εισάγετε έναν έγκυρο αριθμό κάρτας
+nameOnCard = Όνομα στην κάρτα
+cardExpiresMonth = Μήνας λήξης
+cardExpiresYear = Έτος λήξης
+billingAddress = Διεύθυνση χρέωσης
+cardNetwork = Τύπος κάρτας
+# LOCALIZATION NOTE (cardCVV): Credit card security code https://en.wikipedia.org/wiki/Card_security_code
+cardCVV = CVV
+
+# LOCALIZATION NOTE: (cardNetwork.*): These are brand names and should only be translated when a locale-specific name for that brand is in common use
+cardNetwork.amex = American Express
+cardNetwork.cartebancaire = Carte Bancaire
+cardNetwork.diners = Diners Club
+cardNetwork.discover = Discover
+cardNetwork.jcb = JCB
+cardNetwork.mastercard = MasterCard
+cardNetwork.mir = MIR
+cardNetwork.unionpay = Union Pay
+cardNetwork.visa = Visa
+
+# LOCALIZATION NOTE (editCreditCardPasswordPrompt.*, useCreditCardPasswordPrompt.*): %S is brandShortName.
+editCreditCardPasswordPrompt.win = Το %S προσπαθεί να εμφανίσει πληροφορίες πιστωτικών καρτών. Επιβεβαιώστε παρακάτω την πρόσβαση σε αυτό το λογαριασμό Windows.
+editCreditCardPasswordPrompt.macosx = Το %S προσπαθεί να εμφανίσει πληροφορίες πιστωτικών καρτών.
+# LOCALIZATION NOTE (editCreditCardPasswordPrompt.macos): This string is
+# preceded by the operating system (macOS) with "Firefox is trying to ", and
+# has a period added to its end. Make sure to test in your locale.
+editCreditCardPasswordPrompt.macos = εμφανίσει στοιχεία πιστωτικής κάρτας
+editCreditCardPasswordPrompt.linux = Το %S προσπαθεί να εμφανίσει πληροφορίες πιστωτικών καρτών.
+useCreditCardPasswordPrompt.win = Το %S προσπαθεί να χρησιμοποιήσει αποθηκευμένες πληροφορίες πιστωτικών καρτών. Επιβεβαιώστε παρακάτω την πρόσβαση σε αυτό το λογαριασμό Windows.
+useCreditCardPasswordPrompt.macosx = Το %S προσπαθεί να χρησιμοποιήσει αποθηκευμένες πληροφορίες πιστωτικών καρτών.
+# LOCALIZATION NOTE (useCreditCardPasswordPrompt.macos): This string is
+# preceded by the operating system (macOS) with "Firefox is trying to ", and
+# has a period added to its end. Make sure to test in your locale.
+useCreditCardPasswordPrompt.macos = χρησιμοποιήσει αποθηκευμένα στοιχεία πιστωτικής κάρτας
+useCreditCardPasswordPrompt.linux = Το %S προσπαθεί να χρησιμοποιήσει αποθηκευμένες πληροφορίες πιστωτικών καρτών.
diff --git a/l10n-el/browser/extensions/report-site-issue/webcompat.properties b/l10n-el/browser/extensions/report-site-issue/webcompat.properties
new file mode 100644
index 0000000000..31a788b906
--- /dev/null
+++ b/l10n-el/browser/extensions/report-site-issue/webcompat.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/.
+
+# LOCALIZATION NOTE(wc-reporter.label2): This string will be used in the
+# Firefox page actions menu. Localized length should be considered.
+wc-reporter.label2=Αναφορά ζητήματος ιστοσελίδας…
+# LOCALIZATION NOTE(wc-reporter.tooltip): A site compatibility issue is
+# a website bug that exists in one browser (Firefox), but not another.
+wc-reporter.tooltip=Αναφορά ενός ζητήματος συμβατότητας της ιστοσελίδας
diff --git a/l10n-el/browser/firefox-l10n.js b/l10n-el/browser/firefox-l10n.js
new file mode 100644
index 0000000000..b410ad9aef
--- /dev/null
+++ b/l10n-el/browser/firefox-l10n.js
@@ -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/.
+
+#filter substitution
+
diff --git a/l10n-el/browser/installer/custom.properties b/l10n-el/browser/installer/custom.properties
new file mode 100644
index 0000000000..d08be329da
--- /dev/null
+++ b/l10n-el/browser/installer/custom.properties
@@ -0,0 +1,92 @@
+# 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:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+REG_APP_DESC=Το $BrandShortName σάς παρέχει ασφαλή και εύκολη περιήγηση στο διαδίκτυο. Με το οικείο περιβάλλον χρήσης, τα προηγμένα χαρακτηριστικά ασφαλείας, όπως η προστασία από κλοπή διαδικτυακής ταυτότητας, καθώς και την ενσωματωμένη αναζήτηση, μπορείτε να αξιοποιήσετε το διαδίκτυο στο έπακρο.
+CONTEXT_OPTIONS=&Επιλογές $BrandShortName
+CONTEXT_SAFE_MODE=&Ασφαλής λειτουργία του $BrandShortName
+OPTIONS_PAGE_TITLE=Τύπος εγκατάστασης
+OPTIONS_PAGE_SUBTITLE=Επιλογές εγκατάστασης
+SHORTCUTS_PAGE_TITLE=Ρύθμιση συντομεύσεων
+SHORTCUTS_PAGE_SUBTITLE=Δημιουργία εικονιδίων προγράμματος
+COMPONENTS_PAGE_TITLE=Εγκατάσταση προαιρετικών στοιχείων
+COMPONENTS_PAGE_SUBTITLE=Προτεινόμενα προαιρετικά στοιχεία
+OPTIONAL_COMPONENTS_DESC=Η υπηρεσία συντήρησης σάς επιτρέπει να αναβαθμίζετε το $BrandShortName στο παρασκήνιο.
+MAINTENANCE_SERVICE_CHECKBOX_DESC=Εγκατάσταση &υπηρεσίας συντήρησης
+SUMMARY_PAGE_TITLE=Περίληψη
+SUMMARY_PAGE_SUBTITLE=Όλα έτοιμα για την εγκατάσταση του $BrandShortName
+SUMMARY_INSTALLED_TO=Το $BrandShortName θα εγκατασταθεί στην ακόλουθη τοποθεσία:
+SUMMARY_REBOOT_REQUIRED_INSTALL=Μπορεί να απαιτείται η επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί η εγκατάσταση.
+SUMMARY_REBOOT_REQUIRED_UNINSTALL=Μπορεί να απαιτείται η επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί η απεγκατάσταση.
+SUMMARY_TAKE_DEFAULTS=&Ορισμός του $BrandShortName ως το προεπιλεγμένο πρόγραμμα περιήγησης ιστού
+SUMMARY_INSTALL_CLICK=Κάντε κλικ στο "Εγκατάσταση" για συνέχεια.
+SUMMARY_UPGRADE_CLICK=Κάντε κλικ στο "Αναβάθμιση" για συνέχεια.
+SURVEY_TEXT=&Πείτε μας τη γνώμη σας για το $BrandShortName
+LAUNCH_TEXT=&Εκκίνηση του $BrandShortName τώρα
+CREATE_ICONS_DESC=Δημιουργία εικονιδίων για το $BrandShortName:
+ICONS_DESKTOP=Στην &επιφάνεια εργασίας
+ICONS_STARTMENU=Στο &φάκελο προγραμμάτων του μενού έναρξης
+ICONS_QUICKLAUNCH=Στη &γραμμή γρήγορης εκκίνησης
+WARN_MANUALLY_CLOSE_APP_INSTALL=Το $BrandShortName πρέπει να κλείσει για να συνεχιστεί η εγκατάσταση.\n\nΠαρακαλώ κλείστε το $BrandShortName για να συνεχίσετε.
+WARN_MANUALLY_CLOSE_APP_UNINSTALL=Το $BrandShortName πρέπει να κλείσει για να συνεχιστεί η απεγκατάσταση.\n\nΠαρακαλώ κλείστε το $BrandShortName για να συνεχίσετε.
+WARN_MANUALLY_CLOSE_APP_REFRESH=Το $BrandShortName πρέπει να κλείσει για να συνεχιστεί η ανανέωση.\n\nΠαρακαλούμε κλείστε το $BrandShortName για να συνεχίσετε.
+WARN_WRITE_ACCESS=Δεν έχετε δικαιώματα εγγραφής στον κατάλογο εγκατάστασης.\n\nΠατήστε ΟΚ για να επιλέξετε έναν άλλο κατάλογο.
+WARN_DISK_SPACE=Δεν έχετε αρκετό διαθέσιμο ελεύθερο χώρο σε αυτή την τοποθεσία.\n\nΠατήστε ΟΚ για να επιλέξετε μια διαφορετική τοποθεσία.
+WARN_MIN_SUPPORTED_OSVER_MSG=Συγγνώμη, αλλά το $BrandShortName δεν μπορεί να εγκατασταθεί. Αυτή η έκδοση του $BrandShortName απαιτεί το ${MinSupportedVer} ή νεότερο. Κάντε κλικ στο κουμπί OK για περισσότερες πληροφορίες.
+WARN_MIN_SUPPORTED_CPU_MSG=Συγγνώμη, αλλά το $BrandShortName δεν μπορεί να εγκατασταθεί. Αυτή η έκδοση του $BrandShortName απαιτεί επεξεργαστή με υποστήριξη ${MinSupportedCPU}. Κάντε κλικ στο κουμπί OK για περισσότερες πληροφορίες.
+WARN_MIN_SUPPORTED_OSVER_CPU_MSG=Συγγνώμη, αλλά το $BrandShortName δεν μπορεί να εγκατασταθεί. Αυτή η έκδοση του $BrandShortName απαιτεί το ${MinSupportedVer} ή νεότερο και επεξεργαστή με υποστήριξη ${MinSupportedCPU}. Κάντε κλικ στο κουμπί OK για περισσότερες πληροφορίες.
+WARN_RESTART_REQUIRED_UNINSTALL=Θα πρέπει να γίνει επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί μια προηγούμενη απεγκατάσταση του $BrandShortName. Θέλετε να γίνει επανεκκίνηση τώρα;
+WARN_RESTART_REQUIRED_UPGRADE=Θα πρέπει να γίνει επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί μια προηγούμενη αναβάθμιση του $BrandShortName. Θέλετε να γίνει επανεκκίνηση τώρα;
+ERROR_CREATE_DIRECTORY_PREFIX=Σφάλμα δημιουργίας καταλόγου:
+ERROR_CREATE_DIRECTORY_SUFFIX=Πατήστε Ακύρωση για να διακόψετε την εγκατάσταση ή \nΠροσπάθεια ξανά για να ξαναπροσπαθήσετε.
+
+UN_CONFIRM_PAGE_TITLE=Απεγκατάσταση του $BrandFullName
+UN_CONFIRM_PAGE_SUBTITLE=Αφαίρεση του $BrandFullName από τον υπολογιστή σας.
+UN_CONFIRM_UNINSTALLED_FROM=Το $BrandShortName θα αφαιρεθεί από την ακόλουθη τοποθεσία:
+UN_CONFIRM_CLICK=Κάντε κλικ στο "Απεγκατάσταση" για να συνεχίσετε.
+
+UN_REFRESH_PAGE_TITLE=Να γίνει ανανέωση του $BrandShortName;
+UN_REFRESH_PAGE_EXPLANATION=Αν αντιμετωπίζετε προβλήματα με το $BrandShortName, μια ανανέωση μπορεί να βοηθήσει.\n\nΑυτό θα επαναφέρει τις προεπιλεγμένες ρυθμίσεις και θα αφαιρέσει τα πρόσθετα. Ξεκινήστε από την αρχή για βέλτιστη απόδοση.
+UN_REFRESH_LEARN_MORE=&Μάθετε περισσότερα
+UN_REFRESH_BUTTON=&Ανανέωση του $BrandShortName
+
+BANNER_CHECK_EXISTING=Έλεγχος υπάρχουσας εγκατάστασης…
+
+STATUS_INSTALL_APP=Εγκατάσταση του $BrandShortName…
+STATUS_INSTALL_LANG=Εγκατάσταση αρχείων γλώσσας (${AB_CD})…
+STATUS_UNINSTALL_MAIN=Απεγκατάσταση του $BrandShortName…
+STATUS_CLEANUP=Τακτοποίηση…
+
+UN_SURVEY_CHECKBOX_LABEL=Πείτε στη Mozilla γιατί απεγκαταστήσατε το $BrandShortName
+
+# _DESC strings support approximately 65 characters per line.
+# One line
+OPTIONS_SUMMARY=Επιλέξτε την εγκατάσταση που επιθυμείτε και κάντε κλικ στο "Επόμενο".
+# One line
+OPTION_STANDARD_DESC=Το $BrandShortName θα εγκατασταθεί με τις πιο κοινές επιλογές.
+OPTION_STANDARD_RADIO=&Τυπική
+# Two lines
+OPTION_CUSTOM_DESC=Μπορείτε να επιλέξετε μεμονωμένες επιλογές προς εγκατάσταση. Συνιστάται για έμπειρους χρήστες.
+OPTION_CUSTOM_RADIO=&Προσαρμογή
+
+# LOCALIZATION NOTE:
+# The following text replaces the Install button text on the summary page.
+# Verify that the access key for InstallBtn (in override.properties) and
+# UPGRADE_BUTTON is not already used by SUMMARY_TAKE_DEFAULTS.
+UPGRADE_BUTTON=&Αναβάθμιση
diff --git a/l10n-el/browser/installer/mui.properties b/l10n-el/browser/installer/mui.properties
new file mode 100644
index 0000000000..2474bb9e02
--- /dev/null
+++ b/l10n-el/browser/installer/mui.properties
@@ -0,0 +1,61 @@
+# 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/.
+
+# To make the l10n tinderboxen see changes to this file you can change a value
+# name by adding - to the end of the name followed by chars (e.g. Branding-2).
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+MUI_TEXT_WELCOME_INFO_TITLE=Καλώς ορίσατε στο βοηθό εγκατάστασης του $BrandFullNameDA
+MUI_TEXT_WELCOME_INFO_TEXT=Αυτός ο βοηθός θα σάς καθοδηγήσει στην εγκατάσταση του $BrandFullNameDA.\n\nΕίναι καλύτερο να κλείσετε όλα τα άλλα προγράμματα πριν ξεκινήσετε με την εγκατάσταση. Έτσι, θα ενημερωθούν όλα τα απαραίτητα αρχεία του συστήματος, χωρίς να χρειαστεί επανεκκίνηση.\n\n$_CLICK
+MUI_TEXT_COMPONENTS_TITLE=Επιλογή στοιχείων
+MUI_TEXT_COMPONENTS_SUBTITLE=Επιλέξτε τις λειτουργίες του $BrandFullNameDA που θέλετε να εγκαταστήσετε.
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE=Περιγραφή
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO=Τοποθετήστε το ποντίκι σας πάνω από ένα στοιχείο για να δείτε την περιγραφή του.
+MUI_TEXT_DIRECTORY_TITLE=Επιλογή τοποθεσίας εγκατάστασης
+MUI_TEXT_DIRECTORY_SUBTITLE=Επιλέξτε το φάκελο όπου θα εγκατασταθεί το $BrandFullNameDA.
+MUI_TEXT_INSTALLING_TITLE=Εγκατάσταση
+MUI_TEXT_INSTALLING_SUBTITLE=Παρακαλώ περιμένετε μέχρι να εγκατασταθεί το $BrandFullNameDA.
+MUI_TEXT_FINISH_TITLE=Η εγκατάσταση ολοκληρώθηκε
+MUI_TEXT_FINISH_SUBTITLE=Η εγκατάσταση ολοκληρώθηκε με επιτυχία.
+MUI_TEXT_ABORT_TITLE=Η εγκατάσταση ακυρώθηκε
+MUI_TEXT_ABORT_SUBTITLE=Η εγκατάσταση δεν ολοκληρώθηκε με επιτυχία.
+MUI_BUTTONTEXT_FINISH=&Τέλος
+MUI_TEXT_FINISH_INFO_TITLE=Ολοκλήρωση του Βοηθού Εγκατάστασης του $BrandFullNameDA
+MUI_TEXT_FINISH_INFO_TEXT=Το $BrandFullNameDA έχει εγκατασταθεί στον υπολογιστή σας.\n\nΚάντε κλικ στο Τέλος για να κλείσετε το βοηθό εγκατάστασης.
+MUI_TEXT_FINISH_INFO_REBOOT=Ο υπολογιστής σας θα πρέπει να επανεκκινηθεί προκειμένου να ολοκληρωθεί η εγκατάσταση του $BrandFullNameDA. Θέλετε να κάνετε επανεκκίνηση τώρα;
+MUI_TEXT_FINISH_REBOOTNOW=Επανεκκίνηση τώρα
+MUI_TEXT_FINISH_REBOOTLATER=Χειροκίνητη επανεκκίνηση αργότερα
+MUI_TEXT_STARTMENU_TITLE=Επιλογή φακέλου στο μενού Έναρξη
+MUI_TEXT_STARTMENU_SUBTITLE=Επιλέξτε ένα φάκελο στο μενού Έναρξη για τις συντομεύσεις του $BrandFullNameDA.
+MUI_INNERTEXT_STARTMENU_TOP=Επιλέξτε το φάκελο του μενού έναρξης στον οποίο θα δημιουργηθούν οι συντομεύσεις του προγράμματος. Μπορείτε ακόμα να εισάγετε ένα όνομα για να δημιουργηθεί ένας νέος φάκελος.
+MUI_TEXT_ABORTWARNING=Θέλετε σίγουρα να εγκαταλείψετε την εγκατάσταση του $BrandFullName;
+MUI_UNTEXT_WELCOME_INFO_TITLE=Απεγκατάσταση του $BrandFullNameDA
+MUI_UNTEXT_WELCOME_INFO_TEXT=Αυτός ο βοηθός θα σας οδηγήσει στην απεγκατάσταση του $BrandFullNameDA.\n\nΠριν να ξεκινήσετε βεβαιωθείτε ότι δεν εκτελείται ο $BrandFullNameDA .\n\n$_CLICK
+MUI_UNTEXT_CONFIRM_TITLE=Απεγκατάσταση $BrandFullNameDA
+MUI_UNTEXT_CONFIRM_SUBTITLE=Αφαίρεση του $BrandFullNameDA από τον υπολογιστή σας.
+MUI_UNTEXT_UNINSTALLING_TITLE=Γίνεται απεγκατάσταση
+MUI_UNTEXT_UNINSTALLING_SUBTITLE=Παρακαλώ περιμένετε για να ολοκληρωθεί η απεγκατάσταση του $BrandFullNameDA.
+MUI_UNTEXT_FINISH_TITLE=Η απεγκατάσταση ολοκληρώθηκε
+MUI_UNTEXT_FINISH_SUBTITLE=Η απεγκατάσταση ολοκληρώθηκε με επιτυχία.
+MUI_UNTEXT_ABORT_TITLE=Η απεγκατάσταση διακόπηκε.
+MUI_UNTEXT_ABORT_SUBTITLE=Η απεγκατάσταση δεν ολοκληρώθηκε με επιτυχία
+MUI_UNTEXT_FINISH_INFO_TITLE=Ολοκλήρωση του βοηθού απεγκατάστασης του $BrandFullNameDA
+MUI_UNTEXT_FINISH_INFO_TEXT=Η εγκατάσταση του $BrandFullNameDA καταργήθηκε από τον υπολογιστή σας.\n\nΠατήστε "Τέλος" για να κλείσετε αυτό το βοηθό.
+MUI_UNTEXT_FINISH_INFO_REBOOT=Θα πρέπει να γίνει επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί η απεγκατάσταση του $BrandFullNameDA. Θέλετε να γίνει επανεκκίνηση τώρα;
+MUI_UNTEXT_ABORTWARNING=Θέλετε σίγουρα να εγκαταλείψετε την απεγκατάσταση του $BrandFullName;
diff --git a/l10n-el/browser/installer/nsisstrings.properties b/l10n-el/browser/installer/nsisstrings.properties
new file mode 100644
index 0000000000..3f9f386168
--- /dev/null
+++ b/l10n-el/browser/installer/nsisstrings.properties
@@ -0,0 +1,46 @@
+# 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:
+
+# This file must be saved as UTF8
+
+# Do not replace $BrandShortName, $BrandProductName, $BrandFullName,
+# or $BrandFullNameDA with a custom string and always use the same one as used
+# by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+INSTALLER_WIN_CAPTION=Πρόγραμμα εγκατάστασης του $BrandShortName
+
+STUB_CLEANUP_PAVEOVER_HEADER2=Το $BrandShortName είναι ήδη εγκατεστημένο. Ας το ενημερώσουμε.
+STUB_CLEANUP_REINSTALL_HEADER2=Το $BrandShortName είχε εγκατασταθεί παλαιότερα. Ας το εγκαταστήσουμε εκ νέου.
+STUB_CLEANUP_PAVEOVER_BUTTON2=Ενημέρωση
+STUB_CLEANUP_REINSTALL_BUTTON2=Επανεγκατάσταση
+STUB_CLEANUP_CHECKBOX_LABEL2=Επαναφορά προεπιλεγμένων ρυθμίσεων και αφαίρεση παλαιών προσθέτων για βέλτιστες επιδόσεις
+
+STUB_INSTALLING_LABEL2=Γίνεται εγκατάσταση…
+STUB_INSTALLING_HEADLINE2=Βελτιστοποίηση ρυθμίσεων για ταχύτητα, απόρρητο και ασφάλεια.
+STUB_INSTALLING_BODY2=Το $BrandShortName θα είναι έτοιμο σε λίγο.
+STUB_BLURB_FIRST1=Το πιο γρήγορο $BrandShortName που υπήρξε ποτέ
+STUB_BLURB_SECOND1=Ταχύτερη φόρτωση σελίδων και εναλλαγή καρτελών
+STUB_BLURB_THIRD1=Ισχυρή ιδιωτική περιήγηση
+STUB_BLURB_FOOTER2=Για τους ανθρώπους, όχι το κέρδος
+
+WARN_MIN_SUPPORTED_OSVER_MSG=Συγγνώμη, το $BrandShortName δεν μπορεί να εγκατασταθεί. Αυτή η έκδοση του $BrandShortName απαιτεί ${MinSupportedVer} ή νεότερο. Παρακαλώ κάντε κλικ στο OK για επιπρόσθετες πληροφορίες.
+WARN_MIN_SUPPORTED_CPU_MSG=Συγγνώμη, το $BrandShortName δεν μπορεί να εγκατασταθεί. Αυτή η έκδοση του $BrandShortName απαιτεί έναν επεξεργαστή με υποστήριξη ${MinSupportedCPU}. Παρακαλώ κάντε κλικ στο OK για επιπρόσθετες πληροφορίες.
+WARN_MIN_SUPPORTED_OSVER_CPU_MSG=Συγγνώμη, το $BrandShortName δεν μπορεί να εγκατασταθεί. Αυτή η έκδοση του $BrandShortName απαιτεί ${MinSupportedVer} ή νεότερο και επεξεργαστή με υποστήριξη ${MinSupportedCPU}. Παρακαλώ κάντε κλικ στο κουμπί OK για επιπρόσθετες πληροφορίες.
+WARN_WRITE_ACCESS_QUIT=Δεν έχετε πρόσβαση για εγγραφή στον κατάλογο εγκατάστασης
+WARN_DISK_SPACE_QUIT=Δεν έχετε επαρκή χώρο δίσκου για εγκατάσταση.
+
+ERROR_DOWNLOAD_CONT=Χμμ. Για κάποιο λόγο, δεν μπορέσαμε να εγκαταστήσουμε το $BrandShortName.\nΕπιλέξτε OK για να ξεκινήσετε από την αρχή.
+
+STUB_CANCEL_PROMPT_HEADING=Θέλετε να εγκαταστήσετε το $BrandShortName;
+STUB_CANCEL_PROMPT_MESSAGE=Αν ακυρώσετε, το $BrandShortName δεν θα εγκατασταθεί.
+STUB_CANCEL_PROMPT_BUTTON_CONTINUE=Εγκατάσταση του $BrandShortName
+STUB_CANCEL_PROMPT_BUTTON_EXIT=Ακύρωση
diff --git a/l10n-el/browser/installer/override.properties b/l10n-el/browser/installer/override.properties
new file mode 100644
index 0000000000..a38f141676
--- /dev/null
+++ b/l10n-el/browser/installer/override.properties
@@ -0,0 +1,86 @@
+# 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:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+# Strings that require a space at the end should be enclosed with double
+# quotes and the double quotes will be removed. To add quotes to the beginning
+# and end of a strong enclose the add and additional double quote to the
+# beginning and end of the string (e.g. ""This will include quotes"").
+
+SetupCaption=Εγκατάσταση $BrandFullName
+UninstallCaption=Απεγκατάσταση $BrandFullName
+BackBtn=< &Πίσω
+NextBtn=&Επόμενο >
+AcceptBtn=&Αποδέχομαι τους όρους της άδειας χρήσης
+DontAcceptBtn=Δεν &αποδέχομαι τους όρους της άδειας χρήσης
+InstallBtn=&Εγκατάσταση
+UninstallBtn=&Απεγκατάσταση
+CancelBtn=Ακύρωση
+CloseBtn=&Κλείσιμο
+BrowseBtn=Ε&ξερεύνηση...
+ShowDetailsBtn=Προβολή &λεπτομερειών
+ClickNext=Πατήστε Επόμενο για να συνεχίσετε.
+ClickInstall=Πατήστε Εγκατάσταση για να ξεκινήσει η εγκατάσταση.
+ClickUninstall=Πατήστε Απεγκατάσταση για να ξεκινήσει η απεγκατάσταση.
+Completed=Ολοκληρώθηκε
+LicenseTextRB=Παρακαλώ διαβάστε την ακόλουθη άδεια χρήσης πριν την εγκατάσταση του $BrandFullNameDA. IΑν αποδέχεστε τους όρους, επιλέξτε την πρώτη επιλογή. $_CLICK
+ComponentsText=Επιλέξτε τα στοιχεία που θέλετε να εγκατασταθούν και αποεπιλέξτε αυτά που δεν θέλετε να εγκατασταθούν. $_CLICK
+ComponentsSubText2_NoInstTypes=Επιλογή στοιχείων για εγκατάσταση:
+DirText=Ο $BrandFullNameDA θα εγκατασταθεί στον παρακάτω φάκελο. Για να τον εγκαταστήσετε σε ένα διαφορετικό φάκελο, πατήστε Εξερεύνηση και επιλέξτε έναν άλλο φάκελο. $_CLICK
+DirSubText=Φάκελος προορισμού
+DirBrowseText=Επιλέξτε το φάκελο για την εγκατάσταση του $BrandFullNameDA:
+SpaceAvailable="Διαθέσιμος χώρος: "
+SpaceRequired="Απαιτούμενος χώρος: "
+UninstallingText=Ο $BrandFullNameDA θα απεγκατασταθεί από τον ακόλουθο φάκελο. $_CLICK
+UninstallingSubText=Γίνεται απεγκατάσταση από:
+FileError=Σφάλμα ανοίγματος αρχείου για εγγραφή: \r\n\r\n$0\r\n\r\nΠατήστε Διακοπή για να σταματήσει η εγκατάσταση,\r\nΠροσπάθεια ξανά για να ξαναπροσπαθήσετε, ή\r\nΑγνόηση για α παρακάμψετε αυτό το αρχείο.
+FileError_NoIgnore=Σφάλμα ανοίγματος αρχείου για εγγραφή: \r\n\r\n$0\r\n\r\nΠατήστε Προσπάθεια ξανά για να ξαναπροσπαθήσετε, ή\r\nΑκύρωση για να διακοπεί η εγκατάσταση.
+CantWrite="Αδυναμία εγγραφής: "
+CopyFailed=Αποτυχία αντιγραφής
+CopyTo="Αντιγραφή σε "
+Registering="Γίνεται εγγραφή:"
+Unregistering="Κατάργηση εγγραφής: "
+SymbolNotFound="Αδυναμία εύρεσης συμβόλου: "
+CouldNotLoad="Αδυναμία φόρτωσης: "
+CreateFolder="Δημιουργία φακέλου: "
+CreateShortcut="Δημιουργία συντόμευσης: "
+CreatedUninstaller="Δημιουργηθέν πρόγραμμα απεγκατάστασης: "
+Delete="Διαγραφή αρχείου: "
+DeleteOnReboot="Διαγραφή κατά την επανεκκίνηση: "
+ErrorCreatingShortcut="Σφάλμα δημιουργίας συντόμευσης: "
+ErrorCreating="Σφάλμα δημιουργίας: "
+ErrorDecompressing=Σφάλμα αποσυμπίεσης δεδομένων! Πιθανόν να είναι κατεστραμμένο το πρόγραμμα εγκατάστασης.
+ErrorRegistering=Σφάλμα εγγραφής DLL
+ExecShell="ExecShell: "
+Exec="Εκτέλεση: "
+Extract="Εξαγωγή: "
+ErrorWriting="Εξαγωγή: σφάλμα εγγραφής σε αρχείο "
+InvalidOpcode=Κατεστραμμένο το πρόγραμμα εγκατάστασης: invalid opcode
+NoOLE="Δεν υπάρχει OLE για: "
+OutputFolder="Φάκελος εξόδου: "
+RemoveFolder="Αφαίρεση φακέλου: "
+RenameOnReboot="Μετονομασία κατά την επανεκκίνηση: "
+Rename="Μετονομασία: "
+Skipped="Παρακάμφθηκαν: "
+CopyDetails=Αντιγραφή λεπτομερειών στο πρόχειρο
+LogInstall=Καταγραφή διαδικασίας εγκατάστασης
+Byte=B
+Kilo=K
+Mega=M
+Giga=G
diff --git a/l10n-el/browser/pdfviewer/chrome.properties b/l10n-el/browser/pdfviewer/chrome.properties
new file mode 100644
index 0000000000..cfc24d0831
--- /dev/null
+++ b/l10n-el/browser/pdfviewer/chrome.properties
@@ -0,0 +1,19 @@
+# Copyright 2012 Mozilla Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Chrome notification bar messages and buttons
+unsupported_feature=Αυτό το έγγραφο PDF μπορεί να μην εμφανιστεί σωστά
+unsupported_feature_forms=Αυτό το έγγραφο PDF περιέχει πεδία φόρμας. Το συμπλήρωμα πεδίων φόρμας δεν υποστηρίζεται.
+open_with_different_viewer=Άνοιγμα με διαφορετική εφαρμογή
+open_with_different_viewer.accessKey=δ
diff --git a/l10n-el/browser/pdfviewer/viewer.properties b/l10n-el/browser/pdfviewer/viewer.properties
new file mode 100644
index 0000000000..2de70330e6
--- /dev/null
+++ b/l10n-el/browser/pdfviewer/viewer.properties
@@ -0,0 +1,253 @@
+# Copyright 2012 Mozilla Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Main toolbar buttons (tooltips and alt text for images)
+previous.title=Προηγούμενη σελίδα
+previous_label=Προηγούμενη
+next.title=Επόμενη σελίδα
+next_label=Επόμενη
+
+# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input.
+page.title=Σελίδα
+# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number
+# representing the total number of pages in the document.
+of_pages=από {{pagesCount}}
+# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}"
+# will be replaced by a number representing the currently visible page,
+# respectively a number representing the total number of pages in the document.
+page_of_pages=({{pageNumber}} από {{pagesCount}})
+
+zoom_out.title=Σμίκρυνση
+zoom_out_label=Σμίκρυνση
+zoom_in.title=Μεγέθυνση
+zoom_in_label=Μεγέθυνση
+zoom.title=Ζουμ
+presentation_mode.title=Εναλλαγή σε λειτουργία παρουσίασης
+presentation_mode_label=Λειτουργία παρουσίασης
+open_file.title=Άνοιγμα αρχείου
+open_file_label=Άνοιγμα
+print.title=Εκτύπωση
+print_label=Εκτύπωση
+download.title=Λήψη
+download_label=Λήψη
+bookmark.title=Τρέχουσα προβολή (αντιγραφή ή άνοιγμα σε νέο παράθυρο)
+bookmark_label=Τρέχουσα προβολή
+
+# Secondary toolbar and context menu
+tools.title=Εργαλεία
+tools_label=Εργαλεία
+first_page.title=Μετάβαση στην πρώτη σελίδα
+first_page.label=Μετάβαση στην πρώτη σελίδα
+first_page_label=Μετάβαση στην πρώτη σελίδα
+last_page.title=Μετάβαση στην τελευταία σελίδα
+last_page.label=Μετάβαση στην τελευταία σελίδα
+last_page_label=Μετάβαση στην τελευταία σελίδα
+page_rotate_cw.title=Δεξιόστροφη περιστροφή
+page_rotate_cw.label=Δεξιόστροφη περιστροφή
+page_rotate_cw_label=Δεξιόστροφη περιστροφή
+page_rotate_ccw.title=Αριστερόστροφη περιστροφή
+page_rotate_ccw.label=Αριστερόστροφη περιστροφή
+page_rotate_ccw_label=Αριστερόστροφη περιστροφή
+
+cursor_text_select_tool.title=Ενεργοποίηση εργαλείου επιλογής κειμένου
+cursor_text_select_tool_label=Εργαλείο επιλογής κειμένου
+cursor_hand_tool.title=Ενεργοποίηση εργαλείου χεριού
+cursor_hand_tool_label=Εργαλείο χεριού
+
+scroll_vertical.title=Χρήση κάθετης κύλισης
+scroll_vertical_label=Κάθετη κύλιση
+scroll_horizontal.title=Χρήση οριζόντιας κύλισης
+scroll_horizontal_label=Οριζόντια κύλιση
+scroll_wrapped.title=Χρήση κυκλικής κύλισης
+scroll_wrapped_label=Κυκλική κύλιση
+
+spread_none.title=Να μην γίνει σύνδεση επεκτάσεων σελίδων
+spread_none_label=Χωρίς επεκτάσεις
+spread_odd.title=Σύνδεση επεκτάσεων σελίδων ξεκινώντας από τις μονές σελίδες
+spread_odd_label=Μονές επεκτάσεις
+spread_even.title=Σύνδεση επεκτάσεων σελίδων ξεκινώντας από τις ζυγές σελίδες
+spread_even_label=Ζυγές επεκτάσεις
+
+# Document properties dialog box
+document_properties.title=Ιδιότητες εγγράφου…
+document_properties_label=Ιδιότητες εγγράφου…
+document_properties_file_name=Όνομα αρχείου:
+document_properties_file_size=Μέγεθος αρχείου:
+# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}"
+# will be replaced by the PDF file size in kilobytes, respectively in bytes.
+document_properties_kb={{size_kb}} KB ({{size_b}} bytes)
+# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}"
+# will be replaced by the PDF file size in megabytes, respectively in bytes.
+document_properties_mb={{size_mb}} MB ({{size_b}} bytes)
+document_properties_title=Τίτλος:
+document_properties_author=Συγγραφέας:
+document_properties_subject=Θέμα:
+document_properties_keywords=Λέξεις κλειδιά:
+document_properties_creation_date=Ημερομηνία δημιουργίας:
+document_properties_modification_date=Ημερομηνία τροποποίησης:
+# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}"
+# will be replaced by the creation/modification date, and time, of the PDF file.
+document_properties_date_string={{date}}, {{time}}
+document_properties_creator=Δημιουργός:
+document_properties_producer=Παραγωγός PDF:
+document_properties_version=Έκδοση PDF:
+document_properties_page_count=Αριθμός σελίδων:
+document_properties_page_size=Μέγεθος σελίδας:
+document_properties_page_size_unit_inches=ίντσες
+document_properties_page_size_unit_millimeters=mm
+document_properties_page_size_orientation_portrait=κατακόρυφα
+document_properties_page_size_orientation_landscape=οριζόντια
+document_properties_page_size_name_a3=A3
+document_properties_page_size_name_a4=A4
+document_properties_page_size_name_letter=Επιστολή
+document_properties_page_size_name_legal=Τύπου Legal
+# LOCALIZATION NOTE (document_properties_page_size_dimension_string):
+# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by
+# the size, respectively their unit of measurement and orientation, of the (current) page.
+document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}})
+# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string):
+# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by
+# the size, respectively their unit of measurement, name, and orientation, of the (current) page.
+document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}})
+# LOCALIZATION NOTE (document_properties_linearized): The linearization status of
+# the document; usually called "Fast Web View" in English locales of Adobe software.
+document_properties_linearized=Ταχεία προβολή ιστού:
+document_properties_linearized_yes=Ναι
+document_properties_linearized_no=Όχι
+document_properties_close=Κλείσιμο
+
+print_progress_message=Προετοιμασία του εγγράφου για εκτύπωση…
+# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by
+# a numerical per cent value.
+print_progress_percent={{progress}}%
+print_progress_close=Ακύρωση
+
+# Tooltips and alt text for side panel toolbar buttons
+# (the _label strings are alt text for the buttons, the .title strings are
+# tooltips)
+toggle_sidebar.title=(Απ)ενεργοποίηση πλευρικής στήλης
+toggle_sidebar_notification.title=(Απ)ενεργοποίηση πλευρικής στήλης (το έγγραφο περιέχει περίγραμμα/συνημμένα)
+toggle_sidebar_notification2.title=(Απ)ενεργοποίηση πλευρικής στήλης (το έγγραφο περιέχει περίγραμμα/συνημμένα/επίπεδα)
+toggle_sidebar_label=(Απ)ενεργοποίηση πλευρικής στήλης
+document_outline.title=Εμφάνιση διάρθρωσης εγγράφου (διπλό κλικ για ανάπτυξη/σύμπτυξη όλων των στοιχείων)
+document_outline_label=Διάρθρωση εγγράφου
+attachments.title=Προβολή συνημμένων
+attachments_label=Συνημμένα
+layers.title=Εμφάνιση επιπέδων (διπλό κλικ για επαναφορά όλων των επιπέδων στην προεπιλεγμένη κατάσταση)
+layers_label=Επίπεδα
+thumbs.title=Προβολή μικρογραφιών
+thumbs_label=Μικρογραφίες
+current_outline_item.title=Εύρεση τρέχοντος στοιχείου διάρθρωσης
+current_outline_item_label=Τρέχον στοιχείο διάρθρωσης
+findbar.title=Εύρεση στο έγγραφο
+findbar_label=Εύρεση
+
+additional_layers=Επιπρόσθετα επίπεδα
+# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number.
+page_canvas=Σελίδα {{page}}
+# Thumbnails panel item (tooltip and alt text for images)
+# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page
+# number.
+thumb_page_title=Σελίδα {{page}}
+# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page
+# number.
+thumb_page_canvas=Μικρογραφία της σελίδας {{page}}
+
+# Find panel button title and messages
+find_input.title=Εύρεση
+find_input.placeholder=Εύρεση στο έγγραφο…
+find_previous.title=Εύρεση της προηγούμενης εμφάνισης της φράσης
+find_previous_label=Προηγούμενο
+find_next.title=Εύρεση της επόμενης εμφάνισης της φράσης
+find_next_label=Επόμενο
+find_highlight=Επισήμανση όλων
+find_match_case_label=Ταίριασμα χαρακτήρα
+find_entire_word_label=Ολόκληρες λέξεις
+find_reached_top=Έλευση στην αρχή του εγγράφου, συνέχεια από το τέλος
+find_reached_bottom=Έλευση στο τέλος του εγγράφου, συνέχεια από την αρχή
+# LOCALIZATION NOTE (find_match_count): The supported plural forms are
+# [one|two|few|many|other], with [other] as the default value.
+# "{{current}}" and "{{total}}" will be replaced by a number representing the
+# index of the currently active find result, respectively a number representing
+# the total number of matches in the document.
+find_match_count={[ plural(total) ]}
+find_match_count[one]={{current}} από {{total}} αντιστοιχία
+find_match_count[two]={{current}} από {{total}} αντιστοιχίες
+find_match_count[few]={{current}} από {{total}} αντιστοιχίες
+find_match_count[many]={{current}} από {{total}} αντιστοιχίες
+find_match_count[other]={{current}} από {{total}} αντιστοιχίες
+# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are
+# [zero|one|two|few|many|other], with [other] as the default value.
+# "{{limit}}" will be replaced by a numerical value.
+find_match_count_limit={[ plural(limit) ]}
+find_match_count_limit[zero]=Περισσότερες από {{limit}} αντιστοιχίες
+find_match_count_limit[one]=Περισσότερες από {{limit}} αντιστοιχία
+find_match_count_limit[two]=Περισσότερες από {{limit}} αντιστοιχίες
+find_match_count_limit[few]=Περισσότερες από {{limit}} αντιστοιχίες
+find_match_count_limit[many]=Περισσότερες από {{limit}} αντιστοιχίες
+find_match_count_limit[other]=Περισσότερες από {{limit}} αντιστοιχίες
+find_not_found=Η φράση δεν βρέθηκε
+
+# Error panel labels
+error_more_info=Περισσότερες πληροφορίες
+error_less_info=Λιγότερες πληροφορίες
+error_close=Κλείσιμο
+# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be
+# replaced by the PDF.JS version and build ID.
+error_version_info=PDF.js v{{version}} (build: {{build}})
+# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an
+# english string describing the error.
+error_message=Μήνυμα: {{message}}
+# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack
+# trace.
+error_stack=Στοίβα: {{stack}}
+# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename
+error_file=Αρχείο: {{file}}
+# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number
+error_line=Γραμμή: {{line}}
+rendering_error=Προέκυψε σφάλμα κατά την ανάλυση της σελίδας.
+
+# Predefined zoom values
+page_scale_width=Πλάτος σελίδας
+page_scale_fit=Μέγεθος σελίδας
+page_scale_auto=Αυτόματο ζουμ
+page_scale_actual=Πραγματικό μέγεθος
+# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a
+# numerical scale value.
+page_scale_percent={{scale}}%
+
+# Loading indicator messages
+loading_error_indicator=Σφάλμα
+loading_error=Προέκυψε ένα σφάλμα κατά τη φόρτωση του PDF.
+invalid_file_error=Μη έγκυρο ή κατεστραμμένο αρχείο PDF.
+missing_file_error=Λείπει αρχείο PDF.
+unexpected_response_error=Μη αναμενόμενη απόκριση από το διακομιστή.
+
+# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be
+# replaced by the modification date, and time, of the annotation.
+annotation_date_string={{date}}, {{time}}
+
+# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip.
+# "{{type}}" will be replaced with an annotation type from a list defined in
+# the PDF spec (32000-1:2008 Table 169 – Annotation types).
+# Some common types are e.g.: "Check", "Text", "Comment", "Note"
+text_annotation_type.alt=[{{type}} Σχόλιο]
+password_label=Εισαγωγή κωδικού για το άνοιγμα του PDF αρχείου.
+password_invalid=Μη έγκυρος κωδικός. Προσπαθείστε ξανά.
+password_ok=OK
+password_cancel=Ακύρωση
+
+printing_not_supported=Προειδοποίηση: Η εκτύπωση δεν υποστηρίζεται πλήρως από αυτόν τον περιηγητή.
+printing_not_ready=Προειδοποίηση: Το PDF δεν φορτώθηκε πλήρως για εκτύπωση.
+web_fonts_disabled=Οι γραμματοσειρές Web απενεργοποιημένες: αδυναμία χρήσης των ενσωματωμένων γραμματοσειρών PDF.
diff --git a/l10n-el/browser/profile/bookmarks.inc b/l10n-el/browser/profile/bookmarks.inc
new file mode 100644
index 0000000000..0866f56695
--- /dev/null
+++ b/l10n-el/browser/profile/bookmarks.inc
@@ -0,0 +1,72 @@
+# 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 emptyLines
+
+# LOCALIZATION NOTE: The 'en-US' strings in the URLs will be replaced with
+# your locale code, and link to your translated pages as soon as they're
+# live.
+
+#define bookmarks_title Σελιδοδείκτες
+#define bookmarks_heading Σελιδοδείκτες
+
+#define bookmarks_toolbarfolder Φάκελος γραμμής σελιδοδεικτών
+#define bookmarks_toolbarfolder_description Προσθέστε σελιδοδείκτες σε αυτό το φάκελο για να εμφανιστούν στη γραμμή σελιδοδεικτών
+
+# LOCALIZATION NOTE (getting_started):
+# link title for https://www.mozilla.org/en-US/firefox/central/
+#define getting_started Ξεκινώντας
+
+# LOCALIZATION NOTE (firefox_heading):
+# Firefox links folder name
+#define firefox_heading Mozilla Firefox
+
+# LOCALIZATION NOTE (firefox_help):
+# link title for https://www.mozilla.org/en-US/firefox/help/
+#define firefox_help Βοήθεια και οδηγοί χρήσης
+
+# LOCALIZATION NOTE (firefox_customize):
+# link title for https://www.mozilla.org/en-US/firefox/customize/
+#define firefox_customize Προσαρμογή του Firefox
+
+# LOCALIZATION NOTE (firefox_community):
+# link title for https://www.mozilla.org/en-US/contribute/
+#define firefox_community Συμμετοχή
+
+# LOCALIZATION NOTE (firefox_about):
+# link title for https://www.mozilla.org/en-US/about/
+#define firefox_about Σχετικά με εμάς
+
+# LOCALIZATION NOTE (nightly_heading):
+# Firefox Nightly links folder name
+#define nightly_heading Πόροι Firefox Nightly
+
+# LOCALIZATION NOTE (nightly_blog):
+# Nightly builds only, link title for https://blog.nightly.mozilla.org/
+#define nightly_blog Firefox Nightly blog
+
+# LOCALIZATION NOTE (bugzilla):
+# Nightly builds only, link title for https://bugzilla.mozilla.org/
+#define bugzilla Καταγραφή σφαλμάτων Mozilla
+
+# LOCALIZATION NOTE (mdn):
+# Nightly builds only, link title for https://developer.mozilla.org/
+#define mdn Δίκτυο Προγραμματιστών Mozilla
+
+# LOCALIZATION NOTE (nightly_tester_tools):
+# Nightly builds only, link title for https://addons.mozilla.org/en-US/firefox/addon/nightly-tester-tools/
+#define nightly_tester_tools Εργαλεία δοκιμαστών ημερήσιας έκδοσης
+
+# LOCALIZATION NOTE (crashes):
+# Nightly builds only, link title for about:crashes
+#define crashes Όλες οι καταρρεύσεις
+
+# LOCALIZATION NOTE (irc):
+# Nightly builds only, link title for ircs://irc.mozilla.org/nightly
+#define irc Συζητήστε για το Nightly στο IRC
+
+# LOCALIZATION NOTE (planet):
+# Nightly builds only, link title for https://planet.mozilla.org/
+#define planet Πλανήτης Mozilla
+
+#unfilter emptyLines
diff --git a/l10n-el/browser/updater/updater.ini b/l10n-el/browser/updater/updater.ini
new file mode 100644
index 0000000000..488956b14d
--- /dev/null
+++ b/l10n-el/browser/updater/updater.ini
@@ -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/.
+
+# This file is in the UTF-8 encoding
+# All strings must be less than 600 chars.
+
+# This file is in the UTF-8 encoding
+[Strings]
+TitleText=Ενημέρωση του %MOZ_APP_DISPLAYNAME%
+InfoText=Το %MOZ_APP_DISPLAYNAME% εγκαθιστά τις ενημερώσεις σας και θα ξεκινήσει σε λίγο…
+MozillaMaintenanceDescription=Η Υπηρεσία Συντήρησης Mozilla εξασφαλίζει ότι έχετε την πιο πρόσφατη και πιο ασφαλή έκδοση του Mozilla Firefox στον υπολογιστή σας. Η ενημέρωση του Firefox είναι εξαιρετικά σημαντική για την ασφάλεια σας στο διαδίκτυο και η Mozilla σάς συστήνει να διατηρείτε αυτή την υπηρεσία ενεργή.
diff --git a/l10n-el/calendar/README.txt b/l10n-el/calendar/README.txt
new file mode 100644
index 0000000000..8886c8d072
--- /dev/null
+++ b/l10n-el/calendar/README.txt
@@ -0,0 +1,3 @@
+For information about installing, running and configuring Lightning
+including a list of known issues and troubleshooting information,
+refer to: http://www.mozilla.org/projects/calendar/
diff --git a/l10n-el/calendar/calendar/calendar-context-menus.ftl b/l10n-el/calendar/calendar/calendar-context-menus.ftl
new file mode 100644
index 0000000000..cab047769a
--- /dev/null
+++ b/l10n-el/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 = Επεξεργασία
+ .accesskey = Ε
diff --git a/l10n-el/calendar/calendar/calendar-ics-file-dialog.ftl b/l10n-el/calendar/calendar/calendar-ics-file-dialog.ftl
new file mode 100644
index 0000000000..824c7d5103
--- /dev/null
+++ b/l10n-el/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 = Εισαγωγή συμβάντων ημερολογίου και εργασιών
+calendar-ics-file-dialog-import-event-button-label = Εισαγωγή συμβάντος
+calendar-ics-file-dialog-import-task-button-label = Εισαγωγή εργασίας
+calendar-ics-file-dialog-2 =
+ .buttonlabelaccept = Εισαγωγή όλων
+calendar-ics-file-accept-button-ok-label = OK
+calendar-ics-file-cancel-button-close-label = Κλείσιμο
+calendar-ics-file-dialog-message-2 = Εισαγωγή από αρχείο:
+calendar-ics-file-dialog-calendar-menu-label = Εισαγωγή στο ημερολόγιο:
+calendar-ics-file-dialog-items-loading-message =
+ .value = Φόρτωση στοιχείων…
+calendar-ics-file-dialog-progress-message = Εισαγωγή…
+calendar-ics-file-import-success = Επιτυχής εισαγωγή!
+calendar-ics-file-import-error = Προέκυψε σφάλμα και η εισαγωγή απέτυχε.
+calendar-ics-file-import-complete = Η εισαγωγή ολοκληρώθηκε.
+calendar-ics-file-import-duplicates =
+ { $duplicatesCount ->
+ [one] Έγινε παράλειψη ενός στοιχείου καθώς υπάρχει ήδη στο ημερολόγιο προορισμού.
+ *[other] Έγινε παράλειψη { $duplicatesCount } στοιχείων καθώς υπάρχουν ήδη στο ημερολόγιο προορισμού.
+ }
+calendar-ics-file-import-errors =
+ { $errorsCount ->
+ [one] Αποτυχία εισαγωγής ενός στοιχείου. Ελέγξτε την Κονσόλα σφαλμάτων για λεπτομέρειες.
+ *[other] Αποτυχία εισαγωγής { $errorsCount } στοιχείων. Ελέγξτε την Κονσόλα σφαλμάτων για λεπτομέρειες.
+ }
+calendar-ics-file-dialog-no-calendars = Δεν υπάρχουν ημερολόγια που μπορούν να εισάγουν συμβάντα ή εργασίες.
diff --git a/l10n-el/calendar/calendar/calendar-summary-dialog.ftl b/l10n-el/calendar/calendar/calendar-summary-dialog.ftl
new file mode 100644
index 0000000000..f35e9055d0
--- /dev/null
+++ b/l10n-el/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 = Επεξεργασία
+ .accesskey = Ε
+calendar-summary-dialog-edit-menu-button =
+ .label = Επεξεργασία
+edit-button-context-menu-this-occurrence =
+ .label = Επεξεργασία μόνο αυτού του συμβάντος
+ .accesskey = ξ
+edit-button-context-menu-all-occurrences =
+ .label = Επεξεργασία όλων των συμβάντων
+ .accesskey = ρ
diff --git a/l10n-el/calendar/calendar/calendar-uri-redirect-dialog.ftl b/l10n-el/calendar/calendar/calendar-uri-redirect-dialog.ftl
new file mode 100644
index 0000000000..e686b74300
--- /dev/null
+++ b/l10n-el/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 = Ανακατεύθυνση URI ημερολογίου
+calendar-uri-redirect-description =
+ Ο διακομιστής ανακατευθύνει το URI για το ημερολόγιο "{ $calendarName }".
+ Να επιτραπεί η ανακατεύθυνση και να χρησιμοποιηθεί το νέο URI για αυτό το ημερολόγιο;
+calendar-uri-redirect-original-uri-label = Τρέχον URI:
+calendar-uri-redirect-target-uri-label = Ανακατεύθυνση σε νέο URI:
diff --git a/l10n-el/calendar/calendar/calendar-widgets.ftl b/l10n-el/calendar/calendar/calendar-widgets.ftl
new file mode 100644
index 0000000000..5082fa7c67
--- /dev/null
+++ b/l10n-el/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 = Όλα τα ημερολόγια έχουν απενεργοποιηθεί αυτή τη στιγμή. Ενεργοποιήστε ένα υπάρχον ημερολόγιο ή προσθέστε ένα νέο για να δημιουργήσετε και να επεξεργαστείτε συμβάντα.
+calendar-deactivated-notification-tasks = Όλα τα ημερολόγια έχουν απενεργοποιηθεί αυτή τη στιγμή. Ενεργοποιήστε ένα υπάρχον ημερολόγιο ή προσθέστε ένα νέο για να δημιουργήσετε και να επεξεργαστείτε εργασίες.
diff --git a/l10n-el/calendar/calendar/category-dialog.ftl b/l10n-el/calendar/calendar/category-dialog.ftl
new file mode 100644
index 0000000000..38a4cc51dd
--- /dev/null
+++ b/l10n-el/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 = Όνομα
+category-color-label =
+ .label = Χρήση χρώματος
diff --git a/l10n-el/calendar/calendar/preferences.ftl b/l10n-el/calendar/calendar/preferences.ftl
new file mode 100644
index 0000000000..4edcbef07d
--- /dev/null
+++ b/l10n-el/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 = Ημερολόγιο
+calendar-title-reminder = Υπενθυμίσεις
+calendar-title-category = Κατηγορίες
+dateformat-label =
+ .value = Μορφή ημερομηνίας:
+ .accesskey = φ
+# $date (String) - the formatted example date
+dateformat-long =
+ .label = Πλήρης: { $date }
+# $date (String) - the formatted example date
+dateformat-short =
+ .label = Σύντομη: { $date }
+timezone-label =
+ .value = Ζώνη ώρας:
+weekstart-label =
+ .value = Η εβδομάδα ξεκινάει:
+ .accesskey = ξ
+day-1-name =
+ .label = Κυριακή
+day-2-name =
+ .label = Δευτέρα
+day-3-name =
+ .label = Τρίτη
+day-4-name =
+ .label = Τετάρτη
+day-5-name =
+ .label = Πέμπτη
+day-6-name =
+ .label = Παρασκευή
+day-7-name =
+ .label = Σάββατο
+show-weeknumber-label =
+ .label = Εμφάνιση αριθμού εβδομάδας στις διάφορες προβολές και στον μίνι μήνα
+ .accesskey = θ
+workdays-label =
+ .value = Εργάσιμες ημέρες:
+day-1-checkbox =
+ .label = Κυρ
+ .accesskey = Κ
+day-2-checkbox =
+ .label = Δευ
+ .accesskey = Δ
+day-3-checkbox =
+ .label = Τρί
+ .accesskey = ρ
+day-4-checkbox =
+ .label = Τετ
+ .accesskey = Τ
+day-5-checkbox =
+ .label = Πέμ
+ .accesskey = μ
+day-6-checkbox =
+ .label = Παρ
+ .accesskey = Π
+day-7-checkbox =
+ .label = Σάβ
+ .accesskey = Σ
+dayweek-legend = Προβολές ημέρας και εβδομάδας
+visible-hours-label =
+ .value = Να εμφανίζονται:
+ .accesskey = φ
+visible-hours-end-label =
+ .value = ώρες τη φορά
+day-start-label =
+ .value = Η ημέρα ξεκινάει:
+ .accesskey = κ
+day-end-label =
+ .value = Η ημέρα τελειώνει:
+ .accesskey = τ
+midnight-label =
+ .label = Μεσάνυχτα
+noon-label =
+ .label = Μεσημέρι
+location-checkbox =
+ .label = Εμφάνιση τοποθεσίας
+ .accesskey = τ
+multiweek-legend = Προβολή πολλαπλών εβδομάδων
+number-of-weeks-label =
+ .value = Αριθμός εβδομάδων προς εμφάνιση (συμπεριλαμβανομένων των προηγούμενων εβδομάδων):
+ .accesskey = ε
+week-0-label =
+ .label = καμία
+week-1-label =
+ .label = 1 εβδομάδα
+week-2-label =
+ .label = 2 εβδομάδες
+week-3-label =
+ .label = 3 εβδομάδες
+week-4-label =
+ .label = 4 εβδομάδες
+week-5-label =
+ .label = 5 εβδομάδες
+week-6-label =
+ .label = 6 εβδομάδες
+previous-weeks-label =
+ .value = Προηγούμενες εβδομάδες προς εμφάνιση:
+ .accesskey = γ
+todaypane-legend = Προβολή ημέρας
+# 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 = Η ενότητα "Επερχόμενα" εμφανίζει:
+ .accesskey = Ε
+event-task-legend = Συμβάντα και εργασίες
+default-length-label =
+ .value = Προεπιλεγμένο μήκος γεγονότων και εργασιών:
+ .accesskey = ε
+task-start-label =
+ .value = Ημερομηνία έναρξης:
+task-start-1-label =
+ .label = Καμία
+task-start-2-label =
+ .label = Αρχή ημέρας
+task-start-3-label =
+ .label = Τέλος ημέρας
+task-start-4-label =
+ .label = Αύριο
+task-start-5-label =
+ .label = Επόμενη εβδομάδα
+task-start-6-label =
+ .label = Σε σχέση με την τρέχουσα χρονική στιγμή
+task-start-7-label =
+ .label = Σε σχέση με την έναρξη
+task-start-8-label =
+ .label = Σε σχέση με την επόμενη ώρα
+task-due-label =
+ .value = Προθεσμία:
+edit-intab-label =
+ .label = Επεξεργασία των συμβάντων και εργασιών σε νέα καρτέλα αντί σε παράθυρο διαλόγου.
+ .accesskey = κ
+accessibility-legend = Προσβασιμότητα
+accessibility-colors-label =
+ .label = Βελτιστοποίηση χρωμάτων για προσιτότητα
+ .accesskey = Β
+reminder-legend = Όταν εκπνέει ο χρόνος της υπενθύμισης:
+reminder-play-checkbox =
+ .label = Αναπαραγωγή ήχου
+ .accesskey = χ
+reminder-play-alarm-button =
+ .label = Αναπαραγωγή
+ .accesskey = π
+reminder-default-sound-label =
+ .label = Χρήση προεπιλεγμένου ήχου
+ .accesskey = λ
+reminder-custom-sound-label =
+ .label = Χρήση του ακόλουθου αρχείου ήχου
+ .accesskey = Χ
+reminder-browse-sound-label =
+ .label = Περιήγηση…
+ .accesskey = Π
+reminder-dialog-label =
+ .label = Εμφάνιση του παραθύρου διαλόγου υπενθύμισης
+ .accesskey = θ
+missed-reminder-label =
+ .label = Εμφάνιση χαμένων υπενθυμίσεων για εγγράψιμα ημερολόγια
+ .accesskey = φ
+reminder-default-legend = Προεπιλογές υπενθύμισης
+default-snooze-label =
+ .value = Προεπιλεγμένη διάρκεια αναστολής υπενθύμισης:
+ .accesskey = δ
+event-alarm-label =
+ .value = Να μπαίνει εκ προεπιλογής υπενθύμιση για συμβάντα:
+ .accesskey = σ
+alarm-on-label =
+ .label = Ναι
+alarm-off-label =
+ .label = Όχι
+task-alarm-label =
+ .value = Να μπαίνει εκ προεπιλογής υπενθύμιση για εργασίες:
+ .accesskey = ε
+event-alarm-time-label =
+ .value = Προεπιλεγμένος χρόνος που να ορίζεται η υπενθύμιση πριν από συμβάν:
+ .accesskey = υ
+task-alarm-time-label =
+ .value = Προεπιλεγμένος χρόνος που να ορίζεται η υπενθύμιση πριν από εργασία:
+ .accesskey = ρ
+category-new-label = Νέα κατηγορία
+category-edit-label = Επεξεργασία κατηγορίας
+category-overwrite-title = Προειδοποίηση: Διπλότυπο όνομα
+category-overwrite = Υπάρχει ήδη κατηγορία με αυτό το όνομα. \n Θέλετε να την αντικαταστήσετε;
+category-blank-warning = Πρέπει να εισαγάγετε όνομα κατηγορίας.
diff --git a/l10n-el/calendar/chrome/calendar/calendar-alarms.properties b/l10n-el/calendar/chrome/calendar/calendar-alarms.properties
new file mode 100644
index 0000000000..9eb511798b
--- /dev/null
+++ b/l10n-el/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=Στιγμή έναρξης συμβάντος
+reminderTitleAtStartTask=Στιγμή έναρξης εργασίας
+reminderTitleAtEndEvent=Στιγμή λήξης συμβάντος
+reminderTitleAtEndTask=Στιγμή λήξης εργασίας
+
+# 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=Αναστολή υπενθύμισης για %1$S
+
+reminderCustomOriginBeginBeforeEvent=πριν την έναρξη του συμβάντος
+reminderCustomOriginBeginAfterEvent=μετά την έναρξη του συμβάντος
+reminderCustomOriginEndBeforeEvent=πριν τη λήξη του συμβάντος
+reminderCustomOriginEndAfterEvent=μετά τη λήξη του συμβάντος
+reminderCustomOriginBeginBeforeTask=πριν την έναρξη της εργασίας
+reminderCustomOriginBeginAfterTask=μετά την έναρξη της εργασίας
+reminderCustomOriginEndBeforeTask=πριν τη λήξη της εργασίας
+reminderCustomOriginEndAfterTask=μετά τη λήξη της εργασίας
+
+reminderErrorMaxCountReachedEvent=Το επιλεγμένο ημερολόγιο έχει περιορισμό #1 υπενθύμισης ανά συμβάν.;Το επιλεγμένο ημερολόγιο έχει περιορισμό #1 υπενθυμίσεων ανά συμβάν.
+reminderErrorMaxCountReachedTask=Το επιλεγμένο ημερολόγιο έχει περιορισμό #1 υπενθύμισης ανά εργασία.;Το επιλεγμένο ημερολόγιο έχει περιορισμό #1 υπενθυμίσεων ανά εργασία.
+
+# 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=Οι υπενθυμίσεις για ημερολόγια μόνο ανάγνωσης δεν είναι δυνατό να ανασταλούν, αλλά μόνο να αγνοηθούν - το πλήκτρο '%1$S' θα αναστείλει τις υπενθυμίσεις μόνο για εγγράψιμα ημερολόγια.
+# LOCALIZATION NOTE (reminderDisabledSnoozeButtonTooltip)
+# This tooltip is only displayed, if the button is disabled
+reminderDisabledSnoozeButtonTooltip=Η αναστολή υπενθύμισης δεν υποστηρίζεται για ημερολόγια μόνο ανάγνωσης
diff --git a/l10n-el/calendar/chrome/calendar/calendar-event-dialog-attendees.properties b/l10n-el/calendar/chrome/calendar/calendar-event-dialog-attendees.properties
new file mode 100644
index 0000000000..b21cf49d22
--- /dev/null
+++ b/l10n-el/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 = Απαιτούμενη συμμετοχή
+event.attendee.role.optional = Προαιρετική συμμετοχή
+event.attendee.role.nonparticipant = Μη συμμετέχων
+event.attendee.role.chair = Επικεφαλής
+event.attendee.role.unknown = Άγνωστος συμμετέχων (%1$S)
+
+event.attendee.usertype.individual = Άτομο
+event.attendee.usertype.group = Ομάδα
+event.attendee.usertype.resource = Πόρος
+event.attendee.usertype.room = Αίθουσα
+event.attendee.usertype.unknown = Άγνωστος τύπος (%1$S)
diff --git a/l10n-el/calendar/chrome/calendar/calendar-event-dialog.dtd b/l10n-el/calendar/chrome/calendar/calendar-event-dialog.dtd
new file mode 100644
index 0000000000..1cacaed08c
--- /dev/null
+++ b/l10n-el/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 "Επεξεργασία στοιχείου" >
+
+<!ENTITY event.dialog.keepDurationButton.tooltip "Διατήρηση της διάρκειας κατά την αλλαγή της ημερομηνίας λήξης">
+<!ENTITY event.dialog.keepDurationButton.accesskey "K">
+
+<!ENTITY newevent.from.label "Από" >
+<!ENTITY newevent.to.label "Έως" >
+
+<!ENTITY newevent.status.label "Κατάσταση" >
+<!ENTITY newevent.status.accesskey "Κ" >
+<!ENTITY newevent.eventStatus.none.label "Μη καθορισμένη" >
+<!ENTITY newevent.eventStatus.none.accesskey "Μ" >
+<!ENTITY newevent.todoStatus.none.label "Μη καθορισμένο" >
+<!ENTITY newevent.eventStatus.cancelled.label "Ακυρωμένο" >
+<!ENTITY newevent.eventStatus.cancelled.accesskey "Α" >
+<!ENTITY newevent.todoStatus.cancelled.label "Ακυρωμένη" >
+<!ENTITY newevent.status.tentative.label "Με επιφύλαξη" >
+<!ENTITY newevent.status.tentative.accesskey "φ" >
+<!ENTITY newevent.status.confirmed.label "Επιβεβαιωμένο" >
+<!ENTITY newevent.status.confirmed.accesskey "Ε" >
+<!ENTITY newevent.status.needsaction.label "Απαιτείται ενέργεια" >
+<!ENTITY newevent.status.inprogress.label "Σε εξέλιξη" >
+<!ENTITY newevent.status.completed.label "Ολοκληρώθηκε στις" >
+
+<!-- The following entity is for New Task dialog only -->
+<!ENTITY newtodo.percentcomplete.label "&#37; ολοκληρωμένο">
+
+<!-- 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 "Ειδοποίηση συμμετεχόντων">
+<!ENTITY event.attendees.notify.accesskey "π">
+<!ENTITY event.attendees.notifyundisclosed.label "Χωριστή πρόσκληση ανά συμμετέχοντα">
+<!ENTITY event.attendees.notifyundisclosed.accesskey "Χ">
+<!ENTITY event.attendees.notifyundisclosed.tooltip "Αυτή η επιλογή αποστέλλει μία πρόσκληση με ηλεκτρονικό ταχυδρομείο ανά συμμετέχοντα. Κάθε πρόσκληση περιέχει μόνο τον αποδέκτη συμμετέχοντα, έτσι ώστε οι ταυτότητες των άλλων συμμετεχόντων να μην αποκαλύπτονται.">
+<!ENTITY event.attendees.disallowcounter.label "Να μην επιτραπεί αντιπρόταση">
+<!ENTITY event.attendees.disallowcounter.accesskey "α">
+<!ENTITY event.attendees.disallowcounter.tooltip "Υποδηλώνει αν θα δέχεστε αντιπροτάσεις">
+
+<!-- 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 "Νέο">
+<!ENTITY event.menu.item.new.accesskey "Ν">
+<!ENTITY event.menu.item.new.event.label "Συμβάν">
+<!ENTITY event.menu.item.new.event.accesskey "Σ">
+<!ENTITY event.menu.item.new.task.label "Εργασία">
+<!ENTITY event.menu.item.new.task.accesskey "Ε">
+<!ENTITY event.menu.item.new.message.label "Μήνυμα">
+<!ENTITY event.menu.item.new.message.accesskey "Μ">
+<!ENTITY event.menu.item.new.contact.label "Επαφή βιβλίου διευθύνσεων">
+<!ENTITY event.menu.item.new.contact.accesskey "φ">
+<!ENTITY event.menu.item.close.label "Κλείσιμο">
+<!ENTITY event.menu.item.close.accesskey "Κ">
+
+<!-- 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 "Αποθήκευση">
+<!ENTITY event.menu.item.save.accesskey "Α">
+<!ENTITY event.menu.item.save.tab.accesskey "α">
+
+<!-- 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 "Αποθήκευση και κλείσιμο">
+<!ENTITY event.menu.item.saveandclose.accesskey "θ">
+<!ENTITY event.menu.item.saveandclose.tab.accesskey "κ">
+
+<!ENTITY event.menu.item.delete.label "Διαγραφή…">
+<!ENTITY event.menu.item.delete.accesskey "Δ">
+<!ENTITY event.menu.item.page.setup.label "Διαμόρφωση σελίδας">
+<!ENTITY event.menu.item.page.setup.accesskey "μ">
+<!ENTITY event.menu.item.print.label "Εκτύπωση">
+<!ENTITY event.menu.item.print.accesskey "Ε">
+
+<!ENTITY event.menu.edit.label "Επεξεργασία">
+<!ENTITY event.menu.edit.accesskey "Ε">
+<!ENTITY event.menu.edit.undo.label "Αναίρεση">
+<!ENTITY event.menu.edit.undo.accesskey "ρ">
+<!ENTITY event.menu.edit.redo.label "Επανάληψη">
+<!ENTITY event.menu.edit.redo.accesskey "Ε">
+<!ENTITY event.menu.edit.cut.label "Αποκοπή">
+<!ENTITY event.menu.edit.cut.accesskey "κ">
+<!ENTITY event.menu.edit.copy.label "Αντιγραφή">
+<!ENTITY event.menu.edit.copy.accesskey "γ">
+<!ENTITY event.menu.edit.paste.label "Επικόλληση">
+<!ENTITY event.menu.edit.paste.accesskey "λ">
+<!ENTITY event.menu.edit.select.all.label "Επιλογή όλων">
+<!ENTITY event.menu.edit.select.all.accesskey "λ">
+
+<!ENTITY event.menu.view.label "Προβολή">
+<!ENTITY event.menu.view.accesskey "Π">
+<!ENTITY event.menu.view.toolbars.label "Γραμμές εργαλείων">
+<!ENTITY event.menu.view.toolbars.accesskey "Γ">
+<!ENTITY event.menu.view.toolbars.event.label "Γραμμή εργαλείων γεγονότος">
+<!ENTITY event.menu.view.toolbars.event.accesskey "Γ">
+<!ENTITY event.menu.view.toolbars.customize.label "Προσαρμογή…">
+<!ENTITY event.menu.view.toolbars.customize.accesskey "Π">
+<!ENTITY event.menu.view.showlink.label "Εμφάνιση σχετικού συνδέσμου">
+<!ENTITY event.menu.view.showlink.accesskey "Ε">
+
+<!ENTITY event.menu.options.label "Επιλογές">
+<!ENTITY event.menu.options.accesskey "λ">
+<!ENTITY event.menu.options.attendees.label "Πρόσκληση συμμετεχόντων…">
+<!ENTITY event.menu.options.attendees.accesskey "σ">
+<!ENTITY event.menu.options.timezone2.label "Εμφάνιση ζωνών ώρας">
+<!ENTITY event.menu.options.timezone2.accesskey "ζ">
+<!ENTITY event.menu.options.priority2.label "Προτεραιότητα">
+<!ENTITY event.menu.options.priority2.accesskey "Π">
+<!ENTITY event.menu.options.priority.notspecified.label "Μη καθορισμένη">
+<!ENTITY event.menu.options.priority.notspecified.accesskey "Μ">
+<!ENTITY event.menu.options.priority.low.label "Χαμηλή">
+<!ENTITY event.menu.options.priority.low.accesskey "Χ">
+<!ENTITY event.menu.options.priority.normal.label "Κανονική">
+<!ENTITY event.menu.options.priority.normal.accesskey "Κ">
+<!ENTITY event.menu.options.priority.high.label "Υψηλή">
+<!ENTITY event.menu.options.priority.high.accesskey "Υ">
+<!ENTITY event.menu.options.privacy.label "Απόρρητο">
+<!ENTITY event.menu.options.privacy.accesskey "Α">
+<!ENTITY event.menu.options.privacy.public.label "Δημόσιο συμβάν">
+<!ENTITY event.menu.options.privacy.public.accesskey "Δ">
+<!ENTITY event.menu.options.privacy.confidential.label "Αποκάλυψη μόνο ώρας και ημερομηνίας">
+<!ENTITY event.menu.options.privacy.confidential.accesskey "Α">
+<!ENTITY event.menu.options.privacy.private.label "Ιδιωτικό συμβάν">
+<!ENTITY event.menu.options.privacy.private.accesskey "Ι">
+<!ENTITY event.menu.options.show.time.label "Να εμφανίζομαι ως">
+<!ENTITY event.menu.options.show.time.accesskey "Ν">
+<!ENTITY event.menu.options.show.time.busy.label "Απασχολημένος">
+<!ENTITY event.menu.options.show.time.busy.accesskey "Α">
+<!ENTITY event.menu.options.show.time.free.label "Διαθέσιμος">
+<!ENTITY event.menu.options.show.time.free.accesskey "Δ">
+
+<!ENTITY event.invite.attendees.label "Πρόσκληση συμμετεχόντων…">
+<!ENTITY event.invite.attendees.accesskey "σ">
+<!ENTITY event.email.attendees.label "Σύνταξη email προς κάθε συμμετέχοντα…">
+<!ENTITY event.email.attendees.accesskey "χ">
+<!ENTITY event.email.tentative.attendees.label "Σύνταξη email προς τους αναποφάσιστους συμμετέχοντες…">
+<!ENTITY event.email.tentative.attendees.accesskey "φ">
+<!ENTITY event.remove.attendees.label2 "Αφαίρεση όλων των συμμετεχόντων">
+<!ENTITY event.remove.attendees.accesskey "r">
+<!ENTITY event.remove.attendee.label "Αφαίρεση συμμετέχοντα">
+<!ENTITY event.remove.attendee.accesskey "μ">
+
+<!-- Toolbar -->
+<!ENTITY event.toolbar.save.label2 "Αποθήκευση">
+<!ENTITY event.toolbar.saveandclose.label "Αποθήκευση και κλείσιμο">
+<!ENTITY event.toolbar.delete.label "Διαγραφή">
+<!ENTITY event.toolbar.attendees.label "Πρόσκληση συμμετεχόντων">
+<!ENTITY event.toolbar.privacy.label "Απόρρητο">
+
+<!ENTITY event.toolbar.save.tooltip2 "Αποθήκευση">
+<!ENTITY event.toolbar.saveandclose.tooltip "Αποθήκευση και κλείσιμο">
+<!ENTITY event.toolbar.delete.tooltip "Διαγραφή">
+<!ENTITY event.toolbar.attendees.tooltip "Πρόσκληση συμμετεχόντων">
+<!ENTITY event.toolbar.attachments.tooltip "Προσθήκη επισυνάψεων">
+<!ENTITY event.toolbar.privacy.tooltip "Αλλαγή ιδιωτικότητας">
+<!ENTITY event.toolbar.priority.tooltip "Αλλαγή προτεραιότητας">
+<!ENTITY event.toolbar.status.tooltip "Αλλαγή κατάστασης">
+<!ENTITY event.toolbar.freebusy.tooltip "Αλλαγή της εμφάνισης ως διαθέσιμος/απασχολημένος">
+
+<!-- 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 "Εφαρμογή αντιπρότασης">
+<!ENTITY counter.button.proposal.accesskey "φ">
+<!ENTITY counter.button.proposal.tooltip2 "Τα πεδία του συμβάντος θα συμπληρωθούν με τις τιμές της αντιπρότασης, με την αποθήκευση με ή χωρίς επιπρόσθετων αλλαγών θα ειδοποιηθούν όλοι οι συμμετέχοντες αντίστοιχα">
+<!ENTITY counter.button.original.label "Εφαρμογή αρχικών δεδομένων">
+<!ENTITY counter.button.original.accesskey "ρ">
+<!ENTITY counter.button.original.tooltip2 "Τα πεδία θα συμπληρωθούν με τις τιμές από το αρχικό συμβάν, προτού γίνει η αντιπρόταση">
+
+<!-- Main page -->
+<!ENTITY event.title.textbox.label "Τίτλος:" >
+<!ENTITY event.title.textbox.accesskey "Τ">
+<!ENTITY event.location.label "Τοποθεσία:" >
+<!ENTITY event.location.accesskey "θ">
+<!ENTITY event.categories.label "Κατηγορία:">
+<!ENTITY event.categories.accesskey "γ">
+<!ENTITY event.categories.textbox.label "Προσθήκη νέας κατηγορίας" >
+<!ENTITY event.calendar.label "Ημερολόγιο:" >
+<!ENTITY event.calendar.accesskey "Η">
+<!ENTITY event.attendees.label "Συμμετέχοντες:" >
+<!ENTITY event.attendees.accesskey "μ">
+<!ENTITY event.alldayevent.label "Ολοήμερο συμβάν" >
+<!ENTITY event.alldayevent.accesskey "Ο">
+<!ENTITY event.from.label "Έναρξη:" >
+<!ENTITY event.from.accesskey "ν">
+<!ENTITY task.from.label "Έναρξη:" >
+<!ENTITY task.from.accesskey "ν">
+<!ENTITY event.to.label "Λήξη:" >
+<!ENTITY event.to.accesskey "ξ">
+<!ENTITY task.to.label "Προθεσμία:" >
+<!ENTITY task.to.accesskey "Π">
+<!ENTITY task.status.label "Κατάσταση:" >
+<!ENTITY task.status.accesskey "Κ">
+<!ENTITY event.repeat.label "Επανάληψη:" >
+<!ENTITY event.repeat.accesskey "ψ">
+<!ENTITY event.until.label "έως και τις:">
+<!ENTITY event.until.accesskey "ω">
+<!ENTITY event.reminder.label "Υπενθύμιση:" >
+<!ENTITY event.reminder.accesskey "Υ">
+<!ENTITY event.description.label "Περιγραφή:" >
+<!ENTITY event.description.accesskey "φ">
+<!ENTITY event.attachments.label "Συνημμένα:" >
+<!ENTITY event.attachments.accesskey "Σ" >
+<!ENTITY event.attachments.menubutton.label "Επισύναψη">
+<!ENTITY event.attachments.menubutton.accesskey "Ε">
+<!ENTITY event.attachments.url.label "Ιστοσελίδα…">
+<!ENTITY event.attachments.url.accesskey "Ι">
+<!ENTITY event.attachments.popup.remove.label "Αφαίρεση" >
+<!ENTITY event.attachments.popup.remove.accesskey "Α" >
+<!ENTITY event.attachments.popup.open.label "Άνοιγμα" >
+<!ENTITY event.attachments.popup.open.accesskey "Ά" >
+<!ENTITY event.attachments.popup.removeAll.label "Αφαίρεση όλων" >
+<!ENTITY event.attachments.popup.removeAll.accesskey "Α" >
+<!ENTITY event.attachments.popup.attachPage.label "Επισύναψη ιστοσελίδας…" >
+<!ENTITY event.attachments.popup.attachPage.accesskey "δ" >
+<!ENTITY event.url.label "Σχετικός σύνδεσμος:" >
+<!ENTITY event.priority2.label "Προτεραιότητα:">
+
+<!ENTITY event.reminder.none.label "Χωρίς υπενθύμιση " >
+<!ENTITY event.reminder.0minutes.before.label "0 λεπτά πριν" >
+<!ENTITY event.reminder.5minutes.before.label "5 λεπτά πριν" >
+<!ENTITY event.reminder.15minutes.before.label "15 λεπτά πριν" >
+<!ENTITY event.reminder.30minutes.before.label "30 λεπτά πριν" >
+<!ENTITY event.reminder.1hour.before.label "1 ώρα πριν" >
+<!ENTITY event.reminder.2hours.before.label "2 ώρες πριν" >
+<!ENTITY event.reminder.12hours.before.label "12 ώρες πριν" >
+<!ENTITY event.reminder.1day.before.label "1 ημέρα πριν" >
+<!ENTITY event.reminder.2days.before.label "2 ημέρες πριν" >
+<!ENTITY event.reminder.1week.before.label "1 εβδομάδα πριν" >
+<!ENTITY event.reminder.custom.label "Προσαρμογή…" >
+
+<!ENTITY event.reminder.multiple.label "Πολλαπλές υπενθυμίσεις…" >
+
+<!ENTITY event.statusbarpanel.freebusy.label "Στο διάστημα του συμβάντος εμφανίζομαι ως:">
+<!ENTITY event.statusbarpanel.privacy.label "Ιδιωτικότητα:">
+
+<!-- Recurrence dialog -->
+<!ENTITY recurrence.title.label "Επεξεργασία επανάληψης">
+
+<!ENTITY event.repeat.does.not.repeat.label "Δεν επαναλαμβάνεται">
+<!ENTITY event.repeat.daily.label "Ημερησίως">
+<!ENTITY event.repeat.weekly.label "Εβδομαδιαίως">
+<!ENTITY event.repeat.every.weekday.label "Μόνο τις καθημερινές">
+<!ENTITY event.repeat.bi.weekly.label "Ανά δεκαπενθήμερο">
+<!ENTITY event.repeat.monthly.label "Μηνιαίως">
+<!ENTITY event.repeat.yearly.label "Ετησίως">
+<!ENTITY event.repeat.custom.label "Προσαρμογή…">
+
+<!ENTITY event.recurrence.pattern.label "Μοτίβο επανάληψης">
+<!ENTITY event.recurrence.occurs.label "Να επαναλαμβάνεται" >
+<!ENTITY event.recurrence.day.label "ημερησίως" >
+<!ENTITY event.recurrence.week.label "εβδομαδιαίως" >
+<!ENTITY event.recurrence.month.label "μηνιαίως" >
+<!ENTITY event.recurrence.year.label "ετησίως" >
+
+<!ENTITY event.recurrence.pattern.every.label "ανά" >
+<!ENTITY repeat.units.days.both "ημέρα/ες" >
+<!ENTITY event.recurrence.pattern.every.weekday.label "μόνο τις καθημερινές" >
+
+<!ENTITY event.recurrence.pattern.weekly.every.label "ανά" >
+<!ENTITY repeat.units.weeks.both "εβδομάδα/ες" >
+<!ENTITY event.recurrence.on.label "κάθε:" >
+
+<!ENTITY event.recurrence.pattern.monthly.every.label "ανά" >
+<!ENTITY repeat.units.months.both "μήνα/ες" >
+<!ENTITY event.recurrence.monthly.every.label "κάθε" >
+<!ENTITY event.recurrence.monthly.first.label "κάθε πρώτη">
+<!ENTITY event.recurrence.monthly.second.label "κάθε δεύτερη">
+<!ENTITY event.recurrence.monthly.third.label "κάθε τρίτη">
+<!ENTITY event.recurrence.monthly.fourth.label "κάθε τέταρτη">
+<!ENTITY event.recurrence.monthly.fifth.label "κάθε πέμπτη">
+<!ENTITY event.recurrence.monthly.last.label "κάθε τελευταία">
+<!ENTITY event.recurrence.pattern.monthly.week.1.label "Κυριακή" >
+<!ENTITY event.recurrence.pattern.monthly.week.2.label "Δευτέρα" >
+<!ENTITY event.recurrence.pattern.monthly.week.3.label "Τρίτη" >
+<!ENTITY event.recurrence.pattern.monthly.week.4.label "Τετάρτη" >
+<!ENTITY event.recurrence.pattern.monthly.week.5.label "Πέμπτη" >
+<!ENTITY event.recurrence.pattern.monthly.week.6.label "Παρασκευή" >
+<!ENTITY event.recurrence.pattern.monthly.week.7.label "Σάββατο" >
+<!ENTITY event.recurrence.repeat.dayofmonth.label "ημέρα του μήνα">
+<!ENTITY event.recurrence.repeat.recur.label "Επανάληψη την/τις">
+
+<!ENTITY event.recurrence.every.label "ανά:" >
+<!ENTITY repeat.units.years.both "έτος/η" >
+<!ENTITY event.recurrence.pattern.yearly.every.month.label "κάθε" >
+
+<!-- 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 "Ιανουαρίου" >
+<!ENTITY event.recurrence.pattern.yearly.month.2.label "Φεβρουαρίου" >
+<!ENTITY event.recurrence.pattern.yearly.month.3.label "Μαρτίου" >
+<!ENTITY event.recurrence.pattern.yearly.month.4.label "Απριλίου" >
+<!ENTITY event.recurrence.pattern.yearly.month.5.label "Μαΐου" >
+<!ENTITY event.recurrence.pattern.yearly.month.6.label "Ιουνίου" >
+<!ENTITY event.recurrence.pattern.yearly.month.7.label "Ιουλίου" >
+<!ENTITY event.recurrence.pattern.yearly.month.8.label "Αυγούστου" >
+<!ENTITY event.recurrence.pattern.yearly.month.9.label "Σεπτεμβρίου" >
+<!ENTITY event.recurrence.pattern.yearly.month.10.label "Οκτωβρίου" >
+<!ENTITY event.recurrence.pattern.yearly.month.11.label "Νοεμβρίου" >
+<!ENTITY event.recurrence.pattern.yearly.month.12.label "Δεκεμβρίου" >
+<!ENTITY event.recurrence.yearly.every.label "κάθε">
+<!ENTITY event.recurrence.yearly.first.label "κάθε πρώτη">
+<!ENTITY event.recurrence.yearly.second.label "κάθε δεύτερη">
+<!ENTITY event.recurrence.yearly.third.label "κάθε τρίτη">
+<!ENTITY event.recurrence.yearly.fourth.label "κάθε τέταρτη">
+<!ENTITY event.recurrence.yearly.fifth.label "κάθε πέμπτη">
+<!ENTITY event.recurrence.yearly.last.label "κάθε τελευταία">
+<!ENTITY event.recurrence.pattern.yearly.week.1.label "Κυριακή" >
+<!ENTITY event.recurrence.pattern.yearly.week.2.label "Δευτέρα" >
+<!ENTITY event.recurrence.pattern.yearly.week.3.label "Τρίτη" >
+<!ENTITY event.recurrence.pattern.yearly.week.4.label "Τετάρτη" >
+<!ENTITY event.recurrence.pattern.yearly.week.5.label "Πέμπτη" >
+<!ENTITY event.recurrence.pattern.yearly.week.6.label "Παρασκευή" >
+<!ENTITY event.recurrence.pattern.yearly.week.7.label "Σάββατο" >
+<!ENTITY event.recurrence.pattern.yearly.day.label "ημέρα" >
+<!ENTITY event.recurrence.of.label "του" >
+<!ENTITY event.recurrence.pattern.yearly.month2.1.label "Ιανουαρίου" >
+<!ENTITY event.recurrence.pattern.yearly.month2.2.label "Φεβρουαρίου" >
+<!ENTITY event.recurrence.pattern.yearly.month2.3.label "Μαρτίου" >
+<!ENTITY event.recurrence.pattern.yearly.month2.4.label "Απριλίου" >
+<!ENTITY event.recurrence.pattern.yearly.month2.5.label "Μαΐου" >
+<!ENTITY event.recurrence.pattern.yearly.month2.6.label "Ιουνίου" >
+<!ENTITY event.recurrence.pattern.yearly.month2.7.label "Ιουλίου" >
+<!ENTITY event.recurrence.pattern.yearly.month2.8.label "Αυγούστου" >
+<!ENTITY event.recurrence.pattern.yearly.month2.9.label "Σεπτεμβρίου" >
+<!ENTITY event.recurrence.pattern.yearly.month2.10.label "Οκτωβρίου" >
+<!ENTITY event.recurrence.pattern.yearly.month2.11.label "Νοεμβρίου" >
+<!ENTITY event.recurrence.pattern.yearly.month2.12.label "Δεκεμβρίου" >
+
+<!ENTITY event.recurrence.range.label "Εμβέλεια επανάληψης">
+<!ENTITY event.recurrence.forever.label "Χωρίς τέλος" >
+<!ENTITY event.recurrence.repeat.for.label "Δημιουργία" >
+<!ENTITY event.recurrence.appointments.label "στιγμιότυπο/α" >
+<!ENTITY event.repeat.until.label "Να επαναλαμβάνεται μέχρι και τις" >
+<!ENTITY event.recurrence.preview.label "Προεπισκόπηση">
+
+<!-- Attendees dialog -->
+<!ENTITY invite.title.label "Πρόσκληση συμμετεχόντων">
+<!ENTITY event.organizer.label "Διοργανωτής">
+<!ENTITY event.freebusy.suggest.slot "Προτεινόμενο χρονικό περιθώριο:">
+<!ENTITY event.freebusy.button.next.slot "Επόμενο περιθώριο">
+<!ENTITY event.freebusy.button.previous.slot "Προηγούμενο περιθώριο">
+<!ENTITY event.freebusy.zoom "Επίπεδο μεγέθυνσης:">
+<!ENTITY event.freebusy.legend.free "Διαθέσιμος/η" >
+<!ENTITY event.freebusy.legend.busy "Απασχολημένος/η" >
+<!ENTITY event.freebusy.legend.busy_tentative "Με επιφύλαξη" >
+<!ENTITY event.freebusy.legend.busy_unavailable "Εκτός γραφείου" >
+<!ENTITY event.freebusy.legend.unknown "Χωρίς πληροφορία" >
+<!ENTITY event.attendee.role.required "Απαιτούμενη συμμετοχή">
+<!ENTITY event.attendee.role.optional "Προαιρετική συμμετοχή">
+<!ENTITY event.attendee.role.chair "Επικεφαλής">
+<!ENTITY event.attendee.role.nonparticipant "Μη συμμετέχων">
+<!ENTITY event.attendee.usertype.individual "Μεμονωμένο άτομο">
+<!ENTITY event.attendee.usertype.group "Ομάδα">
+<!ENTITY event.attendee.usertype.resource "Πόρος">
+<!ENTITY event.attendee.usertype.room "Αίθουσα">
+<!ENTITY event.attendee.usertype.unknown "Άγνωστο">
+
+<!-- Timezone dialog -->
+<!ENTITY timezone.title.label "Παρακαλούμε καθορίστε τη ζώνη ώρας">
+<!ENTITY event.timezone.custom.label "Περισσότερες ζώνες ώρας…">
+
+<!-- Read-Only dialog -->
+<!ENTITY read.only.general.label "Γενικά">
+<!ENTITY read.only.title.label "Τίτλος:">
+<!ENTITY read.only.calendar.label "Ημερολόγιο:">
+<!ENTITY read.only.event.start.label "Ημερομηνία έναρξης:">
+<!ENTITY read.only.task.start.label "Ημερομηνία έναρξης:">
+<!ENTITY read.only.event.end.label "Ημερομηνία λήξης:">
+<!ENTITY read.only.task.due.label "Προθεσμία:">
+<!ENTITY read.only.repeat.label "Επανάληψη:">
+<!ENTITY read.only.location.label "Τοποθεσία:">
+<!ENTITY read.only.category.label "Κατηγορία:">
+<!ENTITY read.only.organizer.label "Διοργανωτής:">
+<!ENTITY read.only.reminder.label "Υπενθύμιση:">
+<!ENTITY read.only.attachments.label "Συνημμένα:">
+<!ENTITY read.only.attendees.label "Συμμετέχοντες">
+<!ENTITY read.only.description.label "Περιγραφή">
+<!ENTITY read.only.link.label "Σχετικός σύνδεσμος">
+
+<!-- Summary dialog -->
+<!ENTITY summary.dialog.saveclose.label "Αποθήκευση και κλείσιμο">
+<!ENTITY summary.dialog.saveclose.tooltiptext "Αποθήκευση αλλαγών και κλείσιμο του παραθύρου χωρίς αλλαγή της κατάστασης συμμετοχής και αποστολής απόκρισης">
+<!ENTITY summary.dialog.accept.label "Αποδοχή">
+<!ENTITY summary.dialog.accept.tooltiptext "Αποδοχή της πρόσκλησης">
+<!ENTITY summary.dialog.tentative.label "Με επιφύλαξη">
+<!ENTITY summary.dialog.tentative.tooltiptext "Αποδοχή της πρόσκλησης με επιφύλαξη">
+<!ENTITY summary.dialog.decline.label "Απόρριψη">
+<!ENTITY summary.dialog.decline.tooltiptext "Απόρριψη της πρόσκλησης">
+<!ENTITY summary.dialog.dontsend.label "Να μην αποσταλεί απόκριση">
+<!ENTITY summary.dialog.dontsend.tooltiptext "Αλλαγή της κατάστασης συμμετοχής χωρίς αποστολή απάντησης στον οργανωτή και κλείσιμο του παραθύρου">
+<!ENTITY summary.dialog.send.label "Αποστολή μιας απάντησης τώρα">
+<!ENTITY summary.dialog.send.tooltiptext "Αποστολή μιας απάντησης στον οργανωτή και κλείσιμο του παραθύρου">
diff --git a/l10n-el/calendar/chrome/calendar/calendar-event-dialog.properties b/l10n-el/calendar/chrome/calendar/calendar-event-dialog.properties
new file mode 100644
index 0000000000..479ce5d23b
--- /dev/null
+++ b/l10n-el/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=κάθε μέρα;κάθε #1 ημέρες
+repeatDetailsRuleDaily4=κάθε καθημερινή
+
+# 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=κάθε %1$S;κάθε #2 εβδομάδες την %1$S
+weeklyNthOnNounclass2=κάθε %1$S;κάθε #2 εβδομάδες την %1$S
+
+# LOCALIZATION NOTE (weeklyEveryNth):
+# Edit recurrence window -> Recurrence pattern -> Weekly repeat rules
+# #1 - interval
+# e.g. "every 5 weeks"
+weeklyEveryNth=κάθε εβδομάδα;κάθε #1 εβδομάδες
+
+# 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=Κυριακή
+repeatDetailsDay1Nounclass=nounclass2
+repeatDetailsDay2=Δευτέρα
+repeatDetailsDay2Nounclass=nounclass2
+repeatDetailsDay3=Τρίτη
+repeatDetailsDay3Nounclass=nounclass2
+repeatDetailsDay4=Τετάρτη
+repeatDetailsDay4Nounclass=nounclass2
+repeatDetailsDay5=Πέμπτη
+repeatDetailsDay5Nounclass=nounclass2
+repeatDetailsDay6=Παρασκευή
+repeatDetailsDay6Nounclass=nounclass2
+repeatDetailsDay7=Σάββατο
+repeatDetailsDay7Nounclass=nounclass3
+
+# LOCALIZATION NOTE (repeatDetailsAnd)
+# Used to show a number of weekdays in a list
+# i.e. "Sunday, Monday, Tuesday " + and + " Wednesday"
+repeatDetailsAnd=και
+
+# 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 του κάθε μήνα;%1$S κάθε #2 μηνών
+monthlyRuleNthOfEveryNounclass2=%1$S του κάθε μήνα;%1$S κάθε #2 μηνών
+
+# 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=κάθε %1$S κάθε μήνα;κάθε %1$S κάθε #2 μηνών
+monthlyEveryOfEveryNounclass2=κάθε %1$S κάθε μήνα;κάθε %1$S κάθε #2 μηνών
+
+# 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=ημέρα %1$S;ημέρες %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 κάθε μήνα;%1$S κάθε #2 μηνών
+
+# 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=την τελευταία ημέρα του μήνα; την τελαυταία ημέρα κάθε #1 μηνών
+
+# 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=κάθε ημέρα του κάθε μήνα;κάθε ημέρα του μήνα κάθε #2 μήνες
+
+# 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=τον πρώτο;την πρώτη;το πρώτο
+repeatOrdinal2Nounclass1=τον δεύτερο;τη δεύτερη;το δεύτερο
+repeatOrdinal3Nounclass1=τον τρίτο;την τρίτη;το τρίτο
+repeatOrdinal4Nounclass1=τον τέταρτο;την τέταρτη;το τέταρτο
+repeatOrdinal5Nounclass1=τον πέμπτο;την πέμπτη;το πέμπτο
+repeatOrdinal-1Nounclass1=τον τελευταίο;την τελευταία;το τελευταίο
+repeatOrdinal1Nounclass2=τον πρώτο;την πρώτη;το πρώτο
+repeatOrdinal2Nounclass2=τον δεύτερο;τη δεύτερη;το δεύτερο
+repeatOrdinal3Nounclass2=τον τρίτο;την τρίτη;το τρίτο
+repeatOrdinal4Nounclass2=τον τέταρτο;την τέταρτη;το τέταρτο
+repeatOrdinal5Nounclass2=τον πέμπτο;την πέμπτη;το πέμπτο
+repeatOrdinal-1Nounclass2=τον τελευταίο;την τελευταία;το τελευταίο
+
+# 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=κάθε %1$S %2$S;κάθε #3 χρόνια στις %2$S %1$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 κάθε %3$S;κάθε #4 χρόνια %1$S %2$S του %3$S
+yearlyNthOnNthOfNounclass2=%1$S %2$S κάθε %3$S;κάθε #4 χρόνια %1$S %2$S του %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=κάθε %1$S του %2$S;κάθε #3 χρόνια ανά κάθε %1$S του %2$S
+yearlyOnEveryNthOfNthNounclass2=κάθε %1$S του %2$S;κάθε #3 χρόνια ανά κάθε %1$S του %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=κάθε ημέρα του %1$S;κάθε #2 χρόνια κάθε ημέρα του %1$S
+
+repeatDetailsMonth1=Ιανουαρίου
+repeatDetailsMonth2=Φεβρουαρίου
+repeatDetailsMonth3=Μαρτίου
+repeatDetailsMonth4=Απριλίου
+repeatDetailsMonth5=Μαΐου
+repeatDetailsMonth6=Ιουνίου
+repeatDetailsMonth7=Ιουλίου
+repeatDetailsMonth8=Αυγούστου
+repeatDetailsMonth9=Σεπτεμβρίου
+repeatDetailsMonth10=Οκτωβρίου
+repeatDetailsMonth11=Νοεμβρίου
+repeatDetailsMonth12=Δεκεμβρίου
+
+# 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=Λαμβάνει χώρα %1$S\nμε ισχύ %2$S για #5 φορά\nαπό τις %3$S μέχρι τις %4$S.;Λαμβάνει χώρα %1$S\nμε ισχύ %2$S για #5 φορές\nαπό τις %3$S μέχρι τις %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=Λαμβάνει χώρα %1$S\nμε ισχύ %2$S για #3 φορά.;Λαμβάνει χώρα %1$S\nμε ισχύ %2$S για #3 φορές.
+
+# 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=Λαμβάνει χώρα %1$S\nμε ισχύ από %2$Sέως %3$S\nαπό τις %4$S μέχρι τις %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=Λαμβάνει χώρα %1$S\nμε ισχύ από %2$Sέως %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=Λαμβάνει χώρα %1$S\nμε ισχύ %2$S\nαπό τις %3$S μέχρι τις %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=Λαμβάνει χώρα %1$S\nμε ισχύ %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=την τελευταία ημέρα
+
+# 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=Κλικ εδώ για λεπτομέρειες
+
+# 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=Οι λεπτομέρειες της επανάληψης είναι άγνωστες
+
+# differences between the dialog for an Event or a Task
+newEvent=Νέο συμβάν
+newTask=Νέα εργασία
+itemMenuLabelEvent=Συμβάν
+itemMenuAccesskeyEvent2=Σ
+itemMenuLabelTask=Εργασία
+itemMenuAccesskeyTask2=Ρ
+
+emailSubjectReply=Απ: %1$S
+
+# Link Location Dialog
+specifyLinkLocation=Παρακαλούμε να καθορίσετε την τοποθεσία του υπερσυνδέσμου
+enterLinkLocation=Εισαγάγετε ιστοσελίδα, ή τοποθεσία εγγράφου.
+
+summaryDueTaskLabel=Προθεσμία:
+
+# Attach File Dialog
+attachViaFilelink=Το αρχείο καταλαμβάνει %1$S
+selectAFile=Παρακαλούμε επιλέξτε αρχείο/α προς επισύναψη
+removeCalendarsTitle=Διαγραφή συνημμένων
+
+# LOCALIZATION NOTE (removeAttachmentsText): Semi-colon list of plural forms for
+# prompting attachment removal.
+# See http://developer.mozilla.org/en/Localization_and_Plurals
+removeAttachmentsText=Θέλετε σίγουρα να αφαιρέσετε #1 συνημμένο;;Θέλετε σίγουρα να αφαιρέσετε #1 συνημμένα;
+
+# 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=Κυριακή
+repeatDetailsDay2Plural=Δευτέρα
+repeatDetailsDay3Plural=Τρίτη
+repeatDetailsDay4Plural=Τετάρτη
+repeatDetailsDay5Plural=Πέμπτη
+repeatDetailsDay6Plural=Παρασκευή
+repeatDetailsDay7Plural=Σάββατο
+
+# 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=Για πάντα
+
+# 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=τελευταία ημέρα
+
+# 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 αποδέχτηκε την πρόσκληση, αλλά έκανε μια αντιπρόταση:
+
+# 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 αρνήθηκε την πρόσκληση, αλλά έκανε μια αντιπρόταση:
+
+# 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 έχει αναθέσει την πρόσκληση, αλλά έκανε μια αντιπρόταση:
+
+# 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 δεν έχει αποφασίσει για το αν θα συμμετέχει και έκανε μια αντιπρόταση:
+
+# 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 αποδέχτηκε την πρόσκληση μόνο διστακτικά και έκανε μια αντιπρόταση:
+
+# LOCALIZATION NOTE (counterOnPreviousVersionNotification) - this is only visible when opening the
+# dialog from the email summary view after receiving a counter message
+counterOnPreviousVersionNotification=Αυτή είναι μια αντιπρόταση για μια προηγούμενη έκδοση του συμβάντος.
+
+# LOCALIZATION NOTE (counterOnCounterDisallowedNotification) - this is only visible when opening the
+# dialog from the email summary view after receiving a counter message
+counterOnCounterDisallowedNotification=Απαγορεύσατε την αντιπρόταση κατά την αποστολή της πρόσκλησης.
+
+# LOCALIZATION NOTE (eventAccepted) - this will be displayed as notification
+# in the summary dialog if the user has accepted the event invitation
+eventAccepted=Αποδεχθήκατε την πρόσκληση
+
+# LOCALIZATION NOTE (eventTentative) - this will be displayed as notification
+# in the summary dialog if the user has accepted the event invitation tentatively
+eventTentative=Αποδεχθήκατε την πρόσκληση με επιφύλαξη
+
+# LOCALIZATION NOTE (eventDeclined) - this will be displayed as notification
+# in the summary dialog if the user has declined the event invitation
+eventDeclined=Απορρίψατε την πρόσκληση
+
+# 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=Αναθέσατε την πρόσκληση
+
+# LOCALIZATION NOTE (eventNeedsAction) - this will be displayed as notification
+# in the summary dialog if the user hasn't yet responded to an invitation
+eventNeedsAction=Δεν έχετε ακόμη απαντήσει σε αυτή την πρόσκληση
+
+# LOCALIZATION NOTE (taskAccepted) - this will be displayed as notification
+# in the summary dialog if the user has accepted the assigned task
+taskAccepted=Έχετε δεχθεί να εργαστείτε σε αυτή την εργασία
+
+# LOCALIZATION NOTE (taskTentative) - this will be displayed as notification
+# in the summary dialog if the user has accepted tentatively the assigned task
+taskTentative=Έχετε δεχθεί με επιφύλαξη να εργαστείτε σε αυτή την εργασία
+
+# LOCALIZATION NOTE (taskDeclined) - this will be displayed as notification
+# in the summary dialog if the user has declined the assigned task
+taskDeclined=Έχετε απορρίψει να εργαστείτε σε αυτή την εργασία
+
+# 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=Έχετε αναθέσει την εργασία
+
+# 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=Δεν έχετε ακόμη απαντήσει σε αυτή την ανάθεση εργασίας
+
+# LOCALIZATION NOTE (taskInProgress) - this will be displayed as notification
+# in the summary dialog if the user is working on an assigned task
+taskInProgress=Έχετε ξεκινήσει την εργασία σε αυτή την ανατεθειμένη εργασία
+
+# 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=Έχετε ολοκληρώσει την εργασία σας σε αυτή την ανατεθειμένη εργασία
+
+# 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=Αποστολή και κλείσιμο
+
+# 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=Ειδοποίηση των συμμετεχόντων και κλείσιμο
+
+# 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=Αποθήκευση και αποστολή
+
+# 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=Αποθήκευση και ειδοποίηση συμμετεχόντων
+
+# 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=Αποθήκευση και αποστολή
+
+# 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=Αποστολή και κλείσιμο
+
+# 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=Παρευρισμόμενοι (%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=Συνημμένα (%1$S):
diff --git a/l10n-el/calendar/chrome/calendar/calendar-extract.properties b/l10n-el/calendar/chrome/calendar/calendar-extract.properties
new file mode 100644
index 0000000000..aab2036dc4
--- /dev/null
+++ b/l10n-el/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 = από | μέχρι | έως | - | έως | έως | και
+
+# LOCALIZATION NOTE (end.prefix):
+# datetimes with these in front are extracted as end times
+end.prefix = μέχρι | έως | ως | έως τις | ως τις | προθεσμία | προθεσμία: | λήξη | λήγει | ημερομηνία λήξης
+
+# 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 = τελευταία εβδομάδα | απεστάλλη | email | e-mail | αντί για | > | δυστυχώς | σε | δεν
+
+# LOCALIZATION NOTE (no.datetime.suffix):
+# datetimes followed by these won't be used
+no.datetime.suffix = όροφος | ορ. | ορ | € | ευρώ
+
+# LOCALIZATION NOTE (from.*):
+# can be a list of values, separate variants by |
+
+# LOCALIZATION NOTE (from.today):
+# must not be empty!
+from.today = σήμερα
+
+from.tomorrow = αύριο
+# 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η | #1α | #1η | #1η
+
+# LOCALIZATION NOTE (until.ordinal.date):
+# #1 = matches numbers 1-31 and number.x
+until.ordinal.date =
+
+from.noon = μεσημέρι
+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 = στις #1 | γύρω στις #1 | #1 - | #1 έως
+
+# 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 | έως τις #1 | μέχρι τις #1 | έως τις #1
+
+# LOCALIZATION NOTE (from.hour.am):
+# #1 = matches numbers 0-23 and number.0-number.23
+from.hour.am = #1 πμ | #1 π.μ.
+
+# 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 μμ | #1 μ.μ.
+
+# 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 = μισή ώρα πριν τις #1
+
+# 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 και μισή | #1μιση
+
+# 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:#2 | στις #1#2
+
+# 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:#2 πμ | #1:#2 π.μ.
+
+# 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:#2 μ.μ. | #1:#2 μ.μ. | #1:#2 μ.μ.
+
+# 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 #2 | #2 #1 | #2 #1ος | #2 #1ος | #2 #1ος | #2 #1ος | #1ος από #2 | #1ος από #2 | #1ος από #2 | #1ος από #2
+
+# 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 = #1/#2
+
+# 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 = #2/#1/#3 | #3/#2/#1 | #3-#2-#1
+
+# 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 #2 #3 | #1η #2 #3 | #1α #2 #3 | #1η #2 #3 | #1η #2 #3 | #2 #1, #3 | #3-#2-#1
+
+# 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 λεπτά | #1 λεπτό | #1 λεπτά
+
+# LOCALIZATION NOTE (duration.hours):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+duration.hours = #1 ώρα | #1 ώρες
+
+# LOCALIZATION NOTE (duration.days):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+duration.days = #1 ημέρες
+
+# LOCALIZATION NOTE (month.*):
+# can be a list of values, separate variants by |
+month.1 = ιανουάριος | ιανουαρίου | γενάρης | γενάρη | ιαν | ιαν.
+month.2 = φεβρουάριος | φεβρουαρίου | φλεβάρης | φλεβάρη | φεβρ | φεβ | φεβρ. | φεβ.
+month.3 = μάρτιος | μαρτίου | μάρτης | μάρτη | μάρ | μαρ | μάρ. | μαρ.
+month.4 = απρίλιος | απριλίου | απρίλης | απρίλη | απρ | απρ.
+month.5 = μάιος | μάϊος | μαΐου | μαϊου | μάης | μάη |μάι | μαι | μαϊ | μάη. |μάι. | μαι. | μαϊ.
+month.6 = ιούνιος | ιουνίου | ιούνης | ιούνη | ιούν | ιουν | ιούν. | ιουν.
+month.7 = ιούλιος | ιουλίου | ιούλης | ιούλη | ιούλ | ιουλ | ιούλ. | ιουλ.
+month.8 = αύγουστος | αυγούστου | αύγ | αυγ | αύγ. | αυγ.
+month.9 = σεπτέμβριος | σεπτεμβρίου | σεπτέμβρης | σεπτέμβρης | σεπτ | σεπ | σεπτ. | σεπ.
+month.10 = οκτώβριος | οκτωβρίου | οκτώβρης | οκτώβρη | οκτ | οκτ.
+month.11 = νοέμβριος | νοεμβρίου | νοέμβρης | νοέμβρη | νοέ | νοε | νοέ. | νοε.
+month.12 = δεκέμβριος | δεκεμβρίου | δεκέμβρης | δεκέμβρη | δεκ | δεκ.
+
+# 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 = κυριακή | κυριακής | κυριακές | κυρ | κυρ.
+from.weekday.1 = δευτέρα | δευτέρας | δευτέρες | δευτ | δευ | δευτ. | δευ.
+from.weekday.2 = τρίτη | τρίτης | τρίτες | τρί | τρι | τρ | τρί. | τρι. | τρ.
+from.weekday.3 = τετάρτη | τετάρτης | τετάρτες | τετ | τετ.
+from.weekday.4 = πέμπτη | πέμπτης | πέμπτες | πέμ | πεμ | πέμ. | πεμ.
+from.weekday.5 = παρασκευή | παρασκευής | παρασκευές | παρασκ. | παρ | παρ.
+from.weekday.6 = σάββατο | σαββάτου | σάββατα | σαβ | σάβ | σαβ. | σάβ.
+
+# 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 = μηδέν
+number.1 = ένα | ένας | μία | πρώτη | πρώτος | πρώτο
+number.2 = δύο | δεύτερη | δεύτερης | δευτέρα | δευτέρας
+number.3 = τρία | τρεις | τρίτη | τρίτης
+number.4 = τέσσερα | τέσσερις | τέταρτη | τέταρτης | τετάρτη | τετάρτης
+number.5 = πέντε | πέμπτη | πέμπτης
+number.6 = έξι | έκτη | έκτης
+number.7 = επτά | έβδομη | εβδόμη | έβδομης | εβδόμης
+number.8 = οκτώ | όγδοη | ογδόη | όγδοης | ογδόης
+number.9 = εννιά | εννέα | ένατη | ενάτη | ένατης | ενάτης
+number.10 = δέκα | δέκατη | δεκάτη | δέκατης | δεκάτης
+number.11 = έντεκα | ένδεκα | εντέκατη | ενδέκατη | εντεκάτη | ενδεκάτη | εντέκατης | ενδέκατης | εντεκάτης | ενδεκάτης
+number.12 = δώδεκα | δωδέκατη | δωδεκάτη | δωδέκατης | δωδεκάτης
+number.13 = δεκατρείς | δεκάτη τρίτη
+number.14 = δεκατέσσερις | δεκάτη τετάρτη
+number.15 = δεκαπέντε | δεκάτη πέμπτη
+number.16 = δεκαέξι | δεκάτη έκτη
+number.17 = δεκαεπτά | δεκάτη εβδόμη
+number.18 = δεκαοκτώ | δεκάτη ογδόη
+number.19 = δεκαεννέα | δεκάτη ενάτη
+number.20 = είκοσι | εικοστή
+number.21 = είκοσι μία | εικοστή πρώτη
+number.22 = είκοσι δύο | εικοστή δευτέρα
+number.23 = είκοσι τρεις | εικοστή τρίτη
+number.24 = είκοσι τέσσερις | εικοστή τετάρτη
+number.25 = είκοσι πέντε | εικοστή πέμπτη
+number.26 = είκοσι έξι | εικοστή έκτη
+number.27 = είκοσι επτά | εικοστή εβδόμη
+number.28 = είκοσι οκτώ | εικοστή ογδόοη
+number.29 = είκοσι εννέα | εικοστή ενάτη
+number.30 = τριάντα | τριακοστή
+number.31 = τριάντα μία | τριακοστή πρώτη
+
+# LOCALIZATION NOTE (alphabet):
+# list all lower and uppercase letters if your language has an alphabet
+# otherwise leave it empty
+alphabet = αάβγδεέζηήθιίϊκλμνξοόπρσςτυύϋφχψωώΑΆΒΓΔΕΈΖΗΉΘΙΊΪΚΛΜΝΞΟΌΠΡΣΤΥΎΫΦΧΨΩΏ
diff --git a/l10n-el/calendar/chrome/calendar/calendar-invitations-dialog.dtd b/l10n-el/calendar/chrome/calendar/calendar-invitations-dialog.dtd
new file mode 100644
index 0000000000..5dc405c1f6
--- /dev/null
+++ b/l10n-el/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 "Προσκλήσεις">
+<!ENTITY calendar.invitations.dialog.statusmessage.updating.text "Ενημέρωση λίστας προσκλήσεων.">
+<!ENTITY calendar.invitations.dialog.statusmessage.noinvitations.text "Δεν βρέθηκαν ανεπιβεβαίωτες προσκλήσεις.">
+
+<!-- Calendar Invitations List -->
+<!ENTITY calendar.invitations.list.accept.button.label "Αποδοχή">
+<!ENTITY calendar.invitations.list.decline.button.label "Απόρριψη">
+<!ENTITY calendar.invitations.list.recurrentevent.text "Επαναλαμβανόμενο συμβάν">
+<!ENTITY calendar.invitations.list.alldayevent.text "Ολοήμερο συμβάν">
+<!ENTITY calendar.invitations.list.location.text "Τοποθεσία: ">
+<!ENTITY calendar.invitations.list.organizer.text "Διοργανωτής: ">
+<!ENTITY calendar.invitations.list.attendee.text "Συμμετέχων: ">
+<!ENTITY calendar.invitations.list.none.text "Κανείς">
diff --git a/l10n-el/calendar/chrome/calendar/calendar-invitations-dialog.properties b/l10n-el/calendar/chrome/calendar/calendar-invitations-dialog.properties
new file mode 100644
index 0000000000..46af5398bd
--- /dev/null
+++ b/l10n-el/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=Ολοήμερο γεγονός
+recurrent-event=Επαναλαμβανόμενο γεγονός
+location=Τοποθεσία: %S
+organizer=Διοργανωτής: %S
+attendee=Συμμετέχων: %S
+none=Κανένας
diff --git a/l10n-el/calendar/chrome/calendar/calendar-occurrence-prompt.dtd b/l10n-el/calendar/chrome/calendar/calendar-occurrence-prompt.dtd
new file mode 100644
index 0000000000..5864a9335f
--- /dev/null
+++ b/l10n-el/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-el/calendar/chrome/calendar/calendar-occurrence-prompt.properties b/l10n-el/calendar/chrome/calendar/calendar-occurrence-prompt.properties
new file mode 100644
index 0000000000..234eb7b869
--- /dev/null
+++ b/l10n-el/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=είναι επαναλαμβανόμενο συμβάν
+header.isrepeating.task.label=είναι επαναλαμβανόμενη εργασία 
+
+header.containsrepeating.event.label=περιέχει επαναλαμβανόμενα συμβάντα
+header.containsrepeating.task.label=περιέχει επαναλαμβανόμενες εργασίες
+header.containsrepeating.mixed.label=περιέχει επαναλαμβανόμενα στοιχεία διαφορετικού τύπου
+
+windowtitle.event.copy=Αντιγραφή Επαναλαμβανόμενου Συμβάντος
+windowtitle.task.copy=Αντιγραφή Επαναλαμβανόμενης Εργασίας
+windowtitle.mixed.copy=Αντιγραφή Επαναλαμβανόμενων Στοιχείων
+windowtitle.event.cut=Αποκοπή Επαναλαμβανόμενου Συμβάντος
+windowtitle.task.cut=Αποκοπή Επαναλαμβανόμενης Εργασίας
+windowtitle.mixed.cut=Αποκοπή Επαναλαμβανόμενων Στοιχείων
+windowtitle.event.delete=Διαγραφή επαναλαμβανόμενου συμβάντος
+windowtitle.task.delete=Διαγραφή επαναλαμβανόμενης εργασίας
+windowtitle.mixed.delete=Διαγραφή Επαναλαμβανόμενων Στοιχείων
+windowtitle.event.edit=Επεξεργασία επαναλαμβανόμενου συμβάντος
+windowtitle.task.edit=Επεξεργασία επαναλαμβανόμενης εργασίας
+
+buttons.occurrence.delete.label=Διαγραφή αυτού του στιγμιότυπου μόνο
+buttons.occurrence.edit.label=Επεξεργασία αυτού του στιγμιότυπου μόνο
+
+buttons.allfollowing.delete.label=Διαγραφή αυτού και όλων των μελλοντικών στιγμιότυπων
+buttons.allfollowing.edit.label=Επεξεργασία αυτού και όλων των μελλοντικών στιγμιότυπων
+
+buttons.parent.delete.label=Διαγραφή όλων των στιγμιότυπων
+buttons.parent.edit.label=Επεξεργασία όλων των στιγμιότυπων
+windowtitle.mixed.edit=Επεξεργασία Επαναλαμβανόμενων Στοιχείων
+windowtitle.multipleitems=Επιλεγμένα στοιχεία
+
+buttons.single.occurrence.copy.label=Αντιγραφή μόνο αυτού του συμβάντος
+buttons.single.occurrence.cut.label=Αποκοπή μόνο αυτού του συμβάντος
+buttons.single.occurrence.delete.label=Διαγραφή μόνο αυτού του συμβάντος
+buttons.single.occurrence.edit.label=Επεξεργασία μόνο αυτού του συμβάντος
+
+buttons.multiple.occurrence.copy.label=Αντιγραφή μόνο των επιλεγμένων συμβάντων
+buttons.multiple.occurrence.cut.label=Αποκοπή μόνο των επιλεγμένων συμβάντων
+buttons.multiple.occurrence.delete.label=Διαγραφή μόνο των επιλεγμένων συμβάντων
+buttons.multiple.occurrence.edit.label=Επεξεργασία μόνο των επιλεγμένων συμβάντων
+
+buttons.single.allfollowing.copy.label=Αντιγραφή αυτού και των μελλοντικών συμβάντων
+buttons.single.allfollowing.cut.label=Αποκοπή αυτού και των μελλοντικών συμβάντων
+buttons.single.allfollowing.delete.label=Διαγραφή αυτού και των μελλοντικών συμβάντων
+buttons.single.allfollowing.edit.label=Επεξεργασία αυτού και των μελλοντικών συμβάντων
+
+buttons.multiple.allfollowing.copy.label=Αντιγραφή των επιλεγμένων και όλων των μελλοντικών συμβάντων
+buttons.multiple.allfollowing.cut.label=Αποκοπή των επιλεγμένων και όλων των μελλοντικών συμβάντων
+buttons.multiple.allfollowing.delete.label=Διαγραφή των επιλεγμένων και όλων των μελλοντικών συμβάντων
+buttons.multiple.allfollowing.edit.label=Επεξεργασία των επιλεγμένων και όλων των μελλοντικών συμβάντων
+
+buttons.single.parent.copy.label=Αντιγραφή όλων των συμβάντων
+buttons.single.parent.cut.label=Αποκοπή όλων των συμβάντων
+buttons.single.parent.delete.label=Διαγραφή όλων των συμβάντων
+buttons.single.parent.edit.label=Επεξεργασία όλων των συμβάντων
+
+buttons.multiple.parent.copy.label=Αντιγραφή όλων των συμβάντων των επιλεγμένων στοιχείων
+buttons.multiple.parent.cut.label=Αποκοπή όλων των συμβάντων των επιλεγμένων στοιχείων
+buttons.multiple.parent.delete.label=Διαγραφή όλων των συμβάντων των επιλεγμένων στοιχείων
+buttons.multiple.parent.edit.label=Επεξεργασία όλων των συμβάντων των επιλεγμένων στοιχείων
diff --git a/l10n-el/calendar/chrome/calendar/calendar-subscriptions-dialog.dtd b/l10n-el/calendar/chrome/calendar/calendar-subscriptions-dialog.dtd
new file mode 100644
index 0000000000..5f935af55f
--- /dev/null
+++ b/l10n-el/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 "Εγγραφή ως συνδρομητής σε ημερολόγια">
+<!ENTITY calendar.subscriptions.dialog.search.label.value "Εμφάνιση ημερολογίων που περιέχουν:">
+<!ENTITY calendar.subscriptions.dialog.search.button.label "Αναζήτηση">
+<!ENTITY calendar.subscriptions.dialog.select.label.value "Επιλογή ημερολογίων στα οποία να εγγραφείτε συνδρομητής:">
+<!ENTITY calendar.subscriptions.dialog.subscribe.button.label "Συνδρομή">
+<!ENTITY calendar.subscriptions.dialog.unsubscribe.button.label "Κατάργηση εγγραφής">
+<!ENTITY calendar.subscriptions.dialog.statusmessage.busy.label "Αναζήτηση…">
+<!ENTITY calendar.subscriptions.dialog.statusmessage.nomatches.label "Δεν βρέθηκαν αντιστοιχίσεις.">
diff --git a/l10n-el/calendar/chrome/calendar/calendar.dtd b/l10n-el/calendar/chrome/calendar/calendar.dtd
new file mode 100644
index 0000000000..050a1a6697
--- /dev/null
+++ b/l10n-el/calendar/chrome/calendar/calendar.dtd
@@ -0,0 +1,407 @@
+<!-- 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 "Ημερολόγιο">
+<!ENTITY calendar.calendar.accesskey "Η">
+
+<!ENTITY calendar.newevent.button.tooltip "Δημιουργία νέου συμβάντος" >
+<!ENTITY calendar.newtask.button.tooltip "Δημιουργία νέας εργασίας" >
+
+<!ENTITY calendar.unifinder.showcompletedtodos.label "Εμφάνιση ολοκληρωμένων εργασιών">
+
+<!ENTITY calendar.today.button.label "Σήμερα">
+<!ENTITY calendar.tomorrow.button.label "Αύριο">
+<!ENTITY calendar.upcoming.button.label "Επερχόμενα">
+
+<!ENTITY calendar.events.filter.all.label "Όλα τα συμβάντα">
+<!ENTITY calendar.events.filter.today.label "Σημερινά συμβάντα">
+<!ENTITY calendar.events.filter.future.label "Όλα τα μελλοντικά συμβάντα">
+<!ENTITY calendar.events.filter.current.label "Ημέρα που είναι επιλεγμένη αυτήν τη στιγμή">
+<!ENTITY calendar.events.filter.currentview.label "Συμβάντα στην τρέχουσα προβολή">
+<!ENTITY calendar.events.filter.next7Days.label "Συμβάντα στις επόμενες 7 ημέρες">
+<!ENTITY calendar.events.filter.next14Days.label "Συμβάντα στις επόμενες 14 ημέρες">
+<!ENTITY calendar.events.filter.next31Days.label "Συμβάντα στις επόμενες 31 ημέρες">
+<!ENTITY calendar.events.filter.thisCalendarMonth.label "Συμβάντα σε αυτόν τον ημερολογιακό μήνα">
+
+<!-- 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 "Τέλος">
+<!ENTITY calendar.unifinder.tree.done.tooltip2 "Ταξινόμηση με βάση το αν έχει ολοκληρωθεί ή όχι">
+<!ENTITY calendar.unifinder.tree.priority.label "Προτεραιότητα">
+<!ENTITY calendar.unifinder.tree.priority.tooltip2 "Ταξινόμηση κατά προτεραιότητα">
+<!ENTITY calendar.unifinder.tree.title.label "Τίτλος">
+<!ENTITY calendar.unifinder.tree.title.tooltip2 "Ταξινόμηση με βάση τον τίτλο">
+<!ENTITY calendar.unifinder.tree.percentcomplete.label "&#37; ολοκλήρωσης">
+<!ENTITY calendar.unifinder.tree.percentcomplete.tooltip2 "Ταξινόμηση κατά ποσοστό ολοκλήρωσης">
+<!ENTITY calendar.unifinder.tree.startdate.label "Έναρξη">
+<!ENTITY calendar.unifinder.tree.startdate.tooltip2 "Ταξινόμηση κατά ημερομηνία έναρξης">
+<!ENTITY calendar.unifinder.tree.enddate.label "Λήξη">
+<!ENTITY calendar.unifinder.tree.enddate.tooltip2 "Ταξινόμηση κατά ημερομηνία λήξης">
+<!ENTITY calendar.unifinder.tree.duedate.label "Προθεσμία μέχρι">
+<!ENTITY calendar.unifinder.tree.duedate.tooltip2 "Ταξινόμηση κατά ημερομηνία λήξης της προθεσμίας">
+<!ENTITY calendar.unifinder.tree.completeddate.label "Ολοκληρώθηκε στις">
+<!ENTITY calendar.unifinder.tree.completeddate.tooltip2 "Ταξινόμηση κατά ημερομηνία ολοκλήρωσης">
+<!ENTITY calendar.unifinder.tree.categories.label "Κατηγορία">
+<!ENTITY calendar.unifinder.tree.categories.tooltip2 "Ταξινόμηση κατά κατηγορία">
+<!ENTITY calendar.unifinder.tree.location.label "Τοποθεσία">
+<!ENTITY calendar.unifinder.tree.location.tooltip2 "Ταξινόμηση κατά τοποθεσία">
+<!ENTITY calendar.unifinder.tree.status.label "Κατάσταση">
+<!ENTITY calendar.unifinder.tree.status.tooltip2 "Ταξινόμηση κατά κατάσταση">
+<!ENTITY calendar.unifinder.tree.calendarname.label "Όνομα ημερολογίου">
+<!ENTITY calendar.unifinder.tree.calendarname.tooltip2 "Ταξινόμηση κατά όνομα ημερολογίου">
+<!ENTITY calendar.unifinder.tree.duration.label "Υπολειπόμενος χρόνος">
+<!ENTITY calendar.unifinder.tree.duration.tooltip2 "Ταξινόμηση με βάση το χρόνο που υπολείπεται μέχρι την προθεσμία">
+<!ENTITY calendar.unifinder.close.tooltip "Κλείσιμο αναζήτησης συμβάντων και λίστας συμβάντων">
+
+<!ENTITY calendar.today.button.tooltip "Μετάβαση στη σημερινή ημέρα" >
+<!ENTITY calendar.todaypane.button.tooltip "Εμφάνιση παραθύρου σημερινής ημέρας" >
+
+<!ENTITY calendar.day.button.tooltip "Εναλλαγή σε ημερήσια προβολή" >
+<!ENTITY calendar.week.button.tooltip "Εναλλαγή σε εβδομαδιαία προβολή" >
+<!ENTITY calendar.month.button.tooltip "Εναλλαγή σε μηνιαία προβολή" >
+<!ENTITY calendar.multiweek.button.tooltip "Εναλλαγή σε πολυεβδομαδιαία προβολή" >
+
+<!ENTITY calendar.nextday.label "Επόμενη ημέρα" >
+<!ENTITY calendar.prevday.label "Προηγούμενη ημέρα" >
+<!ENTITY calendar.nextday.accesskey "Ε" >
+<!ENTITY calendar.prevday.accesskey "Π" >
+<!ENTITY calendar.nextweek.label "Επόμενη εβδομάδα" >
+<!ENTITY calendar.prevweek.label "Προηγούμενη εβδομάδα" >
+<!ENTITY calendar.nextweek.accesskey "Ε" >
+<!ENTITY calendar.prevweek.accesskey "Π" >
+<!ENTITY calendar.nextmonth.label "Επόμενος μήνας" >
+<!ENTITY calendar.prevmonth.label "Προηγούμενος μήνας" >
+<!ENTITY calendar.nextmonth.accesskey "Ε" >
+<!ENTITY calendar.prevmonth.accesskey "Π" >
+
+<!ENTITY calendar.navigation.nextday.tooltip "Μία ημέρα μπροστά" >
+<!ENTITY calendar.navigation.prevday.tooltip "Μία ημέρα πίσω" >
+<!ENTITY calendar.navigation.nextweek.tooltip "Μία εβδομάδα μπροστά" >
+<!ENTITY calendar.navigation.prevweek.tooltip "Μία εβδομάδα πίσω" >
+<!ENTITY calendar.navigation.nextmonth.tooltip "Ένα μήνα μπροστά" >
+<!ENTITY calendar.navigation.prevmonth.tooltip "Ένα μήνα πίσω" >
+
+<!ENTITY calendar.newevent.button.label "Νέο συμβάν" >
+<!ENTITY calendar.newtask.button.label "Νέα εργασία" >
+<!ENTITY calendar.print.button.label "Εκτύπωση" >
+<!ENTITY calendar.print.button.accesskey "π">
+
+<!ENTITY calendar.day.button.label "Ημέρα" >
+<!ENTITY calendar.week.button.label "Εβδομάδα" >
+<!ENTITY calendar.month.button.label "Μήνας" >
+<!ENTITY calendar.multiweek.button.label "Πολλές εβδομάδες" >
+<!ENTITY calendar.onlyworkday.checkbox.label "Εργάσιμες ημέρες εβδομάδας μόνο" >
+<!ENTITY calendar.onlyworkday.checkbox.accesskey "Ε" >
+<!ENTITY calendar.displaytodos.checkbox.label "Προβολή εργασιών στο ημερολόγιο" >
+<!ENTITY calendar.displaytodos.checkbox.accesskey "Π" >
+<!ENTITY calendar.completedtasks.checkbox.label "Εμφάνιση ολοκληρωμένων εργασιών" >
+<!ENTITY calendar.completedtasks.checkbox.accesskey "ο" >
+
+<!ENTITY calendar.orientation.label "Περιστροφή προβολής" >
+<!ENTITY calendar.orientation.accesskey "ρ" >
+
+<!ENTITY calendar.search.options.searchfor " που περιέχουν">
+
+<!ENTITY calendar.list.header.label "Ημερολόγιο">
+
+<!ENTITY calendar.task.filter.title.label "Εμφάνιση">
+<!ENTITY calendar.task.filter.all.label "Όλες">
+<!ENTITY calendar.task.filter.all.accesskey "λ">
+<!ENTITY calendar.task.filter.today.label "Σήμερα">
+<!ENTITY calendar.task.filter.today.accesskey "Σ">
+<!ENTITY calendar.task.filter.next7days.label "Επόμενες επτά ημέρες">
+<!ENTITY calendar.task.filter.next7days.accesskey "η">
+<!ENTITY calendar.task.filter.notstarted.label "Εργασίες που δεν έχουν ξεκινήσει">
+<!ENTITY calendar.task.filter.notstarted.accesskey "ξ">
+<!ENTITY calendar.task.filter.overdue.label "Εκπρόθεσμες εργασίες">
+<!ENTITY calendar.task.filter.overdue.accesskey "θ">
+<!ENTITY calendar.task.filter.completed.label "Ολοκληρωμένες εργασίες">
+<!ENTITY calendar.task.filter.completed.accesskey "Ο">
+<!ENTITY calendar.task.filter.open.label "Ανολοκλήρωτες εργασίες">
+<!ENTITY calendar.task.filter.open.accesskey "Α">
+
+<!-- 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 "Τρέχουσες εργασίες">
+<!ENTITY calendar.task.filter.current.accesskey "Τ">
+
+<!ENTITY calendar.task-details.title.label "τίτλος">
+<!ENTITY calendar.task-details.organizer.label "από">
+<!ENTITY calendar.task-details.priority.label "προτεραιότητα">
+<!ENTITY calendar.task-details.priority.low.label "Χαμηλή">
+<!ENTITY calendar.task-details.priority.normal.label "Κανονική">
+<!ENTITY calendar.task-details.priority.high.label "Υψηλή">
+<!ENTITY calendar.task-details.status.label "κατάσταση">
+<!ENTITY calendar.task-details.category.label "κατηγορία">
+<!ENTITY calendar.task-details.repeat.label "επανάληψη">
+<!ENTITY calendar.task-details.attachments.label "συνημμένα">
+<!ENTITY calendar.task-details.start.label "ημερομηνία έναρξης">
+<!ENTITY calendar.task-details.due.label "ημερομηνία λήξης της προθεσμίας">
+
+<!ENTITY calendar.task.category.button.tooltip "Κατηγοριοποίηση εργασιών">
+<!ENTITY calendar.task.complete.button.tooltip "Σημείωση επιλεγμένων εργασιών ως ολοκληρωμένες">
+<!ENTITY calendar.task.priority.button.tooltip "Αλλαγή της προτεραιότητας">
+
+<!ENTITY calendar.task.text-filter.textbox.emptytext.base1 "Φιλτράρισμα εργασιών #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 "Άνοιγμα">
+<!ENTITY calendar.context.modifyorviewitem.accesskey "α">
+<!ENTITY calendar.context.modifyorviewtask.label "Άνοιγμα εργασίας…">
+<!ENTITY calendar.context.modifyorviewtask.accesskey "α">
+<!ENTITY calendar.context.newevent.label "Νέο συμβάν…">
+<!ENTITY calendar.context.newevent.accesskey "υ">
+<!ENTITY calendar.context.newtodo.label "Νέα εργασία…">
+<!ENTITY calendar.context.newtodo.accesskey "Ν">
+<!ENTITY calendar.context.deletetask.label "Διαγραφή εργασίας">
+<!ENTITY calendar.context.deletetask.accesskey "Δ">
+<!ENTITY calendar.context.deleteevent.label "Διαγραφή συμβάντος">
+<!ENTITY calendar.context.deleteevent.accesskey "Δ">
+<!ENTITY calendar.context.cutevent.label "Αποκοπή">
+<!ENTITY calendar.context.cutevent.accesskey "κ">
+<!ENTITY calendar.context.copyevent.label "Αντιγραφή">
+<!ENTITY calendar.context.copyevent.accesskey "γ">
+<!ENTITY calendar.context.pasteevent.label "Επικόλληση">
+<!ENTITY calendar.context.pasteevent.accesskey "λ">
+<!ENTITY calendar.context.button.label "Προβολή ημέρας">
+<!ENTITY calendar.context.button.accesskey "Π">
+
+<!ENTITY calendar.context.attendance.menu.label "Συμμετοχή">
+<!ENTITY calendar.context.attendance.menu.accesskey "χ">
+<!ENTITY calendar.context.attendance.occurrence.label "Αυτό το στιγμιότυπο">
+<!ENTITY calendar.context.attendance.all2.label "Πλήρης Σειρά">
+<!ENTITY calendar.context.attendance.send.label "Αποστολή ειδοποίησης τώρα">
+<!ENTITY calendar.context.attendance.send.accesskey "Α">
+<!ENTITY calendar.context.attendance.dontsend.label "Να μην αποσταλεί τώρα ειδοποίηση">
+<!ENTITY calendar.context.attendance.dontsend.accesskey "Ν">
+
+<!ENTITY calendar.context.attendance.occ.accepted.accesskey "κ">
+<!ENTITY calendar.context.attendance.occ.accepted.label "Έγινε αποδεκτό">
+<!ENTITY calendar.context.attendance.occ.tentative.accesskey "δ">
+<!ENTITY calendar.context.attendance.occ.tentative.label "Έγινε αποδεκτό με δισταγμό">
+<!ENTITY calendar.context.attendance.occ.declined.accesskey "φ">
+<!ENTITY calendar.context.attendance.occ.declined.label "Απορρίφθηκε">
+<!ENTITY calendar.context.attendance.occ.delegated.accesskey "θ">
+<!ENTITY calendar.context.attendance.occ.delegated.label "Ανατέθηκε">
+<!ENTITY calendar.context.attendance.occ.needsaction.accesskey "Χ">
+<!ENTITY calendar.context.attendance.occ.needsaction.label "Χρειάζεται ακόμη ενέργεια">
+<!ENTITY calendar.context.attendance.occ.inprogress.accesskey "Σ">
+<!ENTITY calendar.context.attendance.occ.inprogress.label "Σε εξέλιξη">
+<!ENTITY calendar.context.attendance.occ.completed.accesskey "Ο">
+<!ENTITY calendar.context.attendance.occ.completed.label "Ολοκληρώθηκε">
+
+<!ENTITY calendar.context.attendance.all.accepted.accesskey "θ">
+<!ENTITY calendar.context.attendance.all.accepted.label "Εγκρίθηκε">
+<!ENTITY calendar.context.attendance.all.tentative.accesskey "γ">
+<!ENTITY calendar.context.attendance.all.tentative.label "Έγινε αποδεκτό με δισταγμό">
+<!ENTITY calendar.context.attendance.all.declined.accesskey "φ">
+<!ENTITY calendar.context.attendance.all.declined.label "Απορρίφθηκε">
+<!ENTITY calendar.context.attendance.all.delegated.accesskey "τ">
+<!ENTITY calendar.context.attendance.all.delegated.label "Ανατέθηκε">
+<!ENTITY calendar.context.attendance.all.needsaction.accesskey "κ">
+<!ENTITY calendar.context.attendance.all.needsaction.label "Χρειάζεται ακόμη ενέργεια">
+<!ENTITY calendar.context.attendance.all.inprogress.accesskey "ξ">
+<!ENTITY calendar.context.attendance.all.inprogress.label "Σε εξέλιξη">
+<!ENTITY calendar.context.attendance.all.completed.accesskey "ρ">
+<!ENTITY calendar.context.attendance.all.completed.label "Ολοκληρώθηκε">
+
+<!-- Task Context Menu -->
+<!ENTITY calendar.context.progress.label "Πρόοδος">
+<!ENTITY calendar.context.progress.accesskey "Π">
+<!ENTITY calendar.context.priority.label "Προτεραιότητα">
+<!ENTITY calendar.context.priority.accesskey "ρ">
+<!ENTITY calendar.context.postpone.label "Αναβολή εργασίας">
+<!ENTITY calendar.context.postpone.accesskey "β">
+
+<!ENTITY percnt "&#38;#37;" ><!--=percent sign-->
+
+<!ENTITY calendar.context.markcompleted.label "Σημείωση ως ολοκληρωμένη">
+<!ENTITY calendar.context.markcompleted.accesskey "ο">
+
+<!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 "Μη καθορισμένη">
+<!ENTITY priority.level.none.accesskey "Μ">
+<!ENTITY priority.level.low "Χαμηλή">
+<!ENTITY priority.level.low.accesskey "Χ">
+<!ENTITY priority.level.normal "Κανονική">
+<!ENTITY priority.level.normal.accesskey "Κ">
+<!ENTITY priority.level.high "Υψηλή">
+<!ENTITY priority.level.high.accesskey "Υ">
+
+<!ENTITY calendar.context.postpone.1hour.label "1 ώρα">
+<!ENTITY calendar.context.postpone.1hour.accesskey "α">
+<!ENTITY calendar.context.postpone.1day.label "1 ημέρα">
+<!ENTITY calendar.context.postpone.1day.accesskey "η">
+<!ENTITY calendar.context.postpone.1week.label "1 εβδομάδα">
+<!ENTITY calendar.context.postpone.1week.accesskey "ε">
+
+<!ENTITY calendar.copylink.label "Αντιγραφή τοποθεσίας συνδέσμου">
+<!ENTITY calendar.copylink.accesskey "υ">
+
+<!-- Task View -->
+<!-- Note that the above *.context.* strings are currently used for the other
+ task action buttons -->
+<!ENTITY calendar.taskview.delete.label "Διαγραφή">
+
+<!-- Server Context Menu -->
+<!ENTITY calendar.context.newserver.label "Νέο ημερολόγιο…">
+<!ENTITY calendar.context.newserver.accesskey "Ν">
+<!ENTITY calendar.context.findcalendar.label "Εύρεση ημερολογίου…" >
+<!ENTITY calendar.context.findcalendar.accesskey "ρ" >
+<!ENTITY calendar.context.deleteserver2.label "Διαγραφή ημερολογίου…">
+<!ENTITY calendar.context.deleteserver2.accesskey "Δ">
+
+<!-- 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 "Κατάργηση ημερολογίου…">
+<!ENTITY calendar.context.removeserver.accesskey "Κ">
+<!ENTITY calendar.context.unsubscribeserver.label "Απεγγραφή από το ημερολόγιο…">
+<!ENTITY calendar.context.unsubscribeserver.accesskey "γ">
+<!ENTITY calendar.context.synccalendars.label "Συγχρονισμός ημερολογίων">
+<!ENTITY calendar.context.synccalendars.accesskey "Σ">
+<!ENTITY calendar.context.publish.label "Δημοσίευση ημερολογίου…">
+<!ENTITY calendar.context.publish.accesskey "Δ">
+<!ENTITY calendar.context.export.label "Εξαγωγή ημερολογίου…">
+<!ENTITY calendar.context.export.accesskey "ξ">
+<!ENTITY calendar.context.properties.label "Ιδιότητες">
+<!ENTITY calendar.context.properties.accesskey "Ι">
+
+<!-- LOCALIZATION NOTE (calendar.context.showcalendar.accesskey)
+ This is the access key used for the showCalendar string -->
+<!ENTITY calendar.context.showcalendar.accesskey "η">
+
+<!-- LOCALIZATION NOTE (calendar.context.hidecalendar.accesskey)
+ This is the access key used for the hideCalendar string -->
+<!ENTITY calendar.context.hidecalendar.accesskey "η">
+
+<!-- LOCALIZATION NOTE (calendar.context.showonly.accesskey)
+ This is the access key used for the showOnlyCalendar string -->
+<!ENTITY calendar.context.showonly.accesskey "μ">
+<!ENTITY calendar.context.showall.label "Εμφάνιση όλων των ημερολογίων">
+<!ENTITY calendar.context.showall.accesskey "ω">
+
+<!ENTITY calendar.context.convertmenu.label "Μετατροπή σε">
+<!ENTITY calendar.context.convertmenu.accesskey.mail "ρ">
+<!ENTITY calendar.context.convertmenu.accesskey.calendar "Μ">
+<!ENTITY calendar.context.convertmenu.event.label "Συμβάν…">
+<!ENTITY calendar.context.convertmenu.event.accesskey "Σ">
+<!ENTITY calendar.context.convertmenu.message.label "Μήνυμα…">
+<!ENTITY calendar.context.convertmenu.message.accesskey "Μ">
+<!ENTITY calendar.context.convertmenu.task.label "Εργασία…">
+<!ENTITY calendar.context.convertmenu.task.accesskey "Ε">
+
+<!ENTITY calendar.tasks.view.minimonth.label "Μίνι μήνας">
+<!ENTITY calendar.tasks.view.minimonth.accesskey "Μ">
+
+<!ENTITY calendar.tasks.view.calendarlist.label "Λίστα ημερολογίων">
+<!ENTITY calendar.tasks.view.calendarlist.accesskey "Λ">
+
+<!ENTITY calendar.tasks.view.filtertasks.label "Φιλτράρισμα εργασιών">
+<!ENTITY calendar.tasks.view.filtertasks.accesskey "Φ">
+
+<!-- Calendar Alarm Dialog -->
+
+<!ENTITY calendar.alarm.location.label "Τοποθεσία:" >
+<!ENTITY calendar.alarm.details.label "Λεπτομέρειες…" >
+
+<!ENTITY calendar.alarm.snoozefor.label "Αναστολή υπενθύμισης για" >
+<!ENTITY calendar.alarm.snoozeallfor.label "Αναστολή όλων των υπενθυμίσεων για" >
+<!ENTITY calendar.alarm.title.label "Υπενθυμίσεις ημερολογίου" >
+<!ENTITY calendar.alarm.dismiss.label "Απόρριψη" >
+<!ENTITY calendar.alarm.dismissall.label "Οριστικό σταμάτημα όλων" >
+
+<!ENTITY calendar.alarm.snooze.5minutes.label "5 λεπτά" >
+<!ENTITY calendar.alarm.snooze.10minutes.label "10 λεπτά" >
+<!ENTITY calendar.alarm.snooze.15minutes.label "15 λεπτά" >
+<!ENTITY calendar.alarm.snooze.30minutes.label "30 λεπτά" >
+<!ENTITY calendar.alarm.snooze.45minutes.label "45 λεπτά" >
+<!ENTITY calendar.alarm.snooze.1hour.label "1 ώρα" >
+<!ENTITY calendar.alarm.snooze.2hours.label "2 ώρες" >
+<!ENTITY calendar.alarm.snooze.1day.label "1 ημέρα" >
+
+<!-- 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 "Ακύρωση αναστολής υπενθύμισης">
+
+<!-- Calendar Server Dialog -->
+<!ENTITY calendar.server.dialog.title.edit "Επεξεργασία ημερολογίου">
+<!ENTITY calendar.server.dialog.name.label "Όνομα ημερολογίου:">
+
+<!-- Calendar Properties -->
+<!ENTITY calendarproperties.color.label "Χρώμα:">
+<!ENTITY calendarproperties.webdav.label "iCalendar (ICS)">
+<!ENTITY calendarproperties.caldav.label "CalDAV">
+<!ENTITY calendarproperties.format.label "Μορφή:">
+<!ENTITY calendarproperties.location.label "Τοποθεσία:">
+<!ENTITY calendarproperties.refreshInterval.label "Ανανέωση ημερολογίου:">
+<!ENTITY calendarproperties.refreshInterval.manual.label "Με μη αυτόματο τρόπο">
+<!ENTITY calendarproperties.name.label "Όνομα:">
+<!ENTITY calendarproperties.readonly.label "Μόνο για ανάγνωση">
+<!ENTITY calendarproperties.firealarms.label "Εμφάνιση υπενθυμίσεων">
+<!ENTITY calendarproperties.cache3.label "Υποστήριξη εκτός σύνδεσης">
+<!ENTITY calendarproperties.enabled2.label "Ενεργοποίηση ημερολογίου">
+<!ENTITY calendarproperties.forceDisabled.label "Η υπηρεσία παροχής για αυτό το ημερολόγιο δεν ήταν δυνατόν να βρεθεί. Αυτό συχνά συμβαίνει αν έχετε απενεργοποιήσει ή απεγκαταστήσει κάποια πρόσθετα.">
+<!ENTITY calendarproperties.unsubscribe.label "Κατάργηση εγγραφής">
+<!ENTITY calendarproperties.unsubscribe.accesskey "φ">
+
+<!-- Calendar Publish Dialog -->
+<!ENTITY calendar.publish.dialog.title "Δημοσίευση ημερολογίου">
+<!ENTITY calendar.publish.url.label "Δημοσίευση URL">
+<!ENTITY calendar.publish.publish.button "Δημοσίευση">
+<!ENTITY calendar.publish.close.button "Κλείσιμο">
+
+<!ENTITY calendar.publish.example.url.description "Κάτι σαν http://www.myserver.com/webdav/test.ics">
+
+<!-- Select Calendar Dialog -->
+<!ENTITY calendar.select.dialog.title "Επιλογή ημερολογίου">
+
+<!-- Calendar Printing -->
+<!ENTITY calendar.print.window.title "Εκτύπωση κάποιου ημερολογίου">
+<!ENTITY calendar.print.title.label "Τίτλος:">
+<!ENTITY calendar.print.layout.label "Διάταξη:">
+<!ENTITY calendar.print.range.label "Τι να εκτυπωθεί">
+<!ENTITY calendar.print.currentView2.label "Τρέχουσα προβολή">
+<!ENTITY calendar.print.selectedEventsAndTasks.label "Επιλεγμένα συμβάντα/εργασίες">
+<!ENTITY calendar.print.tasks.label "Εργασίες">
+<!ENTITY calendar.print.events.label "Συμβάντα">
+<!ENTITY calendar.print.custom.label "Προσαρμοσμένο εύρος ημερομηνιών:">
+<!ENTITY calendar.print.from.label "Από:">
+<!ENTITY calendar.print.to.label "Έως:">
+<!ENTITY calendar.print.settingsGroup.label "Ρυθμίσεις εκτύπωσης">
+<!ENTITY calendar.print.optionsGroup.label "Επιλογές">
+<!ENTITY calendar.print.taskswithnoduedate.label "Εργασίες χωρίς προθεσμία">
+<!ENTITY calendar.print.completedtasks.label "Ολοκληρωμένες εργασίες">
+
+<!-- Error reporting -->
+<!ENTITY calendar.error.detail "Λεπτομέρειες…">
+<!ENTITY calendar.error.code "Κωδικός σφάλματος:">
+<!ENTITY calendar.error.description "Περιγραφή:">
+<!ENTITY calendar.error.title "Παρουσιάστηκε σφάλμα">
+
+<!-- Extract buttons in message header -->
+<!ENTITY calendar.extract.event.button "Προσθήκη ως συμβάν">
+<!ENTITY calendar.extract.task.button "Προσθήκη ως εργασία">
+<!ENTITY calendar.extract.event.button.tooltip "Εξαγωγή ημερολογιακών πληροφοριών από το μήνυμα και προσθήκη τους στο ημερολόγιό σας ως συμβάν">
+<!ENTITY calendar.extract.task.button.tooltip "Εξαγωγή ημερολογιακών πληροφοριών από το μήνυμα και προσθήκη τους στο ημερολόγιό σας ως εργασία">
diff --git a/l10n-el/calendar/chrome/calendar/calendar.properties b/l10n-el/calendar/chrome/calendar/calendar.properties
new file mode 100644
index 0000000000..b0ea79fa50
--- /dev/null
+++ b/l10n-el/calendar/chrome/calendar/calendar.properties
@@ -0,0 +1,794 @@
+# 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=Προεπισκόπηση εκτύπωσης του %1$S
+Untitled=Χωρίς τίτλο
+
+# Default name for new events
+newEvent=Νέο συμβάν
+
+# Titles for the event/task dialog
+newEventDialog=Νέο συμβάν
+editEventDialog=Επεξεργασία συμβάντος
+newTaskDialog=Νέα εργασία
+editTaskDialog=Επεξεργασία εργασίας
+
+# Do you want to save changes?
+askSaveTitleEvent=Αποθήκευση συμβάντος
+askSaveTitleTask=Αποθήκευση εργασίας
+askSaveMessageEvent=Το συμβάν δεν έχει αποθηκευτεί. Θέλετε να αποθηκεύσετε το συμβάν;
+askSaveMessageTask=Η εργασία δεν έχει αποθηκευτεί. Θέλετε να αποθηκεύσετε την εργασία;
+
+# Event Dialog Warnings
+warningEndBeforeStart=Η ημερομηνία λήξης που ορίσατε προηγείται της ημερομηνίας έναρξης
+warningUntilDateBeforeStart=Η ημερομηνία μέχρι την οποία να επαναλαμβάνεται δεν μπορεί να είναι πριν την ημερομηνία έναρξης
+
+# The name of the calendar provided with the application by default
+homeCalendarName=Προσωπικό
+
+# The name given to a calendar if an opened calendar has an empty filename
+untitledCalendarName=Ημερολόγιο χωρίς τίτλο
+
+# Event status: Tentative, Confirmed, Cancelled
+# ToDo task status: NeedsAction, InProcess, Completed, Cancelled
+statusTentative =Με επιφύλαξη
+statusConfirmed =Επιβεβαιωμένο
+eventStatusCancelled=Ακυρωμένο
+todoStatusCancelled =Ακυρωμένη
+statusNeedsAction =Απαιτείται ενέργεια
+statusInProcess =Σε εξέλιξη
+statusCompleted =Ολοκληρωμένο
+
+# Task priority, these should match the priority.level.* labels in calendar.dtd
+highPriority=Υψηλή
+normalPriority=Κανονική
+lowPriority=Χαμηλή
+
+importPrompt=Σε ποιο ημερολόγιο θέλετε να κάνετε εισαγωγή αυτών των στοιχείων;
+exportPrompt=Από ποιο ημερολόγιο θέλετε να κάνετε εξαγωγή;
+pastePrompt=Σε ποιό από τα εγγράψιμα ημερολόγια θέλετε να επικολλήσετε;
+publishPrompt=Ποιο ημερολόγιο θέλετε να δημοσιεύσετε;
+
+# LOCALIZATION NOTE (pasteEventAlso): The users pasting operation includes among
+# others also a meeting invitation - this is used as a affix in
+# pasteNotifyAbout
+pasteEventAlso=Η επικόλλησή σας περιλαμβάνει μια συνάντηση
+# LOCALIZATION NOTE (pasteEventsAlso): The users pasting operation includes among
+# others also several meeting invitations - this is used as a affix in
+# pasteNotifyAbout
+pasteEventsAlso=Η επικόλλησή σας περιλαμβάνει συναντήσεις
+# LOCALIZATION NOTE (pasteTaskAlso): The users pasting operation includes among
+# others also an assigned task - this is used as a affix in pasteNotifyAbout
+pasteTaskAlso=Η επικόλλησή σας περιλαμβάνει μια ανατεθειμένη εργασία
+# LOCALIZATION NOTE (pasteTasksAlso): The users pasting operation include among
+# others also several assigned tasks - this is used as a affix in
+# pasteNotifyAbout
+pasteTasksAlso=Η επικόλλησή σας περιλαμβάνει ανατεθειμένες εργασίες
+# 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=Η επικόλλησή σας περιλαμβάνει συναντήσεις και ανατεθειμένες εργασίες
+# LOCALIZATION NOTE (pasteEventOnly): The users is pasting a meeting -
+# this is used as a affix in pasteNotifyAbout
+pasteEventOnly=Επικολλάτε μια συνάντηση
+# LOCALIZATION NOTE (pasteEventsOnly): The users is pasting several meetings -
+# this is used as a affix in pasteNotifyAbout
+pasteEventsOnly=Επικολλάτε συναντήσεις
+# LOCALIZATION NOTE (pasteEventOnly): The users is pasting an assigned task -
+# this is used as a affix in pasteNotifyAbout
+pasteTaskOnly=Επικολλάτε μια ανατεθειμένη εργασία
+# LOCALIZATION NOTE (pasteEventsOnly): The users is pasting several assigned
+# tasks - this is used as a affix in pasteNotifyAbout
+pasteTasksOnly=Επικολλάτε ανατεθειμένες εργασίες
+# LOCALIZATION NOTE (pasteEventsOnly): The users is pasting assigned task(s) and
+# meeting(s) - this is used as a affix in pasteNotifyAbout
+pasteItemsOnly=Επικολλάτε συναντήσεις και ανατεθειμένες εργασίες
+
+# LOCALIZATION NOTE (pasteNotifyAbout): Text displayed if pasting an invitation
+# or assigned task
+# %1$S - pasteEvent* or pasteTask*
+pasteNotifyAbout=%1$S - θέλετε να στείλετε μια ενημέρωση σε όλους τους εμπλεκόμενους;
+
+# LOCALIZATION NOTE (pasteAndNotifyLabel): button label used in calendar prompt
+# of the pasted item has attendees
+pasteAndNotifyLabel=Επικόλληση και αποστολή τώρα
+# LOCALIZATION NOTE (pasteDontNotifyLabel): button label used in calendar prompt
+# of the pasted item has attendees
+pasteDontNotifyLabel=Επικόλληση χωρίς αποστολή
+
+# 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=%1$S στοιχεία απέτυχαν να εισαχθούν. Το τελευταίο σφάλμα ήταν: %2$S
+# LOCALIZATION NOTE (noItemsInCalendarFile2):
+# %1$S will be replaced with file path
+noItemsInCalendarFile2=Δεν είναι δυνατή η εισαγωγή από το %1$S. Δεν υπάρχουν στοιχεία προς εισαγωγή σε αυτό το αρχείο.
+
+#spaces needed at the end of the following lines
+eventDescription=Περιγραφή:
+
+unableToRead=Αδυναμία ανάγνωσης από το αρχείο:
+unableToWrite=Αδυναμία εγγραφής στο αρχείο:
+defaultFileName=MozillaCalEvents
+HTMLTitle=Ημερολόγιο 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=Βρέθηκε μια άγνωστη και μη ορισμένη ζώνη ώρας κατά την ανάγνωση του %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 αντικείμενο/α αγνοήθηκε/αν, δεδομένου ότι υπάρχει/ουν τόσο στο ημερολόγιο προορισμού όσο και στο %2$S.
+
+unableToCreateProvider=Παρουσιάστηκε σφάλμα κατά την προετοιμασία για χρήση του ημερολογίου που βρίσκεται στο %1$S. Δεν θα είναι διαθέσιμο.
+
+# Sample: Unknown timezone "USPacific" in "Dentist Appt". Using the 'floating' local timezone instead: 2008/02/28 14:00:00
+unknownTimezoneInItem=Άγνωστη ζώνη ώρας «%1$S» στο «%2$S». Αντιμετωπίζεται αντ' αυτού ως «ρευστή» τοπική ζώνη ώρας: %3$S
+TimezoneErrorsAlertTitle=Σφάλματα ζώνης ώρας
+TimezoneErrorsSeeConsole=Βλ. κονσόλα σφαλμάτων: Οι άγνωστες ζώνες ώρας αντιμετωπίζονται ως «ρευστή» τοπική ζώνη ώρας.
+
+# The following strings are for the prompt to delete/unsubscribe from the calendar
+removeCalendarTitle=Κατάργηση ημερολογίου
+removeCalendarButtonDelete=Διαγραφή ημερολογίου
+removeCalendarButtonUnsubscribe=Κατάργηση εγγραφής
+
+# LOCALIZATION NOTE (removeCalendarMessageDeleteOrUnsubscribe): Shown for
+# calendar where both deleting and unsubscribing is possible.
+# %1$S: The name of a calendar
+removeCalendarMessageDeleteOrUnsubscribe=Θέλετε να καταργήσετε το ημερολόγιο «%1$S»; Η απεγγραφή θα αφαιρέσει το ημερολόγιο από τη λίστα, επίσης η διαγραφή θα σβήσει μόνιμα τα δεδομένα του.
+
+# LOCALIZATION NOTE (removeCalendarMessageDelete): Shown for calendar where
+# deleting is the only option.
+# %1$S: The name of a calendar
+removeCalendarMessageDelete=Θέλετε να διαγράψετε μόνιμα το ημερολόγιο «%1$S»;
+
+# LOCALIZATION NOTE (removeCalendarMessageUnsubscribe): Shown for calendar
+# where unsubscribing is the only option.
+# %1$S: The name of a calendar
+removeCalendarMessageUnsubscribe=Θέλετε να πάψετε να είστε συνδρομητής στο ημερολόγιο «%1$S»;
+
+WeekTitle=Εβδομάδα %1$S
+None=Κανένα
+
+# 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=Τα δεδομένα ημερολογίου σας δεν είναι συμβατά με αυτή την έκδοση του %1$S. Τα δεδομένα ημερολογίου στο προφίλ σας ενημερώθηκαν με μια νεότερη έκδοση του %1$S. Δημιουργήθηκε ένα αντίγραφο ασφαλείας του αρχείου δεδομένων, με όνομα "%2$S". Θα γίνει συνέχεια με ένα νέο αρχείο δεδομένων.
+
+# List of events or todos (unifinder)
+eventUntitled=Χωρίς τίτλο
+
+# Tooltips of events or todos
+tooltipTitle=Τίτλος:
+tooltipLocation=Τοποθεσία:
+# 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=Ημερομηνία:
+# event calendar name
+tooltipCalName=Όνομα ημερολογίου:
+# event status: tentative, confirmed, cancelled
+tooltipStatus=Κατάσταση:
+# event organizer
+tooltipOrganizer=Διοργανωτής:
+# task/todo fields
+# start date time, due date time, task priority number, completed date time
+tooltipStart=Έναρξη:
+tooltipDue=Προθεσμία:
+tooltipPriority=Προτεραιότητα:
+tooltipPercent=% ολοκλήρωση:
+tooltipCompleted=Ολοκληρωμένη:
+
+# 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 είναι επικεφαλής του συμβάντος.
+# 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 δεν συμμετέχει.
+# 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 είναι προαιρετικό να συμμετάσχει.
+# 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 απαιτείται να συμμετάσχει.
+
+# 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 έχει επιβεβαιωμένη συμμετοχή.
+# 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 έχει αρνηθεί να συμμετάσχει.
+# 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 έχει αρνηθεί να συμμετάσχει.
+# 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 ακόμα δεν έχει απαντήσει.
+# 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 έχει επιβεβαιώσει συμμετοχή αλλά με επιφύλαξη.
+
+# 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 (ομάδα)
+# 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 (πόρος)
+# 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 (αίθουσα)
+# 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=Δημιουργία
+Open=Άνοιγμα
+filepickerTitleImport=Εισαγωγή
+filepickerTitleExport=Εξαγωγή
+
+# 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=Έγγραφο XML (%1$S)
+filterHtml=Ιστοσελίδα (%1$S)
+filterOutlookCsv=Λίστα χωρισμένη με κόμμα του Outlook (%1$S)
+
+# Remote calendar errors
+genericErrorTitle=Παρουσιάστηκε σφάλμα
+httpPutError=Η δημοσίευση του αρχείου ημερολογίου απέτυχε.\nΚωδικός σφάλματος: %1$S: %2$S
+otherPutError=Η δημοσίευση του αρχείου ημερολογίου απέτυχε.\nΚωδικός σφάλματος: 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=Υπήρξε σφάλμα κατά την ανάγνωση δεδομένων για το ημερολόγιο: %1$S. Έχει τεθεί σε λειτουργία μόνο για ανάγνωση, καθώς αλλαγές σε αυτό ημερολόγιο θα μπορούσαν να οδηγήσουν σε απώλεια δεδομένων.  Μπορείτε να αλλάξετε αυτήν τη ρύθμιση επιλέγοντας «Επεξεργασία ημερολογίου».
+
+# 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=Υπήρξε σφάλμα κατά την ανάγνωση δεδομένων για το ημερολόγιο: %1$S. Έχει απενεργοποιηθεί έως ότου είναι ασφαλές να το χρησιμοποιήσετε.
+
+# 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=Υπήρξε σφάλμα κατά την ανάγνωση δεδομένων για το ημερολόγιο: %1$S.  Ωστόσο, πιστεύεται ότι αυτό το σφάλμα είναι ήσσονος σημασίας, οπότε το πρόγραμμα θα προσπαθήσει να συνεχίσει.
+
+# 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=Υπήρξε ένα σφάλμα κατά την ανάγνωση δεδομένων για το ημερολόγιο: %1$S.
+utf8DecodeError=Παρουσιάστηκε σφάλμα κατά την αποκωδικοποίηση αρχείου iCalendar (ics) ως UTF-8. Ελέγξτε ότι το αρχείο, συμπεριλαμβανομένων συμβόλων και τονισμένων γραμμάτων, έχει κωδικοποιηθεί χρησιμοποιώντας την κωδικοποίηση χαρακτήρων UTF-8.
+icsMalformedError=Η ανάλυση του αρχείου iCalendar (ics) απέτυχε. Ελέγξτε ότι το αρχείο πληροί τις συντακτικές προδιαγραφές ενός αρχείου iCalendar (ics).
+itemModifiedOnServerTitle=Το στοιχείο άλλαξε στο διακομιστή
+itemModifiedOnServer=Αυτό το στοιχείο έχει μεταβληθεί πρόσφατα στο διακομιστή.\n
+modifyWillLoseData=Υποβάλλοντας τις αλλαγές σας θα αντικαταστήσουν τις αλλαγές που έγιναν στο διακομιστή.
+deleteWillLoseData=Διαγραφή αυτού του στοιχείου θα προκαλέσει απώλεια των αλλαγών που έγιναν στο διακομιστή.
+updateFromServer=Απόρριψη των αλλαγών μου και φόρτωση εκ νέου
+proceedModify=Υποβολή των αλλαγών μου ούτως ή άλλως
+proceedDelete=Διαγραφή ούτως ή άλλως
+dav_notDav=Ο πόρος στο %1$S ή δεν είναι συλλογή DAV ή δεν είναι διαθέσιμος
+dav_davNotCaldav=Ο πόρος στο %1$S είναι μεν συλλογή DAV αλλά όχι ημερολόγιο CalDAV
+itemPutError=Παρουσιάστηκε σφάλμα κατά την αποθήκευση του στοιχείου στο διακομιστή.
+itemDeleteError=Παρουσιάστηκε σφάλμα κατά τη διαγραφή του στοιχείου από το διακομιστή.
+caldavRequestError=Παρουσιάστηκε σφάλμα κατά την αποστολή της πρόσκλησης.
+caldavResponseError=Παρουσιάστηκε σφάλμα κατά την αποστολή της απάντησης.
+caldavRequestStatusCode=Κωδικός κατάστασης: %1$S
+caldavRequestStatusCodeStringGeneric=Δεν είναι δυνατό να γίνει η επεξεργασία του αιτήματος.
+caldavRequestStatusCodeString400=Το αίτημα περιέχει εσφαλμένη σύνταξη και δεν μπορεί να διεκπεραιωθεί.
+caldavRequestStatusCodeString403=Ο χρήστης δεν διαθέτει την απαιτούμενη εξουσιοδότηση για να εκτελέσει το αίτημα.
+caldavRequestStatusCodeString404=Ο πόρος δεν βρέθηκε.
+caldavRequestStatusCodeString409=Διένεξη πόρων.
+caldavRequestStatusCodeString412=Η προϋπόθεση απέτυχε.
+caldavRequestStatusCodeString500=Εσωτερικό σφάλμα διακομιστή.
+caldavRequestStatusCodeString502=Εσφαλμένη πύλη (Ρυθμίσεις διακομιστή μεσολάβησης;).
+caldavRequestStatusCodeString503=Εσωτερικό σφάλμα διακομιστή (Προσωρινή διακοπή διακομιστή;).
+caldavRedirectTitle=Ενημέρωση της τοποθεσίας για το ημερολόγιο %1$S;
+caldavRedirectText=Τα αιτήματα για %1$S ανακατευθύνονται σε μια νέα τοποθεσία. Θα θέλατε να αλλάξετε την τοποθεσία με την ακόλουθη τιμή;
+caldavRedirectDisableCalendar=Απενεργοποίηση ημερολογίου
+
+
+# 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=Europe/Athens, Asia/Nicosia
+
+# 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=Προειδοποίηση: Η ζώνη ώρας του λειτουργικού συστήματος «%1$S»\n δεν ταιριάζει με την εσωτερική ζώνη ώρας «%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=Γίνεται παράκαμψη της ζώνης ώρας του λειτουργικού συστήματος «%1$S».
+
+# "Skipping locale timezone 'America/New_Yawk'."
+# Testing note: Skipping occurs if a likelyTimezone id is unknown or misspelled.
+SkippingLocaleTimezone=Γίνεται παράκαμψη της ζώνης ώρας που ορίζεται από τις τοπικές ρυθμίσεις «%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=Προειδοποίηση: Γίνεται χρήση «ρευστής» ζώνης ώρας.\nΔεν υπάρχουν δεδομένα ζώνης ώρας της υπηρεσίας ZoneInfo που να ταιριάζουν με τα δεδομένα ζώνης ώρας του λειτουργικού συστήματος.
+
+# "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=Προειδοποίηση: Γίνεται χρήση εικαζόμενης ζώνης ώρας \n %1$S (UTC%2$S).\n%3$S\n%4$S
+
+# Testing note: "Almost match" timezones include Cairo on W2k.
+TZAlmostMatchesOSDifferAtMostAWeek=Αυτή η ζώνη ώρας της υπηρεσίας ZoneInfo ταιριάζει στο περίπου με τη ζώνη ώρας του λειτουργικού συστήματος.\nΓια τον κανόνα αυτό, οι επόμενες μεταβάσεις μεταξύ θερινής και χειμερινής ώρας\nδιαφέρουν το πολύ μια εβδομάδα από τις μεταβάσεις της ζώνης ώρας του λειτουργικού συστήματος. \nΜπορεί να υπάρξουν αποκλίσεις στα δεδομένα, όπως διαφορετικές ημερομηνίες έναρξης,\nή διαφορετικοί κανόνες ή διαφορετικός βαθμός προσέγγισης των κανόνων του μη Γρηγοριανού ημερολογίου.
+
+TZSeemsToMatchOS=Αυτή η ζώνη ώρας της υπηρεσίας ZoneInfo φαίνεται να ταιριάζει με τη ζώνη ώρας του λειτουργικού συστήματος για αυτό το έτος.
+
+# LOCALIZATION NOTE (TZFromOS):
+# used for a display of a chosen timezone
+# %1$S will be replaced with the name of a timezone
+TZFromOS=Αυτή η ζώνη ώρας της υπηρεσίας ZoneInfo επιλέχθηκε βάσει της ζώνης ώρας του λειτουργικού συστήματος\nαναγνωριστικό «%1$S».
+
+# Localization note (TZFromLocale): Substitute name of your locale language.
+TZFromLocale=Αυτή η ζώνη ώρας της υπηρεσίας ZoneInfo επιλέχθηκε βάσει της αντιστοίχισης με τη ζώνη ώρας του λειτουργικού συστήματος\nμε πιθανές ζώνες ώρας για τους χρήστες του Διαδικτύου που χρησιμοποιούν Αγγλικά ΗΠΑ.
+
+TZFromKnownTimezones=Αυτή η ζώνη ώρας της υπηρεσίας ZoneInfo επιλέχθηκε βάσει της αντιστοίχισης με τη ζώνη ώρας του λειτουργικού συστήματος\nμε γνωστές ζώνες ώρες κατά αλφαβητική σειρά του αναγνωριστικού ζώνης ώρας.
+
+# Print Layout
+formatListName = Λίστα
+weekPrinterName = Εβδομαδιαία ατζέντα
+monthPrinterName = Μηνιαίο πλέγμα
+tasksWithNoDueDate = Εργασίες χωρίς προθεσμία
+
+# Providers
+caldavName=CalDAV
+compositeName=Σύνθετο
+icsName=iCalendar (ICS)
+memoryName=Προσωρινό (μνήμη)
+storageName=Τοπικό (SQLite)
+
+# Used in created html code for list layout print and html export
+htmlPrefixTitle=Τίτλος
+htmlPrefixWhen=Όταν
+htmlPrefixLocation=Τοποθεσία
+htmlPrefixDescription=Περιγραφή
+htmlTaskCompleted=%1$S (ολοκληρωμένη)
+
+# Categories
+addCategory=Προσθήκη κατηγορίας
+multipleCategories=Πολλαπλές κατηγορίες
+
+today=Σήμερα
+tomorrow=Αύριο
+yesterday=Χθες
+
+#Today pane
+eventsonly=Συμβάντα
+eventsandtasks=Συμβάντα και εργασίες
+tasksonly=Εργασίες
+shortcalendarweek=Ε
+
+go=Μετάβαση
+
+# 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=επόμενο
+next2=επόμενο
+last1=τελευταίο
+last2=τελευταίο
+
+# Alarm Dialog
+# LOCALIZATION NOTE (alarmWindowTitle.label): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/Localization_and_Plurals
+alarmWindowTitle.label=#1 υπενθύμιση;#1 υπενθυμίσεις
+
+# 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=Έναρξη: %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=Σήμερα στις %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=Αύριο στις %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=Χθες στις %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=Προεπιλεγμένη περιγραφή Mozilla
+alarmDefaultSummary=Προεπιλεγμένη σύνοψη Mozilla
+
+# LOCALIZATION NOTE (alarmSnoozeLimitExceeded): Semi-colon list of plural
+# forms.
+alarmSnoozeLimitExceeded=Δεν μπορείτε να αναστείλετε μια υπενθύμιση για περισσότερο από #1 μήνα.;Δεν μπορείτε να αναστείλετε μια υπενθύμιση για περισσότερο από #1 μήνες.
+
+taskDetailsStatusNeedsAction=Απαιτείται ενέργεια
+
+# 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%% ολοκληρωμένη
+taskDetailsStatusCompleted=Ολοκληρωμένη
+
+# 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=Ολοκληρώθηκε %1$S
+taskDetailsStatusCancelled=Ακυρωμένη
+
+gettingCalendarInfoCommon=Γίνεται έλεγχος των ημερολογίων…
+
+# 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=Γίνεται έλεγχος ημερολογίου %1$S από %2$S
+
+# LOCALIZATION NOTE (errorCode):
+# %1$S will be replaced with the number of an error code
+errorCode=Κωδικός σφάλματος: %1$S
+
+# LOCALIZATION NOTE (errorDescription):
+# %1$S will be replaced with the description of an error
+errorDescription=Περιγραφή: %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=Συνέβη ένα σφάλμα κατά την εγγραφή στο ημερολόγιο %1$S! Δείτε παρακάτω για περισσότερες πληροφορίες.
+
+# LOCALIZATION NOTE (errorWritingDetails):
+# This will be displayed in the detail section of the error dialog
+errorWritingDetails=Αν βλέπετε το μήνυμα μετά την αναστολή ή την αγνόηση μιας υπενθύμισης και αυτό είναι ένα ημερολόγιο για το οποίο δεν επιθυμείτε να προσθέτετε ή τροποποιείτε γεγονότα, μπορείτε να το ορίσετε ως ημερολόγιο μόνο για ανάγνωση ώστε να αποφύγετε στο μέλλον παρόμοια εμπειρία. Για να το κάνετε αυτό, μεταβείτε στις ιδιότητες του ημερολογίου με δεξί κλικ στο ημερολόγιο στη λίστα ημερολογίων ή στην προβολή εργασιών.
+
+# 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=Το ημερολόγιο %1$S είναι προς στιγμήν μη διαθέσιμο
+
+# 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=Το ημερολόγιο %1$S είναι μόνο για ανάγνωση
+
+taskEditInstructions=Κλικ εδώ για προσθήκη νέας εργασίας
+taskEditInstructionsReadonly=Παρακαλούμε επιλέξτε ένα εγγράψιμο ημερολόγιο
+taskEditInstructionsCapability=Παρακαλούμε επιλέξτε ένα ημερολόγιο που να υποστηρίζει εργασίες
+
+eventDetailsStartDate=Έναρξη:
+eventDetailsEndDate=Λήξη:
+
+# 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=Ημερολογιακή εβδομάδα: %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=Ημερολογιακές εβδομάδες: %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=Ε: %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=Ε: %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 ημέρα;#1 ημέρες
+dueInHours=#1 ώρα;#1 ώρες
+dueInLessThanOneHour=< 1 ώρας
+
+# 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 %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 %2$S %3$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 %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 – %3$S %1$S %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=genitive
+
+# 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 %1$S – %4$S %3$S %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=genitive
+
+# 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 %1$S %3$S – %5$S %4$S %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=genitive
+
+# 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, %2$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, %2$S - %3$S, %4$S
+
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutDate):
+# used for task without start and due date
+# (showed only in exported calendar in Html format)
+datetimeIntervalTaskWithoutDate= χωρίς έναρξη ή προθεσμία
+# 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=ημερομηνία έναρξης %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=ημερομηνία προθεσμίας %1$S %2$S
+
+# LOCALIZATION NOTE (dragLabelTasksWithOnlyEntryDate
+# dragLabelTasksWithOnlyDueDate)
+# Labels that appear while dragging a task with only
+# entry date OR due date
+dragLabelTasksWithOnlyEntryDate=Ώρα έναρξης
+dragLabelTasksWithOnlyDueDate=Προθεσμία μέχρι
+
+deleteTaskLabel=Διαγραφή εργασίας
+deleteTaskMessage=Θέλετε σίγουρα να διαγράψετε αυτήν την εργασία;
+deleteTaskAccesskey=Δ
+deleteItemLabel=Διαγραφή
+deleteItemMessage=Θέλετε σίγουρα να διαγράψετε αυτό το στοιχείο;
+deleteItemAccesskey=Δ
+deleteEventLabel=Διαγραφή συμβάντος
+deleteEventMessage=Θέλετε σίγουρα να διαγράψετε αυτό το συμβάν;
+deleteEventAccesskey=Δ
+
+calendarPropertiesEveryMinute=Κάθε λεπτό;Κάθε #1 λεπτά
+
+# LOCALIZATION NOTE (extractUsing)
+# Used in message header
+# %1$S will be replaced with language name from languageNames.properties
+extractUsing=Χρήση του %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=Χρήση του %1$S (%2$S)
+
+# LOCALIZATION NOTE (unit)
+# Used to determine the correct plural form of a unit
+unitMinutes=#1 λεπτό;#1 λεπτά
+unitHours=#1 ώρα;#1 ώρες
+unitDays=#1 ημέρα;#1 ημέρες
+unitWeeks=#1 εβδομάδα;#1 εβδομάδες
+
+# 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=Εμφάνιση %1$S
+hideCalendar=Απόκρυψη του "%1$S"
+# uses the access key calendar.context.showonly.accesskey
+showOnlyCalendar=Εμφάνιση μόνο του "%1$S"
+
+# LOCALIZATION NOTE (modifyConflict)
+# Used by the event dialog to resolve item modification conflicts.
+modifyConflictPromptTitle=Σύγκρουση επεξεργασιών στοιχείου
+modifyConflictPromptMessage=Το στοιχείο έχει τροποποιηθεί από κάποιον τρίτο ενώσω βρίσκεται σε επεξεργασία στο πλαίσιο διαλόγου.
+modifyConflictPromptButton1=Αντικατάσταση των άλλων αλλαγών
+modifyConflictPromptButton2=Απόρριψη των παρόντων αλλαγών
+
+# 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=(ανατέθηκε από %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=(ανατέθηκε σε %1$S)
+
+# Accessible description of a grid calendar with no selected date
+minimonthNoSelectedDate=Δεν επιλέχθηκε ημερομηνία
diff --git a/l10n-el/calendar/chrome/calendar/calendarCreation.dtd b/l10n-el/calendar/chrome/calendar/calendarCreation.dtd
new file mode 100644
index 0000000000..04bfb9f804
--- /dev/null
+++ b/l10n-el/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 "Δημιουργία νέου ημερολογίου" >
+<!ENTITY wizard.label "Δημιουργία νέου ημερολογίου" >
+<!ENTITY wizard.description "Τοποθεσία του ημερολογίου σας" >
+
+<!ENTITY initialpage.description "Το ημερολόγιό σας μπορεί να αποθηκευτεί στον υπολογιστή σας ή σε κάποιο διακομιστή ώστε να έχετε πρόσβαση σε αυτό από μακριά ή να το μοιράζεστε με τους φίλους σας και τους συνεργάτες σας." >
+<!ENTITY initialpage.computer.label "Στον υπολογιστή μου">
+<!ENTITY initialpage.network.label "Στο διαδίκτυο">
+
+<!ENTITY locationpage.description "Συμπληρώστε τα στοιχεία που χρειάζονται για πρόσβαση στο απομακρυσμένο ημερολόγιό σας" >
+<!ENTITY locationpage.login.description "Προαιρετικά: εισαγάγετε όνομα χρήστη και κωδικό πρόσβασης" >
+<!ENTITY locationpage.username.label "Όνομα χρήστη:" >
+<!ENTITY locationpage.password.label "Κωδικός πρόσβασης:" >
+
+<!ENTITY custompage.shortdescription "Προσαρμόστε το ημερολόγιό σας" >
+<!ENTITY custompage.longdescription "Μπορείτε να δώσετε στο ημερολόγιο σας ένα ψευδώνυμο και να χρωματίσετε τα γεγονότα από αυτό το ημερολόγιο." >
+
+<!ENTITY finishpage.shortdescription "Το ημερολόγιο δημιουργήθηκε" >
+<!ENTITY finishpage.longdescription "Το ημερολόγιό σας έχει δημιουργηθεί." >
+
+<!-- Below are new strings for the revised new calendar dialog. The above strings should be
+ removed/renamed later on -->
+
+<!ENTITY sourcetabs.other.label "Άλλο">
+
+<!ENTITY buttons.create.label "Δημιουργία ημερολογίου">
+<!ENTITY buttons.create.accesskey "μ">
+
+<!ENTITY buttons.find.label "Εύρεση ημερολογίων">
+<!ENTITY buttons.find.accesskey "Ε">
+
+<!ENTITY buttons.back.label "Πίσω">
+<!ENTITY buttons.back.accesskey "Π">
+
+<!ENTITY buttons.subscribe.label "Εγγραφή">
+<!ENTITY buttons.subscribe.accesskey "Ε">
+
+<!ENTITY calendartype.label "Τύπος ημερολογίου:">
+<!ENTITY location.label "Τοποθεσία:">
+<!ENTITY location.placeholder "Διεύθυνση URL ή όνομα διακομιστή του διακομιστή ημερολογίου">
+
+<!ENTITY network.nocredentials.label "Αυτή η τοποθεσία δεν απαιτεί διαπιστευτήρια">
+<!ENTITY network.loading.description "Παρακαλώ περιμένετε για την ανίχνευση των ημερολογίων σας.">
+<!ENTITY network.notfound.description "Δεν ήταν δυνατή η εύρεση ημερολογίων σε αυτή την τοποθεσία. Παρακαλώ ελέγξτε τις ρυθμίσεις σας.">
+<!ENTITY network.authfail.description "Τα διαπιστευτήρια που εισαγάγατε δεν έγιναν αποδεκτά. Παρακαλώ ελέγξτε τις ρυθμίσεις σας.">
+
+<!ENTITY network.subscribe.single.description "Παρακαλώ επιλέξτε τα ημερολόγια στα οποία θέλετε να εγγραφείτε.">
+<!ENTITY network.subscribe.multiple.description "Πολλαπλοί τύποι ημερολογίων είναι διαθέσιμοι σε αυτή την τοποθεσία. Παρακαλώ επιλέξτε τον τύπο ημερολογίου και στη συνέχεια επιλέξτε τα ημερολόγια που θέλετε να εγγραφείτε.">
diff --git a/l10n-el/calendar/chrome/calendar/calendarCreation.properties b/l10n-el/calendar/chrome/calendar/calendarCreation.properties
new file mode 100644
index 0000000000..73ef4a00e8
--- /dev/null
+++ b/l10n-el/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=Παρακαλούμε εισάγετε μια έγκυρη τοποθεσία.
+error.alreadyExists=Έχετε ήδη εγγραφεί στο ημερολόγιο σε αυτή την τοποθεσία.
diff --git a/l10n-el/calendar/chrome/calendar/categories.properties b/l10n-el/calendar/chrome/calendar/categories.properties
new file mode 100644
index 0000000000..93eff4cd6a
--- /dev/null
+++ b/l10n-el/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=Αγαπημένα,Αγοραστής,Ανταγωνισμός,Γενέθλια,Γιορτές,Διακοπές,Διάφορα,Δώρα,Επίσημη αργία,Έργα,Επαγγελματικά,Επέτειος,Ζητήματα,Ιδέες,Κατάσταση,Κλήσεις,Παρακολούθηση ενέργειας,Πελάτες,Προμηθευτές,Προσωπικά,Συνάντηση,Ταξίδι
diff --git a/l10n-el/calendar/chrome/calendar/dateFormat.properties b/l10n-el/calendar/chrome/calendar/dateFormat.properties
new file mode 100644
index 0000000000..6c4ea63f7e
--- /dev/null
+++ b/l10n-el/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=Ιανουάριος
+month.2.name=Φεβρουάριος
+month.3.name=Μάρτιος
+month.4.name=Απρίλιος
+month.5.name=Μάιος
+month.6.name=Ιούνιος
+month.7.name=Ιούλιος
+month.8.name=Αύγουστος
+month.9.name=Σεπτέμβριος
+month.10.name=Οκτώβριος
+month.11.name=Νοέμβριος
+month.12.name=Δεκέμβριος
+
+# 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=Ιανουαρίου
+month.2.genitive=Φεβρουαρίου
+month.3.genitive=Μαρτίου
+month.4.genitive=Απριλίου
+month.5.genitive=Μαΐου
+month.6.genitive=Ιουνίου
+month.7.genitive=Ιουλίου
+month.8.genitive=Αυγούστου
+month.9.genitive=Σεπτεμβρίου
+month.10.genitive=Οκτωβρίου
+month.11.genitive=Νοεμβρίου
+month.12.genitive=Δεκεμβρίου
+
+month.1.Mmm=Ιαν
+month.2.Mmm=Φεβ
+month.3.Mmm=Μαρ
+month.4.Mmm=Απρ
+month.5.Mmm=Μαϊ
+month.6.Mmm=Ιουν
+month.7.Mmm=Ιουλ
+month.8.Mmm=Αυγ
+month.9.Mmm=Σεπ
+month.10.Mmm=Οκτ
+month.11.Mmm=Νοέ
+month.12.Mmm=Δεκ
+
+day.1.name=Κυριακή
+day.2.name=Δευτέρα
+day.3.name=Τρίτη
+day.4.name=Τετάρτη
+day.5.name=Πέμπτη
+day.6.name=Παρασκευή
+day.7.name=Σάββατο
+
+day.1.Mmm=Κυρ
+day.2.Mmm=Δευ
+day.3.Mmm=Τρί
+day.4.Mmm=Τετ
+day.5.Mmm=Πέμ
+day.6.Mmm=Παρ
+day.7.Mmm=Σάβ
+
+# Can someone tell me why we're not counting from zero?
+day.1.short=Κυ
+day.2.short=Δε
+day.3.short=Τρ
+day.4.short=Τε
+day.5.short=Πέ
+day.6.short=Πα
+day.7.short=Σά
+
+# 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=Μεσημέρι
+midnight=Μεσάνυχτα
+
+AllDay=Όλη μέρα
+Repeating=(Επαναλαμβανόμενο)
diff --git a/l10n-el/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd b/l10n-el/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd
new file mode 100644
index 0000000000..96615e38ae
--- /dev/null
+++ b/l10n-el/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 "Ορισμός υπενθυμίσεων">
+<!ENTITY reminder.add.label "Προσθήκη">
+<!ENTITY reminder.add.accesskey "Π">
+<!ENTITY reminder.remove.label "Αφαίρεση">
+<!ENTITY reminder.remove.accesskey "Α">
+
+<!ENTITY reminder.reminderDetails.label "Λεπτομέρειες υπενθύμισης">
+<!ENTITY reminder.action.label "Επιλογή ενέργειας υπενθύμισης">
+
+<!ENTITY reminder.action.alert.label "Εμφάνιση αναδυόμενης ειδοποίησης">
+<!ENTITY reminder.action.email.label "Αποστολή email">
+
+<!ENTITY alarm.units.minutes "λεπτά" >
+<!ENTITY alarm.units.hours "ώρες" >
+<!ENTITY alarm.units.days "ημέρες" >
diff --git a/l10n-el/calendar/chrome/calendar/global.dtd b/l10n-el/calendar/chrome/calendar/global.dtd
new file mode 100644
index 0000000000..dac6704a7c
--- /dev/null
+++ b/l10n-el/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 "Μεσάνυχτα" >
+<!ENTITY time.noon "Μεσημέρι" >
+
+<!-- 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 "Κυρ" >
+<!ENTITY day.1.Ddd.accesskey "Κ">
+<!ENTITY day.2.Ddd "Δευ" >
+<!ENTITY day.2.Ddd.accesskey "Δ">
+<!ENTITY day.3.Ddd "Τρί" >
+<!ENTITY day.3.Ddd.accesskey "ρ">
+<!ENTITY day.4.Ddd "Τετ" >
+<!ENTITY day.4.Ddd.accesskey "Τ">
+<!ENTITY day.5.Ddd "Πέμ" >
+<!ENTITY day.5.Ddd.accesskey "μ">
+<!ENTITY day.6.Ddd "Παρ" >
+<!ENTITY day.6.Ddd.accesskey "Π">
+<!ENTITY day.7.Ddd "Σάβ" >
+<!ENTITY day.7.Ddd.accesskey "Σ">
+
+<!ENTITY day.1.name "Κυριακή" >
+<!ENTITY day.2.name "Δευτέρα" >
+<!ENTITY day.3.name "Τρίτη" >
+<!ENTITY day.4.name "Τετάρτη" >
+<!ENTITY day.5.name "Πέμπτη" >
+<!ENTITY day.6.name "Παρασκευή" >
+<!ENTITY day.7.name "Σάββατο" >
+
+<!ENTITY month.1.name "Ιανουάριος" >
+<!ENTITY month.2.name "Φεβρουάριος" >
+<!ENTITY month.3.name "Μάρτιος" >
+<!ENTITY month.4.name "Απρίλιος" >
+<!ENTITY month.5.name "Μάιος" >
+<!ENTITY month.6.name "Ιούνιος" >
+<!ENTITY month.7.name "Ιούλιος" >
+<!ENTITY month.8.name "Αύγουστος" >
+<!ENTITY month.9.name "Σεπτέμβριος" >
+<!ENTITY month.10.name "Οκτώβριος" >
+<!ENTITY month.11.name "Νοέμβριος" >
+<!ENTITY month.12.name "Δεκέμβριος" >
+
+<!ENTITY onemonthbackward.tooltip "Ένα μήνα πίσω" >
+<!ENTITY onemonthforward.tooltip "Ένα μήνα μπροστά" >
+<!ENTITY oneyearbackward.tooltip "Ένα έτος πριν" >
+<!ENTITY oneyearforward.tooltip "Ένα έτος μετά" >
+<!ENTITY showToday.tooltip "Μετάβαση στη σημερινή ημέρα">
+<!ENTITY onedayforward.tooltip "Μία ημέρα μπροστά">
+<!ENTITY onedaybackward.tooltip "Μία ημέρα πίσω">
+<!ENTITY showselectedday.tooltip "Εμφάνιση συμβάντων για την επιλεγμένη ημέρα">
diff --git a/l10n-el/calendar/chrome/calendar/menuOverlay.dtd b/l10n-el/calendar/chrome/calendar/menuOverlay.dtd
new file mode 100644
index 0000000000..b1181bdbe1
--- /dev/null
+++ b/l10n-el/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 "Νέο συμβάν…">
+<!ENTITY event.new.event.accesskey "β">
+
+<!ENTITY event.new.task "Νέα εργασία…">
+<!ENTITY event.new.task.accesskey "α">
+
+<!ENTITY calendar.import.label "Εισαγωγή…">
+<!ENTITY calendar.import.accesskey "Ε">
+
+<!ENTITY calendar.export.label "Εξαγωγή…">
+<!ENTITY calendar.export.accesskey "ξ">
+
+<!ENTITY calendar.publish.label "Δημοσίευση…">
+<!ENTITY calendar.publish.accesskey "δ">
+
+<!ENTITY calendar.deletecalendar.label "Διαγραφή επιλεγμένου ημερολογίου…">
+<!ENTITY calendar.deletecalendar.accesskey "Δ">
+<!ENTITY calendar.unsubscribecalendar.label "Κατάργηση συνδρομής στο επιλεγμένο ημερολόγιο…">
+<!ENTITY calendar.unsubscribecalendar.accesskey "Κ">
+
+<!-- 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 "Κατάργηση του επιλεγμένου ημερολογίου…">
+<!ENTITY calendar.removecalendar.accesskey "Α">
+
+
+<!ENTITY calendar.menu.customize.label "Προσαρμογή…">
+<!ENTITY calendar.menu.customize.accesskey "Π">
+
+<!ENTITY showUnifinderCmd.label "Εύρεση συμβάντων">
+<!ENTITY showUnifinderCmd.accesskey "Ε">
+<!ENTITY showUnifinderCmd.tooltip "Εναλλαγή παραθύρου εύρεσης συμβάντων">
+
+<!ENTITY calendar.displaytodos.checkbox.label "Εμφάνιση εργασιών στο ημερολόγιο">
+<!ENTITY calendar.displaytodos.checkbox.accesskey "Ρ">
+
+<!ENTITY goTodayCmd.label "Σήμερα">
+<!ENTITY goTodayCmd.accesskey "Σ">
+
+<!ENTITY showCurrentView.label "Τρέχουσα προβολή">
+<!ENTITY showCurrentView.accesskey "Ο">
+
+<!ENTITY calendar.properties.label "Ιδιότητες ημερολογίου…">
+<!ENTITY calendar.properties.accesskey "η">
diff --git a/l10n-el/calendar/chrome/calendar/migration.dtd b/l10n-el/calendar/chrome/calendar/migration.dtd
new file mode 100644
index 0000000000..6985b46d34
--- /dev/null
+++ b/l10n-el/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;: Εισαγωγή δεδομένων">
+<!ENTITY migration.welcome "Καλωσορίσατε">
+<!ENTITY migration.importing "Γίνεται εισαγωγή">
+<!ENTITY migration.list.description "Το &brandShortName; μπορεί να εισαγάγει ημερολογιακά δεδομένα από πολλές δημοφιλείς εφαρμογές. Στον υπολογιστή σας βρέθηκαν δεδομένα από τις ακόλουθες εφαρμογές. Παρακαλούμε επιλέξτε από ποιες από αυτές θα θέλατε να εισαγάγετε δεδομένα.">
+<!ENTITY migration.progress.description "Γίνεται εισαγωγή των επιλεγμένων δεδομένων">
diff --git a/l10n-el/calendar/chrome/calendar/migration.properties b/l10n-el/calendar/chrome/calendar/migration.properties
new file mode 100644
index 0000000000..a79d02dea3
--- /dev/null
+++ b/l10n-el/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 = Γίνεται μεταφορά του %1$S…
+
+# The next two lines are duplicated from migration.dtd until there is branding
+# for lightning
+migrationTitle = %1$S: Εισαγωγή δεδομένων
+migrationDescription=Το %1$S μπορεί να εισαγάγει ημερολογιακά δεδομένα από πολλές δημοφιλείς εφαρμογές. Στον υπολογιστή σας βρέθηκαν δεδομένα από τις ακόλουθες εφαρμογές. Παρακαλούμε επιλέξτε από ποιες από αυτές θα θέλατε να εισαγάγετε δεδομένα.
+finished = Ολοκληρώθηκε
+disableExtTitle = Βρέθηκε μη συμβατή επέκταση
+disableExtText = Έχετε εγκατεστημένη την παλιά επέκταση ημερολογίου Mozilla η οποία δεν είναι συμβατή με το Lightning.  Θα απενεργοποιηθεί και το %1$S θα επανεκκινηθεί.
diff --git a/l10n-el/calendar/chrome/calendar/provider-uninstall.dtd b/l10n-el/calendar/chrome/calendar/provider-uninstall.dtd
new file mode 100644
index 0000000000..e1227f5701
--- /dev/null
+++ b/l10n-el/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 "Απεγκατάσταση υπηρεσίας παροχής">
+<!ENTITY providerUninstall.accept.label "Απεγγραφή συνδρομής από τα επιλεγμένα">
+<!ENTITY providerUninstall.accept.accesskey "γ">
+<!ENTITY providerUninstall.cancel.label "Διατήρηση προσθέτου">
+<!ENTITY providerUninstall.cancel.accesskey "θ">
+<!ENTITY providerUninstall.preName.label "Έχετε ζητήσει να απεγκαταστήσετε ή να απενεργοποιήσετε:">
+<!ENTITY providerUninstall.postName.label "Αυτό θα έχει ως αποτέλεσμα τα παρακάτω ημερολόγια να απενεργοποιηθούν.">
+<!ENTITY providerUninstall.reinstallNote.label "Εκτός αν σχεδιάζετε να εγκαταστήσετε ξανά αυτήν την υπηρεσία παροχής, μπορείτε να επιλέξετε να καταργήσετε τη συνδρομή σας από τα ημερολόγια αυτής της υπηρεσίας παροχής.">
diff --git a/l10n-el/calendar/chrome/calendar/timezones.properties b/l10n-el/calendar/chrome/calendar/timezones.properties
new file mode 100644
index 0000000000..83730a382b
--- /dev/null
+++ b/l10n-el/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=Ορισμοί ζωνών ώρας για το Ημερολόγιο Mozilla
+extensions.calendar-timezones@mozilla.org.description=Ορισμοί ζωνών ώρας που απαιτούνται από το Lightning
+extensions.calendar-timezones@mozilla.org.creator=Ημερολογιακό εγχείρημα Mozilla
+
+pref.timezone.floating=Τοπική ώρα
+pref.timezone.UTC=Συγχρονισμένος Παγκόσμιος Χρόνος/Ώρα Γκρήνουιτς
+
+# 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=Αφρική/Αμπιτζάν
+pref.timezone.Africa.Accra=Αφρική/Άκκρα
+pref.timezone.Africa.Addis_Ababa=Αφρική/Αντίς Αμπέμπα
+pref.timezone.Africa.Algiers=Αφρική/Αλγέρι
+pref.timezone.Africa.Asmara=Αφρική/Ασμάρα
+pref.timezone.Africa.Bamako=Αφρική/Μπαμάκο
+pref.timezone.Africa.Bangui=Αφρική/Μπανγκί
+pref.timezone.Africa.Banjul=Αφρική/Μπανζούλ
+pref.timezone.Africa.Bissau=Αφρική/Μπισσάου
+pref.timezone.Africa.Blantyre=Αφρική/Μπλαντάιρ
+pref.timezone.Africa.Brazzaville=Αφρική/Μπραζαβίλ
+pref.timezone.Africa.Bujumbura=Αφρική/Μπουζουμπούρα
+pref.timezone.Africa.Cairo=Αφρική/Κάιρο
+pref.timezone.Africa.Casablanca=Αφρική/Καζαμπλάνκα
+pref.timezone.Africa.Ceuta=Αφρική/Θέουτα
+pref.timezone.Africa.Conakry=Αφρική/Κονακρύ
+pref.timezone.Africa.Dakar=Αφρική/Ντακάρ
+pref.timezone.Africa.Dar_es_Salaam=Αφρική/Νταρ ες Σαλάμ
+pref.timezone.Africa.Djibouti=Αφρική/Τζιμπουτί
+pref.timezone.Africa.Douala=Αφρική/Ντουάλα
+pref.timezone.Africa.El_Aaiun=Αφρική/Λααγιούν
+pref.timezone.Africa.Freetown=Αφρική/Φριτάουν
+pref.timezone.Africa.Gaborone=Αφρική/Γκαμπορόν
+pref.timezone.Africa.Harare=Αφρική/Χαράρε
+pref.timezone.Africa.Johannesburg=Αφρική/Γιοχάνεσμπουργκ
+pref.timezone.Africa.Kampala=Αφρική/Καμπάλα
+pref.timezone.Africa.Khartoum=Αφρική/Χαρτούμ
+pref.timezone.Africa.Kigali=Αφρική/Κιγκάλι
+pref.timezone.Africa.Kinshasa=Αφρική/Κινσάσα
+pref.timezone.Africa.Lagos=Αφρική/Λάγος
+pref.timezone.Africa.Libreville=Αφρική/Λιμπρβίλ
+pref.timezone.Africa.Lome=Αφρική/Λομέ
+pref.timezone.Africa.Luanda=Αφρική/Λουάντα
+pref.timezone.Africa.Lubumbashi=Αφρική/Λουμπουμπάσι
+pref.timezone.Africa.Lusaka=Αφρική/Λουσάκα
+pref.timezone.Africa.Malabo=Αφρική/Μαλάμπο
+pref.timezone.Africa.Maputo=Αφρική/Μαπούτο
+pref.timezone.Africa.Maseru=Αφρική/Μαζέρου
+pref.timezone.Africa.Mbabane=Αφρική/Μπαμπάνε
+pref.timezone.Africa.Mogadishu=Αφρική/Μογκαντίσου
+pref.timezone.Africa.Monrovia=Αφρική/Μονροβία
+pref.timezone.Africa.Nairobi=Αφρική/Ναϊρόμπι
+pref.timezone.Africa.Ndjamena=Αφρική/Ντζαμένα
+pref.timezone.Africa.Niamey=Αφρική/Νιαμέυ
+pref.timezone.Africa.Nouakchott=Αφρική/Νουαξότ
+pref.timezone.Africa.Ouagadougou=Αφρική/Ουαγκαντούγκου
+pref.timezone.Africa.Porto-Novo=Αφρική/Πόρτο-Νόβο
+pref.timezone.Africa.Sao_Tome=Αφρική/Σάο Τομέ
+pref.timezone.Africa.Tripoli=Αφρική/Τρίπολη
+pref.timezone.Africa.Tunis=Αφρική/Τύνιδα
+pref.timezone.Africa.Windhoek=Αφρική/Βίντχουκ
+pref.timezone.America.Adak=Αμερική/Αντάκ
+pref.timezone.America.Anchorage=Αμερική/Άνκορατζ
+pref.timezone.America.Anguilla=Αμερική/Ανγκουίλα
+pref.timezone.America.Antigua=Αμερική/Αντίγκουα
+pref.timezone.America.Araguaina=Αμερική/Αραγουαΐνα
+pref.timezone.America.Argentina.Buenos_Aires=Αμερική/Αργεντινή/Μπουένος Άιρες
+pref.timezone.America.Argentina.Catamarca=Αμερική/Αργεντινή/Καταμάρκα
+pref.timezone.America.Argentina.Cordoba=Αμερική/Αργεντινή/Κόρδοβα
+pref.timezone.America.Argentina.Jujuy=Αμερική/Αργεντινή/Χουχούι
+pref.timezone.America.Argentina.La_Rioja=Αμερική/Αργεντινή/Λα Ριόχα
+pref.timezone.America.Argentina.Mendoza=Αμερική/Αργεντινή/Μεντόσα
+pref.timezone.America.Argentina.Rio_Gallegos=Αμερική/Αργεντινή/Ρίο Καλέγκος
+pref.timezone.America.Argentina.San_Juan=Αμερική/Αργεντινή/Σαν Χουάν
+pref.timezone.America.Argentina.Tucuman=Αμερική/Αργεντινή/Τουκουμάν
+pref.timezone.America.Argentina.Ushuaia=Αμερική/Αργεντινή/Ουσουαΐα
+pref.timezone.America.Aruba=Αμερική/Αρούμπα
+pref.timezone.America.Asuncion=Αμερική/Ασουνσιόν
+pref.timezone.America.Atikokan=Αμερική/Ατικοτάν
+pref.timezone.America.Bahia=Αμερική/Μπαχία
+pref.timezone.America.Barbados=Αμερική/Μπαρμπάντος
+pref.timezone.America.Belem=Αμερική/Μπελέμ
+pref.timezone.America.Belize=Αμερική/Μπελίζ
+pref.timezone.America.Blanc-Sablon=Αμερική/Μπλαν Σαμπλόν
+pref.timezone.America.Boa_Vista=Αμερική/Μπόα Βίστα
+pref.timezone.America.Bogota=Αμερική/Μπογκοτά
+pref.timezone.America.Boise=Αμερική/Μπόιζι
+pref.timezone.America.Cambridge_Bay=Αμερική/Κέιμπριτζ Μπέι
+pref.timezone.America.Campo_Grande=Αμερική/Κάμπο Γκράντε
+pref.timezone.America.Cancun=Αμερική/Κανκούν
+pref.timezone.America.Caracas=Αμερική/Καράκας
+pref.timezone.America.Cayenne=Αμερική/Καϋέν
+pref.timezone.America.Cayman=Αμερική/Καϋμάν
+pref.timezone.America.Chicago=Αμερική/Σικάγο
+pref.timezone.America.Chihuahua=Αμερική/Τσιουάουα
+pref.timezone.America.Costa_Rica=Αμερική/Κόστα Ρίκα
+pref.timezone.America.Cuiaba=Αμερική/Κουϊαμπά
+pref.timezone.America.Curacao=Αμερική/Κουρασάο
+pref.timezone.America.Danmarkshavn=Αμερική/Ντάνμαρκσχαβν
+pref.timezone.America.Dawson=Αμερική/Ντώσον
+pref.timezone.America.Dawson_Creek=Αμερική/Ντώσον Κρηκ
+pref.timezone.America.Denver=Αμερική/Ντένβερ
+pref.timezone.America.Detroit=Αμερική/Ντητρόιτ
+pref.timezone.America.Dominica=Αμερική/Ντομίνικα
+pref.timezone.America.Edmonton=Αμερική/Έντμοντον
+pref.timezone.America.Eirunepe=Αμερική/Εϊρουνέπε
+pref.timezone.America.El_Salvador=Αμερική/Ελ Σαλβαδόρ
+pref.timezone.America.Fortaleza=Αμερική/Φορταλέτσα
+pref.timezone.America.Glace_Bay=Αμερική/Γκλέις Μπέι
+pref.timezone.America.Godthab=Αμερική/Γκόντχαμπ
+pref.timezone.America.Goose_Bay=Αμερική/Γκουζ Μπέι
+pref.timezone.America.Grand_Turk=Αμερική/Γκραντ Τερκ
+pref.timezone.America.Grenada=Αμερική/Γρενάδα
+pref.timezone.America.Guadeloupe=Αμερική/Γουαδελούπη
+pref.timezone.America.Guatemala=Αμερική/Γουατεμάλα
+pref.timezone.America.Guayaquil=Αμερική/Γουαγιακίλ
+pref.timezone.America.Guyana=Αμερική/Γουϊάνα
+pref.timezone.America.Halifax=Αμερική/Χάλιφαξ
+pref.timezone.America.Havana=Αμερική/Αβάνα
+pref.timezone.America.Hermosillo=Αμερική/Ερμοσίλιο
+pref.timezone.America.Indiana.Indianapolis=Αμερική/Ινδιάνα/Ινδιανάπολη
+pref.timezone.America.Indiana.Knox=Αμερική/Ινδιάνα/Νοξ
+pref.timezone.America.Indiana.Marengo=Αμερική/Ινδιάνα/Μαρένγκο
+pref.timezone.America.Indiana.Petersburg=Αμερική/Ινδιάνα/Πήτερσμπεργκ
+pref.timezone.America.Indiana.Vevay=Αμερική/Ινδιάνα/Βέβεϋ
+pref.timezone.America.Indiana.Vincennes=Αμερική/Ινδιάνα/Βενσένς
+pref.timezone.America.Inuvik=Αμερική/Ινουβίκ
+pref.timezone.America.Iqaluit=Αμερική/Ικαλουίτ
+pref.timezone.America.Jamaica=Αμερική/Τζαμάικα
+pref.timezone.America.Juneau=Αμερική/Τζούνο
+pref.timezone.America.Kentucky.Louisville=Αμερική/Κεντάκυ/Λούισβιλ
+pref.timezone.America.Kentucky.Monticello=Αμερική/Κεντάκυ/Μοντισέλλο
+pref.timezone.America.La_Paz=Αμερική/Λα Παζ
+pref.timezone.America.Lima=Αμερική/Λίμα
+pref.timezone.America.Los_Angeles=Αμερική/Λος Άντζελες
+pref.timezone.America.Maceio=Αμερική/Μασεϊό
+pref.timezone.America.Managua=Αμερική/Μανάγουα
+pref.timezone.America.Manaus=Αμερική/Μανάους
+pref.timezone.America.Martinique=Αμερική/Μαρτινίκα
+pref.timezone.America.Mazatlan=Αμερική/Μαζατλάν
+pref.timezone.America.Menominee=Αμερική/Μενομινή
+pref.timezone.America.Merida=Αμερική/Μέριδα
+pref.timezone.America.Mexico_City=Αμερική/Πόλη του Μεξικού
+pref.timezone.America.Miquelon=Αμερική/Μικελόν
+pref.timezone.America.Moncton=Αμερική/Μόνκτον
+pref.timezone.America.Monterrey=Αμερική/Μοντερέυ
+pref.timezone.America.Montevideo=Αμερική/Μοντεβιδέο
+pref.timezone.America.Montreal=Αμερική/Μόντρεαλ
+pref.timezone.America.Montserrat=Αμερική/Μοντσερά
+pref.timezone.America.Nassau=Αμερική/Νασσάου
+pref.timezone.America.New_York=Αμερική/Νέα Υόρκη
+pref.timezone.America.Nipigon=Αμερική/Νιπιγκόν
+pref.timezone.America.Nome=Αμερική/Νόμε
+pref.timezone.America.Noronha=Αμερική/Νορόνια
+pref.timezone.America.North_Dakota.Center=Αμερική/Βόρεια Ντακότα/Κέντρο
+pref.timezone.America.North_Dakota.New_Salem=Αμερική/Βόρεια Ντακότα/Νέο Σάλεμ
+pref.timezone.America.Panama=Αμερική/Παναμάς
+pref.timezone.America.Pangnirtung=Αμερική/Πανγκνιρτούνγκ
+pref.timezone.America.Paramaribo=Αμερική/Παραμαρίμπο
+pref.timezone.America.Phoenix=Αμερική/Φοίνιξ
+pref.timezone.America.Port-au-Prince=Αμερική/Πορτ-ω-Πρενς
+pref.timezone.America.Port_of_Spain=Αμερική/Πορτ-οφ-Σπέιν
+pref.timezone.America.Porto_Velho=Αμερική/Πόρτο Βέλιο
+pref.timezone.America.Puerto_Rico=Αμερική/Πουέρτο Ρίκο
+pref.timezone.America.Rainy_River=Αμερική/Ρέινυ Ρήβερ
+pref.timezone.America.Rankin_Inlet=Αμερική/Ράνκιν Ίνλετ
+pref.timezone.America.Recife=Αμερική/Ρεσίφε
+pref.timezone.America.Regina=Αμερική/Ρεγγίνα
+pref.timezone.America.Rio_Branco=Αμερική/Ρίο Μπράνκο
+pref.timezone.America.Santiago=Αμερική/Σαντιάγο
+pref.timezone.America.Santo_Domingo=Αμερική/Σάντο Ντομίνγκο
+pref.timezone.America.Sao_Paulo=Αμερική/Σάο Πάολο
+pref.timezone.America.Scoresbysund=Αμερική/Σκόρσμπυσουντ
+pref.timezone.America.Shiprock=Αμερική/Σίπροκ
+pref.timezone.America.St_Johns=Αμερική/Άγιος Ιωάννης
+pref.timezone.America.St_Kitts=Αμερική/Άγιος Χριστόφορος
+pref.timezone.America.St_Lucia=Αμερική/Αγία Λουκία
+pref.timezone.America.St_Thomas=Αμερική/Άγιος Θωμάς
+pref.timezone.America.St_Vincent=Αμερική/Άγιος Βικέντιος
+pref.timezone.America.Swift_Current=Αμερική/Σουίφτ Κάρρεντ
+pref.timezone.America.Tegucigalpa=Αμερική/Τεγκουσιγκάλπα
+pref.timezone.America.Thule=Αμερική/Θούλη
+pref.timezone.America.Thunder_Bay=Αμερική/Θάντερ Μπέυ
+pref.timezone.America.Tijuana=Αμερική/Τιχουάνα
+pref.timezone.America.Toronto=Αμερική/Τορόντο
+pref.timezone.America.Tortola=Αμερική/Τορτόλα
+pref.timezone.America.Vancouver=Αμερική/Βανκούβερ
+pref.timezone.America.Whitehorse=Αμερική/Γουάιτχορς
+pref.timezone.America.Winnipeg=Αμερική/Γουίννιπεγκ
+pref.timezone.America.Yakutat=Αμερική/Γιακουτάτ
+pref.timezone.America.Yellowknife=Αμερική/Γελλοουνάιφ
+pref.timezone.Antarctica.Casey=Ανταρκτική/Κέισυ
+pref.timezone.Antarctica.Davis=Ανταρκτική/Ντέιβις
+pref.timezone.Antarctica.DumontDUrville=Ανταρκτική/Ντιμόν ντ' Ουρβίλ
+pref.timezone.Antarctica.Mawson=Ανταρκτική/Μώσον
+pref.timezone.Antarctica.McMurdo=Ανταρκτική/Μακ Μέρντο
+pref.timezone.Antarctica.Palmer=Ανταρκτική/Πάλμερ
+pref.timezone.Antarctica.Rothera=Ανταρκτική/Ροδέρα
+pref.timezone.Antarctica.South_Pole=Ανταρκτική/Νότιος Πόλος
+pref.timezone.Antarctica.Syowa=Ανταρκτική/Σόβα
+pref.timezone.Antarctica.Vostok=Ανταρκτική/Βοστόκ
+pref.timezone.Arctic.Longyearbyen=Αρκτική/Λογκγέαρμπγεν
+pref.timezone.Asia.Aden=Ασία/Άντεν
+pref.timezone.Asia.Almaty=Ασία/Αλμάτι
+pref.timezone.Asia.Amman=Ασία/Αμμάν
+pref.timezone.Asia.Anadyr=Ασία/Αναδίρ
+pref.timezone.Asia.Aqtau=Ασία/Ακτάου
+pref.timezone.Asia.Aqtobe=Ασία/Ακτομπέ
+pref.timezone.Asia.Ashgabat=Ασία/Ασγκαμπάτ
+pref.timezone.Asia.Baghdad=Ασία/Βαγδάτη
+pref.timezone.Asia.Bahrain=Ασία/Μπαχρέιν
+pref.timezone.Asia.Baku=Ασία/Μπακού
+pref.timezone.Asia.Bangkok=Ασία/Μπανγκόκ
+pref.timezone.Asia.Beirut=Ασία/Βηρυτός
+pref.timezone.Asia.Bishkek=Ασία/Μπισκέκ
+pref.timezone.Asia.Brunei=Ασία/Μπρουνέι
+pref.timezone.Asia.Choibalsan=Ασία/Τσοϊμπαλσάν
+pref.timezone.Asia.Chongqing=Ασία/Τσονγκτσίνγκ
+pref.timezone.Asia.Colombo=Ασία/Κολόμπο
+pref.timezone.Asia.Damascus=Ασία/Δαμασκός
+pref.timezone.Asia.Dhaka=Ασία/Ντάκα
+pref.timezone.Asia.Dili=Ασία/Ντίλι
+pref.timezone.Asia.Dubai=Ασία/Ντουμπάι
+pref.timezone.Asia.Dushanbe=Ασία/Δουσάμβη
+pref.timezone.Asia.Gaza=Ασία/Γάζα
+pref.timezone.Asia.Harbin=Ασία/Χαρμπίν
+pref.timezone.Asia.Hong_Kong=Ασία/Χονγκ Κονγκ
+pref.timezone.Asia.Hovd=Ασία/Χοβντ
+pref.timezone.Asia.Irkutsk=Ασία/Ιρκούτσκ
+pref.timezone.Asia.Istanbul=Ασία/Κωνσταντινούπολη
+pref.timezone.Asia.Jakarta=Ασία/Τζακάρτα
+pref.timezone.Asia.Jayapura=Ασία/Τζαγιαπούρα
+pref.timezone.Asia.Jerusalem=Ασία/Ιερουσαλήμ
+pref.timezone.Asia.Kabul=Ασία/Καμπούλ
+pref.timezone.Asia.Kamchatka=Ασία/Καμτσάτκα
+pref.timezone.Asia.Karachi=Ασία/Καράτσι
+pref.timezone.Asia.Kashgar=Ασία/Κασγκάρ
+pref.timezone.Asia.Kathmandu=Ασία/Κατμαντού
+pref.timezone.Asia.Krasnoyarsk=Ασία/Κρασνογιάρσκ
+pref.timezone.Asia.Kuala_Lumpur=Ασία/Κουάλα Λουμπούρ
+pref.timezone.Asia.Kuching=Ασία/Κουτσίνγκ
+pref.timezone.Asia.Kuwait=Ασία/Κουβέιτ
+pref.timezone.Asia.Macau=Ασία/Μακάο
+pref.timezone.Asia.Magadan=Ασία/Μαγκαντάν
+pref.timezone.Asia.Makassar=Ασία/Μακασάρ
+pref.timezone.Asia.Manila=Ασία/Μανίλα
+pref.timezone.Asia.Muscat=Ασία/Μουσκάτ
+pref.timezone.Asia.Nicosia=Ασία/Λευκωσία
+pref.timezone.Asia.Novosibirsk=Ασία/Νοβοσιμπίρσκ
+pref.timezone.Asia.Omsk=Ασία/Ομσκ
+pref.timezone.Asia.Oral=Ασία/Οράλ
+pref.timezone.Asia.Phnom_Penh=Ασία/Πνομ Πενχ
+pref.timezone.Asia.Pontianak=Ασία/Ποντιάνακ
+pref.timezone.Asia.Pyongyang=Ασία/Πιονγιάνγκ
+pref.timezone.Asia.Qatar=Ασία/Κατάρ
+pref.timezone.Asia.Qyzylorda=Ασία/Κιζιλορντά
+pref.timezone.Asia.Rangoon=Ασία/Γιανγκόν
+pref.timezone.Asia.Riyadh=Ασία/Ριάντ
+pref.timezone.Asia.Sakhalin=Ασία/Σαχαλίνη
+pref.timezone.Asia.Samarkand=Ασία/Σαμαρκάνδη
+pref.timezone.Asia.Seoul=Ασία/Σεούλ
+pref.timezone.Asia.Shanghai=Ασία/Σαγκάη
+pref.timezone.Asia.Singapore=Ασία/Σιγκαπούρη
+pref.timezone.Asia.Taipei=Ασία/Ταϊπέι
+pref.timezone.Asia.Tashkent=Ασία/Τασκένδη
+pref.timezone.Asia.Tbilisi=Ασία/Τιφλίδα
+pref.timezone.Asia.Tehran=Ασία/Τεχεράνη
+pref.timezone.Asia.Thimphu=Ασία/Θίμφου
+pref.timezone.Asia.Tokyo=Ασία/Τόκυο
+pref.timezone.Asia.Ulaanbaatar=Ασία/Ουλάν Μπατόρ
+pref.timezone.Asia.Urumqi=Ασία/Ουρούμτσι
+pref.timezone.Asia.Vientiane=Ασία/Βιεντιάν
+pref.timezone.Asia.Vladivostok=Ασία/Βλαδιβοστόκ
+pref.timezone.Asia.Yakutsk=Ασία/Γιακούτσκ
+pref.timezone.Asia.Yekaterinburg=Ασία/Αικατερίνμπουργκ
+pref.timezone.Asia.Yerevan=Ασία/Ερεβάν
+pref.timezone.Atlantic.Azores=Ατλαντικός/Αζόρες
+pref.timezone.Atlantic.Bermuda=Ατλαντικός/Βερμούδες
+pref.timezone.Atlantic.Canary=Ατλαντικός/Κανάριοι νήσοι
+pref.timezone.Atlantic.Cape_Verde=Ατλαντικός/Πράσινο Ακρωτήριο
+pref.timezone.Atlantic.Faroe=Ατλαντικός/Φερόες Νήσοι
+pref.timezone.Atlantic.Madeira=Ατλαντικός/Μαδέρα
+pref.timezone.Atlantic.Reykjavik=Ατλαντικός/Ρέυκιαβικ
+pref.timezone.Atlantic.South_Georgia=Ατλαντικός/Νότια Γεωργία
+pref.timezone.Atlantic.St_Helena=Ατλαντικός/Νήσος Αγίας Ελένης
+pref.timezone.Atlantic.Stanley=Ατλαντικός/Στάνλεϋ
+pref.timezone.Australia.Adelaide=Αυστραλία/Αδελαΐδα
+pref.timezone.Australia.Brisbane=Αυστραλία/Μπρίσμπεϊν
+pref.timezone.Australia.Broken_Hill=Αυστραλία/Μπρόκεν Χιλ
+pref.timezone.Australia.Currie=Αυστραλία/Κάρι
+pref.timezone.Australia.Darwin=Αυστραλία/Ντάργουιν
+pref.timezone.Australia.Eucla=Αυστραλία/Γιούκλα
+pref.timezone.Australia.Hobart=Αυστραλία/Χόμπαρτ
+pref.timezone.Australia.Lindeman=Αυστραλία/Λίντεμαν
+pref.timezone.Australia.Lord_Howe=Αυστραλία/Νήσος Λορντ Χάου
+pref.timezone.Australia.Melbourne=Αυστραλία/Μελβούρνη
+pref.timezone.Australia.Perth=Αυστραλία/Περθ
+pref.timezone.Australia.Sydney=Αυστραλία/Σύδνεϋ
+pref.timezone.Europe.Amsterdam=Ευρώπη/Άμστερνταμ
+pref.timezone.Europe.Andorra=Ευρώπη/Ανδόρρα
+pref.timezone.Europe.Athens=Ευρώπη/Αθήνα
+pref.timezone.Europe.Belgrade=Ευρώπη/Βελιγράδι
+pref.timezone.Europe.Berlin=Ευρώπη/Βερολίνο
+pref.timezone.Europe.Bratislava=Ευρώπη/Μπρατισλάβα
+pref.timezone.Europe.Brussels=Ευρώπη/Βρυξέλλες
+pref.timezone.Europe.Bucharest=Ευρώπη/Βουκουρέστι
+pref.timezone.Europe.Budapest=Ευρώπη/Βουδαπέστη
+pref.timezone.Europe.Chisinau=Ευρώπη/Κισινάου
+pref.timezone.Europe.Copenhagen=Ευρώπη/Κοπεγχάγη
+pref.timezone.Europe.Dublin=Ευρώπη/Δουβλίνο
+pref.timezone.Europe.Gibraltar=Ευρώπη/Γιβραλτάρ
+pref.timezone.Europe.Guernsey=Ευρώπη/Γκέρνσεϊ
+pref.timezone.Europe.Helsinki=Ευρώπη/Ελσίνκι
+pref.timezone.Europe.Isle_of_Man=Ευρώπη/Νήσος του Μαν
+pref.timezone.Europe.Istanbul=Ευρώπη/Κωνσταντινούπολη
+pref.timezone.Europe.Jersey=Ευρώπη/Υερσέη
+pref.timezone.Europe.Kaliningrad=Ευρώπη/Καλίνινγκραντ
+pref.timezone.Europe.Kiev=Ευρώπη/Κίεβο
+pref.timezone.Europe.Lisbon=Ευρώπη/Λισσαβώνα
+pref.timezone.Europe.Ljubljana=Ευρώπη/Λιουμπλιάνα
+pref.timezone.Europe.London=Ευρώπη/Λονδίνο
+pref.timezone.Europe.Luxembourg=Ευρώπη/Λουξεμβούργο
+pref.timezone.Europe.Madrid=Ευρώπη/Μαδρίτη
+pref.timezone.Europe.Malta=Ευρώπη/Μάλτα
+pref.timezone.Europe.Mariehamn=Ευρώπη/Μάριεχαμν
+pref.timezone.Europe.Minsk=Ευρώπη/Μινσκ
+pref.timezone.Europe.Monaco=Ευρώπη/Μονακό
+pref.timezone.Europe.Moscow=Ευρώπη/Μόσχα
+pref.timezone.Europe.Nicosia=Ευρώπη/Λευκωσία
+pref.timezone.Europe.Oslo=Ευρώπη/Όσλο
+pref.timezone.Europe.Paris=Ευρώπη/Παρίσι
+pref.timezone.Europe.Podgorica=Ευρώπη/Ποντγκόριτσα
+pref.timezone.Europe.Prague=Ευρώπη/Πράγα
+pref.timezone.Europe.Riga=Ευρώπη/Ρίγα
+pref.timezone.Europe.Rome=Ευρώπη/Ρώμη
+pref.timezone.Europe.Samara=Ευρώπη/Σαμάρα
+pref.timezone.Europe.San_Marino=Ευρώπη/Άγιος Μαρίνος
+pref.timezone.Europe.Sarajevo=Ευρώπη/Σαράγεβο
+pref.timezone.Europe.Simferopol=Ευρώπη/Συμφερόπολη
+pref.timezone.Europe.Skopje=Ευρώπη/Σκόπια
+pref.timezone.Europe.Sofia=Ευρώπη/Σόφια
+pref.timezone.Europe.Stockholm=Ευρώπη/Στοκχόλμη
+pref.timezone.Europe.Tallinn=Ευρώπη/Ταλίν
+pref.timezone.Europe.Tirane=Ευρώπη/Τίρανα
+pref.timezone.Europe.Uzhgorod=Ευρώπη/Ουζχορόντ
+pref.timezone.Europe.Vaduz=Ευρώπη/Βαντούζ
+pref.timezone.Europe.Vatican=Ευρώπη/Βατικανό
+pref.timezone.Europe.Vienna=Ευρώπη/Βιέννη
+pref.timezone.Europe.Vilnius=Ευρώπη/Βίλνα
+pref.timezone.Europe.Volgograd=Ευρώπη/Βόλγογκραντ
+pref.timezone.Europe.Warsaw=Ευρώπη/Βαρσοβία
+pref.timezone.Europe.Zagreb=Ευρώπη/Ζάγκρεμπ
+pref.timezone.Europe.Zaporozhye=Ευρώπη/Ζαπορίζια
+pref.timezone.Europe.Zurich=Ευρώπη/Ζυρίχη
+pref.timezone.Indian.Antananarivo=Ινδικός/Ανταναναρίβο
+pref.timezone.Indian.Chagos=Ινδικός/Τσάγκος
+pref.timezone.Indian.Christmas=Ινδικός/Νήσος των Χριστουγέννων
+pref.timezone.Indian.Cocos=Ινδικός/Νησιά Κόκος
+pref.timezone.Indian.Comoro=Ινδικός/Κομόρες
+pref.timezone.Indian.Kerguelen=Ινδικός/Αρχιπέλαγος Κεργκελέν
+pref.timezone.Indian.Mahe=Ινδικός/Νήσος Μάχε
+pref.timezone.Indian.Maldives=Ινδικός/Μαλδίβες
+pref.timezone.Indian.Mauritius=Ινδικός/Μαυρίκιος
+pref.timezone.Indian.Mayotte=Ινδικός/Μαγιότ
+pref.timezone.Indian.Reunion=Ινδικός/Ρεϋνιόν
+pref.timezone.Pacific.Apia=Ειρηνικός/Άπια
+pref.timezone.Pacific.Auckland=Ειρηνικός/Ώκλαντ
+pref.timezone.Pacific.Chatham=Ειρηνικός/Νησιά Τσάταμ
+pref.timezone.Pacific.Easter=Ειρηνικός/Νησί του Πάσχα
+pref.timezone.Pacific.Efate=Ειρηνικός/Έφατ
+pref.timezone.Pacific.Enderbury=Ειρηνικός/Νήσος Εντέρμπουρυ
+pref.timezone.Pacific.Fakaofo=Ειρηνικός/Φακαόφο
+pref.timezone.Pacific.Fiji=Ειρηνικός/Φίτζι
+pref.timezone.Pacific.Funafuti=Ειρηνικός/Φουναφούτι
+pref.timezone.Pacific.Galapagos=Ειρηνικός/Γκαλαπάγκος
+pref.timezone.Pacific.Gambier=Ειρηνικός/Νήσοι Γκαμπιέ
+pref.timezone.Pacific.Guadalcanal=Ειρηνικός/Γουαδαλκανάλ
+pref.timezone.Pacific.Guam=Ειρηνικός/Γκουάμ
+pref.timezone.Pacific.Honolulu=Ειρηνικός/Χονολουλού
+pref.timezone.Pacific.Johnston=Ειρηνικός/Ατόλλη Τζόνστον
+pref.timezone.Pacific.Kiritimati=Ειρηνικός/Κιριτιμάτι
+pref.timezone.Pacific.Kosrae=Ειρηνικός/Κοσράη
+pref.timezone.Pacific.Kwajalein=Ειρηνικός/Κουατζαλέιν
+pref.timezone.Pacific.Majuro=Ειρηνικός/Ματζούρο
+pref.timezone.Pacific.Marquesas=Ειρηνικός/Νήσοι Μαρκέζας
+pref.timezone.Pacific.Midway=Ειρηνικός/Μιντγουέυ
+pref.timezone.Pacific.Nauru=Ειρηνικός/Ναουρού
+pref.timezone.Pacific.Niue=Ειρηνικός/Νιούε
+pref.timezone.Pacific.Norfolk=Ειρηνικός/Νησί Νόρφολκ
+pref.timezone.Pacific.Noumea=Ειρηνικός/Νουμεά
+pref.timezone.Pacific.Pago_Pago=Ειρηνικός/Πάγκο Πάγκο
+pref.timezone.Pacific.Palau=Ειρηνικός/Παλάου
+pref.timezone.Pacific.Pitcairn=Ειρηνικός/Νήσοι Πίτκαιρν
+pref.timezone.Pacific.Ponape=Ειρηνικός/Πονπέι
+pref.timezone.Pacific.Port_Moresby=Ειρηνικός/Πορτ Μόρεσμπυ
+pref.timezone.Pacific.Rarotonga=Ειρηνικός/Ραροτόνγκα
+pref.timezone.Pacific.Saipan=Ειρηνικός/Σαϊπάν
+pref.timezone.Pacific.Tahiti=Ειρηνικός/Ταϊτή
+pref.timezone.Pacific.Tarawa=Ειρηνικός/Ταράουα
+pref.timezone.Pacific.Tongatapu=Ειρηνικός/Τονγκατάπου
+pref.timezone.Pacific.Truk=Ειρηνικός/Τρουκ
+pref.timezone.Pacific.Wake=Ειρηνικός/Νήσος Ουέηκ
+pref.timezone.Pacific.Wallis=Ειρηνικός/Γουάλις
+
+# the following have been missing
+pref.timezone.America.Indiana.Tell_City=Αμερική/Ινδιάνα/Τελ Σίτυ
+pref.timezone.America.Indiana.Winamac=Αμερική/Ινδιάνα/Γουίναμακ
+pref.timezone.America.Marigot=Αμερική/Μάριγκοτ
+pref.timezone.America.Resolute=Αμερική/Ρεσολούτ
+pref.timezone.America.St_Barthelemy=Αμερική/Άγιος Βαρθολομαίος
+
+# added with 2008d:
+pref.timezone.America.Argentina.San_Luis=Αμερική/Αργεντινή/Σαν Λούις
+pref.timezone.America.Santarem=Αμερική/Σανταρέμ
+pref.timezone.Asia.Ho_Chi_Minh=Ασία/Χο Τσι Μινχ
+pref.timezone.Asia.Kolkata=Ασία/Καλκούτα
+
+# added with 2008i:
+pref.timezone.America.Argentina.Salta=Αμερική/Αργεντινή/Σάλτα
+
+# added with 2010i
+pref.timezone.America.Matamoros=Αμερική/Ματαμόρος
+pref.timezone.America.Ojinaga=Αμερική/Οχινάγκα
+pref.timezone.America.Santa_Isabel=Αμερική/Σάντα Ισαμπέλ
+pref.timezone.Antarctica.Macquarie=Ανταρκτική/Νήσος Μακουάρι
+pref.timezone.Asia.Novokuznetsk=Ασία/Νοβοκουζνέτσκ
+
+#added with 2011b
+pref.timezone.America.Bahia_Banderas=Αμερική/Μπαχία Ντε Μπαντέρας
+pref.timezone.America.North_Dakota.Beulah=Αμερική/Βόρεια Ντακότα/Μπιούλα
+pref.timezone.Pacific.Chuuk=Ειρηνικός/Τσουκ
+pref.timezone.Pacific.Pohnpei=Ειρηνικός/Πονπέι
+
+#added with 2011n
+pref.timezone.Africa.Juba=Αφρική/Τζούμπα
+pref.timezone.America.Kralendijk=Αμερική/Κράλεντικ
+pref.timezone.America.Lower_Princes=Αμερική/Λόουερ Πρίνσες
+pref.timezone.America.Metlakatla=Αμερική/Μετλακάτλα
+pref.timezone.America.Sitka=Αμερική/Σίτκα
+pref.timezone.Asia.Hebron=Ασία/Χεβρώνα
+
+#added with 2013a
+pref.timezone.America.Creston=Αμερική/Κρέστον
+pref.timezone.Asia.Khandyga=Ασία/Χαντίγκα
+pref.timezone.Asia.Ust-Nera=Ασία/Ουστ-Νέρα
+pref.timezone.Europe.Busingen=Ευρώπη/Μπύσινγκεν
+
+#added with 2014b
+pref.timezone.Antarctica.Troll=Ανταρκτική/Τρολ
+
+#added with 2014j
+pref.timezone.Asia.Chita=Ασία/Τσιτά
+pref.timezone.Asia.Srednekolymsk=Ασία/Σρεντνεκολίμσκ
+pref.timezone.Pacific.Bougainville=Ειρηνικός/Μπουγκαινβίλ
+
+#added with 2.2015g
+pref.timezone.America.Fort_Nelson=Αμερική/Οχυρό Νέλσον
+
+#added with 2.2016b
+pref.timezone.Europe.Ulyanovsk=Ευρώπη/Ουλιάνοφσκ
+pref.timezone.Europe.Astrakhan=Ευρώπη/Αστραχάν
+pref.timezone.Asia.Barnaul=Ασία/Μπαρναούλ
+
+#added with 2.2016i
+pref.timezone.Asia.Yangon=Ασία/Γιανγκόν
+pref.timezone.Asia.Tomsk=Ασία/Τομσκ
+pref.timezone.Asia.Famagusta=Ασία/Αμμόχωστος
+pref.timezone.Europe.Kirov=Ευρώπη/Κίροφ
+
+#added with 2.2016j
+pref.timezone.Europe.Saratov=Ευρώπη/Σαράτοφ
+pref.timezone.Asia.Atyrau=Ασία/Aτιράου
+
+#added with 2.2017b
+pref.timezone.America.Punta_Arenas=Αμερική/Πούντα Αρένας
+
+#added with 2.2018i
+pref.timezone.Asia.Qostanay=Ασία/Κοστανάι
+
+#added with 2.2020a
+pref.timezone.America.Nuuk=Αμερική/Νουούκ
diff --git a/l10n-el/calendar/chrome/lightning/lightning-toolbar.dtd b/l10n-el/calendar/chrome/lightning/lightning-toolbar.dtd
new file mode 100644
index 0000000000..1429d50574
--- /dev/null
+++ b/l10n-el/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 "Γραμμή εργαλείων ημερολογίου">
+<!ENTITY lightning.toolbar.calendar.name.accesskey "η">
+<!ENTITY lightning.toolbar.task.name "Γραμμή εργαλείων εργασιών">
+<!ENTITY lightning.toolbar.task.name.accesskey "ε">
+
+<!ENTITY lightning.toolbar.sync.label "Συγχρονισμός">
+<!ENTITY lightning.toolbar.sync.tooltip "Ανανέωση ημερολογίων και συγχρονισμός αλλαγών">
+<!ENTITY lightning.toolbar.delete.label "Διαγραφή">
+<!ENTITY lightning.toolbar.delete.tooltip "Διαγραφή επιλεγμένων συμβάντων ή εργασιών">
+<!ENTITY lightning.toolbar.edit.label "Επεξεργασία">
+<!ENTITY lightning.toolbar.edit.tooltip "Επεξεργασία επιλεγμένου συμβάντος ή εργασίας">
+<!ENTITY lightning.toolbar.gototoday.label "Μετάβαση στο σήμερα">
+<!ENTITY lightning.toolbar.gototoday.tooltip "Μετάβαση στο σήμερα">
+<!ENTITY lightning.toolbar.print.label "Εκτύπωση">
+<!ENTITY lightning.toolbar.print.tooltip "Εκτύπωση συμβάντων ή εργασιών">
+
+<!-- Mode Toolbar -->
+<!ENTITY lightning.toolbar.calendar.label "Ημερολόγιο">
+<!ENTITY lightning.toolbar.calendar.tooltip "Μετάβαση στην καρτέλα ημερολογίου">
+<!ENTITY lightning.toolbar.calendar.accesskey "η">
+<!ENTITY lightning.toolbar.task.label "Εργασίες">
+<!ENTITY lightning.toolbar.task.tooltip "Μετάβαση στην καρτέλα εργασιών">
+<!ENTITY lightning.toolbar.task.accesskey "ε">
+
+<!-- Toolbar write button -->
+<!ENTITY lightning.toolbar.newevent.label "Συμβάν">
+<!ENTITY lightning.toolbar.newevent.tooltip "Δημιουργία νέου συμβάντος">
+<!ENTITY lightning.toolbar.newtask.label "Εργασία">
+<!ENTITY lightning.toolbar.newtask.tooltip "Δημιουργία νέας εργασίας">
+
+<!-- Calendar and Task Mode Toolbar -->
+<!ENTITY lightning.toolbar.day.label "Ημέρα">
+<!ENTITY lightning.toolbar.day.accesskey "Η">
+<!ENTITY lightning.toolbar.week.label "Εβδομάδα">
+<!ENTITY lightning.toolbar.week.accesskey "Ε">
+<!ENTITY lightning.toolbar.multiweek.label "Πολλές εβδομάδες">
+<!ENTITY lightning.toolbar.multiweek.accesskey "Π">
+<!ENTITY lightning.toolbar.month.label "Μήνας">
+<!ENTITY lightning.toolbar.month.accesskey "Μ">
+<!-- LOCALIZATION NOTE: the same as appmenuButton.label and appmenuButton1.tooltip
+ from messenger.dtd -->
+<!ENTITY lightning.toolbar.appmenuButton.label "AppMenu">
+<!ENTITY lightning.toolbar.appmenuButton1.tooltip "Εμφάνιση του μενού του &brandShortName;">
+<!ENTITY lightning.toolbar.calendarmenu.label "Παράθυρο ημερολογίου">
+<!ENTITY lightning.toolbar.calendarmenu.accesskey "θ">
+<!ENTITY lightning.toolbar.calendarpane.label "Εμφάνιση παραθύρου ημερολογίου">
+<!ENTITY lightning.toolbar.calendarpane.accesskey "η">
diff --git a/l10n-el/calendar/chrome/lightning/lightning.dtd b/l10n-el/calendar/chrome/lightning/lightning.dtd
new file mode 100644
index 0000000000..4d8966d67c
--- /dev/null
+++ b/l10n-el/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 "Ημερολόγιο">
+
+<!-- New menu popup in File menu -->
+<!ENTITY lightning.menupopup.new.event.label "Συμβάν…">
+<!ENTITY lightning.menupopup.new.event.accesskey "Σ">
+<!ENTITY lightning.menupopup.new.task.label "Εργασία…">
+<!ENTITY lightning.menupopup.new.task.accesskey "Ε">
+<!ENTITY lightning.menupopup.new.calendar.label "Ημερολόγιο…">
+<!ENTITY lightning.menupopup.new.calendar.accesskey "Η">
+
+<!-- Open menu popup in File menu -->
+<!ENTITY lightning.menupopup.open.calendar.label "Αρχείο ημερολογίου…">
+<!ENTITY lightning.menupopup.open.calendar.accesskey "η">
+
+<!-- View Menu -->
+<!ENTITY lightning.menu.view.calendar.label "Ημερολόγιο">
+<!ENTITY lightning.menu.view.calendar.accesskey "Η">
+<!ENTITY lightning.menu.view.tasks.label "Εργασίες">
+<!ENTITY lightning.menu.view.tasks.accesskey "ρ">
+
+<!-- Events and Tasks menu -->
+<!ENTITY lightning.menu.eventtask.label "Συμβάντα και εργασίες">
+<!ENTITY lightning.menu.eventtask.accesskey "Σ">
+
+<!-- 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 "Να προτιμάται ο προγραμματισμός με ηλεκτρονικό ταχυδρομείο">
+<!-- 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 "Προς το παρόν, μπορείτε να το ενεργοποιήσετε μόνο αφού ρυθμίσετε αυτό το ημερολόγιο στο παράθυρο ιδιοτήτων, αν ο διακομιστής ημερολογίων διαχειρίζεται τον προγραμματισμό.">
+<!ENTITY lightning.calendarproperties.forceEmailScheduling.tooltiptext2 "Η επιλογή είναι διαθέσιμη αν ο διακομιστής ημερολογίου διαχειρίζεται τον προγραμματισμό. Η ενεργοποίησή του θα επιτρέψει την εναλλακτική ο προγραμματισμός να γίνεται βάσει του ηλεκτρονικού ταχυδρομείου αντί να το αφήνει στον διακομιστή.">
+
+<!-- iMIP Bar (meeting support) -->
+<!ENTITY lightning.imipbar.btnAccept.label "Αποδοχή">
+<!ENTITY lightning.imipbar.btnAccept2.tooltiptext "Αποδοχή πρόσκλησης σε συμβάν">
+<!ENTITY lightning.imipbar.btnAcceptRecurrences.label "Αποδοχή όλων">
+<!ENTITY lightning.imipbar.btnAcceptRecurrences2.tooltiptext "Αποδοχή πρόσκλησης για όλα τα στιγμιότυπα του συμβάντος">
+<!ENTITY lightning.imipbar.btnAdd.label "Προσθήκη">
+<!ENTITY lightning.imipbar.btnAdd.tooltiptext "Προσθήκη του συμβάντος στο ημερολόγιο">
+<!ENTITY lightning.imipbar.btnDecline.label "Απόρριψη">
+<!ENTITY lightning.imipbar.btnDecline2.tooltiptext "Αρνητική απάντηση στην πρόσκληση σε συμβάν">
+<!ENTITY lightning.imipbar.btnDeclineRecurrences.label "Αρνητική απάντηση σε όλα">
+<!ENTITY lightning.imipbar.btnDeclineRecurrences2.tooltiptext "Αρνητική απάντηση στην πρόσκληση για όλα τα στιγμιότυπα του συμβάντος">
+<!ENTITY lightning.imipbar.btnDeclineCounter.label "Απόρριψη">
+<!ENTITY lightning.imipbar.btnDeclineCounter.tooltiptext "Αρνητική απάντηση στην αντιπρόταση">
+<!ENTITY lightning.imipbar.btnDelete.label "Διαγραφή">
+<!ENTITY lightning.imipbar.btnDelete.tooltiptext "Διαγραφή από το ημερολόγιο">
+<!ENTITY lightning.imipbar.btnDetails.label "Λεπτομέρειες…">
+<!ENTITY lightning.imipbar.btnDetails.tooltiptext "Εμφάνιση λεπτομερειών συμβάντος">
+<!ENTITY lightning.imipbar.btnDoNotShowImipBar.label "Να μην εμφανίζονται αυτά τα μηνύματα">
+<!ENTITY lightning.imipbar.btnGoToCalendar.label "Ημερολόγιο">
+<!ENTITY lightning.imipbar.btnGoToCalendar.tooltiptext "Μετάβαση στην καρτέλα ημερολογίου">
+<!ENTITY lightning.imipbar.btnMore.label "Περισσότερα">
+<!ENTITY lightning.imipbar.btnMore.tooltiptext "Κλικ για εμφάνιση περισσότερων επιλογών">
+<!ENTITY lightning.imipbar.btnReconfirm2.label "Επιβεβαίωση εκ νέου">
+<!ENTITY lightning.imipbar.btnReconfirm.tooltiptext "Αποστέλλεται μια επιβεβαίωση εκ νέου στο διοργανωτή">
+<!ENTITY lightning.imipbar.btnReschedule.label "Επαναπρογραμματισμός">
+<!ENTITY lightning.imipbar.btnReschedule.tooltiptext "Επαναπρογραμματισμός του συμβάντος">
+<!ENTITY lightning.imipbar.btnSaveCopy.label "Αποθήκευση αντιγράφου">
+<!ENTITY lightning.imipbar.btnSaveCopy.tooltiptext "Αποθήκευση αντιγράφου του συμβάντος στο ημερολόγιο ανεξάρτητα από την απάντηση στο διοργανωτή. Η λίστα με τους παρευρισκόμενους θα σβηστεί.">
+<!ENTITY lightning.imipbar.btnTentative.label "Αβεβαιότητα">
+<!ENTITY lightning.imipbar.btnTentative2.tooltiptext "Αποδοχή πρόσκλησης σε συμβάν αλλά με αβεβαιότητα">
+<!ENTITY lightning.imipbar.btnTentativeRecurrences.label "Αβεβαιότητα για όλα">
+<!ENTITY lightning.imipbar.btnTentativeRecurrences2.tooltiptext "Αποδοχή πρόσκλησης για όλα τα στιγμιότυπα του συμβάντος αλλά με αβεβαιότητα">
+<!ENTITY lightning.imipbar.btnUpdate.label "Ενημέρωση">
+<!ENTITY lightning.imipbar.btnUpdate.tooltiptext "Ενημέρωση του συμβάντος στο ημερολόγιο">
+<!ENTITY lightning.imipbar.description "Αυτό το μήνυμα περιέχει πρόσκληση σε συμβάν.">
+
+<!ENTITY lightning.imipbar.btnSend.label "Αποστολή μιας απάντησης τώρα">
+<!ENTITY lightning.imipbar.btnSend.tooltiptext "Αποστολή μιας απάντησης στον οργανωτή">
+<!ENTITY lightning.imipbar.btnSendSeries.tooltiptext "Αποστολή μιας απάντησης σε όλη τη σειρά των οργανωτών">
+<!ENTITY lightning.imipbar.btnDontSend.label "Να μην αποσταλεί απάντηση">
+<!ENTITY lightning.imipbar.btnDontSend.tooltiptext "Αλλαγή της κατάστασης συμμετοχής χωρίς αποστολή απάντησης στον οργανωτή">
+<!ENTITY lightning.imipbar.btnDontSendSeries.tooltiptext "Αλλάξτε την κατάσταση συμμετοχής σας για τη σειρά χωρίς αποστολή απόκρισης στον οργανωτή">
+
+<!-- Lightning specific keybindings -->
+<!ENTITY lightning.keys.event.showCalendar.key "C">
+<!ENTITY lightning.keys.event.showTasks.key "D">
+<!ENTITY lightning.keys.event.new "Ν">
+<!ENTITY lightning.keys.todo.new "Ρ">
+
+<!-- Account Central page -->
+<!ENTITY lightning.acctCentral.newCalendar.label "Δημιουργία νέου ημερολογίου">
+
+<!-- today-pane-specific -->
+<!ENTITY todaypane.showMinimonth.label "Εμφάνιση μίνι μήνα">
+<!ENTITY todaypane.showMinimonth.accesskey "μ">
+<!ENTITY todaypane.showMiniday.label "Εμφάνιση μίνι ημέρας">
+<!ENTITY todaypane.showMiniday.accesskey "η">
+<!ENTITY todaypane.showNone.label "Τίποτα από τα δύο">
+<!ENTITY todaypane.showNone.accesskey "Τ">
+<!ENTITY todaypane.showTodayPane.label "Εμφάνιση παραθύρου ημέρας">
+<!ENTITY todaypane.showTodayPane.accesskey "π">
+<!ENTITY todaypane.statusButton.label "Προβολή ημέρας">
diff --git a/l10n-el/calendar/chrome/lightning/lightning.properties b/l10n-el/calendar/chrome/lightning/lightning.properties
new file mode 100644
index 0000000000..6a7d148f0e
--- /dev/null
+++ b/l10n-el/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=Εργασίες
+
+# Tab titles
+tabTitleCalendar=Ημερολόγιο
+tabTitleTasks=Εργασίες
+
+# Html event display in message
+imipHtml.header=Πρόσκληση σε συμβάν
+imipHtml.summary=Τίτλος:
+imipHtml.location=Τοποθεσία:
+imipHtml.when=Πότε:
+imipHtml.organizer=Διοργανωτής:
+imipHtml.description=Περιγραφή:
+# LOCALIZATION_NOTE(imipHtml.attachments): This is a label for one or more (additional) links to
+# documents or websites attached to this event.
+imipHtml.attachments=Συνημμένα:
+imipHtml.comment=Σχόλιο:
+imipHtml.attendees=Συμμετέχοντες:
+# 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=Σχετικός σύνδεσμος:
+imipHtml.canceledOccurrences=Ακυρωμένα στιγμιότυπα:
+imipHtml.modifiedOccurrences=Τροποποιημένα στιγμιότυπα:
+imipHtml.newLocation=Νέα τοποθεσία: %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=(ανατέθηκε από %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=(ανατέθηκε σε %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 είναι επικεφαλής του συμβάντος.
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.NON-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.NON-PARTICIPANT=%1$S δεν συμμετέχει.
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.OPT-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.OPT-PARTICIPANT=%1$S είναι προαιρετικό να συμμετάσχει.
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.REQ-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.REQ-PARTICIPANT=%1$S απαιτείται να συμμετάσχει.
+
+# 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 έχει επιβεβαιωμένη συμμετοχή.
+# 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 έχει αρνηθεί να συμμετάσχει.
+# 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 έχει αναθέσει την συμμετοχή σε %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 ακόμα δεν έχει απαντήσει.
+# 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 έχει επιβεβαιώσει συμμετοχή αλλά με επιφύλαξη.
+
+# 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 (ομάδα)
+# 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 (πόρος)
+# 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 (δωμάτιο)
+# 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=Το συμβάν προστέθηκε στο ημερολόγιό σας.
+imipCanceledItem2=Το συμβάν διαγράφηκε από το ημερολόγιό σας.
+imipUpdatedItem2=Το συμβάν έχει ενημερωθεί.
+imipBarCancelText=Αυτό το μήνυμα περιέχει ακύρωση κάποιου συμβάντος.
+imipBarCounterErrorText=Το μήνυμα περιέχει μια αντιπρόταση σε πρόσκληση που δεν είναι δυνατή η τροποποίησή της.
+imipBarCounterPreviousVersionText=Το μήνυμα περιέχει μια αντιπρόταση σε προηγούμενη έκδοση της πρόσκλησης.
+imipBarCounterText=Το μήνυμα περιέχει μια αντιπρόταση σε μια πρόσκληση.
+imipBarDisallowedCounterText=Το μήνυμα περιέχει μια αντιπρόταση παρόλο που δεν επιτρέψατε τις αντιπροτάσεις για το συμβάν.
+imipBarDeclineCounterText=Το μήνυμα περιέχει μια απάντηση στην αντιπρότασή σας.
+imipBarRefreshText=Αυτό το μήνυμα ζητά ενημέρωση κάποιου συμβάντος.
+imipBarPublishText=Αυτό το μήνυμα περιέχει κάποιο συμβάν.
+imipBarRequestText=Αυτό το μήνυμα περιέχει πρόσκληση σε κάποιο συμβάν.
+imipBarSentText=Αυτό το μήνυμα περιέχει απεσταλμένο συμβάν.
+imipBarSentButRemovedText=Αυτό το μήνυμα περιέχει απεσταλμένο συμβάν το οποίο δεν είναι πια στο ημερολόγιό σας.
+imipBarUpdateText=Αυτό το μήνυμα περιέχει ενημερωμένα στοιχεία για κάποιο υπάρχον συμβάν.
+imipBarUpdateMultipleText=Το μήνυμα περιέχει ενημερώσεις σε πολλαπλά υπάρχοντα γεγονότα.
+imipBarUpdateSeriesText=Το μήνυμα περιέχει μια ενημέρωση σε μια υπάρχουσα σειρά από γεγονότα.
+imipBarAlreadyProcessedText=Αυτό το μήνυμα περιέχει ένα συμβάν που το έχετε ήδη επεξεργαστεί στο ημερολόγιό σας.
+imipBarProcessedNeedsAction=Αυτό το μήνυμα περιέχει ένα συμβάν στο οποίο δεν έχετε ακόμη ανταποκριθεί.
+imipBarProcessedMultipleNeedsAction=Το μήνυμα περιέχει πολλαπλά γεγονότα για τα οποία δεν έχετε ακόμη απαντήσει.
+imipBarProcessedSeriesNeedsAction=Το μήνυμα περιέχει μια σειρά γεγονότων για τα οποία δεν έχετε ακόμη απαντήσει.
+imipBarReplyText=Αυτό το μήνυμα περιέχει απάντηση σε πρόσκληση.
+imipBarReplyToNotExistingItem=Αυτό το μήνυμα περιέχει απάντηση που αναφέρεται σε συμβάν το οποίο δεν είναι πια στο ημερολόγιό σας.
+# LOCALIZATION_NOTE(imipBarReplyToRecentlyRemovedItem):
+# %1$S - datetime of deletion
+imipBarReplyToRecentlyRemovedItem=Αυτό το μήνυμα περιέχει απάντηση που αναφέρεται σε συμβάν το οποίο διαγράφηκε από το ημερολόγιό σας στις %1$S.
+imipBarUnsupportedText2=Αυτό το μήνυμα περιέχει ένα συμβάν που αυτή η έκδοση του %1$S δεν μπορεί να επεξεργαστεί.
+imipBarProcessingFailed=Η επεξεργασία του μηνύματος απέτυχε. Κατάσταση: %1$S.
+imipBarCalendarDeactivated=Αυτό το μήνυμα περιέχει πληροφορίες συμβάντων. Ενεργοποιήστε ένα ημερολόγιο για διαχείριση.
+imipBarNotWritable=Δεν υπάρχουν εγγράψιμα ημερολόγια που να έχουν ρυθμιστεί για προσκλήσεις, παρακαλούμε ελέγξτε τις ιδιότητες των ημερολογίων.
+imipSendMail.title=Ειδοποίηση email
+imipSendMail.text=Θα θέλατε να στείλετε ειδοποίηση μέσω email τώρα;
+imipNoIdentity=Κανένα
+imipNoCalendarAvailable=Δεν υπάρχουν εγγράψιμα ημερολόγια διαθέσιμα.
+
+itipReplySubject2=Απάντηση πρόσκλησης: %1$S
+itipReplyBodyAccept=%1$S έχει αποδεχθεί την πρόσκληση σας στο συμβάν.
+itipReplyBodyDecline=%1$S έχει αρνηθεί την πρόσκλησή σας στο συμβάν.
+itipReplySubjectAccept2=Αποδέχτηκε: %1$S
+itipReplySubjectDecline2=Η πρόσκληση απορρίφθηκε: %1$S
+itipReplySubjectTentative2=Αβέβαιος: %1$S
+itipRequestSubject2=Πρόσκληση: %1$S
+itipRequestUpdatedSubject2=Ενημερώθηκε: %1$S
+itipRequestBody=%1$S σας έχει προσκαλέσει στο %2$S
+itipCancelSubject2=Ακυρώθηκε: %1$S
+itipCancelBody=%1$S έχει ακυρώσει αυτό το συμβάν: « %2$S »
+itipCounterBody=%1$S έχει κάνει αντιπρόταση για το "%2$S":
+itipDeclineCounterBody=%1$S απέρριψε την αντιπρότασή σας για το "%2$S".
+itipDeclineCounterSubject=Η αντιπρόταση απορρίφθηκε: %1$S
+
+confirmProcessInvitation=Έχετε διαγράψει πρόσφατα αυτό το στοιχείο, είστε βέβαιοι ότι θέλετε να επεξεργαστείτε αυτήν την πρόσκληση;
+confirmProcessInvitationTitle=Επεξεργασία πρόσκλησης;
+
+invitationsLink.label=Προσκλήσεις: %1$S
+
+# LOCALIZATION NOTE(noIdentitySelectedNotification):
+noIdentitySelectedNotification=Αν θέλετε να χρησιμοποιήσετε αυτό το ημερολόγιο για να αποθηκεύσετε προσκλήσεις προς ή από άλλα άτομα, θα πρέπει να αναθέσετε μια ταυτότητα e-mail παρακάτω.
diff --git a/l10n-el/calendar/lightning-l10n.js b/l10n-el/calendar/lightning-l10n.js
new file mode 100644
index 0000000000..868504b8f3
--- /dev/null
+++ b/l10n-el/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", "Anniversary,Birthday,Business,Calls,Clients,Competition,Customer,Favorites,Follow up,Gifts,Holidays,Ideas,Issues,Meeting,Miscellaneous,Personal,Projects,Public Holiday,Status,Suppliers,Travel,Vacation");
diff --git a/l10n-el/chat/accounts.dtd b/l10n-el/chat/accounts.dtd
new file mode 100644
index 0000000000..73200e4347
--- /dev/null
+++ b/l10n-el/chat/accounts.dtd
@@ -0,0 +1,41 @@
+<!-- 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/. -->
+
+<!-- Account manager window for Instantbird -->
+<!ENTITY accounts.title "Λογαριασμοί - &brandShortName;">
+<!ENTITY accountManager.width "450">
+<!-- Instant messaging account status window for Thunderbird -->
+<!ENTITY accountsWindow.title "Κατάσταση άμεσων μηνυμάτων">
+<!ENTITY accountsWindow2.style "width: 41em; height: 27em;">
+
+<!ENTITY accountManager.newAccount.label "Νέος λογαριασμός">
+<!ENTITY accountManager.newAccount.accesskey "Ν">
+<!ENTITY accountManager.close.label "Κλείσιμο">
+<!ENTITY accountManager.close.accesskey "λ">
+<!-- This should match account.commandkey in instantbird.dtd -->
+<!ENTITY accountManager.close.commandkey "a">
+<!-- This title must be short, displayed with a big font size -->
+<!ENTITY accountManager.noAccount.title "Δεν έχει ρυθμιστεί ακόμη λογαριασμός">
+<!ENTITY accountManager.noAccount.description 'Κάντε κλικ στο κουμπί "&accountManager.newAccount.label;" και το &brandShortName; θα σας βοηθήσει να ρυθμίσετε ένα νέο.'>
+<!ENTITY account.autoSignOn.label "Σύνδεση κατά την εκκίνηση">
+<!ENTITY account.autoSignOn.accesskey "Σ">
+<!ENTITY account.connect.label "Σύνδεση">
+<!ENTITY account.connect.accesskey "ν">
+<!ENTITY account.disconnect.label "Αποσύνδεση">
+<!ENTITY account.disconnect.accesskey "ο">
+<!ENTITY account.delete.label "Διαγραφή">
+<!ENTITY account.delete.accesskey "Δ">
+<!ENTITY account.edit.label "Ιδιότητες">
+<!ENTITY account.edit.accesskey "Ι">
+<!ENTITY account.moveup.label "Μετακίνηση πάνω">
+<!ENTITY account.movedown.label "Μετακίνηση κάτω">
+<!ENTITY account.cancelReconnection.label "Ακύρωση επανασύνδεσης">
+<!ENTITY account.cancelReconnection.accesskey "Α">
+<!ENTITY account.copyDebugLog.label "Αντιγραφή αρχείου εντοπισμού σφαλμάτων">
+<!ENTITY account.copyDebugLog.accesskey "Α">
+<!ENTITY account.showDebugLog.label "Εμφάνιση αρχείου εντοπισμού σφαλμάτων">
+<!ENTITY account.showDebugLog.accesskey "Μ">
+<!ENTITY account.connecting "Σύνδεση…">
+<!ENTITY account.disconnecting "Αποσύνδεση…">
+<!ENTITY account.disconnected "Εκτός σύνδεσης">
diff --git a/l10n-el/chat/accounts.properties b/l10n-el/chat/accounts.properties
new file mode 100644
index 0000000000..5bf12e87d7
--- /dev/null
+++ b/l10n-el/chat/accounts.properties
@@ -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/.
+
+# LOCALIZATION NOTE (passwordPromptTitle, passwordPromptText):
+# %S is replaced with the name of the account
+passwordPromptTitle=Κωδικός πρόσβασης για %S
+passwordPromptText=Παρακαλώ εισάγετε τον κωδικό πρόσβασής σας για το %S, ώστε να συνδεθείτε.
+passwordPromptSaveCheckbox=Χρήση της διαχείρισης κωδικών πρόσβασης για απομνημόνευση κωδικού πρόσβασης.
diff --git a/l10n-el/chat/commands.properties b/l10n-el/chat/commands.properties
new file mode 100644
index 0000000000..e926769477
--- /dev/null
+++ b/l10n-el/chat/commands.properties
@@ -0,0 +1,27 @@
+# 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 (commands):
+# %S is a comma separated list of command names.
+commands=Εντολές: %S.\nΧρησιμοποιήστε την &lt;εντολή&gt; /help για περισσότερες πληροφορίες.
+# LOCALIZATION NOTE (noCommand, noHelp):
+# %S is the command name the user typed.
+noCommand=Καμία εντολή '%S'.
+noHelp=Κανένα μήνυμα βοήθειας για την εντολή '%S', συγγνώμη!
+
+sayHelpString=say &lt;message&gt;: αποστολή μηνύματος χωρίς επεξεργασίας εντολών.
+rawHelpString=raw &lt;message&gt;: αποστολή μηνύματος χωρίς διαφυγή καταχωρήσεων HTML.
+helpHelpString=help &lt;name&gt;: εμφάνιση μηνύματος βοήθειας για την εντολή &lt;name&gt;, ή της λίστας των πιθανών εντολών, όταν χρησιμοποιείται χωρίς παράμετρο.
+
+# LOCALIZATION NOTE (statusCommand):
+# %1$S is replaced with a status command name
+# (one of "back", "away", "busy", "dnd", or "offline").
+# %2$S is replaced with the localized version of that status type
+# (one of the 5 strings below).
+statusCommand=%1$S &lt;status message&gt;: ορισμός της κατάστασης σε "%2$S" με ένα προαιρετικό μήνυμα κατάστασης.
+back=διαθέσιμος/-η
+away=εκτός υπολογιστή
+busy=μη διαθέσιμος/-η
+dnd=μη διαθέσιμος/-η
+offline=εκτός σύνδεσης
diff --git a/l10n-el/chat/contacts.properties b/l10n-el/chat/contacts.properties
new file mode 100644
index 0000000000..d538e81444
--- /dev/null
+++ b/l10n-el/chat/contacts.properties
@@ -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/.
+
+# LOCALIZATION NOTE (defaultGroup):
+# This is the name of the group that will automatically be created when adding a
+# buddy without specifying a group.
+defaultGroup=Επαφές
diff --git a/l10n-el/chat/conversations.properties b/l10n-el/chat/conversations.properties
new file mode 100644
index 0000000000..521af608df
--- /dev/null
+++ b/l10n-el/chat/conversations.properties
@@ -0,0 +1,80 @@
+# 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 (targetChanged):
+# %1$S is the new conversation title (display name of the new target),
+# %2$S is the protocol name used for the new target.
+targetChanged=Η συνομιλία θα συνεχιστεί με τίτλο "%1$S" και με το πρωτόκολλο %2$S.
+
+# LOCALIZATION NOTE (statusChanged):
+# %1$S is the display name of the contact.
+# %2$S is the new status type (a value from status.properties).
+statusChanged=Ο/Η %1$S είναι πλέον %2$S.
+# LOCALIZATION NOTE (statusChangedWithStatusText):
+# %1$S is the display name of the contact.
+# %2$S is the new status type (a value from status.properties).
+# %3$S is the status text (eg. "I'm currently away from the computer").
+statusChangedWithStatusText=Ο/Η %1$S είναι πλέον %2$S: %3$S.
+# LOCALIZATION NOTE (statusChangedFromUnknown[WithStatusText]):
+# special case of the previous 2 strings for when the status was
+# previously unknown. These 2 strings should not mislead the user
+# into thinking the person's status has just changed.
+statusChangedFromUnknown=Ο/Η %1$S είναι %2$S.
+statusChangedFromUnknownWithStatusText=Ο/Η %1$S είναι %2$S: %3$S.
+# LOCALIZATION NOTE (statusKnown[WithStatusText]):
+# special case of the previous 2 strings for when an account has just
+# been reconnected, so the status is now known. These 2 strings should not
+# mislead the user into thinking the person's status has just changed.
+statusKnown=Ο λογαριασμός σας έχει συνδεθεί εκ νέου (ο/η %1$S είναι %2$S).
+statusKnownWithStatusText=Ο λογαριασμός σας έχει συνδεθεί εκ νέου (ο/η %1$S είναι %2$S: %3$S).
+# LOCALIZATION NOTE (statusUnknown):
+# %S is the display name of the contact.
+statusUnknown=Ο λογαριασμός σας έχει αποσυνδεθεί (η κατάσταση του/της %S δεν είναι πλέον γνωστή).
+
+accountDisconnected=Ο λογαριασμός σας έχει αποσυνδεθεί.
+accountReconnected=Ο λογαριασμός σας έχει συνδεθεί εκ νέου.
+
+# LOCALIZATION NOTE (autoReply):
+# %S is replaced by the text of a message that was sent as an automatic reply.
+autoReply=Αυτόματη απάντηση - %S
+
+# LOCALIZATION NOTE (noTopic):
+# Displayed instead of the topic when no topic is set.
+noTopic=Δεν υπάρχει θεματικό μήνυμα στο δωμάτιο.
+
+# LOCALIZATION NOTE (topicSet):
+# %1$S is the conversation name, %2$S is the topic.
+topicSet=Το θέμα για τη συζήτηση "%1$S" είναι: %2$S.
+# LOCALIZATION NOTE (topicNotSet):
+# %S is the conversation name.
+topicNotSet=Δεν υπάρχει θέμα για τη συζήτηση "%S".
+# LOCALIZATION NOTE (topicChanged):
+# %1$S is the user who changed the topic, %2$S is the new topic.
+topicChanged=Ο/Η %1$S άλλαξε το θέμα σε: %2$S.
+# LOCALIZATION NOTE (topicCleared):
+# %1$S is the user who cleared the topic.
+topicCleared=Ο/Η %1$S διέγραψε το θέμα.
+
+# LOCALIZATION NOTE (nickSet):
+# This is displayed as a system message when a participant changes his/her
+# nickname in a conversation.
+# %1$S is the old nick.
+# %2$S is the new nick.
+nickSet=Ο/Η %1$S είναι πλέον γνωστός/-ή ως "%2$S".
+# LOCALIZATION NOTE (nickSet.you):
+# This is displayed as a system message when your nickname is changed.
+# %S is your new nick.
+nickSet.you=Είστε πλέον γνωστός/-η ως "%S".
+
+# LOCALIZATION NOTE (messenger.conversations.selections.ellipsis):
+# ellipsis is used when copying a part of a message to show that the message was cut
+messenger.conversations.selections.ellipsis=[…]
+
+# LOCALIZATION NOTE (messenger.conversations.selections.{system,content,action}MessagesTemplate):
+# These 3 templates are used to format selected messages before copying them.
+# Do not translate the texts between % characters, but feel free to adjust
+# whitespace and separators to make them fit your locale.
+messenger.conversations.selections.systemMessagesTemplate=%time% - %message%
+messenger.conversations.selections.contentMessagesTemplate=%time% - %sender%: %message%
+messenger.conversations.selections.actionMessagesTemplate=%time% * %sender% %message%
diff --git a/l10n-el/chat/dateFormat.properties b/l10n-el/chat/dateFormat.properties
new file mode 100644
index 0000000000..ec8eeb8b58
--- /dev/null
+++ b/l10n-el/chat/dateFormat.properties
@@ -0,0 +1,62 @@
+# 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/.
+
+month.1.Mmm=Ιαν
+month.2.Mmm=Φεβ
+month.3.Mmm=Μάρ
+month.4.Mmm=Απρ
+month.5.Mmm=Μάι
+month.6.Mmm=Ιούν
+month.7.Mmm=Ιούλ
+month.8.Mmm=Αυγ
+month.9.Mmm=Σεπ
+month.10.Mmm=Οκτ
+month.11.Mmm=Νοέ
+month.12.Mmm=Δεκ
+
+month.1.name=Ιανουάριος
+month.2.name=Φεβρουάριος
+month.3.name=Μάρτιος
+month.4.name=Απρίλιος
+month.5.name=Μάιος
+month.6.name=Ιούνιος
+month.7.name=Ιούλιος
+month.8.name=Αύγουστος
+month.9.name=Σεπτέμβριος
+month.10.name=Οκτώβριος
+month.11.name=Νοέμβριος
+month.12.name=Δεκέμβριος
+
+day.1.name=Κυριακή
+day.2.name=Δευτέρα
+day.3.name=Τρίτη
+day.4.name=Τετάρτη
+day.5.name=Πέμπτη
+day.6.name=Παρασκευή
+day.7.name=Σάββατο
+
+day.1.Mmm=Κυρ
+day.2.Mmm=Δευ
+day.3.Mmm=Τρί
+day.4.Mmm=Τετ
+day.5.Mmm=Πέμ
+day.6.Mmm=Παρ
+day.7.Mmm=Σάβ
+
+day.1.short=Κυ
+day.2.short=Δε
+day.3.short=Τρ
+day.4.short=Τε
+day.5.short=Πέ
+day.6.short=Πα
+day.7.short=Σά
+
+noon=Μεσημέρι
+midnight=Μεσάνυχτα
+
+AllDay=Όλη μέρα
+
+# LOCALIZATION NOTE (finduri-MonthYear):
+# %1$S is the month name, %2$S is the year (4 digits format).
+finduri-MonthYear=%1$S %2$S
diff --git a/l10n-el/chat/facebook.properties b/l10n-el/chat/facebook.properties
new file mode 100644
index 0000000000..68babc7c0e
--- /dev/null
+++ b/l10n-el/chat/facebook.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/.
+
+facebook.chat.name=Συνομιλία Facebook
+facebook.disabled=Η συνομιλία Facebook δεν υποστηρίζεται πλέον, επειδή το Facebook απενεργοποίησε τη θύρα XMPP του.
diff --git a/l10n-el/chat/imtooltip.properties b/l10n-el/chat/imtooltip.properties
new file mode 100644
index 0000000000..7812e738d7
--- /dev/null
+++ b/l10n-el/chat/imtooltip.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/.
+
+buddy.username=Όνομα χρήστη
+buddy.account=Λογαριασμός
+contact.tags=Ετικέτες
+
+otr.tag=Κατάσταση OTR
+message.status=Το μήνυμα κρυπτογραφήθηκε
diff --git a/l10n-el/chat/irc.properties b/l10n-el/chat/irc.properties
new file mode 100644
index 0000000000..000ff69d1c
--- /dev/null
+++ b/l10n-el/chat/irc.properties
@@ -0,0 +1,209 @@
+# 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 (irc.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring an IRC account.
+irc.usernameHint=ψευδώνυμο
+
+# LOCALIZATION NOTE (connection.error.*):
+# These will show in the account manager if the account is
+# disconnected because of an error.
+connection.error.lost=Χάθηκε η σύνδεση με τον διακομιστή
+connection.error.timeOut=Το όριο χρόνου σύνδεσης έληξε
+connection.error.invalidUsername=Το "%S" δεν είναι επιτρεπτό όνομα χρήστη
+connection.error.invalidPassword=Άκυρος κωδικός πρόσβασης διακομιστή
+connection.error.passwordRequired=Απαιτείται κωδικός πρόσβασης
+
+# LOCALIZATION NOTE (joinChat.*):
+# These show up on the join chat menu. An underscore is for the access key.
+joinChat.channel=_Κανάλι
+joinChat.password=_Κωδικός πρόσβασης
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.server=Διακομιστής
+options.port=Θύρα
+options.ssl=Χρήση SSL
+options.encoding=Σύνολο χαρακτήρων
+options.quitMessage=Μήνυμα εξόδου
+options.partMessage=Μήνυμα αποχώρησης
+options.showServerTab=Εμφάνιση μηνυμάτων από διακομιστή
+options.alternateNicks=Εναλλακτικά ψευδώνυμα
+
+# LOCALIZATION NOTE (ctcp.version):
+# %1$S is the nickname of the user whose version was requested.
+# %2$S is the version response from the client.
+ctcp.version=Ο/Η %1$S χρησιμοποιεί το "%2$S".
+# LOCALIZATION NOTE (ctcp.time):
+# %1$S is the nickname of the user whose time was requested.
+# %2$S is the time response.
+ctcp.time=Η ώρα για τον/την %1$S είναι %2$S.
+
+# LOCALZIATION NOTE (command.*):
+# These are the help messages for each command, the %S is the command name
+# Each command first gives the parameter it accepts and then a description of
+# the command.
+command.action=%S &lt;action to perform&gt;: Εκτέλεση ενέργειας.
+command.ban=%S &lt;nick!user@host&gt;: Αποκλεισμός χρηστών που αντιστοιχούν στο δεδομένο μοτίβο.
+command.ctcp=%S &lt;nick&gt; &lt;msg&gt;: Αποστέλλει ένα μήνυμα CTCP στο ψευδώνυμο.
+command.chanserv=%S &lt;command&gt;: Αποστολή εντολής στο ChanServ.
+command.deop=%S &lt;nick1&gt;[,&lt;nick2&gt;]*: Αφαίρεση κατάστασης συντονιστή καναλιού από κάποιον. Πρέπει να είστε συντονιστής καναλιού για να το κάνετε.
+command.devoice=%S &lt;ψευδώνυμο1&gt;[,&lt;ψευδώνυμο2&gt;]*: Αφαίρεση κατάστασης φωνής από κάποιον, αποκλείοντάς τον από το να μιλάει αν το κανάλι είναι σε συντονισμό (+m). Πρέπει να είστε συντονιστής καναλιού για να το κάνετε.
+command.invite2=%S &lt;ψευδώνυμο&gt;[ &lt;ψευδώνυμο&gt;]* [&lt;κανάλι&gt;]: Πρόσκληση ενός ή περισσοτέρων ψευδώνυμων για να συμμετέχουν στο παρόν κανάλι, ή για συμμετοχή στο καθορισμένο κανάλι.
+command.join=%S &lt;δωμάτιο1&gt;[ &lt;κλειδί1&gt;][,&lt;δωμάτιο2&gt;[ &lt;κλειδί2&gt;]]*: Κάνετε είσοδο σε ένα ή περισσότερα κανάλια, προαιρετικά δίνοντας ένα κλειδί για το καθένα αν απαιτείται.
+command.kick=%S &lt;ψευδώνυμο&gt; [&lt;μήνυμα&gt;]: Αφαιρέστε κάποιον από ένα κανάλι. Θα πρέπει να είστε συντονιστής καναλιού για να το κάνετε αυτό.
+command.list=%S: Εμφάνιση λίστας των δωματίων συζήτησης στο δίκτυο. Προσοχή, ορισμένοι διακομιστές ενδέχεται να σας αποσυνδέσουν με την εκτέλεση της ενέργειας αυτής.
+command.memoserv=%S &lt;εντολή&gt;: Αποστολή μιας εντολής στο MemoServ.
+command.modeUser2=%S &lt;ψευδώνυμο&gt; [(+|-)&lt;κατάσταση&gt;]: Ανάγνωση, καθορισμός ή εκκαθάριση της κατάστασης χρήστη.
+command.modeChannel2=%S [&lt;κανάλι&gt;] [(+|-)&lt;νέα κατάσταση&gt; [&lt;παράμετρος&gt;][,&lt;παράμετρος&gt;]*]: Ανάγνωση, καθορισμός ή εκκαθάριση της κατάστασης καναλιού.
+command.msg=%S &lt;ψευδώνυμο&gt; &lt;μήνυμα&gt;: Στείλτε ένα προσωπικό μήνυμα σε ένα χρήστη (σε αντίθεση σε ένα κανάλι).
+command.nick=%S &lt;νέο ψευδώνυμο&gt;: Αλλάξτε το ψευδώνυμό σας.
+command.nickserv=%S &lt;εντολή&gt;: Στείλετε μια εντολή στο NickServ.
+command.notice=%S &lt;στόχος&gt; &lt;μήνυμα&gt;: Στείλτε μια ειδοποίηση σε ένα χρήστη ή κανάλι.
+command.op=%S &lt;ψευδώνυμο1&gt;[,&lt;ψευδώνυμο2&gt;]*: Χορηγήστε την κατάσταση συντονιστή καναλιού σε κάποιον. Θα πρέπει να είστε συντονιστής καναλιού για να το κάνετε αυτό.
+command.operserv=%S &lt;εντολή&gt;: Στείλετε μια εντολή στο OperServ.
+command.part=%S [μήνυμα]: Αφήστε το τρέχον κανάλι προαιρετικά με κάποιο μήνυμα.
+command.ping=%S [&lt;ψευδώνυμο&gt;]: Ρωτήστε πόσο είναι η καθυστέρηση με κάποιο χρήστη (ή με το διακομιστή αν δεν καθορίζεται χρήστης).
+command.quit=%S &lt;μήνυμα&gt;: Αποσύνδεση από το διακομιστή, προαιρετικά με κάποιο μήνυμα.
+command.quote=%S &lt;εντολή&gt;: Αποστολή μη επεξεργασμένης εντολής στο διακομιστή.
+command.time=%S: Εμφάνιση της τοπικής ώρας του διακομιστή IRC.
+command.topic=%S [&lt;νέο θέμα&gt;]: Ορισμός του θέματος του καναλιού.
+command.umode=%S (+|-)&lt;νέα κατάσταση&gt;: Ορισμός ή εκκαθάριση της κατάστασης χρήστη.
+command.version=%S &lt;ψευδώνυμο&gt;: Ζητήστε την έκδοση πελάτη ενός χρήστη.
+command.voice=%S &lt;ψευδώνυμο1&gt;[,&lt;ψευδώνυμο2&gt;]*: Δώστε την κατάσταση φωνής σε κάποιον. Θα πρέπει να είστε συντονιστής του καναλιού για το κάνετε αυτό.
+command.whois2=%S [&lt;ψευδώνυμο&gt;]: Λάβετε πληροφορίες για ένα χρήστη.
+
+# LOCALIZATION NOTE (message.*):
+# These are shown as system messages in the conversation.
+# %1$S is the nick and %2$S is the nick and host of the user who joined.
+message.join=Ο %1$S [%2$S] συνδέθηκε στο δωμάτιο.
+message.rejoined=Έχετε συνδεθεί ξανά στο δωμάτιο.
+# %1$S is the nick of who kicked you.
+# %2$S is message.kicked.reason, if a kick message was given.
+message.kicked.you=Σας έχει πετάξει ο %1$S %2$S.
+# %1$S is the nick that is kicked, %2$S the nick of the person who kicked
+# %1$S. %3$S is message.kicked.reason, if a kick message was given.
+message.kicked=Ο %1$S έχει πεταχτεί από τον %2$S %3$S.
+# %S is the kick message
+message.kicked.reason=: %S
+# %1$S is the new mode, %2$S is the nickname of the user whose mode
+# was changed, and %3$S is who set the mode.
+message.usermode=Κατάσταση %1$S για %2$S, ορίστηκε από %3$S.
+# %1$S is the new channel mode and %2$S is who set the mode.
+message.channelmode=Κατάσταση καναλιού %1$S, ορίστηκε από %2$S.
+# %S is the user's mode.
+message.yourmode=Η κατάστασή σας είναι %S.
+# Could not change the nickname. %S is the user's nick.
+message.nick.fail=Αδυναμία χρήσης επιθυμητού ψευδωνύμου. Το ψευδώνυμο παραμένει ως %S.
+# The parameter is the message.parted.reason, if a part message is given.
+message.parted.you=Έχετε αποχωρήσει από το δωμάτιο (Μέρος%1$S).
+# %1$S is the user's nick, %2$S is message.parted.reason, if a part message is given.
+message.parted=Ο %1$S έφυγε από το δωμάτιο (Αποφυγή %2$S).
+# %S is the part message supplied by the user.
+message.parted.reason=: %S
+# %1$S is the user's nick, %2$S is message.quit2 if a quit message is given.
+message.quit=Ο %1$S έφυγε από το δωμάτιο (Εγκατάλειψη του %2$S).
+# The parameter is the quit message given by the user.
+message.quit2=: %S
+# %1$S is the nickname of the user that invited us, %2$S is the conversation
+# name.
+message.inviteReceived=Ο/Η %1$S σας προσκάλεσε στη συζήτηση %2$S.
+# %1$S is the nickname of the invited user, %2$S is the conversation name
+# they were invited to.
+message.invited=Ο/Η %1$S προσκλήθηκε επιτυχώς στη συζήτηση %2$S.
+# %1$S is the nickname of the invited user, %2$S is the conversation name
+# they were invited to but are already in
+message.alreadyInChannel=Ο/Η %1$S είναι ήδη στη συζήτηση %2$S.
+# %S is the nickname of the user who was summoned.
+message.summoned=Ο/Η %S κλήθηκε.
+# %S is the nickname of the user whose WHOIS information follows this message.
+message.whois=Πληροφορίες WHOIS για %S:
+# %1$S is the nickname of the (offline) user whose WHOWAS information follows this message.
+message.whowas=Ο/Η %1$S είναι εκτός σύνδεσης. Πληροφορίες WHOWAS για %1$S:
+# %1$S is the entry description (from tooltip.*), %2$S is its value.
+message.whoisEntry=\ua0\ua0\ua0\ua0%1$S: %2$S
+# %S is the nickname that is not known to the server.
+message.unknownNick=Το %S είναι άγνωστο ψευδώνυμο.
+# %1$S is the nickname of the user who changed the mode and %2$S is the new
+# channel key (password).
+message.channelKeyAdded=Ο/Η %1$S άλλαξε τον κωδικό πρόσβασης καναλιού σε %2$S.
+message.channelKeyRemoved=Ο/Η %S αφαίρεσε τον κωδικό πρόσβασης καναλιού.
+# This will be followed by a list of ban masks.
+message.banMasks=Οι χρήστες που έχουν συνδεθεί από τις παρακάτω τοποθεσίες έχουν απαγορευτεί από το %S:
+message.noBanMasks=Δεν υπάρχουν τοποθεσίες που έχουν απαγορευθεί για το %S.
+message.banMaskAdded=Οι χρήστες που έχουν συνδεθεί από τις τοποθεσίες που ταιριάζουν με το %1$S έχουν αποκλειστεί από %2$S.
+message.banMaskRemoved=Οι χρήστες που έχουν συνδεθεί από τις τοποθεσίες που ταιριάζουν με το %1$S δεν είναι πλέον αποκλεισμένοι από %2$S.
+# LOCALIZATION NOTE (message.ping): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# %1$S is the nickname of the user or the server that was pinged.
+# #2 is the delay (in milliseconds).
+message.ping=Απάντηση ηχούς από %1$S σε #2 χιλιοστό δευτερολέπτου.;Απάντηση ηχούς από %1$S σε #2 χιλιοστά δευτερολέπτου.
+
+
+# LOCALIZATION NOTE (error.*):
+# These are shown as error messages in the conversation or server tab.
+# %S is the channel name.
+error.noChannel=Δεν υπάρχει κανένα κανάλι: %S.
+error.tooManyChannels=Αδυναμία συμμετοχής σε %S; έχετε συμμετάσχει σε πάρα πολλά κανάλια.
+# %1$S is your new nick, %2$S is the kill message from the server.
+error.nickCollision=Ψευδώνυμο ήδη σε χρήση, αλλαγή ψευδωνύμου σε %1$S [%2$S].
+error.erroneousNickname=Το %S δεν είναι επιτρεπτό ψευδώνυμο.
+error.banned=Έχετε αποκλειστεί από αυτό το διακομιστή.
+error.bannedSoon=Θα αποκλειστείτε σύντομα από αυτό το διακομιστή.
+error.mode.wrongUser=Δεν μπορείτε να αλλάξετε λειτουργίες για άλλους χρήστες.
+# %S is the nickname or channel name that isn't available.
+error.noSuchNick=Ο/Η %S δεν είναι σε σύνδεση.
+error.wasNoSuchNick=Δεν υπάρχει κανένα ψευδώνυμο: %S
+error.noSuchChannel=Δεν υπάρχει κανένα κανάλι: %S.
+error.unavailable=Ο/Η %S είναι προσωρινά μη διαθέσιμος/η.
+# %S is the channel name.
+error.channelBanned=Έχετε απαγορευτεί από το %S.
+error.cannotSendToChannel=Δεν μπορείτε να στείλετε μηνύματα στο %S.
+error.channelFull=Το κανάλι %S είναι πλήρες.
+error.inviteOnly=Θα πρέπει να σας καλέσουν για να συμμετέχετε στο %S.
+error.nonUniqueTarget=Ο %S δεν είναι μοναδικός user@host ή σύντομο όνομα ή προσπαθήσατε να συμμετέχετε σε πολλά κανάλια ταυτόχρονα.
+error.notChannelOp=Δεν είστε συντονιστής καναλιού στο %S.
+error.notChannelOwner=Δεν είστε ο ιδιοκτήτης του καναλιού του %S.
+error.wrongKey=Δεν είναι δυνατή η συμμετοχή στο %S, μη έγκυρο συνθηματικό καναλιού.
+error.sendMessageFailed=Προέκυψε σφάλμα κατά την αποστολή του τελευταίου σας μηνύματος. Παρακαλώ δοκιμάστε ξανά μόλις εδραιωθεί πάλι η σύνδεση.
+# %1$S is the channel the user tried to join, %2$S is the channel
+# he was forwarded to.
+error.channelForward=Δεν μπορείτε να συμμετάσχετε στο %1$S και ανακατευθηνθήκατε αυτόματα στο %2$S.
+# %S is the mode that the user tried to set but was not recognized
+# by the server as a valid mode.
+error.unknownMode=Η λειτουργία '%S' δεν είναι έγκυρη σε αυτή το διακομιστή.
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the descriptions given in a tooltip with information received
+# from a whois response.
+# The human readable ("realname") description of the user.
+tooltip.realname=Όνομα
+tooltip.server=Συνδέθηκε σε
+# The username and hostname that the user connects from (usually based on the
+# reverse DNS of the user's IP, but often mangled by the server to
+# protect users).
+tooltip.connectedFrom=Συνδέθηκε από
+tooltip.registered=Εγγράφηκε
+tooltip.registeredAs=Εγγράφηκε ως
+tooltip.secure=Χρήση ασφαλούς σύνδεσης
+# The away message of the user
+tooltip.away=Εκτός υπολογιστή
+tooltip.ircOp=Λειτουργός IRC
+tooltip.bot=Bot
+tooltip.lastActivity=Τελευταία δραστηριότητα
+# %S is the timespan elapsed since the last activity.
+tooltip.timespan=πριν από %S
+tooltip.channels=Αυτή τη στιγμή στο
+
+# %1$S is the server name, %2$S is some generic server information (usually a
+# location or the date the user was last seen).
+tooltip.serverValue=%1$S (%2$S)
+
+# LOCALIZATION NOTE (yes, no):
+# These are used to turn true/false values into a yes/no response.
+yes=Ναι
+no=Όχι
diff --git a/l10n-el/chat/logger.properties b/l10n-el/chat/logger.properties
new file mode 100644
index 0000000000..d723f6d144
--- /dev/null
+++ b/l10n-el/chat/logger.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/.
+
+# LOCALIZATION NOTE (badLogfile):
+# %S is the filename of the log file.
+badLogfile=Άδειο ή κατεστραμμένο αρχείο καταγραφής: %S
diff --git a/l10n-el/chat/matrix.properties b/l10n-el/chat/matrix.properties
new file mode 100644
index 0000000000..5de673a59d
--- /dev/null
+++ b/l10n-el/chat/matrix.properties
@@ -0,0 +1,26 @@
+# 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 (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.connectServer=Διακομιστής
+options.connectPort=Θύρα
+
+# LOCALIZATION NOTE (chatRoomField.*):
+# These are the name of fields displayed in the 'Join Chat' dialog
+# for Matrix accounts.
+# The _ character won't be displayed; it indicates the next
+# character of the string should be used as the access key for this
+# field.
+chatRoomField.room=_Δωμάτιο
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the descriptions given in a tooltip with information received
+# from the "User" object.
+# The human readable name of the user.
+tooltip.displayName=Εμφανιζόμενο όνομα
+# %S is the timespan elapsed since the last activity.
+tooltip.timespan=πριν από %S
+tooltip.lastActive=Τελευταία δραστηριότητα
diff --git a/l10n-el/chat/skype.properties b/l10n-el/chat/skype.properties
new file mode 100644
index 0000000000..8a6768a30f
--- /dev/null
+++ b/l10n-el/chat/skype.properties
@@ -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/.
+
+# LOCALIZATION NOTE (connection.*):
+# These will show in the account manager to show progress during a connection.
+connecting.authenticating=Ταυτοποίηση
+connecting.registrationToken=Γίνεται λήψη διακριτικού εγγραφής
+
+# LOCALIZATION NOTE (error.*):
+# These will show in the account manager if the account is disconnected
+# because of an error.
+error.auth=Αποτυχία ταυτοποίησης με το διακομιστή
+error.registrationToken=Αποτυχία λήψης Διακριτικού Εγγραφής
diff --git a/l10n-el/chat/status.properties b/l10n-el/chat/status.properties
new file mode 100644
index 0000000000..9ec8890cb5
--- /dev/null
+++ b/l10n-el/chat/status.properties
@@ -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/.
+
+availableStatusType=Διαθέσιμος/-η
+awayStatusType=Εκτός υπολογιστή
+unavailableStatusType=Μη διαθέσιμος/-η
+offlineStatusType=Εκτός σύνδεσης
+invisibleStatusType=Αόρατος/-η
+idleStatusType=Αδρανής
+mobileStatusType=Κινητό
+# LOCALIZATION NOTE (unknownStatusType):
+# the status of a buddy is unknown when it's in the list of a disconnected account
+unknownStatusType=Άγνωστο
+
+# LOCALIZATION NOTE (statusWithStatusMessage):
+# Used to display the status of a buddy together with its status message.
+# %1$S is the status type, %2$S is the status message text.
+statusWithStatusMessage=%1$S - %2$S
+
+# LOCALIZATION NOTE (messenger.status.defaultIdleAwayMessage):
+# This will be the away message put automatically when the user is idle.
+messenger.status.defaultIdleAwayMessage=Αυτή τη στιγμή δεν βρίσκομαι στον υπολογιστή.
diff --git a/l10n-el/chat/twitter.properties b/l10n-el/chat/twitter.properties
new file mode 100644
index 0000000000..9a74b1622a
--- /dev/null
+++ b/l10n-el/chat/twitter.properties
@@ -0,0 +1,122 @@
+# 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 (twitter.protocolName)
+# This name is used whenever the name of the protocol is shown.
+twitter.protocolName=Twitter
+
+# LOCALIZATION NOTE (error.*):
+# These are errors that will be shown to the user in conversation.
+error.tooLong=Η κατάσταση περιέχει από 140 χαρακτήρες.
+# LOCALIZATION NOTE (error.general, error.retweet, error.delete):
+# %1$S will be either the error string returned by the twitter server,
+# in English, inside parenthesis, or the empty string if we have no specific
+# message for the error.
+# %2$S is the message that caused the error.
+error.general=Προέκυψε σφάλμα %1$S κατά την αποστολή: %2$S
+error.retweet=Προέκυψε σφάλμα %1$S κατά το retweeting: %2$S
+error.delete=Προέκυψε σφάλμα %1$S κατά τη διαγραφή: %2$S
+error.like=Προέκυψε σφάλμα %1$S κατά τον ορισμό του μ' αρέσει: %2$S
+error.unlike=Προέκυψε σφάλμα %1$S κατά την αφαίρεση του μ' αρέσει: %2$S
+# LOCALIZATION NOTE (error.descriptionTooLong)
+# %S is the truncated string that was sent to the server.
+error.descriptionTooLong=Η περιγραφή είναι μεγαλύτερη του μέγιστου μεγέθους (160 χαρακτήρες), αποκόπηκε αυτόματα σε: %S.
+
+# LOCALIZATION NOTE (timeline):
+# This is the title of the conversation tab, %S will be replaced by
+# @<username>.
+timeline=χρονολόγιο του %S
+
+# LOCALIZATION NOTE (action.*):
+# This will be an action in the context menu of displayed tweets.
+action.copyLink=Αντιγραφή συνδέσμου στο tweet
+action.retweet=Αναδημοσίευση tweet
+action.reply=Απάντηση
+action.delete=Διαγραφή
+# LOCALIZATION NOTE (action.follow, action.stopFollowing):
+# %S will be replaced by the screen name of a twitter user.
+action.follow=Ακολούθησε τον %S
+action.stopFollowing=Ακύρωση ακολούθησης του %S
+action.like=Μ' αρέσει
+action.unlike=Δεν μου αρέσει
+
+# LOCALIZATION NOTE (event.follow, event.unfollow, event.followed):
+# This will be displayed in system messages inside the timeline conversation.
+# %S will be replaced by the screen name of a twitter user.
+event.follow=Ακολουθείτε τον %S.
+event.unfollow=Δεν ακολουθείτε πλέον τον %S.
+event.followed=Ο/Η %S σας ακολουθεί πλέον.
+# LOCALIZATION NOTE (event.deleted):
+# %S will be replaced by the text of the deleted tweet.
+event.deleted=Διαγράψατε το tweet: "%S".
+
+# LOCALIZATION NOTE (replyingToStatusText):
+# This will be visible in the status bar of the conversation window
+# while the user is typing a reply to a tweet.
+# %S will be replaced by the text of the tweet the user is replying to.
+replyingToStatusText=Απάντηση σε: %S
+
+# LOCALIZATION NOTE (connection.*):
+# These will be displayed in the account manager in order to show the progress
+# of the connection.
+# (These will be displayed in account.connection.progress from
+# accounts.properties, which adds … at the end, so do not include
+# periods at the end of these messages.)
+connection.initAuth=Έναρξη διαδικασίας ταυτοποίησης
+connection.requestAuth=Αναμονή για την εξουσιοδότησή σας
+connection.requestAccess=Οριστικοποίηση της ταυτοποίησης
+connection.requestTimelines=Γίνεται αίτηση για τα χρονολόγια χρηστών
+# LOCALIZATION NOTE (connection.error.*):
+# These will show in the account manager if an error occurs during the
+# connection attempt.
+connection.error.userMismatch=Το όνομα χρήστη είναι λάθος.
+connection.error.failedToken=Αποτυχία λήψης διακριτικού αίτησης.
+connection.error.authCancelled=Ακυρώσατε την διαδικασία αυθεντικοποίησης.
+connection.error.authFailed=Αποτυχία λήψης εξουσιοδότησης.
+connection.error.noNetwork=Δεν υπάρχει διαθέσιμη σύνδεση δικτύου.
+
+# LOCALIZATION NOTE (authPrompt):
+# This is the prompt in the browser window that pops up to authorize us
+# to use a Twitter account. It is shown in the title bar of the authorization
+# window.
+authPrompt=Δώστε δικαίωμα χρήσης του λογαριασμού σας στο Twitter
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.track=Λέξεις κλειδιά που παρακολουθείτε
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the Twitter information that will appear in the tooltip
+# for each participant on the home timeline.
+# LOCALIZATION NOTE (tooltip.created_at): the date the user joined.
+tooltip.created_at=Χρήστης από
+tooltip.location=Τοποθεσία
+tooltip.lang=Γλώσσα
+tooltip.time_zone=Ζώνη ώρας
+tooltip.url=Αρχική σελίδα
+# LOCALIZATION NOTE (tooltip.protected):
+# whether the user's tweets are publicly visible.
+tooltip.protected=Προστασία των tweet
+# LOCALIZATION NOTE (tooltip.following):
+# whether you are subscribed to the user's tweets.
+tooltip.following=Ακολουθείτε αυτή τη στιγμή
+tooltip.name=Όνομα
+tooltip.description=Περιγραφή
+# LOCALIZATION NOTE (tooltip.*_count):
+# Please see the right side of the official Twitter website UI.
+tooltip.friends_count=Ακολουθούν
+tooltip.statuses_count=Tweet
+tooltip.followers_count=Ακόλουθοι
+tooltip.listed_count=Σε λίστες
+
+# LOCALIZATION NOTE (yes, no):
+# These are used to turn true/false values into a yes/no response.
+yes=Ναι
+no=Όχι
+
+command.follow=%S &lt;username&gt;[ &lt;username&gt;]*: Ξεκινήστε ακολουθώντας ένα χρήστη / χρήστες.
+command.unfollow=%S &lt;username&gt;[ &lt;username&gt;]*: Ακυρώστε την ακολούθηση ενός χρήστη / χρηστών.
+
+twitter.disabled=Το Twitter δεν υποστηρίζεται πλέον, επειδή απενεργοποίησε το πρωτόκολλο ροής του.
diff --git a/l10n-el/chat/xmpp.properties b/l10n-el/chat/xmpp.properties
new file mode 100644
index 0000000000..ade800c6d3
--- /dev/null
+++ b/l10n-el/chat/xmpp.properties
@@ -0,0 +1,275 @@
+# 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 (connection.*)
+# These will be displayed in the account manager in order to show the progress
+# of the connection.
+# (These will be displayed in account.connection.progress from
+# accounts.properties, which adds … at the end, so do not include
+# periods at the end of these messages.)
+connection.initializingStream=Αρχικοποίηση ροής
+connection.initializingEncryption=Αρχικοποίηση κρυπτογράφησης
+connection.authenticating=Ταυτοποίηση
+connection.gettingResource=Λήψη πόρων
+connection.downloadingRoster=Λήψη λίστας επαφών
+connection.srvLookup=Αναζήτηση για την εγγραφή SRV
+
+# LOCALIZATION NOTE (connection.error.*)
+# These will show in the account manager if an error occurs during the
+# connection attempt.
+connection.error.invalidUsername=Μη έγκυρο όνομα χρήστη (το όνομα χρήστη σας θα πρέπει να περιέχει τον χαρακτήρα '@')
+connection.error.failedToCreateASocket=Αδυναμία δημιουργίας σύνδεσης (είστε εκτός δικτύου;)
+connection.error.serverClosedConnection=Ο διακομιστή έκλεισε τη σύνδεση
+connection.error.resetByPeer=Η σύνδεση διακόπηκε από τον ομότιμο
+connection.error.timedOut=Λήξη χρόνου σύνδεσης
+connection.error.receivedUnexpectedData=Λήφθησαν μη αναμενόμενα δεδομένα
+connection.error.incorrectResponse=Λήφθηκε λανθασμένη απόκριση
+connection.error.startTLSRequired=Ο διακομιστής απαιτεί κρυπτογράφηση, αλλά την έχετε απενεργοποιήσει
+connection.error.startTLSNotSupported=Ο διακομιστής δεν υποστηρίζει κρυπτογράφηση, αλλά οι ρυθμίσεις σας την απαιτούν
+connection.error.failedToStartTLS=Αποτυχία έναρξης κρυπτογράφησης
+connection.error.noAuthMec=Δεν προσφέρθηκε μηχανισμός κρυπτογράφησης από το διακομιστή
+connection.error.noCompatibleAuthMec=Κανένας από τους μηχανισμούς κρυπτογράφησης που παρέχει ο διακομιστής δεν υποστηρίζεται
+connection.error.notSendingPasswordInClear=Ο διακομιστής υποστηρίζει αυθεντικοποίηση μόνο με αποστολή του συνθηματικού σε απλό κείμενο
+connection.error.authenticationFailure=Αποτυχία ταυτοποίησης
+connection.error.notAuthorized=Μη πιστοποιημένος (έχετε εισάγει σωστό συνθηματικό;)
+connection.error.failedToGetAResource=Αδυναμία λήψης πόρου
+connection.error.failedMaxResourceLimit=Έχει γίνει είσοδος σε αυτό το λογαριασμό από πάρα πολλά μέρη ταυτόχρονα.
+connection.error.failedResourceNotValid=Ο πόρος δεν είναι έγκυρος.
+connection.error.XMPPNotSupported=Ο διακομιστής δεν υποστηρίζει XMPP
+
+# LOCALIZATION NOTE (conversation.error.notDelivered):
+# This is displayed in a conversation as an error message when a message
+# the user has sent wasn't delivered.
+# %S is replaced by the text of the message that wasn't delivered.
+conversation.error.notDelivered=Δεν ήταν δυνατή η παράδοση αυτού του μηνύματος: %S
+# This is displayed in a conversation as an error message when joining a MUC
+# fails.
+# %S is the name of the MUC.
+conversation.error.joinFailed=Δεν ήταν δυνατή η συμμετοχή: %S
+# This is displayed in a conversation as an error message when the user is
+# banned from a room.
+# %S is the name of the MUC room.
+conversation.error.joinForbidden=Δεν ήταν δυνατή η συμμετοχή στο %S γιατί σας έχει απαγορευτεί η πρόσβαση στο δωμάτιο.
+conversation.error.joinFailedNotAuthorized=Απαιτείται εγγραφή: Δεν είστε πιστοποιημένος για τη συμμετοχή στο δωμάτιο.
+conversation.error.creationFailedNotAllowed=Πρόσβαση περιορισμένη: Δεν επιτρέπεται να δημιουργήσετε δωμάτια.
+# This is displayed in a conversation as an error message when remote server
+# is not found.
+# %S is the name of MUC room.
+conversation.error.joinFailedRemoteServerNotFound=Δεν ήταν δυνατή η συμμετοχή στο δωμάτιο %S γιατί δεν είναι δυνατή η επικοινωνία με τον διακομιστή στον οποίο υφίσταται το δωμάτιο.
+conversation.error.changeTopicFailedNotAuthorized=Δεν είστε πιστοποιημένος για να ορίσετε το θέμα του δωματίου.
+# This is displayed in a conversation as an error message when the user sends
+# a message to a room that he is not in.
+# %1$S is the name of MUC room.
+# %2$S is the text of the message that wasn't delivered.
+conversation.error.sendFailedAsNotInRoom=Δεν ήταν δυνατή η αποστολή του μηνύματος στο %1$S γιατί δεν συμμετέχετε πλέον στο δωμάτιο: %2$S
+# This is displayed in a conversation as an error message when the user sends
+# a message to a room that the recipient is not in.
+# %1$S is the jid of the recipient.
+# %2$S is the text of the message that wasn't delivered.
+conversation.error.sendFailedAsRecipientNotInRoom=Δεν ήταν δυνατή η αποστολή του μηνύματος στο %1$S γιατί ο παραλήπτης δεν συμμετέχει πλέον στο δωμάτιο: %2$S
+# These are displayed in a conversation as a system error message.
+conversation.error.remoteServerNotFound=Δεν ήταν δυνατή η επικοινωνία με το διακομιστή του παραλήπτη.
+conversation.error.unknownSendError=Συνέβη ένα άγνωστο σφάλμα κατά την αποστολή του μηνύματος.
+# %S is the name of the message recipient.
+conversation.error.sendServiceUnavailable=Δεν είναι δυνατή η αποστολή μηνυμάτων στο %S αυτήν τη στιγμή.
+# %S is the nick of participant that is not in room.
+conversation.error.nickNotInRoom=Ο/Η %S δεν συμμετέχει στο δωμάτιο.
+conversation.error.banCommandAnonymousRoom=Δεν μπορείτε να πετάξετε συμμετέχοντες από ανώνυμα δωμάτια. Δοκιμάστε εναλλακτικά το /kick.
+conversation.error.banKickCommandNotAllowed=Δεν έχετε το απαραίτητο δικαίωμα για την αφαίρεση συμμετεχόντων από το δωμάτιο.
+conversation.error.banKickCommandConflict=Συγγνώμη, δεν μπορείτε να αφαιρέσετε τον εαυτό σας από το δωμάτιο.
+conversation.error.changeNickFailedConflict=Δεν ήταν δυνατή η αλλαγή του ψευδώνυμου σας σε %S αυτήν τη στιγμή καθώς αυτό το ψευδώνυμο είναι ήδη σε χρήση.
+conversation.error.changeNickFailedNotAcceptable=Δεν ήταν η αλλαγή του ψευδώνυμου σε %S, καθώς τα ψευδώνυμα είναι κλειδωμένα στο δωμάτιο.
+conversation.error.inviteFailedForbidden=Δεν έχετε το απαραίτητο δικαίωμα για να προσκαλέσετε χρήστες στο δωμάτιο.
+# %S is the jid of user that is invited.
+conversation.error.failedJIDNotFound=Δεν ήταν δυνατή η επικοινωνία με τον %S.
+# %S is the jid that is invalid.
+conversation.error.invalidJID=Το %S δεν είναι έγκυρο jid (τα αναγνωριστικά Jabber πρέπει να είναι της μορφής user@domain).
+conversation.error.commandFailedNotInRoom=Θα πρέπει να επανασυνδεθείτε στο δωμάτιο για να χρησιμοποιήσετε την εντολή αυτή.
+# %S is the name of the recipient.
+conversation.error.resourceNotAvailable=Πρέπει πρώτα να μιλήσετε καθώς ο/η %S θα μπορούσε να είναι συνδεδεμένος με πάνω από ένα πρόγραμμα.
+
+# LOCALIZATION NOTE (conversation.error.version.*):
+# %S is the name of the recipient.
+conversation.error.version.unknown=Το πρόγραμμα του/της %S δεν υποστηρίζει ερώτηση για την έκδοση λογισμικού του.
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the titles of lines of information that will appear in
+# the tooltip showing details about a contact or conversation.
+# LOCALIZATION NOTE (tooltip.status):
+# %S will be replaced by the XMPP resource identifier
+tooltip.status=Κατάσταση (%S)
+tooltip.statusNoResource=Κατάσταση
+tooltip.subscription=Συνδρομή
+tooltip.fullName=Πλήρες όνομα
+tooltip.nickname=Ψευδώνυμο
+tooltip.email=Email
+tooltip.birthday=Γενέθλια
+tooltip.userName=Όνομα χρήστη
+tooltip.title=Τίτλος
+tooltip.organization=Εταιρεία
+tooltip.locality=Περιοχή
+tooltip.country=Χώρα
+tooltip.telephone=Αριθμός τηλεφώνου
+
+# LOCALIZATION NOTE (chatRoomField.*):
+# These are the name of fields displayed in the 'Join Chat' dialog
+# for XMPP accounts.
+# The _ character won't be displayed; it indicates the next
+# character of the string should be used as the access key for this
+# field.
+chatRoomField.room=_Δωμάτιο
+chatRoomField.server=Δ_ιακομιστής
+chatRoomField.nick=_Ψευδώνυμο
+chatRoomField.password=_Κωδικός πρόσβασης
+
+# LOCALIZATION NOTE (conversation.muc.*):
+# These are displayed as a system message when a chatroom invitation is
+# received.
+# %1$S is the inviter.
+# %2$S is the room.
+# %3$S is the reason which is a message provided by the person sending the
+# invitation.
+conversation.muc.invitationWithReason2=Ο %1$S σας προσκάλεσε να συμμετέχετε στο %2$S: %3$S
+# %3$S is the password of the room.
+# %4$S is the reason which is a message provided by the person sending the
+# invitation.
+conversation.muc.invitationWithReason2.password=Ο %1$S σας προσκάλεσε να συμμετέχετε στο %2$S με κωδικό %3$S: %4$S
+conversation.muc.invitationWithoutReason=Ο %1$S σας προσκάλεσε να συμμετέχετε στο %2$S
+# %3$S is the password of the room.
+conversation.muc.invitationWithoutReason.password=Ο %1$S σας προσκάλεσε να συμμετέχετε στο %2$S με κωδικό %3$S
+
+# LOCALIZATION NOTE (conversation.muc.join):
+# This is displayed as a system message when a participant joins room.
+# %S is the nick of the participant.
+conversation.message.join=Ο/Η %S μπήκε στο δωμάτιο.
+
+# LOCALIZATION NOTE (conversation.muc.rejoined):
+# This is displayed as a system message when a participant rejoins room after
+# parting it.
+conversation.message.rejoined=Έχετε συνδεθεί ξανά στο δωμάτιο.
+
+# LOCALIZATION NOTE (conversation.message.parted.*):
+# These are displayed as a system message when a participant parts a room.
+# %S is the part message supplied by the user.
+conversation.message.parted.you=Έχετε αποχωρήσει από το δωμάτιο.
+conversation.message.parted.you.reason=Έχετε αποχωρήσει από το δωμάτιο: %S
+# %1$S is the participant that is leaving.
+# %2$S is the part message supplied by the participant.
+conversation.message.parted=Ο/Η %1$S έχει αποχωρήσει από το δωμάτιο.
+conversation.message.parted.reason=Ο/Η %1$S έχει αποχωρήσει από το δωμάτιο: %2$S
+
+# LOCALIZATION NOTE (conversation.message.invitationDeclined*):
+# %1$S is the invitee that declined the invitation.
+# %2$S is the decline message supplied by the invitee.
+conversation.message.invitationDeclined=Ο %1$S απέρριψε την πρόσκλησή σας.
+conversation.message.invitationDeclined.reason=Ο %1$S απέρριψε την πρόσκλησή σας: %2$S
+
+# LOCALIZATION NOTE (conversation.message.banned.*):
+# These are displayed as a system message when a participant is banned from
+# a room.
+# %1$S is the participant that is banned.
+# %2$S is the reason.
+# %3$S is the person who is banning.
+conversation.message.banned=Ο %1$S έχει αποκλειστεί από το δωμάτιο.
+conversation.message.banned.reason=Ο %1$S έχει αποκλειστεί από το δωμάτιο: %2$S
+# %1$S is the person who is banning.
+# %2$S is the participant that is banned.
+# %3$S is the reason.
+conversation.message.banned.actor=Ο %1$S έχει αποκλείσει τον %2$S από το δωμάτιο.
+conversation.message.banned.actor.reason=Ο %1$S έχει αποκλείσει τον %2$S από το δωμάτιο: %3$S
+conversation.message.banned.you=Έχετε αποκλειστεί από το δωμάτιο.
+# %1$S is the reason.
+conversation.message.banned.you.reason=Έχετε αποκλειστεί από το δωμάτιο: %1$S
+# %1$S is the person who is banning.
+# %2$S is the reason.
+conversation.message.banned.you.actor=Ο %1$S σας έχει αποκλείσει από το δωμάτιο.
+conversation.message.banned.you.actor.reason=Ο %1$S σας έχει αποκλείσει από το δωμάτιο: %2$S
+
+# LOCALIZATION NOTE (conversation.message.kicked.*):
+# These are displayed as a system message when a participant is kicked from
+# a room.
+# %1$S is the participant that is kicked.
+# %2$S is the reason.
+conversation.message.kicked=Ο %1$S σας έχει πετάξει από το δωμάτιο.
+conversation.message.kicked.reason=Ο %1$S σας έχει πετάξει από το δωμάτιο: %2$S
+# %1$S is the person who is kicking.
+# %2$S is the participant that is kicked.
+# %3$S is the reason.
+conversation.message.kicked.actor=Ο %1$S έχει πετάξει τον %2$S από το δωμάτιο.
+conversation.message.kicked.actor.reason=Ο %1$S έχει πετάξει τον %2$S από το δωμάτιο: %3$S
+conversation.message.kicked.you=Έχετε πεταχτεί από το δωμάτιο.
+# %1$S is the reason.
+conversation.message.kicked.you.reason=Έχετε πεταχτεί από το δωμάτιο: %1$S
+# %1$S is the person who is kicking.
+# %2$S is the reason.
+conversation.message.kicked.you.actor=Ο %1$S σας πέταξε από το δωμάτιο.
+conversation.message.kicked.you.actor.reason=Ο %1$S σας πέταξε από το δωμάτιο: %2$S
+
+# LOCALIZATION NOTE (conversation.message.removedNonMember.*):
+# These are displayed as a system message when a participant is removed from
+# a room because the room has been changed to members-only.
+# %1$S is the participant that is removed.
+# %2$S is the person who changed the room configuration.
+conversation.message.removedNonMember=Ο %1$S αφαιρέθηκε από το δωμάτιο διότι η ρύθμισή του άλλαξε σε μέλη μόνο.
+conversation.message.removedNonMember.actor=Ο %1$S αφαιρέθηκε από το δωμάτιο επειδή ο %2$S άλλαξε την κατάστασή του σε μόνο-μέλη.
+conversation.message.removedNonMember.you=Έχετε αφαιρεθεί από το δωμάτιο επειδή η ρύθμισή του άλλαξε με μέλη-μόνο.
+# %1$S is the person who changed the room configuration.
+conversation.message.removedNonMember.you.actor=Έχετε αφαιρεθεί από το δωμάτιο επειδή ο %1$S το άλλαξε σε μέλη-μόνο.
+
+# LOCALIZATION NOTE (conversation.message.MUCShutdown):
+# These are displayed as a system message when a participant is removed from
+# a room because of a system shutdown.
+conversation.message.mucShutdown=Έχετε αφαιρεθεί από το δωμάτιο λόγω τερματισμού συστήματος.
+
+# LOCALIZATION NOTE (conversation.message.version*):
+# %1$S is the name of the user whose version was requested.
+# %2$S is the client name response from the client.
+# %3$S is the client version response from the client.
+# %4$S is the operating system(OS) response from the client.
+conversation.message.version=Ο/Η %1$S χρησιμοποιεί "%2$S %3$S".
+conversation.message.versionWithOS=Ο %1$S χρησιμοποιεί "%2$S %3$S" σε %4$S.
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.resource=Πόρος
+options.priority=Προτεραιότητα
+options.connectionSecurity=Ασφάλεια σύνδεσης
+options.connectionSecurity.requireEncryption=Απαίτηση κρυπτογράφησης
+options.connectionSecurity.opportunisticTLS=Χρήση κρυπτογράφησης αν είναι διαθέσιμη
+options.connectionSecurity.allowUnencryptedAuth=Να επιτρέπεται η αποστολή του συνθηματικού μη κρυπτογραφημένο
+options.connectServer=Διακομιστής
+options.connectPort=Θύρα
+options.domain=Τομέας
+
+# LOCALIZATION NOTE (*.protocolName)
+# This name is used whenever the name of the protocol is shown.
+gtalk.protocolName=Google Talk
+odnoklassniki.protocolName=Odnoklassniki
+
+# LOCALIZATION NOTE (gtalk.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring a Google Talk account.
+gtalk.usernameHint=διεύθυνση email
+
+# LOCALIZATION NOTE (odnoklassniki.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring a Odnoklassniki account.
+odnoklassniki.usernameHint=Αναγνωριστικό προφίλ
+
+# LOCALZIATION NOTE (command.*):
+# These are the help messages for each command.
+command.join3=%S [&lt;δωμάτιο&gt;[@&lt;διακομιστής&gt;[]/&lt;ψευδώνυμο&gt;]][&lt;κωδικός&gt;]: Συμμετοχή σε δωμάτιο, προαιρετικά δίνοντας διαφορετικό διακομιστή, ψευδώνυμο ή κωδικό δωματίου.
+command.part2=%S [&lt;μήνυμα&gt;]: Αφήστε το τρέχον δωμάτιο με κάποιο μήνυμα προαιρετικά.
+command.topic=%S [&lt;νέο θέμα&gt;]: Ορίστε το θέμα του δωματίου.
+command.ban=%S &lt;ψευδώνυμο&gt;[&lt;μήνυμα&gt;]: Αποκλείστε κάποιον από το δωμάτιο. Θα πρέπει να είστε διαχειριστής του δωματίου για να το κάνετε αυτό.
+command.kick=%S &lt;ψευδώνυμο&gt;[&lt;μήνυμα&gt;]: Αφαιρέστε κάποιον από το δωμάτιο. Θα πρέπει να είστε συντονιστής του δωματίου για να το κάνετε αυτό.
+command.invite=%S &lt;jid&gt;[&lt;μήνυμα&gt;]: Προσκαλέστε κάποιο χρήστη για να συμμετέχει στο δωμάτιο προαιρετικά με κάποιο μήνυμα.
+command.inviteto=%S &lt;δωμάτιο jid&gt;[&lt;κωδικός&gt;]: Προσκαλέστε τον σύντροφο στη συζήτησή σας να συμμετέχει σε ένα δωμάτιο, μαζί με τον κωδικό αν απαιτείται.
+command.me=%S &lt;ενέργεια προς εκτέλεση&gt;: Εκτελέστε μια ενέργεια.
+command.nick=%S &lt;νέο ψευδώνυμο&gt;: Αλλαγή του ψευδώνυμου σας.
+command.msg=%S &lt;ψευδώνυμο&gt; &lt;μήνυμα&gt;: Στείλετε ένα προσωπικό μήνυμα σε κάποιον συμμετέχοντα στο δωμάτιο.
+command.version=%S: Αίτηση πληροφοριών για τον πελάτη που χρησιμοποιεί ο σύντροφός σας.
diff --git a/l10n-el/chat/yahoo.properties b/l10n-el/chat/yahoo.properties
new file mode 100644
index 0000000000..50fa0a1051
--- /dev/null
+++ b/l10n-el/chat/yahoo.properties
@@ -0,0 +1,5 @@
+# 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/.
+
+yahoo.disabled=Το Yahoo Messenger δεν υποστηρίζεται πλέον επειδή η Yahoo απενεργοποίησε το παλιό της πρωτόκολλο.
diff --git a/l10n-el/devtools/client/aboutdebugging.ftl b/l10n-el/devtools/client/aboutdebugging.ftl
new file mode 100644
index 0000000000..05e6e3a777
--- /dev/null
+++ b/l10n-el/devtools/client/aboutdebugging.ftl
@@ -0,0 +1,394 @@
+# 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/.
+
+
+### These strings are used inside the about:debugging UI.
+
+
+# Page Title strings
+
+# Page title (ie tab title) for the Setup page
+about-debugging-page-title-setup-page = Αποσφαλμάτωση - Ρύθμιση
+
+# Page title (ie tab title) for the Runtime page
+# { $selectedRuntimeId } is the id of the current runtime, such as "this-firefox", "localhost:6080", ...
+about-debugging-page-title-runtime-page = Αποσφαλμάτωση - Εκτέλεση/{ $selectedRuntimeId }
+
+# Sidebar strings
+
+# Display name of the runtime for the currently running instance of Firefox. Used in the
+# Sidebar and in the Setup page.
+about-debugging-this-firefox-runtime-name = Αυτό το { -brand-shorter-name }
+
+# Sidebar heading for selecting the currently running instance of Firefox
+about-debugging-sidebar-this-firefox =
+ .name = { about-debugging-this-firefox-runtime-name }
+
+# Sidebar heading for connecting to some remote source
+about-debugging-sidebar-setup =
+ .name = Ρύθμιση
+
+# Text displayed in the about:debugging sidebar when USB devices discovery is enabled.
+about-debugging-sidebar-usb-enabled = USB ενεργό
+
+# Text displayed in the about:debugging sidebar when USB devices discovery is disabled
+# (for instance because the mandatory ADB extension is not installed).
+about-debugging-sidebar-usb-disabled = USB ανενεργό
+
+# Connection status (connected) for runtime items in the sidebar
+aboutdebugging-sidebar-runtime-connection-status-connected = Συνδέθηκε
+# Connection status (disconnected) for runtime items in the sidebar
+aboutdebugging-sidebar-runtime-connection-status-disconnected = Αποσυνδέθηκε
+
+# Text displayed in the about:debugging sidebar when no device was found.
+about-debugging-sidebar-no-devices = Δεν εντοπίστηκαν συσκευές
+
+# Text displayed in buttons found in sidebar items representing remote runtimes.
+# Clicking on the button will attempt to connect to the runtime.
+about-debugging-sidebar-item-connect-button = Σύνδεση
+
+# Text displayed in buttons found in sidebar items when the runtime is connecting.
+about-debugging-sidebar-item-connect-button-connecting = Σύνδεση…
+
+# Text displayed in buttons found in sidebar items when the connection failed.
+about-debugging-sidebar-item-connect-button-connection-failed = Αποτυχία σύνδεσης
+
+# Text displayed in connection warning on sidebar item of the runtime when connecting to
+# the runtime is taking too much time.
+about-debugging-sidebar-item-connect-button-connection-not-responding = Η σύνδεση εκκρεμεί ακόμη, ελέγξτε για μηνύματα στο πρόγραμμα περιήγησης προορισμού
+
+# Text displayed as connection error in sidebar item when the connection has timed out.
+about-debugging-sidebar-item-connect-button-connection-timeout = Το χρονικό όριο σύνδεσης έληξε
+
+# Temporary text displayed in sidebar items representing remote runtimes after
+# successfully connecting to them. Temporary UI, do not localize.
+about-debugging-sidebar-item-connected-label = Συνδέθηκε
+
+# Text displayed in sidebar items for remote devices where a compatible browser (eg
+# Firefox) has not been detected yet. Typically, Android phones connected via USB with
+# USB debugging enabled, but where Firefox is not started.
+about-debugging-sidebar-runtime-item-waiting-for-browser = Αναμονή για το πρόγραμμα περιήγησης…
+
+# Text displayed in sidebar items for remote devices that have been disconnected from the
+# computer.
+about-debugging-sidebar-runtime-item-unplugged = Αποσυνδέθηκε
+
+# Title for runtime sidebar items that are related to a specific device (USB, WiFi).
+about-debugging-sidebar-runtime-item-name =
+ .title = { $displayName } ({ $deviceName })
+# Title for runtime sidebar items where we cannot get device information (network
+# locations).
+about-debugging-sidebar-runtime-item-name-no-device =
+ .title = { $displayName }
+
+# Text to show in the footer of the sidebar that links to a help page
+# (currently: https://developer.mozilla.org/docs/Tools/about:debugging)
+about-debugging-sidebar-support = Υποστήριξη αποσφαλμάτωσης
+
+# Text to show as the ALT attribute of a help icon that accompanies the help about
+# debugging link in the footer of the sidebar
+about-debugging-sidebar-support-icon =
+ .alt = Εικονίδιο βοήθειας
+
+# Text displayed in a sidebar button to refresh the list of USB devices. Clicking on it
+# will attempt to update the list of devices displayed in the sidebar.
+about-debugging-refresh-usb-devices-button = Ανανέωση συσκευών
+
+# Setup Page strings
+
+# Title of the Setup page.
+about-debugging-setup-title = Ρύθμιση
+
+# Introduction text in the Setup page to explain how to configure remote debugging.
+about-debugging-setup-intro = Ρυθμίστε τη μέθοδο σύνδεσης με την οποία επιθυμείτε να αποσφαλματώσετε απομακρυσμένα τη συσκευή σας.
+
+# Explanatory text in the Setup page about what the 'This Firefox' page is for
+about-debugging-setup-this-firefox2 = Χρησιμοποιήστε το <a>{ about-debugging-this-firefox-runtime-name }</a> για να αποσφαλματώσετε τις επεκτάσεις και τα service workers σε αυτή την έκδοση του { -brand-shorter-name }.
+
+# Title of the heading Connect section of the Setup page.
+about-debugging-setup-connect-heading = Σύνδεση συσκευής
+
+# USB section of the Setup page
+about-debugging-setup-usb-title = USB
+
+# Explanatory text displayed in the Setup page when USB debugging is disabled
+about-debugging-setup-usb-disabled = Η ενεργοποίηση αυτού θα κάνει λήψη και προσθήκη των απαιτούμενων στοιχείων αποσφαλμάτωσης Android USB στο { -brand-shorter-name }.
+
+# Text of the button displayed in the USB section of the setup page when USB debugging is disabled.
+# Clicking on it will download components needed to debug USB Devices remotely.
+about-debugging-setup-usb-enable-button = Ενεργοποίηση συσκευών USB
+
+# Text of the button displayed in the USB section of the setup page when USB debugging is enabled.
+about-debugging-setup-usb-disable-button = Απενεργοποίηση συσκευών USB
+
+# Text of the button displayed in the USB section of the setup page while USB debugging
+# components are downloaded and installed.
+about-debugging-setup-usb-updating-button = Ενημέρωση…
+
+# USB section of the Setup page (USB status)
+about-debugging-setup-usb-status-enabled = Ενεργό
+about-debugging-setup-usb-status-disabled = Ανενεργό
+about-debugging-setup-usb-status-updating = Ενημέρωση…
+
+# USB section step by step guide
+about-debugging-setup-usb-step-enable-dev-menu2 = Ενεργοποιήστε το μενού προγραμματιστών στην Android συσκευή σας.
+
+# USB section step by step guide
+about-debugging-setup-usb-step-enable-debug2 = Ενεργοποιήστε την αποσφαλμάτωση μέσω USB στο μενού προγραμματιστών Android.
+
+# USB section step by step guide
+about-debugging-setup-usb-step-enable-debug-firefox2 = Ενεργοποιήστε την αποσφαλμάτωση μέσω USB στο Firefox της Android συσκευής σας.
+
+# USB section step by step guide
+about-debugging-setup-usb-step-plug-device = Συνδέστε τη συσκευή Android στον υπολογιστή σας.
+
+# Text shown in the USB section of the setup page with a link to troubleshoot connection errors.
+# The link goes to https://developer.mozilla.org/docs/Tools/Remote_Debugging/Debugging_over_USB
+about-debugging-setup-usb-troubleshoot = Προβλήματα σύνδεσης στη συσκευή USB; <a>Αντιμετώπιση προβλημάτων</a>
+
+# Network section of the Setup page
+about-debugging-setup-network =
+ .title = Τοποθεσία δικτύου
+
+# Text shown in the Network section of the setup page with a link to troubleshoot connection errors.
+# The link goes to https://developer.mozilla.org/en-US/docs/Tools/Remote_Debugging/Debugging_over_a_network
+about-debugging-setup-network-troubleshoot = Προβλήματα σύνδεσης μέσω τοποθεσίας δικτύου; <a>Αντιμετώπιση προβλημάτων</a>
+
+# Text of a button displayed after the network locations "Host" input.
+# Clicking on it will add the new network location to the list.
+about-debugging-network-locations-add-button = Προσθήκη
+
+# Text to display when there are no locations to show.
+about-debugging-network-locations-empty-text = Δεν έχουν προστεθεί τοποθεσίες δικτύου ακόμη.
+
+# Text of the label for the text input that allows users to add new network locations in
+# the Connect page. A host is a hostname and a port separated by a colon, as suggested by
+# the input's placeholder "localhost:6080".
+about-debugging-network-locations-host-input-label = Όνομα host
+
+# Text of a button displayed next to existing network locations in the Connect page.
+# Clicking on it removes the network location from the list.
+about-debugging-network-locations-remove-button = Αφαίρεση
+
+# Text used as error message if the format of the input value was invalid in the network locations form of the Setup page.
+# Variables:
+# $host-value (string) - The input value submitted by the user in the network locations form
+about-debugging-network-location-form-invalid = Άκυρο host “{ $host-value }”. Η αναμενόμενη μορφή είναι “hostname:portnumber”.
+
+# Text used as error message if the input value was already registered in the network locations form of the Setup page.
+# Variables:
+# $host-value (string) - The input value submitted by the user in the network locations form
+about-debugging-network-location-form-duplicate = Το host “{ $host-value }” έχει ήδη εγγραφεί
+
+# Runtime Page strings
+
+# Below are the titles for the various categories of debug targets that can be found
+# on "runtime" pages of about:debugging.
+# Title of the temporary extensions category (only available for "This Firefox" runtime).
+about-debugging-runtime-temporary-extensions =
+ .name = Προσωρινές επεκτάσεις
+# Title of the extensions category.
+about-debugging-runtime-extensions =
+ .name = Επεκτάσεις
+# Title of the tabs category.
+about-debugging-runtime-tabs =
+ .name = Καρτέλες
+# Title of the service workers category.
+about-debugging-runtime-service-workers =
+ .name = Service Workers
+# Title of the shared workers category.
+about-debugging-runtime-shared-workers =
+ .name = Shared Workers
+# Title of the other workers category.
+about-debugging-runtime-other-workers =
+ .name = Άλλα workers
+# Title of the processes category.
+about-debugging-runtime-processes =
+ .name = Διεργασίες
+
+# Label of the button opening the performance profiler panel in runtime pages for remote
+# runtimes.
+about-debugging-runtime-profile-button2 = Επιδόσεις προφίλ
+
+# This string is displayed in the runtime page if the current configuration of the
+# target runtime is incompatible with service workers. "Learn more" points to MDN.
+# https://developer.mozilla.org/en-US/docs/Tools/about%3Adebugging#Service_workers_not_compatible
+about-debugging-runtime-service-workers-not-compatible = Οι ρυθμίσεις του προγράμματος περιήγησής σας δεν είναι συμβατές με τα service workers. <a>Μάθετε περισσότερα</a>
+
+# This string is displayed in the runtime page if the remote browser version is too old.
+# "Troubleshooting" link points to https://developer.mozilla.org/docs/Tools/about:debugging#Troubleshooting
+# { $runtimeVersion } is the version of the remote browser (for instance "67.0a1")
+# { $minVersion } is the minimum version that is compatible with the current Firefox instance (same format)
+about-debugging-browser-version-too-old = Το συνδεδεμένο πρόγραμμα περιήγησης έχει παλιά έκδοση ({ $runtimeVersion }). Η ελάχιστη υποστηριζόμενη έκδοση είναι ({ $minVersion }). Πρόκειται για μη υποστηριζόμενη ρύθμιση και ενδέχεται να προκαλέσει αποτυχία του DevTools. Παρακαλούμε ενημερώστε το συνδεδεμένο πρόγραμμα περιήγησης. <a>Αντιμετώπιση προβλημάτων</a>
+
+# Dedicated message for a backward compatibility issue that occurs when connecting:
+# from Fx 70+ to the old Firefox for Android (aka Fennec) which uses Fx 68.
+about-debugging-browser-version-too-old-fennec = Αυτή η έκδοση του Firefox δεν μπορεί να χρησιμοποιηθεί για εντοπισμό σφαλμάτων στο Firefox για Android (68). Προτείνουμε να εγκαταστήσετε το Firefox για Android Nightly στο τηλέφωνό σας για δοκιμή. <a>Περισσότερες λεπτομέρειες</a>
+
+# This string is displayed in the runtime page if the remote browser version is too recent.
+# "Troubleshooting" link points to https://developer.mozilla.org/docs/Tools/about:debugging#Troubleshooting
+# { $runtimeID } is the build ID of the remote browser (for instance "20181231", format is yyyyMMdd)
+# { $localID } is the build ID of the current Firefox instance (same format)
+# { $runtimeVersion } is the version of the remote browser (for instance "67.0a1")
+# { $localVersion } is the version of your current browser (same format)
+about-debugging-browser-version-too-recent = Το συνδεδεμένο πρόγραμμα περιήγησης είναι πιο πρόσφατο ({ $runtimeVersion }, buildID { $runtimeID }) από το { -brand-shorter-name } ({ $localVersion }, buildID { $localID }) σας. Πρόκειται για μη υποστηριζόμενη ρύθμιση και ενδέχεται να προκαλέσει αποτυχία του DevTools. Παρακαλούμε ενημερώστε το Firefox. <a>Αντιμετώπιση προβλημάτων</a>
+
+# Displayed for runtime info in runtime pages.
+# { $name } is brand name such as "Firefox Nightly"
+# { $version } is version such as "64.0a1"
+about-debugging-runtime-name = { $name } ({ $version })
+
+# Text of a button displayed in Runtime pages for remote runtimes.
+# Clicking on the button will close the connection to the runtime.
+about-debugging-runtime-disconnect-button = Αποσύνδεση
+
+# Text of the connection prompt button displayed in Runtime pages, when the preference
+# "devtools.debugger.prompt-connection" is false on the target runtime.
+about-debugging-connection-prompt-enable-button = Ενεργοποίηση προτροπής σύνδεσης
+
+# Text of the connection prompt button displayed in Runtime pages, when the preference
+# "devtools.debugger.prompt-connection" is true on the target runtime.
+about-debugging-connection-prompt-disable-button = Απενεργοποίηση προτροπής σύνδεσης
+
+# Title of a modal dialog displayed on remote runtime pages after clicking on the Profile Runtime button.
+about-debugging-profiler-dialog-title2 = Πρόγραμμα δημιουργίας προφίλ
+
+# Clicking on the header of a debug target category will expand or collapse the debug
+# target items in the category. This text is used as ’title’ attribute of the header,
+# to describe this feature.
+about-debugging-collapse-expand-debug-targets = Σύμπτυξη/επέκταση
+
+# Debug Targets strings
+
+# Displayed in the categories of "runtime" pages that don't have any debug target to
+# show. Debug targets depend on the category (extensions, tabs, workers...).
+about-debugging-debug-target-list-empty = Τίποτα ακόμα.
+
+# Text of a button displayed next to debug targets of "runtime" pages. Clicking on this
+# button will open a DevTools toolbox that will allow inspecting the target.
+# A target can be an addon, a tab, a worker...
+about-debugging-debug-target-inspect-button = Επιθεώρηση
+
+# Text of a button displayed in the "This Firefox" page, in the Temporary Extension
+# section. Clicking on the button will open a file picker to load a temporary extension
+about-debugging-tmp-extension-install-button = Φόρτωση προσωρινού προσθέτου…
+
+# Text displayed when trying to install a temporary extension in the "This Firefox" page.
+about-debugging-tmp-extension-install-error = Προέκυψε σφάλμα κατά την εγκατάσταση προσωρινού προσθέτου.
+
+# Text of a button displayed for a temporary extension loaded in the "This Firefox" page.
+# Clicking on the button will reload the extension.
+about-debugging-tmp-extension-reload-button = Ανανέωση
+
+# Text of a button displayed for a temporary extension loaded in the "This Firefox" page.
+# Clicking on the button will uninstall the extension and remove it from the page.
+about-debugging-tmp-extension-remove-button = Αφαίρεση
+
+# Message displayed in the file picker that opens to select a temporary extension to load
+# (triggered by the button using "about-debugging-tmp-extension-install-button")
+# manifest.json .xpi and .zip should not be localized.
+# Note: this message is only displayed in Windows and Linux platforms.
+about-debugging-tmp-extension-install-message = Επιλέξτε αρχείο manifest.json ή συμπιεσμένο αρχείο .xpi/.zip
+
+# This string is displayed as a message about the add-on having a temporaryID.
+about-debugging-tmp-extension-temporary-id = Αυτό το WebExtension έχει προσωρινό ID. <a>Μάθετε περισσότερα</a>
+
+# Text displayed for extensions in "runtime" pages, before displaying a link the extension's
+# manifest URL.
+about-debugging-extension-manifest-url =
+ .label = URL αρχείου manifest
+
+# Text displayed for extensions in "runtime" pages, before displaying the extension's uuid.
+# UUIDs look like b293e463-481e-5148-a487-5aaf7a130429
+about-debugging-extension-uuid =
+ .label = Εσωτερικό UUID
+
+# Text displayed for extensions (temporary extensions only) in "runtime" pages, before
+# displaying the location of the temporary extension.
+about-debugging-extension-location =
+ .label = Τοποθεσία
+
+# Text displayed for extensions in "runtime" pages, before displaying the extension's ID.
+# For instance "geckoprofiler@mozilla.com" or "{ed26ddcb-5611-4512-a89a-51b8db81cfb2}".
+about-debugging-extension-id =
+ .label = ID επέκτασης
+
+# This string is displayed as a label of the button that pushes a test payload
+# to a service worker.
+# Note this relates to the "Push" API, which is normally not localized so it is
+# probably better to not localize it.
+about-debugging-worker-action-push2 = Push
+ .disabledTitle = Το push του service worker είναι ανενεργό αυτή τη στιγμή για το { -brand-shorter-name } πολλαπλών διεργασιών
+
+# This string is displayed as a label of the button that starts a service worker.
+about-debugging-worker-action-start2 = Έναρξη
+ .disabledTitle = Η έναρξη του service worker έχει απενεργοποιηθεί για την πολλαπλή διεργασία { -brand-shorter-name }
+
+# This string is displayed as a label of the button that unregisters a service worker.
+about-debugging-worker-action-unregister = Κατάργηση εγγραφής
+
+# Displayed for service workers in runtime pages that listen to Fetch events.
+about-debugging-worker-fetch-listening =
+ .label = Λήψη
+ .value = Ακρόαση για γεγονότα λήψης
+
+# Displayed for service workers in runtime pages that do not listen to Fetch events.
+about-debugging-worker-fetch-not-listening =
+ .label = Λήψη
+ .value = Χωρίς ακρόαση για γεγονότα λήψης
+
+# Displayed for service workers in runtime pages that are currently running (service
+# worker instance is active).
+about-debugging-worker-status-running = Εκτελείται
+
+# Displayed for service workers in runtime pages that are registered but stopped.
+about-debugging-worker-status-stopped = Διακόπηκε
+
+# Displayed for service workers in runtime pages that are registering.
+about-debugging-worker-status-registering = Εγγραφή
+
+# Displayed for service workers in runtime pages, to label the scope of a worker
+about-debugging-worker-scope =
+ .label = Πεδίο
+
+# Displayed for service workers in runtime pages, to label the push service endpoint (url)
+# of a worker
+about-debugging-worker-push-service =
+ .label = Υπηρεσία Push
+
+# Displayed as title of the inspect button when service worker debugging is disabled.
+about-debugging-worker-inspect-action-disabled =
+ .title = Η επιθεώρηση του service worker είναι απενεργοποιημένη αυτή τη στιγμή για το { -brand-shorter-name } πολλαπλών διεργασιών
+
+# Displayed as title of the inspect button for zombie tabs (e.g. tabs loaded via a session restore).
+about-debugging-zombie-tab-inspect-action-disabled =
+ .title = Η καρτέλα δεν έχει φορτωθεί πλήρως και δεν μπορεί να επιθεωρηθεί
+
+# Displayed as name for the Main Process debug target in the Processes category. Only for
+# remote runtimes, if `devtools.aboutdebugging.process-debugging` is true.
+about-debugging-main-process-name = Κύρια διεργασία
+
+# Displayed as description for the Main Process debug target in the Processes category.
+# Only for remote browsers, if `devtools.aboutdebugging.process-debugging` is true.
+about-debugging-main-process-description2 = Κύρια διαδικασία για το πρόγραμμα περιήγησης προορισμού
+
+# Displayed instead of the Main Process debug target when the preference
+# `devtools.browsertoolbox.fission` is true.
+about-debugging-multiprocess-toolbox-name = Εργαλειοθήκη πολλαπλών διεργασιών
+
+# Description for the Multiprocess Toolbox target.
+about-debugging-multiprocess-toolbox-description = Κύρια διεργασία και διεργασίες περιεχομένου για το πρόγραμμα περιήγησης προορισμού
+
+# Alt text used for the close icon of message component (warnings, errors and notifications).
+about-debugging-message-close-icon =
+ .alt = Κλείσιμο μηνύματος
+
+# Label text used for the error details of message component.
+about-debugging-message-details-label-error = Λεπτομέρειες σφάλματος
+
+# Label text used for the warning details of message component.
+about-debugging-message-details-label-warning = Λεπτομέρειες προειδοποίησης
+
+# Label text used for default state of details of message component.
+about-debugging-message-details-label = Λεπτομέρειες
diff --git a/l10n-el/devtools/client/accessibility.ftl b/l10n-el/devtools/client/accessibility.ftl
new file mode 100644
index 0000000000..a82f95d76f
--- /dev/null
+++ b/l10n-el/devtools/client/accessibility.ftl
@@ -0,0 +1,79 @@
+# 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/.
+
+
+### These strings are used inside the Accessibility panel.
+
+accessibility-learn-more = Μάθετε περισσότερα
+
+accessibility-text-label-header = Ετικέτες κειμένου και ονόματα
+
+accessibility-keyboard-header = Πληκτρολόγιο
+
+## Text entries that are used as text alternative for icons that depict accessibility isses.
+
+accessibility-warning =
+ .alt = Προειδοποίηση
+
+accessibility-fail =
+ .alt = Σφάλμα
+
+accessibility-best-practices =
+ .alt = Βέλτιστες πρακτικές
+
+## Text entries for a paragraph used in the accessibility panel sidebar's checks section
+## that describe that currently selected accessible object has an accessibility issue
+## with its text label or accessible name.
+
+accessibility-text-label-issue-area = Χρησιμοποιήστε την ιδιότητα <code>alt</code> για να επισημάνετε τα στοιχεία <div>area</div> που έχουν την ιδιότητα <span>href</span>. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-dialog = Οι διάλογοι πρέπει να έχουν επισημανθεί. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-document-title = Τα έγγραφα πρέπει να έχουν ένα <code>title</code>. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-embed = Το ενσωματωμένο περιεχόμενο πρέπει να είναι επισημασμένο. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-figure = Οι αριθμοί με προαιρετικές λεζάντες πρέπει να φέρουν ετικέτα. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-fieldset = Τα στοιχεία <code>fieldset</code> πρέπει να φέρουν ετικέτα. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-fieldset-legend2 = Χρησιμοποιήστε ένα στοιχείο <code>legend</code> για να επισημάνετε ένα <span>fieldset</span>. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-form = Τα στοιχεία φόρμας πρέπει να φέρουν ετικέτα. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-form-visible = Τα στοιχεία φόρμας πρέπει να έχουν μια ορατή ετικέτα κειμένου. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-frame = Τα στοιχεία <code>frame</code> πρέπει να φέρουν ετικέτα. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-glyph = Χρησιμοποιήστε την ιδιότητα <code>alt</code> για επισήμανση στοιχείων<span>mglyph</span>. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-heading = Οι επικεφαλίδες πρέπει να φέρουν ετικέτα. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-heading-content = Οι επικεφαλίδες πρέπει να έχουν ορατό περιεχόμενο κειμένου. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-iframe = Χρησιμοποιήστε την ιδιότητα <code>title</code> για περιγραφή του περιεχομένου <span>iframe</span>. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-image = Το περιεχόμενο με εικόνες πρέπει να φέρει ετικέτα. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-interactive = Τα διαδραστικά στοιχεία πρέπει να φέρουν ετικέτα. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-optgroup-label2 = Χρησιμοποιήστε μια ιδιότητα <code>label</code> για επισήμανση ενός <span>optgroup</span>. <a>Μάθετε περισσότερα</a>
+
+accessibility-text-label-issue-toolbar = Οι γραμμές εργαλείων πρέπει να φέρουν ετικέτα όταν υπάρχουν περισσότερες από μία γραμμές εργαλείων. <a>Μάθετε περισσότερα</a>
+
+## Text entries for a paragraph used in the accessibility panel sidebar's checks section
+## that describe that currently selected accessible object has a keyboard accessibility
+## issue.
+
+accessibility-keyboard-issue-semantics = Τα στοιχεία με δυνατότητα εστίασης πρέπει να έχουν διαδραστική σημασιολογία. <a>Μάθετε περισσότερα</a>
+
+accessibility-keyboard-issue-tabindex = Αποφύγετε τη χρήση της ιδιότητας <code>tabindex</code> μεγαλύτερης από μηδέν. <a>Μάθετε περισσότερα</a>
+
+accessibility-keyboard-issue-action = Τα διαδραστικά στοιχεία πρέπει να μπορούν να ενεργοποιηθούν με πληκτρολόγιο. <a>Μάθετε περισσότερα</a>
+
+accessibility-keyboard-issue-focusable = Τα διαδραστικά στοιχεία πρέπει να έχουν δυνατότητα εστίασης. <a>Μάθετε περισσότερα</a>
+
+accessibility-keyboard-issue-focus-visible = Το στοιχείο με δυνατότητα εστίασης ενδέχεται να μην έχει το στυλ εστίασης. <a>Μάθετε περισσότερα</a>
+
+accessibility-keyboard-issue-mouse-only = Τα στοιχεία με δυνατότητα κλικ πρέπει να έχουν δυνατότητα εστίασης και διαδραστική σημασιολογία. <a>Μάθετε περισσότερα</a>
diff --git a/l10n-el/devtools/client/accessibility.properties b/l10n-el/devtools/client/accessibility.properties
new file mode 100644
index 0000000000..f24052c05a
--- /dev/null
+++ b/l10n-el/devtools/client/accessibility.properties
@@ -0,0 +1,310 @@
+# 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 These strings are used inside the Accessibility panel
+# which is available from the Web Developer sub-menu -> 'Accessibility'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (accessibility.role): A title text used for Accessibility
+# tree header column that represents accessible element role.
+accessibility.role=Ρόλος
+
+# LOCALIZATION NOTE (accessibility.name): A title text used for Accessibility
+# tree header column that represents accessible element name.
+accessibility.name=Όνομα
+
+# LOCALIZATION NOTE (accessibility.logo): A title text used for Accessibility
+# logo used on the accessibility panel landing page.
+accessibility.logo=Λογότυπο Προσβασιμότητας
+
+# LOCALIZATION NOTE (accessibility.properties): A title text used for header
+# for Accessibility details sidebar.
+accessibility.properties=Ιδιότητες
+
+# LOCALIZATION NOTE (accessibility.treeName): A title text used for
+# Accessibility tree (that represents accessible element name) container.
+accessibility.treeName=Δέντρο προσβασιμότητας
+
+# LOCALIZATION NOTE (accessibility.accessible.notAvailable): A title text
+# displayed when accessible sidebar panel does not have an accessible object to
+# display.
+accessibility.accessible.notAvailable=Μη Διαθέσιμες Πληροφορίες Προσβασιμότητας
+
+# LOCALIZATION NOTE (accessibility.enable): A title text for Enable
+# accessibility button used to enable accessibility service.
+accessibility.enable=Ενεργοποίηση των Χαρακτηριστικών Προσβασιμότητας
+
+# LOCALIZATION NOTE (accessibility.enabling): A title text for Enable
+# accessibility button used when accessibility service is being enabled.
+accessibility.enabling=Ενεργοποίηση των χαρακτηριστικών προσβασιμότητας…
+
+# LOCALIZATION NOTE (accessibility.disable): A title text for Disable
+# accessibility button used to disable accessibility service.
+accessibility.disable=Απενεργοποίηση των Χαρακτηριστικών Προσβασιμότητας
+
+# LOCALIZATION NOTE (accessibility.disabling): A title text for Disable
+# accessibility button used when accessibility service is being
+# disabled.
+accessibility.disabling=Απενεργοποίηση των χαρακτηριστικών προσβασιμότητας…
+
+# LOCALIZATION NOTE (accessibility.pick): A title text for Picker button
+# button used to pick accessible objects from the page.
+accessibility.pick=Επιλέξτε προσπελάσιμο αντικείμενο από τη σελίδα
+
+# LOCALIZATION NOTE (accessibility.disable.disabledTitle): A title text used for
+# a tooltip for Disable accessibility button when accessibility service can not
+# be disabled. It is the case when a user is using a 3rd party accessibility
+# tool such as screen reader.
+accessibility.disable.disabledTitle=Η υπηρεσία προσβασιμότητας δεν μπορεί να απενεργοποιηθεί. Χρησιμοποιείται εκτός από των εργαλείων προγραμματιστή.
+
+# LOCALIZATION NOTE (accessibility.disable.enabledTitle): A title text used for
+# a tooltip for Disable accessibility button when accessibility service can be
+# disabled.
+accessibility.disable.enabledTitle=Η υπηρεσία προσβασιμότητας θα απενεργοποιηθεί για όλες τις καρτέλες και τα παράθυρα.
+
+# LOCALIZATION NOTE (accessibility.enable.disabledTitle): A title text used for
+# a tooltip for Enabled accessibility button when accessibility service can not
+# be enabled.
+accessibility.enable.disabledTitle=Η υπηρεσία προσβασιμότητας δεν μπορεί να ενεργοποιηθεί. Είναι απενεργοποιημένη μέσω των προτιμήσεων απορρήτου των υπηρεσιών προσβασιμότητας.
+
+# LOCALIZATION NOTE (accessibility.enable.enabledTitle): A title text used for
+# a tooltip for Enabled accessibility button when accessibility service can be
+# enabled.
+accessibility.enable.enabledTitle=Η υπηρεσία προσβασιμότητας θα ενεργοποιηθεί για όλες τις καρτέλες και τα παράθυρα.
+
+# LOCALIZATION NOTE (accessibility.learnMore): A text that is used as is or as textual
+# description in places that link to accessibility inspector documentation.
+accessibility.learnMore=Μάθετε περισσότερα
+
+# LOCALIZATION NOTE (accessibility.description.general.p1): A title text for the first
+# paragraph, used when accessibility service description is provided before accessibility
+# inspector is enabled. %S in the content will be replaced by a link at run time
+# with the accessibility.learnMore string.
+accessibility.description.general.p1=Η Επιθεώρηση προσβασιμότητας σάς επιτρέπει να εξετάσετε το δένδρο προσβασιμότητας της τρέχουσας σελίδας, που χρησιμοποιείται από προγράμματα ανάγνωσης οθόνης και άλλες τεχνολογίες υποβοήθησης. %S
+
+# LOCALIZATION NOTE (accessibility.description.general.p2): A title text for the second
+# paragraph, used when accessibility service description is provided before accessibility
+# inspector is enabled.
+accessibility.description.general.p2=Τα χαρακτηριστικά προσβασιμότητας ενδέχεται να επηρεάσουν τις επιδόσεις των άλλων εργαλείων προγραμματιστή και θα πρέπει να τα απενεργοποιήσετε όταν δεν χρησιμοποιούνται.
+
+# LOCALIZATION NOTE (accessibility.tree.menu.printToJSON): A title text used when a
+# context menu item for printing an accessible tree to JSON is rendered after triggering a
+# context menu for an accessible tree row.
+accessibility.tree.menu.printToJSON=Εκτύπωση σε JSON
+
+# LOCALIZATION NOTE (accessibility.checks): A title text used for header for checks
+# section in Accessibility details sidebar.
+accessibility.checks=Έλεγχοι
+
+# LOCALIZATION NOTE (accessibility.checks.empty2): A title text used for indicating that
+# accessibility checks for a node yielded no results and another node should be
+# selected.
+accessibility.checks.empty2=Κανένας έλεγχος για αυτό τον κόμβο.
+
+# LOCALIZATION NOTE (accessibility.contrast.header): A title text used for header for
+# checks related to color and contrast.
+accessibility.contrast.header=Χρώμα και αντίθεση
+
+# LOCALIZATION NOTE (accessibility.contrast.error): A title text for the color
+# contrast ratio, used when the tool is unable to calculate the contrast ratio value.
+accessibility.contrast.error=Αδυναμία υπολογισμού
+
+# LOCALIZATION NOTE (accessibility.contrast.large.text): A title text for the color
+# contrast ratio label indicating that the color contrast criteria used is if for large
+# text. This is lower case because it's used as a label for a tree item in accessibility
+# tree.
+accessibility.contrast.large.text=μεγάλο κείμενο
+
+# LOCALIZATION NOTE (accessibility.contrast.large.title): A title text for the tooltip
+# used for the large text label (see accessibility.contrast.large.text).
+accessibility.contrast.large.title=Το κείμενο είναι 14 σημείων και έντονο ή μεγαλύτερο, ή 18 σημείων ή μεγαλύτερο.
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.AA): A title text for the paragraph
+# describing that the given colour contrast satisfies AA standard from Web Content
+# Accessibility Guidelines. %S in the content will be replaced by a link at run time
+# with the accessibility.learnMore string.
+accessibility.contrast.annotation.AA=Πληροί τα πρότυπα WCAG AA για προσβάσιμο κείμενο. %S
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.AAA): A title text for the
+# paragraph describing that the given colour contrast satisfies AAA standard from Web
+# Content Accessibility Guidelines. %S in the content will be replaced by a link at run
+# time with the accessibility.learnMore string.
+accessibility.contrast.annotation.AAA=Πληροί τα πρότυπα WCAG AAA για προσβάσιμο κείμενο. %S
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.FAIL): A title text for the
+# paragraph describing that the given colour contrast fails to meet the minimum level from
+# Web Content Accessibility Guidelines. %S in the content will be replaced by a link at
+# run time with the accessibility.learnMore string.
+accessibility.contrast.annotation.FAIL=Δεν πληροί τα πρότυπα WCAG για προσβάσιμο κείμενο. %S
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.transparent.error): A title text for the
+# paragraph suggesting a fix for error in color contrast calculation for text nodes with zero alpha.
+accessibility.contrast.annotation.transparent.error=Επιλέξτε ένα χρώμα που δεν είναι διαφανές.
+
+# LOCALIZATION NOTE (accessibility.badges): A title text for the group of badges
+# that are rendered for each accessible row within the accessibility tree when
+# one or more accessibility checks fail.
+accessibility.badges=Έλεγχοι προσβασιμότητας
+
+# LOCALIZATION NOTE (accessibility.filter.none): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# resets all filtering in tree, and for the simulation menu item that resets
+# applied color matrices to the default matrix.
+accessibility.filter.none=Κανένα
+
+# LOCALIZATION NOTE (accessibility.filter.all2): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on all accessibility failures within it.
+accessibility.filter.all2=Όλα τα ζητήματα
+
+# LOCALIZATION NOTE (accessibility.filter.contrast): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on contrast accessibility failures within it.
+accessibility.filter.contrast=Αντίθεση
+
+# LOCALIZATION NOTE (accessibility.filter.textLabel): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on text label and name accessibility failures within it.
+accessibility.filter.textLabel=Ετικέτες κειμένου
+
+# LOCALIZATION NOTE (accessibility.filter.keyboard): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on keyboard accessibility failures within it.
+accessibility.filter.keyboard=Πληκτρολόγιο
+
+# LOCALIZATION NOTE (accessibility.badge.contrast): A title text for the badge
+# that is rendered within the accessible row in the accessibility tree for a
+# given accessible object that does not satisfy the WCAG guideline for colour
+# contrast.
+accessibility.badge.contrast=αντίθεση
+
+# LOCALIZATION NOTE (accessibility.badge.contrast.warning): A label for the
+# badge and attached warning icon that is rendered within the accessible row in
+# the accessibility tree for a given accessible object that does not satisfy the
+# WCAG guideline for colour contrast.
+accessibility.badge.contrast.warning=προειδοποίηση αντίθεσης
+
+# LOCALIZATION NOTE (accessibility.badge.keyboard): A title text for the
+# badge that is rendered within the accessible row in the accessibility tree for
+# a given accessible object that does not satisfy the WCAG guideline for
+# keyboard accessibility.
+accessibility.badge.keyboard=πληκτρολόγιο
+
+# LOCALIZATION NOTE (accessibility.badge.textLabel): A title text for the
+# badge that is rendered within the accessible row in the accessibility tree for
+# a given accessible object that does not satisfy the WCAG guideline for text
+# alternative.
+accessibility.badge.textLabel=ετικέτα κειμένου
+
+# LOCALIZATION NOTE (accessibility.badge.contrast.tooltip): A title text for the
+# badge tooltip that is rendered on mouse hover over the badge in the accessible
+# row in the accessibility tree for a given accessible object that does not
+# satisfy the WCAG guideline for colour contrast.
+accessibility.badge.contrast.tooltip=Δεν πληροί τα πρότυπα WCAG για προσβάσιμο κείμενο.
+
+# LOCALIZATION NOTE (accessibility.badge.keyboard.tooltip): A title text
+# for the badge tooltip that is rendered on mouse hover over the badge in the
+# accessible row in the accessibility tree for a given accessible object that
+# does not satisfy the WCAG guideline for keyboard accessibility.
+accessibility.badge.keyboard.tooltip=Δεν πληροί τα πρότυπα WCAG για προσβασιμότητα πληκτρολογίου.
+
+# LOCALIZATION NOTE (accessibility.badge.textLabel.tooltip): A title text
+# for the badge tooltip that is rendered on mouse hover over the badge in the
+# accessible row in the accessibility tree for a given accessible object that
+# does not satisfy the WCAG guideline for text alternative.
+accessibility.badge.textLabel.tooltip=Δεν πληροί τα πρότυπα WCAG για εναλλακτικό στοιχείο κειμένου.
+
+# LOCALIZATION NOTE (accessibility.tree.filters): A title text for the toolbar
+# within the main accessibility panel that contains a list of filters to be for
+# accessibility audit.
+accessibility.tree.filters=Έλεγχος για ζητήματα:
+
+# LOCALIZATION NOTE (accessibility.tree.filters.prefs): A title text for the
+# preferences button tooltip that contains preferences for accessibility audit.
+accessibility.tree.filters.prefs=Ρύθμιση προτιμήσεων
+
+# LOCALIZATION NOTE (accessibility.progress.initializing): A title text for the
+# accessibility panel overlay shown when accessibility audit is starting up.
+accessibility.progress.initializing=Προετοιμασία…
+
+# LOCALIZATION NOTE (accessibility.progress.initializing): A title text for the
+# accessibility panel overlay shown when accessibility audit is running showing
+# the number of nodes being audited. Semi-colon list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+accessibility.progress.progressbar=Έλεγχος #1 κόμβου;Έλεγχος #1 κόμβων
+
+# LOCALIZATION NOTE (accessibility.progress.finishing): A title text for the
+# accessibility panel overlay shown when accessibility audit is finishing up.
+accessibility.progress.finishing=Ολοκλήρωση…
+
+# LOCALIZATION NOTE (accessibility.beta): A title text for the features in the
+# accessibility panel that are currently in beta.
+accessibility.beta=beta
+
+# LOCALIZATION NOTE (accessibility.pref.scroll.into.view.title): A title
+# text for the tooltip for the checkbox pref in the accessibility panel that
+# sets node auto scroll.
+accessibility.pref.scroll.into.view.title=Αυτόματη κύλιση του επιλεγμένου κόμβου στην προβολή
+
+# LOCALIZATION NOTE (accessibility.pref.scroll.into.view.label): A title
+# text for the checkbox pref in the accessibility panel that sets node auto
+# scroll.
+accessibility.pref.scroll.into.view.label=Κύλιση στην προβολή
+
+# LOCALIZATION NOTE (accessibility.documentation.label): This is the label for
+# the Documentation menu item.
+accessibility.documentation.label=Τεκμηρίωση…
+
+# LOCALIZATION NOTE (accessibility.simulation): A title text for the toolbar
+# within the main accessibility panel that contains a list of simulations for
+# vision deficiencies.
+accessibility.simulation=Προσομοίωση:
+
+# LOCALIZATION NOTE (accessibility.simulation.deuteranomaly): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the deuteranomaly simulation option.
+accessibility.simulation.deuteranomaly=Δευτερανωμαλία (χαμηλό πράσινο)
+
+# LOCALIZATION NOTE (accessibility.simulation.protanomaly): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the protanomaly simulation option.
+accessibility.simulation.protanomaly=Πρωτανωμαλία (χαμηλό κόκκινο)
+
+# LOCALIZATION NOTE (accessibility.simulation.protanopia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the protanopia simulation option.
+accessibility.simulation.protanopia=Πρωτανοπία (χωρίς κόκκινο)
+
+# LOCALIZATION NOTE (accessibility.simulation.deuteranopia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the deuteranopia simulation option.
+accessibility.simulation.deuteranopia=Δευτερανοπία (χωρίς πράσινο)
+
+# LOCALIZATION NOTE (accessibility.simulation.tritanopia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the tritanopia simulation option.
+accessibility.simulation.tritanopia=Τριτανοπία (χωρίς μπλε)
+
+# LOCALIZATION NOTE (accessibility.simulation.tritanomaly): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the tritanomaly simulation option.
+accessibility.simulation.tritanomaly=Τριτανωμαλία (χαμηλό μπλε)
+
+# LOCALIZATION NOTE (accessibility.simulation.contrastLoss): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the contrast loss simulation option.
+# It is also shown in the simulation menu button in the accessibility panel and represent the
+# contrast loss simulation option currently selected.
+accessibility.simulation.contrastLoss=Απώλεια αντίθεσης
+
+# LOCALIZATION NOTE (accessibility.simulation.achromatopsia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the achromatopsia simulation option.
+accessibility.simulation.achromatopsia=Αχρωματοψία (χωρίς χρώμα)
+
+# LOCALIZATION NOTE (accessibility.toolbar.displayTabbingOrder.label): A title text for a checkbox label
+# in the accessibility panel toolbar that turns on/off the overlay of focusable elements in their
+# tabbing order.
+accessibility.toolbar.displayTabbingOrder.label=Εμφάνιση σειράς καρτελών
+
+# LOCALIZATION NOTE (accessibility.toolbar.displayTabbingOrder.tooltip): A title text for a checkbox
+# tooltip in the accessibility panel toolbar that turns on/off the overlay of focusable elements in
+# their tabbing order.
+accessibility.toolbar.displayTabbingOrder.tooltip=Εμφάνιση της σειράς καρτελών και του ευρετηρίου καρτελών των στοιχείων.
diff --git a/l10n-el/devtools/client/animationinspector.properties b/l10n-el/devtools/client/animationinspector.properties
new file mode 100644
index 0000000000..58ceb3afbc
--- /dev/null
+++ b/l10n-el/devtools/client/animationinspector.properties
@@ -0,0 +1,183 @@
+# 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 These strings are used inside the Animation inspector
+# which is available as a sidebar panel in the Inspector.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (panel.noAnimation):
+# This is the label shown in the panel when there are no displayable animations.
+# (e.g. In case of user selected a non-element node or a node that is not animated).
+panel.noAnimation=Δεν βρέθηκαν εφέ κίνησης για το τρέχον στοιχείο.\nΕπιλέξτε άλλο στοιχείο από τη σελίδα.
+
+# LOCALIZATION NOTE (player.animationDurationLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation duration.
+player.animationDurationLabel=Διάρκεια:
+
+# LOCALIZATION NOTE (player.infiniteDurationText):
+# This string is displayed in a tooltip on animation player widget, in case the
+# duration of the animation is infinite.
+player.infiniteDurationText=∞
+
+# LOCALIZATION NOTE (player.animationDelayLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation delay.
+player.animationDelayLabel=Καθυστέρηση:
+
+# LOCALIZATION NOTE (player.animationEndDelayLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation endDelay.
+player.animationEndDelayLabel=Καθυστέρηση τερματισμού:
+
+# LOCALIZATION NOTE (player.animationRateLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation playback rate.
+player.animationRateLabel=Ταχύτητα αναπαραγωγής:
+
+# LOCALIZATION NOTE (player.animationIterationCountLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the number of times the animation is set to repeat.
+player.animationIterationCountLabel=Επαναλήψεις:
+
+# LOCALIZATION NOTE (player.infiniteIterationCount):
+# In case the animation repeats infinitely, this string is displayed next to the
+# player.animationIterationCountLabel string, instead of a number.
+player.infiniteIterationCount=&#8734;
+
+# LOCALIZATION NOTE (player.infiniteIterationCountText):
+# See player.infiniteIterationCount for a description of what this is.
+# Unlike player.infiniteIterationCount, this string isn't used in HTML, but in
+# a tooltip.
+player.infiniteIterationCountText=∞
+
+# LOCALIZATION NOTE (player.animationIterationStartLabel2):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the animation
+# iterationStart value.
+# %1$S will be replaced by the original iteration start value
+# %2$S will be replaced by the actual time of iteration start without time unit
+# e.g.
+# If iterationStart of animation is 0.5 and duration is 1 sec, the string will be
+# "Iteration start: 0.5 (0.5s)"
+player.animationIterationStartLabel2=Έναρξη επανάληψης: %1$S (%2$S)
+
+# LOCALIZATION NOTE (player.animationOverallEasingLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the easing
+# that applies to a whole iteration of an animation as opposed to the
+# easing that applies between animation keyframes.
+player.animationOverallEasingLabel=Συνολική χαλάρωση:
+
+# LOCALIZATION NOTE (player.animationTimingFunctionLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the
+# animation-timing-function for CSS Animations.
+player.animationTimingFunctionLabel=Λειτουργία συγχρονισμού εφέ κίνησης:
+
+# LOCALIZATION NOTE (player.animationFillLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the animation
+# fill mode value.
+player.animationFillLabel=Συμπλήρωση:
+
+# LOCALIZATION NOTE (player.animationDirectionLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the animation
+# direction value.
+player.animationDirectionLabel=Κατεύθυνση:
+
+# LOCALIZATION NOTE (player.timeLabel):
+# This string is displayed in each animation player widget, to indicate either
+# how long (in seconds) the animation lasts, or what is the animation's current
+# time (in seconds too);
+player.timeLabel=%S s
+
+# LOCALIZATION NOTE (player.infiniteDurationText):
+# This string is displayed in animation player widget, in case the duration of the
+# animation is infinite.
+player.infiniteTimeLabel=∞
+
+# LOCALIZATION NOTE (player.playbackRateLabel):
+# This string is displayed in each animation player widget, as the label of
+# drop-down list items that can be used to change the rate at which the
+# animation runs (1× being the default, 2× being twice as fast).
+player.playbackRateLabel=%S ×
+
+# LOCALIZATION NOTE (player.runningOnCompositorTooltip):
+# This string is displayed as a tooltip for the icon that indicates that the
+# animation is running on the compositor thread.
+player.runningOnCompositorTooltip=Αυτή η κίνηση εκτελείται στο νήμα του συνθέτη
+
+# LOCALIZATION NOTE (player.allPropertiesOnCompositorTooltip):
+# This string is displayed as a tooltip for the icon that indicates that
+# all of animation is running on the compositor thread.
+player.allPropertiesOnCompositorTooltip=Όλες οι ιδιότητες της κίνησης είναι βελτιστοποιημένες
+
+# LOCALIZATION NOTE (player.somePropertiesOnCompositorTooltip):
+# This string is displayed as a tooltip for the icon that indicates that
+# all of animation is not running on the compositor thread.
+player.somePropertiesOnCompositorTooltip=Μερικές ιδιότητες της κίνησης είναι βελτιστοποιημένες
+
+# LOCALIZATION NOTE (timeline.pausedButtonTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# pause/resume button that can be used to pause or resume the animations
+timeline.pausedButtonTooltip=Συνέχιση των κινήσεων
+
+# LOCALIZATION NOTE (timeline.resumedButtonTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# pause/resume button that can be used to pause or resume the animations
+timeline.resumedButtonTooltip=Παύση των κινήσεων
+
+# LOCALIZATION NOTE (timeline.rewindButtonTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# rewind button that can be used to rewind the animations
+timeline.rewindButtonTooltip=Επαναφορά των κινήσεων
+
+# LOCALIZATION NOTE (timeline.timeGraduationLabel):
+# This string is displayed at the top of the animation panel, next to each time
+# graduation, to indicate what duration (in milliseconds) this graduation
+# corresponds to.
+timeline.timeGraduationLabel=%S ms
+
+# LOCALIZATION NOTE (timeline.cssanimation.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of a CSS Animation in the timeline UI.
+# %S will be replaced by the name of the animation at run-time.
+timeline.cssanimation.nameLabel=%S - Κίνηση CSS
+
+# LOCALIZATION NOTE (timeline.csstransition.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of a CSS Transition in the timeline UI.
+# %S will be replaced by the name of the transition at run-time.
+timeline.csstransition.nameLabel=%S - Μετάβαση CSS
+
+# LOCALIZATION NOTE (timeline.scriptanimation.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of a script-generated animation in the timeline UI.
+# %S will be replaced by the name of the animation at run-time.
+timeline.scriptanimation.nameLabel=%S - Σενάριο κίνησης
+
+# LOCALIZATION NOTE (timeline.scriptanimation.unnamedLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over an unnamed script-generated animation in the timeline UI.
+timeline.scriptanimation.unnamedLabel=Σενάριο κίνησης
+
+# LOCALIZATION NOTE (timeline.unknown.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of an unknown animation type in the timeline UI.
+# This can happen if devtools couldn't figure out the type of the animation.
+# %S will be replaced by the name of the transition at run-time.
+timeline.unknown.nameLabel=%S
+
+# LOCALIZATION NOTE (detail.propertiesHeader.percentage):
+# This string is displayed on header label in .animated-properties-header.
+# %S represents the value in percentage with two decimal points, localized.
+# there are two "%" after %S to escape and display "%"
+detail.propertiesHeader.percentage=%S%%
+
diff --git a/l10n-el/devtools/client/application.ftl b/l10n-el/devtools/client/application.ftl
new file mode 100644
index 0000000000..aa1b46210b
--- /dev/null
+++ b/l10n-el/devtools/client/application.ftl
@@ -0,0 +1,144 @@
+# 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/.
+
+
+### These strings are used inside the Application panel which is available
+### by setting the preference `devtools-application-enabled` to true.
+
+
+### The correct localization of this file might be to keep it in English, or another
+### language commonly spoken among web developers. You want to make that choice consistent
+### across the developer tools. A good criteria is the language in which you'd find the
+### best documentation on web development on the web.
+
+# Header for the list of Service Workers displayed in the application panel for the current page.
+serviceworker-list-header = Service Workers
+# Text displayed next to the list of Service Workers to encourage users to check out
+# about:debugging to see all registered Service Workers.
+serviceworker-list-aboutdebugging = Άνοιγμα του <a>about:debugging</a> για Service Workers από άλλους τομείς
+# Text for the button to unregister a Service Worker. Displayed for active Service Workers.
+serviceworker-worker-unregister = Κατάργηση εγγραφής
+# Text for the debug link displayed for an already started Service Worker. Clicking on the
+# link opens a new devtools toolbox for this service worker. The title attribute is only
+# displayed when the link is disabled.
+serviceworker-worker-debug = Εντοπισμός σφαλμάτων
+ .title = Ο εντοπισμός σφαλμάτων μπορεί να γίνει μόνο για τα εκτελούμενα service workers
+# Text for the debug link displayed for an already started Service Worker, when we
+# are in multi e10s mode, which effectively disables this link.
+serviceworker-worker-debug-forbidden = Εντοπισμός σφαλμάτων
+ .title = Ο εντοπισμός σφαλμάτων των service workers μπορεί να γίνει μόνο αν είναι ανενεργό το multi e10s
+# Text for the start link displayed for a registered but not running Service Worker.
+# Clicking on the link will attempt to start the service worker.
+serviceworker-worker-start2 = Έναρξη
+ .title = Η έναρξη των service workers μπορεί να γίνει μόνο αν είναι ανενεργό το multi e10s
+# Alt text for the image icon displayed inside a debug link for a service worker.
+serviceworker-worker-inspect-icon =
+ .alt = Επιθεώρηση
+# Text for the start link displayed for a registered but not running Service Worker.
+# Clicking on the link will attempt to start the service worker.
+serviceworker-worker-start3 = Έναρξη
+# Text displayed for the updated time of the service worker. The <time> element will
+# display the last update time of the service worker script.
+serviceworker-worker-updated = Ενημέρωση: <time>{ DATETIME($date, month: "long", year: "numeric", day: "numeric", hour: "numeric", minute: "numeric", second: "numeric") }</time>
+# Text displayed next to the URL for the source of the service worker (e-g. "Source my/path/to/worker-js")
+serviceworker-worker-source = Πηγή
+# Text displayed next to the current status of the service worker.
+serviceworker-worker-status = Κατάσταση
+
+## Service Worker status strings: all serviceworker-worker-status-* strings are also
+## defined in aboutdebugging.properties and should be synchronized with them.
+
+# Service Worker status. A running service worker is registered, currently executed, can
+# be debugged and stopped.
+serviceworker-worker-status-running = Σε λειτουργία
+# Service Worker status. A stopped service worker is registered but not currently active.
+serviceworker-worker-status-stopped = Σε διακοπή
+# Text displayed when no service workers are visible for the current page. Clicking on the
+# link will open https://developer-mozilla-org/docs/Web/API/Service_Worker_API/Using_Service_Workers
+serviceworker-empty-intro = Θα πρέπει να καταχωρήσετε ένα Service Worker για να επιθεωρηθεί εδώ. <a>Μάθετε περισσότερα</a>
+# Text displayed when there are no Service Workers to display for the current page,
+# introducing hints to debug Service Worker issues.
+serviceworker-empty-suggestions = Εάν η τρέχουσα σελίδα πρέπει να έχει ένα service worker, ορίστε μερικά πράγματα που μπορείτε να δοκιμάσετε
+# Suggestion to check for errors in the Console to investigate why a service worker is not
+# registered. Clicking on the link opens the webconsole.
+serviceworker-empty-suggestions-console = Αναζήτηση σφαλμάτων στην κονσόλα. <a>Άνοιγμα κονσόλας</a>
+# Suggestion to use the debugger to investigate why a service worker is not registered.
+# Clicking on the link will switch from the Application panel to the debugger.
+serviceworker-empty-suggestions-debugger = Διερευνήστε την καταχώρηση Service Worker προς αναζήτηση εξαιρέσεων. <a>Άνοιγμα αποσφαλμάτωσης</a>
+# Suggestion to go to about:debugging in order to see Service Workers for all domains.
+# Clicking on the link will open about:debugging in a new tab.
+serviceworker-empty-suggestions-aboutdebugging = Επιθεωρήστε Service Workers από άλλους τομείς. <a>Άνοιγμα about:debugging</a>
+# Text displayed when no service workers are visible for the current page.
+serviceworker-empty-intro2 = Δεν βρέθηκαν service workers
+# Link will open https://developer.mozilla.org/docs/Web/API/Service_Worker_API/Using_Service_Workers
+serviceworker-empty-intro-link = Μάθετε περισσότερα
+# Text displayed when there are no Service Workers to display for the current page,
+# introducing hints to debug Service Worker issues.
+# <a> and <span> are links that will open the webconsole and the debugger, respectively.
+serviceworker-empty-suggestions2 = Αν η τρέχουσα σελίδα θα έπρεπε να έχει service worker, μπορείτε να αναζητήσετε σφάλματα στην <a>Κονσόλα</a> ή κάντε την εγγραφή του service worker σας στον <span>Εντοπισμό σφαλμάτων</span>.
+# Suggestion to go to about:debugging in order to see Service Workers for all domains.
+# Link will open about:debugging in a new tab.
+serviceworker-empty-suggestions-aboutdebugging2 = Προβολή service workers από άλλους τομείς
+# Header for the Manifest page when we have an actual manifest
+manifest-view-header = Δήλωση εφαρμογής
+# Header for the Manifest page when there's no manifest to inspect
+# The link will open https://developer.mozilla.org/en-US/docs/Web/Manifest
+manifest-empty-intro = Πρέπει να προσθέσετε μια δήλωση διαδικτυακής εφαρμογής για να την επιθεωρήσετε εδώ. <a>Μάθετε περισσότερα</a>
+# Header for the Manifest page when there's no manifest to inspect
+manifest-empty-intro2 = Δεν ανιχνεύθηκε μανιφέστο εφαρμογής web
+# The link will open https://developer.mozilla.org/en-US/docs/Web/Manifest
+manifest-empty-intro-link = Μάθετε πώς να προσθέσετε ένα μανιφέστο
+# Header for the Errors and Warnings section of Manifest inspection displayed in the application panel.
+manifest-item-warnings = Σφάλματα και προειδοποιήσεις
+# Header for the Identity section of Manifest inspection displayed in the application panel.
+manifest-item-identity = Ταυτότητα
+# Header for the Presentation section of Manifest inspection displayed in the application panel.
+manifest-item-presentation = Παρουσίαση
+# Header for the Icon section of Manifest inspection displayed in the application panel.
+manifest-item-icons = Εικονίδια
+# Text displayed while we are loading the manifest file
+manifest-loading = Φόρτωση δήλωσης…
+# Text displayed when the manifest has been successfully loaded
+manifest-loaded-ok = Η δήλωση φορτώθηκε.
+# Text displayed as a caption when there has been an error while trying to
+# load the manifest
+manifest-loaded-error = Προέκυψε σφάλμα κατά τη φόρτωσης της δήλωσης:
+# Text displayed as an error when there has been a Firefox DevTools error while
+# trying to load the manifest
+manifest-loaded-devtools-error = Σφάλμα Firefox DevTools
+# Text displayed when the page has no manifest available
+manifest-non-existing = Δεν βρέθηκε δήλωση προς επιθεώρηση.
+# Text displayed when the page has a manifest embedded in a Data URL and
+# thus we cannot link to it.
+manifest-json-link-data-url = Η δήλωση είναι ενσωματωμένη σε ένα URL δεδομένων.
+# Text displayed at manifest icons to label their purpose, as declared
+# in the manifest.
+manifest-icon-purpose = Σκοπός: <code>{ $purpose }</code>
+# Text displayed as the alt attribute for <img> tags showing the icons in the
+# manifest.
+manifest-icon-img =
+ .alt = Εικονίδιο
+# Text displayed as the title attribute for <img> tags showing the icons in the
+# manifest. `$sizes` is a user-dependent string that has been parsed as a
+# space-separated list of `<width>x<height>` sizes or the keyword `any`.
+manifest-icon-img-title = Εικονίδιο με μεγέθη: { $sizes }
+# Text displayed as the title attribute for <img> tags showing the icons in the
+# manifest, in case there's no icon size specified by the user
+manifest-icon-img-title-no-sizes = Εικονίδιο ακαθόριστου μεγέθους
+# Sidebar navigation item for Manifest sidebar item section
+sidebar-item-manifest = Δήλωση
+ .alt = Εικονίδιο δήλωσης
+ .title = Δήλωση
+# Sidebar navigation item for Service Workers sidebar item section
+sidebar-item-service-workers = Service Workers
+ .alt = Εικονίδιο Service Workers
+ .title = Service Workers
+# Text for the ALT and TITLE attributes of the warning icon
+icon-warning =
+ .alt = Εικονίδιο προειδοποίησης
+ .title = Προειδοποίηση
+# Text for the ALT and TITLE attributes of the error icon
+icon-error =
+ .alt = Εικονίδιο σφάλματος
+ .title = Σφάλμα
diff --git a/l10n-el/devtools/client/boxmodel.properties b/l10n-el/devtools/client/boxmodel.properties
new file mode 100644
index 0000000000..77caa9d0bd
--- /dev/null
+++ b/l10n-el/devtools/client/boxmodel.properties
@@ -0,0 +1,48 @@
+# 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 : FILE This file contains the Layout View strings.
+# The Layout View is a panel displayed in the computed view tab of the Inspector sidebar.
+
+# LOCALIZATION NOTE : FILE The correct localization of this file might be to
+# keep it in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (boxmodel.title) This is the title of the box model panel and is
+# displayed as a label.
+boxmodel.title=Μοντέλο πλαισίων
+
+# LOCALIZATION NOTE: (boxmodel.geometryButton.tooltip) This label is displayed as a
+# tooltip that appears when hovering over the button that allows users to edit the
+# position of an element in the page.
+boxmodel.geometryButton.tooltip=Επεξεργασία θέσης
+
+# LOCALIZATION NOTE: (boxmodel.propertiesLabel) This label is displayed as the header
+# for showing and collapsing the properties underneath the box model in the layout view
+boxmodel.propertiesLabel=Ιδιότητες μοντέλου πλαισίων
+
+# LOCALIZATION NOTE (boxmodel.propertiesHideLabel):
+# This is the spoken label for the twisty.
+# If the properties are currently showing, it will say "Hide".
+boxmodel.propertiesHideLabel=Απόκρυψη
+
+# LOCALIZATION NOTE (boxmodel.propertiesShowLabel):
+# This is the spoken label for the twisty.
+# If the properties are currently hidden, it will say "Show".
+boxmodel.propertiesShowLabel=Εμφάνιση
+
+# LOCALIZATION NOTE: (boxmodel.offsetParent) This label is displayed inside the list of
+# properties, below the box model, in the layout view. It is displayed next to the
+# position property, when position is absolute, relative, sticky. This label tells users
+# what the DOM node previewed next to it is: an offset parent for the position element.
+boxmodel.offsetParent=απόσταση
+
+# LOCALIZATION NOTE: (boxmodel.offsetParent.title) This label is displayed as a
+# tooltip that appears when hovering over the offset label, inside the list of properties,
+# below the box model, in the layout view. This label tells users
+# what the DOM node previewed next to it is: an offset parent for the position element.
+boxmodel.offsetParent.title=Μετατόπιση γονέα επιλεγμένου στοιχείου
+
diff --git a/l10n-el/devtools/client/changes.properties b/l10n-el/devtools/client/changes.properties
new file mode 100644
index 0000000000..c2742cfb44
--- /dev/null
+++ b/l10n-el/devtools/client/changes.properties
@@ -0,0 +1,64 @@
+# 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 This file contains the strings for the Changes panel accessible from
+# the Inspector sidebar.
+
+# LOCALIZATION NOTE (changes.noChanges): This text is shown when no changes are available.
+changes.noChanges=Δεν βρέθηκαν αλλαγές.
+
+# LOCALIZATION NOTE (changes.noChangesDescription): This text is shown when no changes are
+# available and provides additional context for the purpose of the Changes panel.
+changes.noChangesDescription=Οι αλλαγές του CSS στην Επιθεώρηση θα εμφανιστούν εδώ.
+
+# LOCALIZATION NOTE (changes.inlineStyleSheetLabel): This label appears in the Changes
+# panel above changes done to inline stylesheets. The variable will be replaced with the
+# index of the stylesheet within its document like so: Inline #1
+changes.inlineStyleSheetLabel=Στη σειρά %S
+
+# LOCALIZATION NOTE (changes.elementStyleLabel): This label appears in the Changes
+# panel above changes done to element styles.
+changes.elementStyleLabel=Στοιχείο
+
+# LOCALIZATION NOTE (changes.iframeLabel): This label appears next to URLs of stylesheets
+# and element inline styles hosted by iframes. Lowercase intentional.
+changes.iframeLabel=iframe
+
+# LOCALIZATION NOTE (changes.contextmenu.copy): Label for "Copy" option in Changes panel
+# context menu
+changes.contextmenu.copy=Αντιγραφή
+
+# LOCALIZATION NOTE (changes.contextmenu.copy.accessKey): Access key for "Copy"
+# option in the Changes panel.
+changes.contextmenu.copy.accessKey=Α
+
+# LOCALIZATION NOTE (changes.contextmenu.copyAllChanges): Label for "Copy All Changes"
+# option in Changes panel context menu which copies all changed CSS declarations from a
+# stylesheet
+changes.contextmenu.copyAllChanges=Αντιγραφή όλων των αλλαγών
+
+# LOCALIZATION NOTE (changes.contextmenu.copyAllChangesDescription): Detailed explanation
+# for "Copy All Changes" option in Changes panel. Used as title attribute on "Copy All
+# Changes" button
+changes.contextmenu.copyAllChangesDescription=Αντιγραφή μιας λίστας με όλες τις αλλαγές CSS στο πρόχειρο.
+
+# LOCALIZATION NOTE (changes.contextmenu.copyDeclaration): Label for "Copy Declaration"
+# option in Changes panel context menu which copies the target CSS declaration.
+changes.contextmenu.copyDeclaration=Αντιγραφή δήλωσης
+
+# LOCALIZATION NOTE (changes.contextmenu.copyRule): Label for "Copy Rule" option in
+# Changes panel context menu which copies the complete contents of a CSS rule.
+changes.contextmenu.copyRule=Αντιγραφή κανόνα
+
+# LOCALIZATION NOTE (changes.contextmenu.copyRuleDescription): Detailed explanation for
+# "Copy Rule" option in Changes panel. Used as title attribute on "Copy Rule" button.
+changes.contextmenu.copyRuleDescription=Αντιγραφή περιεχομένων του κανόνα CSS στο πρόχειρο.
+
+# LOCALIZATION NOTE (changes.contextmenu.selectAll): Label for "Select All" option in the
+# Changes panel context menu to select all text content.
+changes.contextmenu.selectAll=Επιλογή όλων
+
+# LOCALIZATION NOTE (changes.contextmenu.selectAll.accessKey): Access key for "Select All"
+# option in the Changes panel.
+changes.contextmenu.selectAll.accessKey=Ε
diff --git a/l10n-el/devtools/client/compatibility.ftl b/l10n-el/devtools/client/compatibility.ftl
new file mode 100644
index 0000000000..b2c3fcdb13
--- /dev/null
+++ b/l10n-el/devtools/client/compatibility.ftl
@@ -0,0 +1,47 @@
+# 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/.
+
+
+## Messages used as headers in the main pane
+
+compatibility-selected-element-header = Επιλεγμένο στοιχείο
+compatibility-all-elements-header = Όλα τα ζητήματα
+
+## Message used as labels for the type of issue
+
+compatibility-issue-deprecated = (παρωχημένο)
+compatibility-issue-experimental = (πειραματικό)
+compatibility-issue-prefixneeded = (απαιτείται πρόθεμα)
+compatibility-issue-deprecated-experimental = (παρωχημένο, πειραματικό)
+compatibility-issue-deprecated-prefixneeded = (παρωχημένο, απαιτείται πρόθεμα)
+compatibility-issue-experimental-prefixneeded = (πειραματικό, απαιτείται πρόθεμα)
+compatibility-issue-deprecated-experimental-prefixneeded = (παρωχημένο, πειραματικό, απαιτείται πρόθεμα)
+
+## Messages used as labels and titles for buttons in the footer
+
+compatibility-settings-button-label = Ρυθμίσεις
+compatibility-settings-button-title =
+ .title = Ρυθμίσεις
+compatibility-feedback-button-label = Σχόλια
+compatibility-feedback-button-title =
+ .title = Σχόλια
+
+## Messages used as headers in settings pane
+
+compatibility-settings-header = Ρυθμίσεις
+compatibility-target-browsers-header = Προγράμματα περιήγησης-στόχοι
+
+##
+
+# Text used as the label for the number of nodes where the issue occurred
+# Variables:
+# $number (Number) - The number of nodes where the issue occurred
+compatibility-issue-occurrences =
+ { $number ->
+ [one] { $number } εμφάνιση
+ *[other] { $number } εμφανίσεις
+ }
+compatibility-no-issues-found = Δεν βρέθηκαν ζητήματα συμβατότητας
+compatibility-close-settings-button =
+ .title = Κλείσιμο ρυθμίσεων
diff --git a/l10n-el/devtools/client/components.properties b/l10n-el/devtools/client/components.properties
new file mode 100644
index 0000000000..63fa9af372
--- /dev/null
+++ b/l10n-el/devtools/client/components.properties
@@ -0,0 +1,24 @@
+# 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 These strings are used in the shared React components,
+# so files in `devtools/client/shared/components/*`.
+
+# LOCALIZATION NOTE (frame.unknownSource): When we do not know the source filename of
+# a frame, we use this string instead.
+frame.unknownSource=(άγνωστο)
+
+# LOCALIZATION NOTE (frame.viewsourceindebugger): The label for the tooltip when hovering over
+# a source link that links to the debugger.
+# %S represents the URL to match in the debugger.
+frame.viewsourceindebugger=Προβολή πηγαίου κώδικα στην Αποσφαλμάτωση → %S
+
+# LOCALIZATION NOTE (frame.viewsourceinstyleeditor): The label for the tooltip when hovering over
+# a source link that links to the Style Editor.
+# %S represents the URL to match in the style editor.
+frame.viewsourceinstyleeditor=Προβολή πηγαίου κώδικα στην Επεξεργασία στυλ → %S
+
+# LOCALIZATION NOTE (notificationBox.closeTooltip): The content of a tooltip that
+# appears when hovering over the close button in a notification box.
+notificationBox.closeTooltip=Κλείσιμο μηνύματος
diff --git a/l10n-el/devtools/client/debugger.properties b/l10n-el/devtools/client/debugger.properties
new file mode 100644
index 0000000000..14bc6e8bf3
--- /dev/null
+++ b/l10n-el/devtools/client/debugger.properties
@@ -0,0 +1,1130 @@
+# 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 These strings are used inside the Debugger
+# which is available from the Web Developer sub-menu -> 'Debugger'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (collapseSources): This is the tooltip for the button
+# that collapses the Sources and Outlines panes in the debugger UI.
+collapseSources=Σύμπτυξη πινάκων πηγών και περιγραμμάτων
+
+# LOCALIZATION NOTE (collapseBreakpoints): This is the tooltip for the button
+# that collapses the Breakpoints panes in the debugger UI.
+collapseBreakpoints=Σύμπτυξη πλαισίου σημείων διακοπής
+
+# LOCALIZATION NOTE (copyToClipboard.label): This is the text that appears in the
+# context menu to copy the text that the user selected.
+copyToClipboard.label=Αντιγραφή στο πρόχειρο
+copyToClipboard.accesskey=Α
+
+# LOCALIZATION NOTE (copySource.label): This is the text that appears in the
+# context menu to copy all of the text in the open file.
+copySource.label=Αντιγραφή αρχικού κειμένου
+copySource.accesskey=χ
+
+# LOCALIZATION NOTE (copySourceUri2): This is the text that appears in the
+# context menu to copy the source URI of file open.
+copySourceUri2=Αντιγραφή URI πηγής
+copySourceUri2.accesskey=γ
+
+# LOCALIZATION NOTE (collapseAll.label): This is the text that appears in the
+# context menu to collapse a directory and all of its subdirectories.
+collapseAll.label=Σύμπτυξη όλων
+
+# LOCALIZATION NOTE (expandAll.label): This is the text that appears in the
+# context menu to expand a directory and all of its subdirectories.
+expandAll.label=Επέκταση όλων
+
+# LOCALIZATION NOTE (setDirectoryRoot.label): This is the text that appears in the
+# context menu to set a directory as root directory
+setDirectoryRoot.label=Ορισμός ριζικού καταλόγου
+setDirectoryRoot.accesskey=ρ
+
+# LOCALIZATION NOTE (removeDirectoryRoot.label): This is the text that appears in the
+# context menu to remove a directory as root directory
+removeDirectoryRoot.label=Διαγραφή ριζικού καταλόγου
+
+# LOCALIZATION NOTE (blackBoxAll.label): Text associated with the blackbox context menu item
+blackBoxAll.label=Blackbox
+
+# LOCALIZATION NOTE (blackBoxAllInGroup.label): This is the text that appears in the
+# context submenu to blackbox all files inside of the selected group
+blackBoxAllInGroup.label=Προσθήκη αρχείων σε blackbox σε αυτή την ομάδα
+
+# LOCALIZATION NOTE (unblackBoxAllInGroup.label): This is the text that appears in the
+# context submenu to unblackbox all files inside of the selected group
+unblackBoxAllInGroup.label=Αφαίρεση αρχείων από blackbox σε αυτή την ομάδα
+
+# LOCALIZATION NOTE (blackBoxAllOutsideGroup.label): This is the text that appears in the
+# context submenu to blackbox all files outside of the selected group
+blackBoxAllOutsideGroup.label=Προσθήκη αρχείων σε blackbox εκτός αυτής της ομάδας
+
+# LOCALIZATION NOTE (unblackBoxAllOutsideGroup.label): This is the text that appears in the
+# context submenu to unblackbox all files outside of the selected group
+unblackBoxAllOutsideGroup.label=Αφαίρεση αρχείων από blackbox εκτός αυτής της ομάδας
+
+# LOCALIZATION NOTE (blackBoxAllInDir.label): This is the text that appears in the
+# context submenu to blackbox all files inside of the selected directory
+blackBoxAllInDir.label=Προσθήκη αρχείων σε blackbox σε αυτό τον κατάλογο
+
+# LOCALIZATION NOTE (unblackBoxAllInDir.label): This is the text that appears in the
+# context submenu to unblackbox all files inside of the selected directory
+unblackBoxAllInDir.label=Αφαίρεση αρχείων από blackbox σε αυτό τον κατάλογο
+
+# LOCALIZATION NOTE (blackBoxAllOutsideDir.label): This is the text that appears in the
+# context submenu to blackbox all files outside of the selected directory
+blackBoxAllOutsideDir.label=Προσθήκη αρχείων σε blackbox εκτός αυτού του καταλόγου
+
+# LOCALIZATION NOTE (unblackBoxAllOutsideDir.label: This is the text that appears in the
+# context submenu to unblackbox all files outside of the selected directory
+unblackBoxAllOutsideDir.label=Αφαίρεση αρχείων από blackbox εκτός αυτού του καταλόγου
+
+# LOCALIZATION NOTE (ignoreAll.label): Text associated with the ignore context menu item
+ignoreAll.label=Παράβλεψη
+
+# LOCALIZATION NOTE (ignoreAllInGroup.label): This is the text that appears in the
+# context submenu to ignore all files inside of the selected group
+ignoreAllInGroup.label=Παράβλεψη αρχείων σε αυτή την ομάδα
+
+# LOCALIZATION NOTE (unignoreAllInGroup.label): This is the text that appears in the
+# context submenu to unignore all files inside of the selected group
+unignoreAllInGroup.label=Αναίρεση παράβλεψης αρχείων σε αυτή την ομάδα
+
+# LOCALIZATION NOTE (ignoreAllOutsideGroup.label): This is the text that appears in the
+# context submenu to ignore all files outside of the selected group
+ignoreAllOutsideGroup.label=Παράβλεψη αρχείων εκτός ομάδας
+
+# LOCALIZATION NOTE (unignoreAllOutsideGroup.label): This is the text that appears in the
+# context submenu to unignore all files outside of the selected group
+unignoreAllOutsideGroup.label=Αναίρεση παράβλεψης αρχείων εκτός ομάδας
+
+# LOCALIZATION NOTE (ignoreAllInDir.label): This is the text that appears in the
+# context submenu to ignore all files inside of the selected directory
+ignoreAllInDir.label=Παράβλεψη αρχείων σε αυτό τον κατάλογο
+
+# LOCALIZATION NOTE (unignoreAllInDir.label): This is the text that appears in the
+# context submenu to unignore all files inside of the selected directory
+unignoreAllInDir.label=Αναίρεση παράβλεψης αρχείων σε αυτό τον κατάλογο
+
+# LOCALIZATION NOTE (ignoreAllOutsideDir.label): This is the text that appears in the
+# context submenu to ignore all files outside of the selected directory
+ignoreAllOutsideDir.label=Παράβλεψη αρχείων εκτός καταλόγου
+
+# LOCALIZATION NOTE (unignoreAllOutsideDir.label: This is the text that appears in the
+# context submenu to unignore all files outside of the selected directory
+unignoreAllOutsideDir.label=Αναίρεση παράβλεψης αρχείων εκτός καταλόγου
+
+# LOCALIZATION NOTE (copyFunction.label): This is the text that appears in the
+# context menu to copy the function the user selected
+copyFunction.label=Αντιγραφή λειτουργίας
+copyFunction.accesskey=Λ
+
+# LOCALIZATION NOTE (copyStackTrace): This is the text that appears in the
+# context menu to copy the stack trace methods, file names and row number.
+copyStackTrace=Αντιγραφή ίχνους στοίβας
+copyStackTrace.accesskey=χ
+
+# LOCALIZATION NOTE (restartFrame): This is the text that appears in the
+# context menu to restart a frame.
+restartFrame=Επανεκκίνηση καρέ
+restartFrame.accesskey=κ
+
+# LOCALIZATION NOTE (expandSources): This is the tooltip for the button
+# that expands the Sources and Outlines panes in the debugger UI.
+expandSources=Επέκταση πινάκων πηγών και περιγραμμάτων
+
+# LOCALIZATION NOTE (expandBreakpoints): This is the tooltip for the button
+# that expands the Breakpoints panes in the debugger UI.
+expandBreakpoints=Επέκταση πλαισίου σημείων διακοπής
+
+# LOCALIZATION NOTE (evaluateInConsole.label): Editor right-click menu item
+# to execute selected text in browser console.
+evaluateInConsole.label=Εκτίμηση σε κονσόλα
+
+# LOCALIZATION NOTE (pauseButtonTooltip): The tooltip that is displayed for the pause
+# button when the debugger is in a running state.
+pauseButtonTooltip=Παύση (%S)
+
+# LOCALIZATION NOTE (pausePendingButtonTooltip): The tooltip that is displayed for
+# the pause button after it's been clicked but before the next JavaScript to run.
+pausePendingButtonTooltip=Αναμονή για την επόμενη εκτέλεση
+
+# LOCALIZATION NOTE (resumeButtonTooltip): The label that is displayed on the pause
+# button when the debugger is in a paused state.
+resumeButtonTooltip=Κάντε κλικ για να συνεχίσετε (%S)
+
+# LOCALIZATION NOTE (stepOverTooltip): The label that is displayed on the
+# button that steps over a function call.
+stepOverTooltip=Βήμα προσπέρασης (%S)
+
+# LOCALIZATION NOTE (stepInTooltip): The label that is displayed on the
+# button that steps into a function call.
+stepInTooltip=Βήμα εισόδου (%S)
+
+# LOCALIZATION NOTE (stepOutTooltip): The label that is displayed on the
+# button that steps out of a function call.
+stepOutTooltip=Βήμα εξόδου (%S)
+
+# LOCALIZATION NOTE (skipPausingTooltip.label): The tooltip text for disabling all
+# breakpoints and pausing triggers
+skipPausingTooltip.label=Απενεργοποίηση σημείων διακοπής
+
+# LOCALIZATION NOTE (undoSkipPausingTooltip.label): The tooltip text for enabling all
+# breakpoints and pausing triggers
+undoSkipPausingTooltip.label=Ενεργοποίηση σημείων διακοπής
+
+# LOCALIZATION NOTE (pauseOnExceptionsItem2): The pause on exceptions checkbox description
+# when the debugger will pause on all exceptions.
+pauseOnExceptionsItem2=Παύση σε εξαιρέσεις
+
+# LOCALIZATION NOTE (pauseOnCaughtExceptionsItem): The pause on exceptions checkbox description
+# when the debugger should pause on caught exceptions
+pauseOnCaughtExceptionsItem=Παύση σε προβλεπόμενες εξαιρέσεις
+
+# LOCALIZATION NOTE (threadsHeader): The text to describe the threads header
+threadsHeader=Νήματα
+
+# LOCALIZATION NOTE (mainThread): The text to describe the thread of the
+# program as opposed to worker threads.
+mainThread=Κύριο νήμα
+
+# LOCALIZATION NOTE (noSourcesText): The text to display in the sources list
+# when there are no sources.
+noSourcesText=Αυτή η σελίδα δεν έχει πηγές.
+
+# LOCALIZATION NOTE (eventListenersHeader1): The text to display in the events
+# header.
+eventListenersHeader1=Σημεία διακοπής ακροατή συμβάντων
+
+# LOCALIZATION NOTE (noDomMutationBreakpoints): The text to
+# display in the DOM Mutation Breakpoints pane when there are no events.
+# %S will be replaced by an active link using inspectorTool as text
+noDomMutationBreakpoints=Κάντε δεξί κλικ σε ένα στοιχείο στο %S και επιλέξτε “Διακοπή σε…” για προσθήκη σημείου διακοπής
+
+# LOCALIZATION NOTE (inspectorTool): The text to describe the the Inspector tool
+inspectorTool=Επιθεώρηση
+
+# LOCALIZATION NOTE (eventListenersHeader1.placeholder): The placeholder text in
+# the event search input bar
+eventListenersHeader1.placeholder=Φιλτράρισμα κατά τύπο συμβάντος
+
+# LOCALIZATION NOTE (domMutationHeader): The text to display in the
+# DOM Mutation Breakpoints header
+domMutationHeader=Σημεία διακοπής μετάλλαξης DOM
+
+# LOCALIZATION NOTE (domMutationTypes.attribute): The text to display in the
+# DOM Mutation Breakpoints panel for an attribute change
+domMutationTypes.attribute=Τροποποίηση ιδιότητας
+
+# LOCALIZATION NOTE (domMutationTypes.removal): The text to display in the
+# DOM Mutation Breakpoints panel for a DOM node removal
+domMutationTypes.removal=Αφαίρεση κόμβου
+
+# LOCALIZATION NOTE (domMutationTypes.subtree): The text to display in the
+# DOM Mutation Breakpoints panel for a DOM subtree change
+domMutationTypes.subtree=Τροποποίηση υποδέντρου
+
+# LOCALIZATION NOTE (sources.search.key2): Key shortcut to open the search for
+# searching all the source files the debugger has seen.
+# Do not localize "CmdOrCtrl+P", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sources.search.key2=CmdOrCtrl+P
+
+# LOCALIZATION NOTE (sources.search.alt.key): A second key shortcut to open the
+# search for searching all the source files the debugger has seen.
+# Do not localize "CmdOrCtrl+O", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sources.search.alt.key=CmdOrCtrl+O
+
+# LOCALIZATION NOTE (projectTextSearch.key): A key shortcut to open the
+# full project text search for searching all the files the debugger has seen.
+# Do not localize "CmdOrCtrl+Shift+F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+projectTextSearch.key=CmdOrCtrl+Shift+F
+
+# LOCALIZATION NOTE (allShortcut.key): A key shortcut to open the
+# modal of full shortcuts list.
+# Do not localize "CmdOrCtrl+/", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+allShortcut.key=CmdOrCtrl+/
+
+# LOCALIZATION NOTE (functionSearch.key): A key shortcut to open the
+# modal for searching functions in a file.
+# Do not localize "CmdOrCtrl+Shift+O", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+functionSearch.key=CmdOrCtrl+Shift+O
+
+# LOCALIZATION NOTE (toggleBreakpoint.key): A key shortcut to toggle
+# breakpoints.
+# Do not localize "CmdOrCtrl+B", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+toggleBreakpoint.key=CmdOrCtrl+B
+
+# LOCALIZATION NOTE (toggleCondPanel.breakpoint.key): A key shortcut to toggle
+# the conditional panel for breakpoints.
+# Do not localize "CmdOrCtrl+Shift+B", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+toggleCondPanel.breakpoint.key=CmdOrCtrl+Shift+B
+
+# LOCALIZATION NOTE (toggleCondPanel.logPoint.key): A key shortcut to toggle
+# the conditional panel for log points.
+# Do not localize "CmdOrCtrl+Shift+Y", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+toggleCondPanel.logPoint.key=CmdOrCtrl+Shift+Y
+
+# LOCALIZATION NOTE (stepOut.key): A key shortcut to
+# step out.
+stepOut.key=Shift+F11
+
+# LOCALIZATION NOTE (shortcuts.header.editor): Sections header in
+# the shortcuts modal for keyboard shortcuts related to editing.
+shortcuts.header.editor=Επεξεργαστής
+
+# LOCALIZATION NOTE (shortcuts.header.stepping): Sections header in
+# the shortcuts modal for keyboard shortcuts related to stepping.
+shortcuts.header.stepping=Βηματισμός
+
+# LOCALIZATION NOTE (shortcuts.header.search): Sections header in
+# the shortcuts modal for keyboard shortcuts related to search.
+shortcuts.header.search=Αναζήτηση
+
+# LOCALIZATION NOTE (projectTextSearch.placeholder): A placeholder shown
+# when searching across all of the files in a project.
+projectTextSearch.placeholder=Εύρεση σε αρχεία…
+
+# LOCALIZATION NOTE (projectTextSearch.noResults): The center pane Text Search
+# message when the query did not match any text of all files in a project.
+projectTextSearch.noResults=Δεν βρέθηκαν αποτελέσματα
+
+# LOCALIZATION NOTE (sourceSearch.search.key2): Key shortcut to open the search
+# for searching within a the currently opened files in the editor
+# Do not localize "CmdOrCtrl+F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sourceSearch.search.key2=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (sourceSearch.search.placeholder): placeholder text in
+# the source search input bar
+sourceSearch.search.placeholder=Αναζήτηση στο αρχείο…
+
+# LOCALIZATION NOTE (sourceSearch.search.placeholder2): placeholder text in
+# the source search input bar
+sourceSearch.search.placeholder2=Εύρεση στο αρχείο…
+
+# LOCALIZATION NOTE (sourceSearch.search.again.key3): Key shortcut to highlight
+# the next occurrence of the last search triggered from a source search
+# Do not localize "Cmd+G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sourceSearch.search.again.key3=Cmd+G
+
+# LOCALIZATION NOTE (sourceSearch.search.againPrev.key3): Key shortcut to highlight
+# the previous occurrence of the last search triggered from a source search
+# Do not localize "Cmd+Shift+G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sourceSearch.search.againPrev.key3=Cmd+Shift+G
+
+# LOCALIZATION NOTE (sourceSearch.resultsSummary2): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Shows a summary of the number of matches for autocomplete
+sourceSearch.resultsSummary2=#1 αποτέλεσμα;#1 αποτελέσματα
+
+# LOCALIZATION NOTE (breakpointHeadingMenuItem.*): The text for all the elements
+# that are displayed in the breakpoint headings menu item popup.
+breakpointHeadingsMenuItem.enableInSource.label=Ενεργοποίηση σημείων διακοπής
+breakpointHeadingsMenuItem.enableInSource.accesskey=Ε
+breakpointHeadingsMenuItem.disableInSource.label=Απενεργοποίηση σημείων διακοπής
+breakpointHeadingsMenuItem.disableInSource.accesskey=Α
+breakpointHeadingsMenuItem.removeInSource.label=Αφαίρεση σημείων διακοπής
+breakpointHeadingsMenuItem.removeInSource.accesskey=Α
+
+# LOCALIZATION NOTE (breakpointMenuItem): The text for all the elements that
+# are displayed in the breakpoints menu item popup.
+breakpointMenuItem.enableSelf2.label=Ενεργοποίηση
+breakpointMenuItem.enableSelf2.accesskey=Ε
+breakpointMenuItem.disableSelf2.label=Απενεργοποίηση
+breakpointMenuItem.disableSelf2.accesskey=Α
+breakpointMenuItem.deleteSelf2.label=Αφαίρεση
+breakpointMenuItem.deleteSelf2.accesskey=Φ
+breakpointMenuItem.disabledbg.label=Να μην γίνεται ποτέ παύση εδώ
+breakpointMenuItem.enabledbg.label=Παύση εδώ
+breakpointMenuItem.enableOthers2.label=Ενεργοποίηση άλλων
+breakpointMenuItem.enableOthers2.accesskey=λ
+breakpointMenuItem.disableOthers2.label=Απενεργοποίηση άλλων
+breakpointMenuItem.disableOthers2.accesskey=ν
+breakpointMenuItem.deleteOthers2.label=Αφαίρεση άλλων
+breakpointMenuItem.deleteOthers2.accesskey=λ
+breakpointMenuItem.enableAll2.label=Ενεργοποίηση όλων
+breakpointMenuItem.enableAll2.accesskey=γ
+breakpointMenuItem.disableAll2.label=Απενεργοποίηση όλων
+breakpointMenuItem.disableAll2.accesskey=γ
+breakpointMenuItem.deleteAll2.label=Αφαίρεση όλων
+breakpointMenuItem.deleteAll2.accesskey=φ
+breakpointMenuItem.removeCondition2.label=Αφαίρεση συνθήκης
+breakpointMenuItem.removeCondition2.accesskey=σ
+breakpointMenuItem.addCondition2.label=Προσθήκη συνθήκης
+breakpointMenuItem.addCondition2.accesskey=Π
+breakpointMenuItem.editCondition2.label=Επεξεργασία συνθήκης
+breakpointMenuItem.editCondition2.accesskey=ν
+breakpointMenuItem.enableSelf=Ενεργοποίηση σημείου διακοπής
+breakpointMenuItem.disableSelf=Απενεργοποίηση σημείου διακοπής
+breakpointMenuItem.deleteSelf=Αφαίρεση σημείου διακοπής
+breakpointMenuItem.enableOthers=Ενεργοποίηση άλλων
+breakpointMenuItem.disableOthers=Απενεργοποίηση άλλων
+breakpointMenuItem.deleteOthers=Αφαίρεση άλλων
+breakpointMenuItem.enableAll=Ενεργοποίηση όλων των σημείων διακοπής
+breakpointMenuItem.disableAll=Απενεργοποίηση όλων των σημείων διακοπής
+breakpointMenuItem.deleteAll=Κατάργηση όλων των σημείων διακοπής
+breakpointMenuItem.disableAllAtLine.label=Απενεργοποίηση σημείων διακοπής στη γραμμή
+breakpointMenuItem.disableAllAtLine.accesskey=Α
+breakpointMenuItem.enableAllAtLine.label=Ενεργοποίηση σημείων διακοπής στη γραμμή
+breakpointMenuItem.enableAllAtLine.accesskey=Ε
+breakpointMenuItem.removeAllAtLine.label=Αφαίρεση σημείων διακοπής στη γραμμή
+breakpointMenuItem.removeAllAtLine.accesskey=Α
+
+# LOCALIZATION NOTE (breakpoints.header): Breakpoints right sidebar pane header.
+breakpoints.header=Σημεία διακοπής
+
+# LOCALIZATION NOTE (breakpoints.enable): The text that may appear as a tooltip
+# when hovering over the 'disable breakpoints' switch button in right sidebar
+breakpoints.enable=Ενεργοποίηση σημείων διακοπής
+
+# LOCALIZATION NOTE (breakpoints.disable): The text that may appear as a tooltip
+# when hovering over the 'disable breakpoints' switch button in right sidebar
+breakpoints.disable=Απενεργοποίηση σημείων διακοπής
+
+# LOCALIZATION NOTE (breakpoints.removeBreakpointTooltip): The tooltip that is displayed
+# for remove breakpoint button in right sidebar
+breakpoints.removeBreakpointTooltip=Αφαίρεση σημείου διακοπής
+
+# LOCALIZATION NOTE (callStack.header): Call Stack right sidebar pane header.
+callStack.header=Στοίβα κλήσεων
+
+# LOCALIZATION NOTE (callStack.notPaused): Call Stack right sidebar pane
+# message when not paused.
+callStack.notPaused=Χωρίς παύση
+
+# LOCALIZATION NOTE (callStack.collapse): Call Stack right sidebar pane
+# message to hide some of the frames that are shown.
+callStack.collapse=Σύμπτυξη σειρών
+
+# LOCALIZATION NOTE (callStack.expand): Call Stack right sidebar pane
+# message to show more of the frames.
+callStack.expand=Επέκταση σειρών
+
+# LOCALIZATION NOTE (callStack.group.expandTooltip): The text that will appear
+# when hovering a collapsed Group of frames in the callStack panel. `frames` is
+# always plural since a group can only exist if it contain more that 1 frame.
+# %S is replaced by the name of the library of the frames in the group.
+# example: `Show React frames`.
+callStack.group.expandTooltip=Εμφάνιση πλαισίων %S
+
+# LOCALIZATION NOTE (callStack.group.collapseTooltip): The text that will appear
+# when hovering an expanded Group of frames in the callStack panel. `frames` is
+# always plural since a group can only exist if it contain more that 1 frame.
+# %S is replaced by the name of the library of the frames in the group.
+# example: `Collapse React frames`.
+callStack.group.collapseTooltip=Σύμπτυξη πλαισίων %S
+
+# LOCALIZATION NOTE (editor.searchResults1): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Editor Search bar message to summarize the selected search result. e.g. 5 of 10 results.
+editor.searchResults1=%d από #1 αποτέλεσμα;%d από #1 αποτελέσματα
+
+# LOCALIZATION NOTE (editor.noResultsFound): Editor Search bar message
+# for when no results found.
+editor.noResultsFound=Δεν βρέθηκαν αποτελέσματα
+
+# LOCALIZATION NOTE (editor.searchResults.nextResult): Editor Search bar
+# tooltip for traversing to the Next Result
+editor.searchResults.nextResult=Επόμενο αποτέλεσμα
+
+# LOCALIZATION NOTE (editor.searchResults.prevResult): Editor Search bar
+# tooltip for traversing to the Previous Result
+editor.searchResults.prevResult=Προηγούμενο αποτέλεσμα
+
+# LOCALIZATION NOTE (editor.continueToHere.label): Editor gutter context
+# menu item for jumping to a new paused location
+editor.continueToHere.label=Συνέχεια εδώ
+editor.continueToHere.accesskey=Ε
+
+# LOCALIZATION NOTE (editor.addBreakpoint): Editor gutter context menu item
+# for adding a breakpoint on a line.
+editor.addBreakpoint=Προσθήκη σημείου διακοπής
+
+# LOCALIZATION NOTE (editor.disableBreakpoint): Editor gutter context menu item
+# for disabling a breakpoint on a line.
+editor.disableBreakpoint=Απενεργοποίηση σημείου διακοπής
+editor.disableBreakpoint.accesskey=Α
+
+# LOCALIZATION NOTE (editor.enableBreakpoint): Editor gutter context menu item
+# for enabling a breakpoint on a line.
+editor.enableBreakpoint=Ενεργοποίηση σημείου διακοπής
+
+# LOCALIZATION NOTE (editor.removeBreakpoint): Editor gutter context menu item
+# for removing a breakpoint on a line.
+editor.removeBreakpoint=Αφαίρεση σημείου διακοπής
+
+# LOCALIZATION NOTE (editor.addConditionBreakpoint): Editor gutter context
+# menu item for adding a breakpoint condition on a line.
+editor.addConditionBreakpoint=Προσθήκη συνθήκης
+editor.addConditionBreakpoint.accesskey=σ
+
+# LOCALIZATION NOTE (editor.editConditionBreakpoint): Editor gutter context menu item
+# for setting a breakpoint condition on a line.
+editor.editConditionBreakpoint=Επεξεργασία συνθήκης
+
+# LOCALIZATION NOTE (editor.addLogPoint): Editor gutter context
+# menu item for adding a log point on a line.
+editor.addLogPoint=Προσθήκη αρχείου καταγραφής
+editor.addLogPoint.accesskey=κ
+
+# LOCALIZATION NOTE (editor.editLogPoint): Editor gutter context menu item
+# for editing a log point already set on a line.
+editor.editLogPoint=Επεξεργασία αρχείου καταγραφής
+editor.editLogPoint.accesskey=Ε
+
+# LOCALIZATION NOTE (editor.removeLogPoint): Context menu item for removing
+# a log point on a line.
+editor.removeLogPoint.label=Αφαίρεση αρχείου καταγραφής
+editor.removeLogPoint.accesskey=Φ
+
+# LOCALIZATION NOTE (editor.conditionalPanel.placeholder2): Placeholder text for
+# input element inside ConditionalPanel component
+editor.conditionalPanel.placeholder2=Συνθήκη σημείου διακοπής, π.χ. items.length > 0
+
+# LOCALIZATION NOTE (editor.conditionalPanel.logPoint.placeholder2): Placeholder text for
+# input element inside ConditionalPanel component when a log point is set
+editor.conditionalPanel.logPoint.placeholder2=Μήνυμα αρχείου καταγραφής, π.χ. displayName
+
+# LOCALIZATION NOTE (editor.jumpToMappedLocation1): Context menu item
+# for navigating to a source mapped location
+editor.jumpToMappedLocation1=Μετάβαση στην τοποθεσία %S
+editor.jumpToMappedLocation1.accesskey=β
+
+# LOCALIZATION NOTE (downloadFile.label): Context menu item
+# for downloading a source's content
+downloadFile.label=Λήψη αρχείου
+downloadFile.accesskey=λ
+
+# LOCALIZATION NOTE (inlinePreview.show.label): Context menu item
+# for showing the inline preview blocks
+inlinePreview.show.label=Εμφάνιση προεπισκόπησης εντός γραμμής
+
+# LOCALIZATION NOTE (inlinePreview.hide.label): Context menu item
+# for hiding the inline preview block
+inlinePreview.hide.label=Απόκρυψη προεπισκόπησης εντός γραμμής
+
+# LOCALIZATION NOTE (inlinePreview.toggle.label): Context menu item
+# that will toggle display of inline preview
+inlinePreview.toggle.label=Προεπισκόπηση μεταβλητής εντός γραμμής
+
+# LOCALIZATION NOTE (inlinePreview.toggle.tooltip): Context menu item
+# tooltip that will describe toggling inline preview
+inlinePreview.toggle.tooltip=Εμφάνιση προεπισκόπησης εντός γραμμής στον επεξεργαστή εντοπισμού σφαλμάτων
+
+# LOCALIZATION NOTE (editorWrapping.show.label): Context menu item
+# for showing the wrap lines block
+editorWrapping.show.label=Αναδίπλωση γραμμών
+
+# LOCALIZATION NOTE (editorWrapping.hide.label): Context menu item
+# for showing the wrap lines block
+editorWrapping.hide.label=Απενεργοποίηση αναδίπλωσης γραμμών
+
+# LOCALIZATION NOTE (editorWrapping.toggle.label): Context menu item
+# label for toggling the lines wrapping feature
+editorWrapping.toggle.label=Αναδίπλωση γραμμών
+
+# LOCALIZATION NOTE (editorWrapping.toggle.tooltip): Context menu item
+# tooltip for toggling the lines wrapping feature
+editorWrapping.toggle.tooltip=Αναδίπλωση γραμμών στον επεξεργαστή εντοπισμού σφαλμάτων
+
+# LOCALIZATION NOTE (settings.button.label): Label for Settings button
+settings.button.label=Ρυθμίσεις εντοπισμού σφαλμάτων
+
+# LOCALIZATION NOTE (settings.disableJavaScript.label): Context menu item
+# label for disabling JavaScript
+settings.disableJavaScript.label=Απενεργοποίηση JavaScript
+
+# LOCALIZATION NOTE (settings.disableJavaScript.tooltip): Context menu item
+# tooltip for disabling JavaScript
+settings.disableJavaScript.tooltip=Απενεργοποιεί τη JavaScript (Απαιτείται ανανέωση)
+
+# LOCALIZATION NOTE (settings.toggleSourceMaps.tooltip): Context menu item
+# tooltip for toggling the source maps feature
+settings.toggleSourceMaps.tooltip=Ενεργοποιήστε τους χάρτες πηγής για να επιτρέψετε στα DevTools να φορτώσουν τις αρχικές σας πηγές εκτός από τις δημιουργημένες
+
+# LOCALIZATION NOTE (settings.toggleSourceMaps.label): Context menu item
+# label for toggling the source maps feature
+settings.toggleSourceMaps.label=Χάρτες πηγής
+
+# LOCALIZATION NOTE (preview.noProperties): Label shown in the preview
+# popup when there are no properties to show.
+preview.noProperties=Καμία ιδιότητα
+
+# LOCALIZATION NOTE (framework.disableGrouping): This is the text that appears in the
+# context menu to disable framework grouping.
+framework.disableGrouping=Απενεργοποίηση ομαδοποίησης πλαισίου
+framework.disableGrouping.accesskey=δ
+
+# LOCALIZATION NOTE (framework.enableGrouping): This is the text that appears in the
+# context menu to enable framework grouping.
+framework.enableGrouping=Ενεργοποίηση ομαδοποίησης πλαισίου
+framework.enableGrouping.accesskey=δ
+
+# LOCALIZATION NOTE (generated): Source Map term for a server source location
+generated=παράχθηκε
+
+# LOCALIZATION NOTE (original): Source Map term for a debugger UI source location
+original=αρχικό
+
+# LOCALIZATION NOTE (expressions.placeholder): Placeholder text for expression
+# input element
+expressions.placeholder=Προσθήκη έκφρασης παρακολούθησης
+
+# LOCALIZATION NOTE (expressions.errorMsg): Error text for expression
+# input element
+expressions.errorMsg=Άκυρη έκφραση…
+expressions.label=Προσθήκη έκφρασης παρακολούθησης
+expressions.accesskey=θ
+expressions.remove.tooltip=Αφαίρεση έκφρασης παρακολούθησης
+
+# LOCALIZATION NOTE (xhrBreakpoints.header): The pause on any XHR breakpoints headings
+xhrBreakpoints.header=Σημεία διακοπής XHR
+xhrBreakpoints.placeholder=Διακοπή όταν το URL περιέχει
+xhrBreakpoints.label=Προσθήκη σημείου διακοπής XHR
+
+# LOCALIZATION NOTE (xhrBreakpoints.item.label): message displayed when reaching a breakpoint for XHR requests. %S is replaced by the path provided as condition for the breakpoint.
+xhrBreakpoints.item.label=Το URL περιέχει “%S”
+
+# LOCALIZATION NOTE (pauseOnAnyXHR): The pause on any XHR checkbox description
+# when the debugger will pause on any XHR requests.
+pauseOnAnyXHR=Παύση σε κάθε URL
+
+# LOCALIZATION NOTE (watchpoints.submenu): This is the text for the watchpoints sub-menu.
+watchpoints.submenu=Διακοπή σε…
+
+# LOCALIZATION NOTE (watchpoints.getWatchpoint): This is the text that appears in the
+# watchpoints sub-menu to add a "get" watchpoint on an object property.
+watchpoints.getWatchpoint=Ιδιότητα get
+
+# LOCALIZATION NOTE (watchpoints.setWatchpoint): This is the text that appears in the
+# watchpoints submenu to add a "set" watchpoint on an object property.
+watchpoints.setWatchpoint=Ιδιότητα set
+
+# LOCALIZATION NOTE (watchpoints.getOrSetWatchpoint): This is the text that appears in the
+# watchpoints submenu to add a "set" watchpoint on an object property.
+watchpoints.getOrSetWatchpoint=Ιδιότητα get ή set
+
+# LOCALIZATION NOTE (watchpoints.removeWatchpoint): This is the text that appears in the
+# context menu to delete a watchpoint on an object property.
+watchpoints.removeWatchpoint=Αφαίρεση watchpoint
+
+# LOCALIZATION NOTE (watchpoints.removeWatchpointTooltip): This is the text that appears in the
+# tooltip to delete a watchpoint on an object property.
+watchpoints.removeWatchpointTooltip=Αφαίρεση watchpoint
+
+# LOCALIZATION NOTE (sourceTabs.closeTab): Editor source tab context menu item
+# for closing the selected tab below the mouse.
+sourceTabs.closeTab=Κλείσιμο καρτέλας
+sourceTabs.closeTab.accesskey=κ
+sourceTabs.closeTab.key=CmdOrCtrl+W
+
+# LOCALIZATION NOTE (sourceTabs.closeOtherTabs): Editor source tab context menu item
+# for closing the other tabs.
+sourceTabs.closeOtherTabs=Κλείσιμο άλλων
+sourceTabs.closeOtherTabs.accesskey=ε
+
+# LOCALIZATION NOTE (sourceTabs.closeTabsToEnd): Editor source tab context menu item
+# for closing the tabs to the end (the right for LTR languages) of the selected tab.
+sourceTabs.closeTabsToEnd=Κλείσιμο καρτελών προς τα δεξιά
+sourceTabs.closeTabsToEnd.accesskey=ο
+
+# LOCALIZATION NOTE (sourceTabs.closeAllTabs): Editor source tab context menu item
+# for closing all tabs.
+sourceTabs.closeAllTabs=Κλείσιμο όλων των καρτελών
+sourceTabs.closeAllTabs.accesskey=α
+
+# LOCALIZATION NOTE (sourceTabs.revealInTree): Editor source tab context menu item
+# for revealing source in tree.
+sourceTabs.revealInTree=Εμφάνιση στο δέντρο
+sourceTabs.revealInTree.accesskey=ρ
+
+# LOCALIZATION NOTE (sourceTabs.prettyPrint): Editor source tab context menu item
+# for pretty printing the source.
+sourceTabs.prettyPrint=Όμορφη πηγή εκτύπωσης
+sourceTabs.prettyPrint.accesskey=ε
+
+# LOCALIZATION NOTE (sourceFooter.blackbox): Tooltip text associated
+# with the blackbox button
+sourceFooter.blackbox=Προσθήκη πηγής σε μαύρο κουτί
+
+# LOCALIZATION NOTE (sourceFooter.unblackbox): Tooltip text associated
+# with the blackbox button
+sourceFooter.unblackbox=Αφαίρεση πηγής από μαύρο κουτί
+
+# LOCALIZATION NOTE (blackboxContextItem.blackbox): Text associated
+# with the blackbox context menu item
+blackboxContextItem.blackbox=Προσθήκη πηγής σε blackbox
+blackboxContextItem.blackbox.accesskey=Π
+
+# LOCALIZATION NOTE (blackboxContextItem.unblackbox): Text associated
+# with the unblackbox context menu item
+blackboxContextItem.unblackbox=Αφαίρεση πηγής από το blackbox
+blackboxContextItem.unblackbox.accesskey=Α
+
+# LOCALIZATION NOTE (sourceFooter.ignores): Tooltip text associated
+# with the ignores button
+sourceFooter.ignore=Παράβλεψη πηγής
+
+# LOCALIZATION NOTE (sourceFooter.unignore): Tooltip text associated
+# with the ignore button
+sourceFooter.unignore=Αναίρεση παράβλεψης πηγής
+
+# LOCALIZATION NOTE (ignoreContextItem.ignore): Text associated
+# with the ignore context menu item
+ignoreContextItem.ignore=Παράβλεψη πηγής
+ignoreContextItem.ignore.accesskey=Π
+
+# LOCALIZATION NOTE (ignoreContextItem.unignore): Text associated
+# with the unignore context menu item
+ignoreContextItem.unignore=Αναίρεση παράβλεψης πηγής
+ignoreContextItem.unignore.accesskey=Α
+
+# LOCALIZATION NOTE (sourceFooter.mappedSource): Text associated
+# with a mapped source. %S is replaced by the source map origin.
+sourceFooter.mappedSource=(Από %S)
+
+# LOCALIZATION NOTE (sourceFooter.mappedSourceTooltip): Tooltip text associated
+# with a mapped source. %S is replaced by the source map origin.
+sourceFooter.mappedSourceTooltip=(Αντιστοίχιση πηγής από %S)
+
+# LOCALIZATION NOTE (sourceFooter.mappedSuffix): Text associated
+# with a mapped source. Displays next to URLs in tree and tabs.
+sourceFooter.mappedSuffix=(χαρτογραφημένο)
+
+# LOCALIZATION NOTE (sourceFooter.currentCursorPosition): Text associated
+# with the current cursor line and column
+sourceFooter.currentCursorPosition=(%S, %S)
+
+# LOCALIZATION NOTE (sourceFooter.currentCursorPosition.tooltip): Text associated
+# with the current cursor line and column
+sourceFooter.currentCursorPosition.tooltip=(Γραμμή %1$S, στήλη %2$S)
+
+# LOCALIZATION NOTE (sourceTabs.closeTabButtonTooltip): The tooltip that is displayed
+# for close tab button in source tabs.
+sourceTabs.closeTabButtonTooltip=Κλείσιμο καρτέλας
+
+# LOCALIZATION NOTE (scopes.header): Scopes right sidebar pane header.
+scopes.header=Πεδία
+
+# LOCALIZATION NOTE (scopes.notAvailable): Scopes right sidebar pane message
+# for when the debugger is paused, but there isn't pause data.
+scopes.notAvailable=Μη διαθέσιμα πεδία
+
+# LOCALIZATION NOTE (scopes.notPaused): Scopes right sidebar pane message
+# for when the debugger is not paused.
+scopes.notPaused=Χωρίς παύση
+
+# LOCALIZATION NOTE (scopes.mapping.label): Scopes right sidebar pane
+# tooltip for checkbox and label
+scopes.mapping.label=Ονόματα αρχικών μεταβλητών χάρτη
+
+# LOCALIZATION NOTE (eventlisteners.log.label): Event listeners tooltip for
+# checkbox and label
+eventlisteners.log.label=Καταγραφή συμβάντων στην κονσόλα
+
+# LOCALIZATION NOTE (eventlisteners.log): Checkbox label for logging events
+eventlisteners.log=Αρχείο καταγραφής
+
+# LOCALIZATION NOTE (scopes.helpTooltip.label): Scopes right sidebar pane
+# icon tooltip for link to MDN
+scopes.helpTooltip.label=Μάθετε περισσότερα σχετικά με τα πεδία χάρτη
+
+# LOCALIZATION NOTE (scopes.map.label): Checkbox label to map scopes
+scopes.map.label=Χάρτης
+
+# LOCALIZATION NOTE (scopes.block): Refers to a block of code in
+# the scopes pane when the debugger is paused.
+scopes.block=Φραγή
+
+# LOCALIZATION NOTE (sources.header): Sources left sidebar header
+sources.header=Πηγές
+
+# LOCALIZATION NOTE (outline.header): Outline left sidebar header
+outline.header=Περίγραμμα
+
+# LOCALIZATION NOTE (outline.placeholder): Placeholder text for the filter input
+# element
+outline.placeholder=Φιλτράρισμα συναρτήσεων
+
+# LOCALIZATION NOTE (outline.sortLabel): Label for the sort button
+outline.sortLabel=Ταξινόμηση κατά όνομα
+
+# LOCALIZATION NOTE (outline.noFunctions): Outline text when there are no functions to display
+outline.noFunctions=Καμία λειτουργία
+
+# LOCALIZATION NOTE (outline.noFileSelected): Outline text when there are no files selected
+outline.noFileSelected=Κανένα επιλεγμένο αρχείο
+
+# LOCALIZATION NOTE (sources.search): Sources left sidebar prompt
+# e.g. Cmd+P to search. On a mac, we use the command unicode character.
+# On windows, it's ctrl.
+sources.search=%S για αναζήτηση
+
+# LOCALIZATION NOTE (watchExpressions.header): Watch Expressions right sidebar
+# pane header.
+watchExpressions.header=Παρακολούθηση εξαιρέσεων
+
+# LOCALIZATION NOTE (watchExpressions.refreshButton): Watch Expressions header
+# button for refreshing the expressions.
+watchExpressions.refreshButton=Ανανέωση
+
+# LOCALIZATION NOTE (welcome.search): The center pane welcome panel's
+# search prompt. e.g. cmd+p to search for files. On windows, it's ctrl, on
+# a mac we use the unicode character.
+welcome.search=%S για αναζήτηση αρχείων
+
+# LOCALIZATION NOTE (welcome.search2): The center pane welcome panel's
+# search prompt. e.g. cmd+p to search for files. On windows, it's ctrl, on
+# a mac we use the unicode character.
+welcome.search2=%S Μετάβαση σε αρχείο
+
+# LOCALIZATION NOTE (welcome.findInFiles): The center pane welcome panel's
+# search prompt. e.g. cmd+f to search for files. On windows, it's ctrl+shift+f, on
+# a mac we use the unicode character.
+welcome.findInFiles=%S για εύρεση στα αρχεία
+
+# LOCALIZATION NOTE (welcome.findInFiles2): The center pane welcome panel's
+# search prompt. e.g. cmd+f to search for files. On windows, it's ctrl+shift+f, on
+# a mac we use the unicode character.
+welcome.findInFiles2=%S Εύρεση σε αρχεία
+
+# LOCALIZATION NOTE (welcome.allShortcuts): The label to open the modal of
+# shortcuts, displayed in the welcome panel.
+welcome.allShortcuts=Εμφάνιση όλων των συντομεύσεων
+
+# LOCALIZATION NOTE (sourceSearch.search): The center pane Source Search
+# prompt for searching for files.
+sourceSearch.search=Αναζήτηση…
+
+# LOCALIZATION NOTE (sourceSearch.search2): The center pane Source Search
+# prompt for searching for files.
+sourceSearch.search2=Μετάβαση σε αρχείο…
+
+# LOCALIZATION NOTE (pauseOnExceptions): The pause on exceptions button tooltip
+# when the debugger will pause on all exceptions.
+pauseOnExceptions=Παύση σε όλες τις εξαιρέσεις. Κάντε κλικ για παράβλεψη εξαιρέσεων
+
+# LOCALIZATION NOTE (loadingText): The text that is displayed in the script
+# editor when the loading process has started but there is no file to display
+# yet.
+loadingText=Φόρτωση\u2026
+
+# LOCALIZATION NOTE (wasmIsNotAvailable): The text that is displayed in the
+# script editor when the WebAssembly source is not available.
+wasmIsNotAvailable=Παρακαλώ ανανεώστε για αποσφαλμάτωση αυτής της μονάδας
+
+# LOCALIZATION NOTE (errorLoadingText3): The text that is displayed in the debugger
+# viewer when there is an error loading a file
+errorLoadingText3=Σφάλμα φόρτωσης URI: %S
+
+# LOCALIZATION NOTE(gotoLineModal.placeholder): The placeholder
+# text displayed when the user searches for specific lines in a file
+gotoLineModal.placeholder=Μετάβαση στη γραμμή…
+
+# LOCALIZATION NOTE(gotoLineModal.title): The message shown to users
+# to open the go to line modal
+gotoLineModal.title=Μετάβαση σε αριθμό γραμμής ενός αρχείου
+
+# LOCALIZATION NOTE(gotoLineModal.key3): The shortcut for opening the
+# go to line modal
+# Do not localize "Ctrl+G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+gotoLineModal.key3=Ctrl+G
+
+# LOCALIZATION NOTE(symbolSearch.search.functionsPlaceholder): The placeholder
+# text displayed when the user searches for functions in a file
+symbolSearch.search.functionsPlaceholder=Αναζήτηση συναρτήσεων…
+symbolSearch.search.functionsPlaceholder.title=Αναζήτηση συνάρτησης σε αρχείο
+
+# LOCALIZATION NOTE(symbolSearch.search.variablesPlaceholder): The placeholder
+# text displayed when the user searches for variables in a file
+symbolSearch.search.variablesPlaceholder=Αναζήτηση μεταβλητών…
+symbolSearch.search.variablesPlaceholder.title=Αναζήτηση μεταβλητής σε αρχείο
+
+# LOCALIZATION NOTE(symbolSearch.search.key2): The Key Shortcut for
+# searching for a function or variable
+# Do not localize "CmdOrCtrl+Shift+O", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+symbolSearch.search.key2=CmdOrCtrl+Shift+O
+
+# LOCALIZATION NOTE(symbolSearch.searchModifier.modifiersLabel): A label
+# preceding the group of modifiers
+symbolSearch.searchModifier.modifiersLabel=Τροποποιητές:
+
+# LOCALIZATION NOTE(symbolSearch.searchModifier.regex): A search option
+# when searching text in a file
+symbolSearch.searchModifier.regex=Κανονικές εφράσεις
+
+# LOCALIZATION NOTE(symbolSearch.searchModifier.caseSensitive): A search option
+# when searching text in a file
+symbolSearch.searchModifier.caseSensitive=Με διάκριση κεφαλαίων-πεζών
+
+# LOCALIZATION NOTE(symbolSearch.searchModifier.wholeWord): A search option
+# when searching text in a file
+symbolSearch.searchModifier.wholeWord=Ολόκληρη λέξη
+
+experimental=Αυτό είναι ένα πειραματικό χαρακτηριστικό
+
+# LOCALIZATION NOTE (whyPaused.debuggerStatement): The text that is displayed
+# in a info block explaining how the debugger is currently paused due to a `debugger`
+# statement in the code
+whyPaused.debuggerStatement=Παύθηκε σε δήλωση αποσφαλμάτωσης
+
+# LOCALIZATION NOTE (whyPaused.breakpoint): The text that is displayed
+# in a info block explaining how the debugger is currently paused on a breakpoint
+whyPaused.breakpoint=Παύθηκε στο σημείο διακοπής
+
+# LOCALIZATION NOTE (whyPaused.eventBreakpoint): The text that is displayed
+# in a info block explaining how the debugger is currently paused on an event
+# breakpoint.
+whyPaused.eventBreakpoint=Παύθηκε στο σημείο διακοπής συμβάντος
+
+# LOCALIZATION NOTE (whyPaused.exception): The text that is displayed
+# in a info block explaining how the debugger is currently paused on an exception
+whyPaused.exception=Παύθηκε σε εξαίρεση
+
+# LOCALIZATION NOTE (whyPaused.mutationBreakpoint): The text that is displayed
+# in a info block explaining how the debugger is currently paused on a
+# DOM mutation breakpoint
+whyPaused.mutationBreakpoint=Παύθηκε στη μετάλλαξη DOM
+
+# LOCALIZATION NOTE (whyPaused.mutationBreakpointAdded): The text that
+# is displayed to describe an added node which triggers a subtree modification
+whyPaused.mutationBreakpointAdded=Προστέθηκε:
+
+# LOCALIZATION NOTE (whyPaused.mutationBreakpointRemoved): The text that
+# is displayed to describe a removed node which triggers a subtree modification
+whyPaused.mutationBreakpointRemoved=Αφαιρέθηκε:
+
+# LOCALIZATION NOTE (whyPaused.interrupted): The text that is displayed
+# in a info block explaining how the debugger is currently paused at
+# a JS execution
+whyPaused.interrupted=Έγινε παύση στην εξαίρεση
+
+# LOCALIZATION NOTE (whyPaused.resumeLimit): The text that is displayed
+# in a info block explaining how the debugger is currently paused while stepping
+# in or out of the stack
+whyPaused.resumeLimit=Παύση κατά το βήμα
+
+# LOCALIZATION NOTE (whyPaused.pauseOnDOMEvents): The text that is displayed
+# in a info block explaining how the debugger is currently paused on a
+# dom event
+whyPaused.pauseOnDOMEvents=Παύθηκε στον ακροατή γεγονότος
+
+# LOCALIZATION NOTE (whyPaused.breakpointConditionThrown): The text that is displayed
+# in an info block when evaluating a conditional breakpoint throws an error
+whyPaused.breakpointConditionThrown=Σφάλμα με υποθετικό σημείο διακοπής
+
+# LOCALIZATION NOTE (whyPaused.XHR): The text that is displayed
+# in a info block explaining how the debugger is currently paused on an
+# xml http request
+whyPaused.XHR=Έγινε παύση στο XMLHttpRequest
+
+# LOCALIZATION NOTE (whyPaused.promiseRejection): The text that is displayed
+# in a info block explaining how the debugger is currently paused on a
+# promise rejection
+whyPaused.promiseRejection=Παύση στην απόρριψη υπόσχεσης
+
+# LOCALIZATION NOTE (whyPaused.getWatchpoint): The text that is displayed
+# in a info block explaining how the debugger is currently paused at a
+# watchpoint on an object property
+whyPaused.getWatchpoint=Έγινε παύση στην ιδιότητα get
+
+# LOCALIZATION NOTE (whyPaused.setWatchpoint): The text that is displayed
+# in an info block explaining how the debugger is currently paused at a
+# watchpoint on an object property
+whyPaused.setWatchpoint=Έγινε παύση στην ιδιότητα set
+
+# LOCALIZATION NOTE (whyPaused.assert): The text that is displayed
+# in a info block explaining how the debugger is currently paused on an
+# assert
+whyPaused.assert=Παύθηκε σε ισχυρισμό
+
+# LOCALIZATION NOTE (whyPaused.debugCommand): The text that is displayed
+# in a info block explaining how the debugger is currently paused on a
+# debugger statement
+whyPaused.debugCommand=Παύθηκε σε αποσφαλματωμένη λειτουργία
+
+# LOCALIZATION NOTE (whyPaused.other): The text that is displayed
+# in a info block explaining how the debugger is currently paused on an event
+# listener breakpoint set
+whyPaused.other=Η αποσφαλμάτωση παύθηκε
+
+# LOCALIZATION NOTE (ctrl): The text that is used for documenting
+# keyboard shortcuts that use the control key
+ctrl=Ctrl
+
+# LOCALIZATION NOTE (anonymousFunction): this string is used to display
+# JavaScript functions that have no given name - they are said to be
+# anonymous.
+anonymousFunction=<ανώνυμο>
+
+# LOCALIZATION NOTE (stacktrace.asyncStack): this string is used to
+# indicate that a given stack frame has an async parent.
+# %S is the "Async Cause" of the frame.
+stacktrace.asyncStack=(Async: %S)
+
+# LOCALIZATION NOTE (shortcuts.toggleBreakpoint): text describing
+# keyboard shortcut action for toggling breakpoint
+shortcuts.toggleBreakpoint=Εναλλαγή σημείου διακοπής
+shortcuts.toggleBreakpoint.accesskey=Ε
+
+# LOCALIZATION NOTE (shortcuts.toggleCondPanel.breakpoint): text describing
+# keyboard shortcut action for toggling conditional panel for breakpoints
+shortcuts.toggleCondPanel.breakpoint=Επεξεργασία σημείου διακοπής υπό όρους
+
+# LOCALIZATION NOTE (shortcuts.toggleCondPanel.logPoint): text describing
+# keyboard shortcut action for toggling conditional panel for log points
+shortcuts.toggleCondPanel.logPoint=Επεξεργασία σημείου αρχείου καταγραφής
+
+# LOCALIZATION NOTE (shortcuts.pauseOrResume): text describing
+# keyboard shortcut action for pause of resume
+shortcuts.pauseOrResume=Παύση/Συνέχιση
+
+# LOCALIZATION NOTE (shortcuts.stepOver): text describing
+# keyboard shortcut action for stepping over
+shortcuts.stepOver=Βήμα προσπέρασης
+
+# LOCALIZATION NOTE (shortcuts.stepIn): text describing
+# keyboard shortcut action for stepping in
+shortcuts.stepIn=Είσοδος
+
+# LOCALIZATION NOTE (shortcuts.stepOut): text describing
+# keyboard shortcut action for stepping out
+shortcuts.stepOut=Έξοδος
+
+# LOCALIZATION NOTE (shortcuts.fileSearch): text describing
+# keyboard shortcut action for source file search
+shortcuts.fileSearch=Αναζήτηση αρχείου πηγής
+
+# LOCALIZATION NOTE (shortcuts.fileSearch2): text describing
+# keyboard shortcut action for source file search
+shortcuts.fileSearch2=Μετάβαση σε αρχείο
+
+# LOCALIZATION NOTE (shortcuts.gotoLine): text describing
+# keyboard shortcut for jumping to a specific line
+shortcuts.gotoLine=Μετάβαση στη γραμμή
+
+# LOCALIZATION NOTE (shortcuts.searchAgain): text describing
+# keyboard shortcut action for searching again
+shortcuts.searchAgain=Αναζήτηση ξανά
+
+# LOCALIZATION NOTE (shortcuts.searchAgain2): text describing
+# keyboard shortcut action for searching again
+shortcuts.searchAgain2=Εύρεση επόμενου
+
+# LOCALIZATION NOTE (shortcuts.projectSearch): text describing
+# keyboard shortcut action for full project search
+shortcuts.projectSearch=Αναζήτηση πλήρους έργου
+
+# LOCALIZATION NOTE (shortcuts.projectSearch2): text describing
+# keyboard shortcut action for full project search
+shortcuts.projectSearch2=Εύρεση σε αρχεία
+
+# LOCALIZATION NOTE (shortcuts.functionSearch): text describing
+# keyboard shortcut action for function search
+shortcuts.functionSearch=Αναζήτηση λειτουργίας
+
+# LOCALIZATION NOTE (shortcuts.functionSearch2): text describing
+# keyboard shortcut action for function search
+shortcuts.functionSearch2=Εύρεση συνάρτησης
+
+# LOCALIZATION NOTE (shortcuts.buttonName): text describing
+# keyboard shortcut button text
+shortcuts.buttonName=Συντομεύσεις πληκτρολογίου
+
+# LOCALIZATION NOTE (variablesSeparatorLabel): The text that is displayed
+# in the variables list as a separator between the name and value.
+variablesSeparatorLabel=:
+variablesViewOptimizedOut=(αφαιρέθηκε για βελτιστοποίηση)
+variablesViewUninitialized=(δεν έχει αρχικοποιηθεί)
+variablesViewMissingArgs=(μη διαθέσιμη)
+
+# LOCALIZATION NOTE (variablesDomNodeValueTooltip): The text that is displayed
+# in a tooltip on the "open in inspector" button in the the variables list for a
+# DOMNode item.
+variablesDomNodeValueTooltip=Κάντε κλικ για να επιλέξετε τον κόμβο στον επιθεωρητή
+
+# LOCALIZATION NOTE (variablesEditButtonTooltip): The text that is displayed
+# in the variables list on a getter or setter which can be edited.
+variablesEditButtonTooltip=Κάντε κλικ για να ορίσετε τιμή
+
+# LOCALIZATION NOTE (variablesViewErrorStacktrace): This is the text that is
+# shown before the stack trace in an error.
+variablesViewErrorStacktrace=Καταγραφή στοίβας:
+
+# LOCALIZATION NOTE (variablesViewMoreObjects): the text that is displayed
+# when you have an object preview that does not show all of the elements. At the end of the list
+# you see "N more..." in the web console output.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of remaining items in the object
+# example: 3 more…
+variablesViewMoreObjects=#1 ακόμα…;#1 ακόμα…
+
+# LOCALIZATION NOTE (variablesEditableNameTooltip): The text that is displayed
+# in the variables list on an item with an editable name.
+variablesEditableNameTooltip=Κάντε διπλό κλικ για επεξεργασία
+
+# LOCALIZATION NOTE (variablesEditableValueTooltip): The text that is displayed
+# in the variables list on an item with an editable value.
+variablesEditableValueTooltip=Κάντε κλικ για να αλλάξετε την τιμή
+
+# LOCALIZATION NOTE (variablesCloseButtonTooltip): The text that is displayed
+# in the variables list on an item which can be removed.
+variablesCloseButtonTooltip=Κάντε κλικ για κατάργηση
+
+# LOCALIZATION NOTE (configurable|...|Tooltip): The text that is displayed
+# in the variables list on certain variables or properties as tooltips.
+# Explanations of what these represent can be found at the following links:
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/isExtensible
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/isFrozen
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/isSealed
+# It's probably best to keep these in English.
+configurableTooltip=ρυθμιζόμενο
+enumerableTooltip=απαριθμήσιμο
+writableTooltip=εγγράψιμο
+frozenTooltip=παγωμένο
+sealedTooltip=σφραγισμένο
+extensibleTooltip=επεκτάσιμο
+overriddenTooltip=παρακάμφθηκε
+WebIDLTooltip=WebIDL
+
+# LOCALIZATION NOTE (serviceWorkerInfo.parsed): State displayed for a service
+# worker that has been parsed.
+serviceWorkerInfo.parsed=αναλυμένο
+# LOCALIZATION NOTE (serviceWorkerInfo.installing): State displayed for a
+# service worker that is being installed.
+serviceWorkerInfo.installing=εγκατάσταση
+# LOCALIZATION NOTE (serviceWorkerInfo.installed): State displayed for a
+# service worker that has finished being installed.
+serviceWorkerInfo.installed=εγκατεστημένο
+# LOCALIZATION NOTE (serviceWorkerInfo.activating): State displayed for a
+# service worker that is being activated.
+serviceWorkerInfo.activating=ενεργοποίηση
+# LOCALIZATION NOTE (serviceWorkerInfo.activated): State displayed for a
+# service worker that has finished being activated.
+serviceWorkerInfo.activated=ενεργό
+# LOCALIZATION NOTE (serviceWorkerInfo.redundant): State displayed for a
+# service worker that is redundant.
+serviceWorkerInfo.redundant=περιττό
+# LOCALIZATION NOTE (serviceWorkerInfo.unknown): State displayed for a
+# service worker that is in an unknown state.
+serviceWorkerInfo.unknown=άγνωστο
diff --git a/l10n-el/devtools/client/device.properties b/l10n-el/devtools/client/device.properties
new file mode 100644
index 0000000000..519e6cefbd
--- /dev/null
+++ b/l10n-el/devtools/client/device.properties
@@ -0,0 +1,20 @@
+# 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 These strings are used inside Device Emulation developer
+# tools. The correct localization of this file might be to keep it in English,
+# or another language commonly spoken among web developers. You want to make
+# that choice consistent across the developer tools. A good criteria is the
+# language in which you'd find the best documentation on web development on the
+# web.
+
+# LOCALIZATION NOTE:
+# These strings are category names in a list of devices that a user can choose
+# to simulate (e.g. "ZTE Open C", "VIA Vixen", "720p HD Television", etc).
+device.phones=Τηλέφωνα
+device.tablets=Ταμπλέτες
+device.laptops=Φορητοί υπολογιστές
+device.televisions=Τηλεοράσεις
+device.consoles=Κονσόλες παιχνιδιών
+device.watches=Ρολόγια
diff --git a/l10n-el/devtools/client/dom.properties b/l10n-el/devtools/client/dom.properties
new file mode 100644
index 0000000000..7b33cd34c4
--- /dev/null
+++ b/l10n-el/devtools/client/dom.properties
@@ -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/.
+
+# LOCALIZATION NOTE These strings are used inside the DOM panel
+# which is available from the Web Developer sub-menu -> 'DOM'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (dom.filterDOMPanel): A placeholder text used for
+# DOM panel search box.
+dom.filterDOMPanel=Φιλτράρισμα πλαισίου DOM
+
+# LOCALIZATION NOTE (dom.refresh): A label for Refresh button in
+# DOM panel toolbar
+dom.refresh=Ανανέωση \ No newline at end of file
diff --git a/l10n-el/devtools/client/filterwidget.properties b/l10n-el/devtools/client/filterwidget.properties
new file mode 100644
index 0000000000..d2e4fac1e0
--- /dev/null
+++ b/l10n-el/devtools/client/filterwidget.properties
@@ -0,0 +1,61 @@
+# 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 These strings are used in the CSS Filter Editor Widget
+# which can be found in a tooltip that appears in the Rule View when clicking
+# on a filter swatch displayed next to CSS declarations like 'filter: blur(2px)'.
+
+# LOCALIZATION NOTE (emptyFilterList):
+# This string is displayed when filter's list is empty
+# (no filter specified / all removed)
+emptyFilterList=Δεν ορίστηκε φίλτρο
+
+# LOCALIZATION NOTE (emptyPresetList):
+# This string is displayed when preset's list is empty
+emptyPresetList=Δεν έχετε αποθηκευμένες κάποιες προεπιλογές ρυθμίσεων. \
+Μπορείτε να έχετε διαθέσιμες προεπιλογές ρυθμίσεων του φίλτρου επιλέγοντας ένα όνομα και αποθηκεύοντας τες. \
+Οι προεπιλογές ρυθμίσεων είναι άμεσα προσβάσιμες και μπορείτε να τις επαναχρησιμοποιείτε με ευκολία.
+
+# LOCALIZATION NOTE (addUsingList):
+# This string is displayed under [emptyFilterList] when filter's
+# list is empty, guiding user to add a filter using the list below it
+addUsingList=Προσθήκη φίλτρου από την λίστα παρακάτω
+
+# LOCALIZATION NOTE (dropShadowPlaceholder):
+# This string is used as a placeholder for drop-shadow's input
+# in the filter list (shown when <input> is empty)
+dropShadowPlaceholder=χρωματική ακτίνα x y
+
+# LOCALIZATION NOTE (dragHandleTooltipText):
+# This string is used as a tooltip text (shown on mouse hover) on the
+# drag handles of filters which are used to re-order filters
+dragHandleTooltipText=Σύρετε πάνω ή κάτω για να ορίσετε τη σειρά των φίλτρων
+
+# LOCALIZATION NOTE (labelDragTooltipText):
+# This string is used as a tooltip text (shown on mouse hover) on the
+# filters' labels which can be dragged left/right to increase/decrease
+# the filter's value (like photoshop)
+labelDragTooltipText=Σύρετε αριστερά ή δεξιά για να μειώσετε ή αυξήσετε την τιμή
+
+# LOCALIZATION NOTE (filterListSelectPlaceholder):
+# This string is used as a preview option in the list of possible filters
+# <select>
+filterListSelectPlaceholder=Επιλογή φίλτρου
+
+# LOCALIZATION NOTE (addNewFilterButton):
+# This string is displayed on a button used to add new filters
+addNewFilterButton=Προσθήκη
+
+# LOCALIZATION NOTE (newPresetPlaceholder):
+# This string is used as a placeholder in the list of presets which is used to
+# save a new preset
+newPresetPlaceholder=Προκαθορισμένο όνομα
+
+# LOCALIZATION NOTE (savePresetButton):
+# This string is displayed on a button used to save a new preset
+savePresetButton=Αποθήκευση
+
+# LOCALIZATION NOTE(presetsToggleButton):
+# This string is used in a button which toggles the presets list
+presetsToggleButton=Προεπιλογές
diff --git a/l10n-el/devtools/client/font-inspector.properties b/l10n-el/devtools/client/font-inspector.properties
new file mode 100644
index 0000000000..1e44f6b3e6
--- /dev/null
+++ b/l10n-el/devtools/client/font-inspector.properties
@@ -0,0 +1,69 @@
+# 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 This file contains the Font Inspector strings.
+# The Font Inspector is a panel accessible in the Inspector sidebar.
+
+# LOCALIZATION NOTE (fontinspector.system) This label indicates that the font is a local
+# system font.
+fontinspector.system=σύστημα
+
+# LOCALIZATION NOTE (fontinspector.noFontsUsedOnCurrentElement): This label is shown when
+# no fonts were used on the selected element.
+fontinspector.noFontsUsedOnCurrentElement=Καμία γραμματοσειρά στο τρέχον στοιχείο.
+
+# LOCALIZATION NOTE (fontinspector.copyURL): This is the text that appears in a tooltip
+# displayed when the user hovers over the copy icon next to the font URL.
+# Clicking the copy icon copies the full font URL to the user's clipboard
+fontinspector.copyURL=Αντιγραφή URL
+
+# LOCALIZATION NOTE (fontinspector.customInstanceName): Think of instances as presets
+# (groups of settings that apply in bulk to a thing). Instances have names. When the user
+# creates a new instance, it doesn't have a name. This is the text that appears as the
+# default name for a new instance. It shows up in a dropdown from which users can select
+# between predefined instances and this custom instance.
+fontinspector.customInstanceName=Προσαρμοσμένο
+
+# LOCALIZATION NOTE (fontinspector.fontInstanceLabel): This label is shown next to the UI
+# in the font editor which allows a user to select a font instance option from a
+# dropdown. An instance is like a preset. A "font instance" is the term used by the font
+# authors to mean a group of predefined font settings.
+fontinspector.fontInstanceLabel=Προεπιλογή
+
+# LOCALIZATION NOTE (fontinspector.fontSizeLabel): This label is shown next to the UI
+# in the font editor which allows the user to change the font size.
+fontinspector.fontSizeLabel=Μέγεθος
+
+# LOCALIZATION NOTE (fontinspector.fontWeightLabel): This label is shown next to the UI
+# in the font editor which allows the user to change the font weight.
+fontinspector.fontWeightLabel=Πάχος
+
+# LOCALIZATION NOTE (fontinspector.fontItalicLabel): This label is shown next to the UI
+# in the font editor which allows the user to change the style of the font to italic.
+fontinspector.fontItalicLabel=Πλάγια γραφή
+
+# LOCALIZATION NOTE (fontinspector.showMore): Label for a collapsed list of fonts.
+fontinspector.showMore=Εμφάνιση περισσότερων
+
+# LOCALIZATION NOTE (fontinspector.showLess): Label for an expanded list of fonts.
+fontinspector.showLess=Εμφάνιση λιγότερων
+
+# LOCALIZATION NOTE (fontinspector.letterSpacingLabel): Label for the UI to change the
+# letter spacing in the font editor.
+fontinspector.letterSpacingLabel=Διάστιχο
+
+# LOCALIZATION NOTE (fontinspector.lineHeightLabelCapitalized): Label for the UI to change the line height in the font editor.
+fontinspector.lineHeightLabelCapitalized=Ύψος γραμμής
+
+# LOCALIZATION NOTE (fontinspector.allFontsOnPageHeader): Header for the section listing
+# all the fonts on the current page.
+fontinspector.allFontsOnPageHeader=Όλες οι γραμματοσειρές στη σελίδα
+
+# LOCALIZATION NOTE (fontinspector.fontsUsedLabel): Label for the Font Editor section
+# which shows the fonts used on the selected element.
+fontinspector.fontsUsedLabel=Γραμματοσειρές σε χρήση
+
+# LOCALIZATION NOTE (fontinspector.previewTextPlaceholder): Placeholder for the input
+# where the user can type text to get a preview of it using a font.
+fontinspector.previewTextPlaceholder=Κείμενο προεπισκόπησης γραμματοσειράς
diff --git a/l10n-el/devtools/client/graphs.properties b/l10n-el/devtools/client/graphs.properties
new file mode 100644
index 0000000000..712d4c6c65
--- /dev/null
+++ b/l10n-el/devtools/client/graphs.properties
@@ -0,0 +1,24 @@
+# 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 These strings are used inside the Performance Tools
+# which is available from the Web Developer sub-menu -> 'Performance'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web. These strings
+# are specifically for marker names in the performance tool.
+
+# LOCALIZATION NOTE (graphs.label.average):
+# This string is displayed on graphs when showing an average.
+graphs.label.average=μέσος όρος
+
+# LOCALIZATION NOTE (graphs.label.minimum):
+# This string is displayed on graphs when showing a minimum.
+graphs.label.minimum=ελάχιστο
+
+# LOCALIZATION NOTE (graphs.label.maximum):
+# This string is displayed on graphs when showing a maximum.
+graphs.label.maximum=μέγιστο
diff --git a/l10n-el/devtools/client/har.properties b/l10n-el/devtools/client/har.properties
new file mode 100644
index 0000000000..4c139d06b2
--- /dev/null
+++ b/l10n-el/devtools/client/har.properties
@@ -0,0 +1,22 @@
+# 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 These strings are used inside the Network Monitor
+# which is available from the Web Developer sub-menu -> 'Network Monitor'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (har.responseBodyNotIncluded): A label used within
+# HAR file explaining that HTTP response bodies are not includes
+# in exported data.
+har.responseBodyNotIncluded=Το σώμα των απαντήσεων δεν συμπεριλαμβάνεται.
+
+# LOCALIZATION NOTE (har.responseBodyNotIncluded): A label used within
+# HAR file explaining that HTTP request bodies are not includes
+# in exported data.
+har.requestBodyNotIncluded=Το σώμα των αιτήσεων δεν συμπεριλαμβάνεται.
+
diff --git a/l10n-el/devtools/client/inspector.properties b/l10n-el/devtools/client/inspector.properties
new file mode 100644
index 0000000000..ac15a6a398
--- /dev/null
+++ b/l10n-el/devtools/client/inspector.properties
@@ -0,0 +1,557 @@
+# 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 These strings are used inside the Inspector
+# which is available from the Web Developer sub-menu -> 'Inspect'.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+inspector.panelLabel.markupView=Προβολή Markup
+
+# LOCALIZATION NOTE (markupView.more.showing)
+# When there are too many nodes to load at once, we will offer to
+# show all the nodes.
+markupView.more.showing=Ορισμένοι κόμβοι ήταν κρυμμένοι.
+
+# LOCALIZATION NOTE (markupView.more.showAll2): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+markupView.more.showAll2=Προβολή ενός ακόμα κόμβου; Προβολή όλων των #1 κόμβων
+
+# LOCALIZATION NOTE (markupView.whitespaceOnly.label)
+# Used in the badge that appears when whitespace-only text nodes are displayed in the
+# inspector.
+markupView.whitespaceOnly.label=κενό διάστημα
+
+# LOCALIZATION NOTE (markupView.whitespaceOnly)
+# Used in a tooltip that appears when the user hovers over whitespace-only text nodes in
+# the inspector. %S in the content will be replaced by the whitespace characters used in
+# the text node.
+markupView.whitespaceOnly=Κόμβος κειμένου μόνο με κενό: %S
+
+# LOCALIZATION NOTE (markupView.display.flex.tooltiptext2)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.flex.tooltiptext2=Αυτό το στοιχείο συμπεριφέρεται σαν στοιχείο μπλοκ και εκθέτει το περιεχόμενό του σύμφωνα με το μοντέλο flexbox. Κάντε κλικ για εναλλαγή της επικάλυψης flexbox για αυτό το στοιχείο.
+
+# LOCALIZATION NOTE (markupView.display.inlineFlex.tooltiptext2)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.inlineFlex.tooltiptext2=Αυτό το στοιχείο συμπεριφέρεται σαν στοιχείο εντός γραμμής και εκθέτει το περιεχόμενό του σύμφωνα με το μοντέλο flexbox. Κάντε κλικ για εναλλαγή της επικάλυψης flexbox για αυτό το στοιχείο.
+
+# LOCALIZATION NOTE (markupView.display.grid.tooltiptext2)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.grid.tooltiptext2=Αυτό το στοιχείο συμπεριφέρεται σαν στοιχείο μπλοκ και εκθέτει το περιεχόμενό του σύμφωνα με το μοντέλο πλέγματος. Κάντε κλικ για εναλλαγή της επικάλυψης πλέγματος για αυτό το στοιχείο.
+
+# LOCALIZATION NOTE (markupView.display.inlineGrid.tooltiptext2)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.inlineGrid.tooltiptext2=Αυτό το στοιχείο συμπεριφέρεται σαν στοιχείο εντός γραμμής και εκθέτει το περιεχόμενό του σύμφωνα με το μοντέλο πλέγματος. Κάντε κλικ για εναλλαγή της επικάλυψης πλέγματος για αυτό το στοιχείο.
+
+# LOCALIZATION NOTE (markupView.display.subgrid.tooltiptext)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.subgrid.tooltiptiptext=Αυτό το στοιχείο διατάσσει το περιεχόμενό του σύμφωνα με το μοντέλο πλέγματος, αλλά μεταθέτει τον ορισμό γραμμών ή/και στηλών στο γονικό του πλέγμα.
+
+# LOCALIZATION NOTE (markupView.display.flowRoot.tooltiptext)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.flowRoot.tooltiptext=Το στοιχείο αυτό δημιουργεί ένα στοιχείο πλαισίου block που καθορίζει μια νέα μορφοποίηση block.
+
+# LOCALIZATION NOTE (markupView.display.contents.tooltiptext2)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.contents.tooltiptext2=Το στοιχείο αυτό δεν παράγει συγκεκριμένο πλαίσιο από μόνο του, αλλά αποδίδει το περιεχόμενό του.
+
+# LOCALIZATION NOTE (markupView.event.tooltiptext)
+# Used in a tooltip that appears when the user hovers over 'event' badge in
+# the markup view.
+markupView.event.tooltiptext=Ακροατής συμβάντος
+
+# LOCALIZATION NOTE (markupView.custom.tooltiptext)
+# Used in a tooltip that appears when the user hovers over 'custom' badge in
+# the markup view. Only displayed on custom elements with a shadow root attached.
+markupView.custom.tooltiptext=Εμφάνιση ορισμού προσαρμοσμένου στοιχείου
+
+# LOCALIZATION NOTE (markupView.newAttribute.label)
+# This is used to speak the New Attribute button when editing a tag
+# and a screen reader user tabs to it. This string is not visible onscreen.
+markupView.newAttribute.label=Νέα ιδιότητα
+
+# LOCALIZATION NOTE (markupView.revealLink.tooltip)
+# Used as a tooltip for an icon in the markup view when displaying elements inserted in
+# <slot> nodes in a custom component. When clicking on the icon, the corresponding
+# non-slotted container will be selected
+markupView.revealLink.tooltip=Αποκάλυψη
+
+#LOCALIZATION NOTE: Used in the image preview tooltip when the image could not be loaded
+previewTooltip.image.brokenImage=Αδύνατη η φόρτωση της εικόνας
+
+# LOCALIZATION NOTE: Used in color picker tooltip when the eyedropper is disabled for
+# non-HTML documents
+eyedropper.disabled.title=Μη διαθέσιμο σε μη-HTML έγγραφα
+
+#LOCALIZATION NOTE: Used in the event tooltip to allow the debugger to be opened
+eventsTooltip.openInDebugger=Άνοιγμα στην Αποσφαλμάτωση
+
+#LOCALIZATION NOTE: Used in the event tooltip when a script's filename cannot be detected
+eventsTooltip.unknownLocation=Άγνωστη τοποθεσία
+
+#LOCALIZATION NOTE: Used in the mouseover tooltip when hovering "Unknown location."
+eventsTooltip.unknownLocationExplanation=Δεν ήταν δυνατή η ανίχνευση της αρχικής τοποθεσίας αυτού του ακροατή. Ο κώδικας ενδέχεται να μεταγλωττίζεται από ένα εργαλείο, όπως το Babel.
+
+#LOCALIZATION NOTE: Used in the tooltip for Bubbling
+eventsTooltip.Bubbling=Διάδοση
+
+#LOCALIZATION NOTE: Used in the tooltip for Capturing
+eventsTooltip.Capturing=Εγγραφή
+
+# LOCALIZATION NOTE (allTabsMenuButton.tooltip): The tooltip that gets
+# displayed when hovering over the tabs overflow button.
+allTabsMenuButton.tooltip=Εμφάνιση όλων των καρτελών
+
+# LOCALIZATION NOTE (inspector.showThreePaneMode): This is the tooltip for the button
+# that toggles on the 3 pane inspector mode.
+inspector.showThreePaneMode=Ενεργοποίηση επιθεώρησης 3 παραθύρων
+
+# LOCALIZATION NOTE (inspector.hideThreePaneMode): This is the tooltip for the button
+# that toggles off the 3 pane inspector mode.
+inspector.hideThreePaneMode=Απενεργοποίηση επιθεώρησης 3 παραθύρων
+
+# LOCALIZATION NOTE (inspector.searchResultsCount2): This is the label that
+# will show up next to the inspector search box. %1$S is the current result
+# index and %2$S is the total number of search results. For example: "3 of 9".
+# This won't be visible until the search box is updated in Bug 835896.
+inspector.searchResultsCount2=%1$S από %2$S
+
+# LOCALIZATION NOTE (inspector.searchResultsNone): This is the label that
+# will show up next to the inspector search box when no matches were found
+# for the given string.
+# This won't be visible until the search box is updated in Bug 835896.
+inspector.searchResultsNone=Κανένα ταίριασμα
+
+# LOCALIZATION NOTE (inspector.menu.openUrlInNewTab.label): This is the label of
+# a menu item in the inspector contextual-menu that appears when the user right-
+# clicks on the attribute of a node in the inspector that is a URL, and that
+# allows to open that URL in a new tab.
+inspector.menu.openUrlInNewTab.label=Άνοιγμα συνδέσμου σε νέα καρτέλα
+
+# LOCALIZATION NOTE (inspector.menu.copyUrlToClipboard.label): This is the label
+# of a menu item in the inspector contextual-menu that appears when the user
+# right-clicks on the attribute of a node in the inspector that is a URL, and
+# that allows to copy that URL in the clipboard.
+inspector.menu.copyUrlToClipboard.label=Αντιγραφή διεύθυνσης συνδέσμου
+
+# LOCALIZATION NOTE (inspector.menu.selectElement.label): This is the label of a
+# menu item in the inspector contextual-menu that appears when the user right-
+# clicks on the attribute of a node in the inspector that is the ID of another
+# element in the DOM (like with <label for="input-id">), and that allows to
+# select that element in the inspector.
+inspector.menu.selectElement.label=Επιλογή στοιχείου #%S
+
+# LOCALIZATION NOTE (inspectorEditAttribute.label): This is the label of a
+# sub-menu "Attribute" in the inspector contextual-menu that appears
+# when the user right-clicks on the node in the inspector, and that allows
+# to edit an attribute on this node.
+inspectorEditAttribute.label=Επεξεργασία ιδιότητας %S
+inspectorEditAttribute.accesskey=Ε
+
+# LOCALIZATION NOTE (inspectorRemoveAttribute.label): This is the label of a
+# sub-menu "Attribute" in the inspector contextual-menu that appears
+# when the user right-clicks on the attribute of a node in the inspector,
+# and that allows to remove this attribute.
+inspectorRemoveAttribute.label=Αφαίρεση ιδιότητας %S
+inspectorRemoveAttribute.accesskey=Α
+
+# LOCALIZATION NOTE (inspectorCopyAttributeValue.label): This is the label of a
+# sub-menu "Attribute" in the inspector contextual-menu that appears
+# when the user right-clicks on the attribute of a node in the inspector,
+# and that allows to copy the attribute value to clipboard.
+inspectorCopyAttributeValue.label=Αντιγραφή τιμής ιδιότητας “%S”
+inspectorCopyAttributeValue.accesskey=Τ
+
+# LOCALIZATION NOTE (inspector.nodePreview.highlightNodeLabel):
+# This string is displayed in a tooltip that is shown when hovering over a the
+# inspector icon displayed next to a DOM node preview (e.g. next to something
+# like "div#foo.bar").
+# DOM node previews can be displayed in places like the animation-inspector, the
+# console or the object inspector.
+# The tooltip invites the user to click on the icon in order to highlight the
+# node in the page.
+inspector.nodePreview.highlightNodeLabel=Κάντε κλικ για να επισημάνετε αυτόν τον κόμβο στη σελίδα
+
+# LOCALIZATION NOTE (inspectorHTMLEdit.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users edit the
+# (outer) HTML of the current node
+inspectorHTMLEdit.label=Επεξεργασία ως HTML
+inspectorHTMLEdit.accesskey=Π
+
+# LOCALIZATION NOTE (inspectorCopyInnerHTML.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users copy the
+# inner HTML of the current node
+inspectorCopyInnerHTML.label=Εσωτερικό HTML
+inspectorCopyInnerHTML.accesskey=Σ
+
+# LOCALIZATION NOTE (inspectorCopyOuterHTML.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users copy the
+# outer HTML of the current node
+inspectorCopyOuterHTML.label=Εξωτερικό HTML
+inspectorCopyOuterHTML.accesskey=Ξ
+
+# LOCALIZATION NOTE (inspectorCopyCSSSelector.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users copy
+# the CSS Selector of the current node
+inspectorCopyCSSSelector.label=Επιλογή CSS
+inspectorCopyCSSSelector.accesskey=Ι
+
+# LOCALIZATION NOTE (inspectorCopyCSSPath.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users copy
+# the full CSS path of the current node
+inspectorCopyCSSPath.label=Διαδρομή CSS
+inspectorCopyCSSPath.accesskey=Δ
+
+# LOCALIZATION NOTE (inspectorCopyXPath.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users copy
+# the XPath of the current node
+inspectorCopyXPath.label=XPath
+inspectorCopyXPath.accesskey=X
+
+# LOCALIZATION NOTE (inspectorPasteOuterHTML.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users paste outer
+# HTML in the current node
+inspectorPasteOuterHTML.label=Εξωτερικό HTML
+inspectorPasteOuterHTML.accesskey=Ξ
+
+# LOCALIZATION NOTE (inspectorPasteInnerHTML.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users paste inner
+# HTML in the current node
+inspectorPasteInnerHTML.label=Εσωτερικό HTML
+inspectorPasteInnerHTML.accesskey=Σ
+
+# LOCALIZATION NOTE (inspectorHTMLPasteBefore.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users paste
+# the HTML before the current node
+inspectorHTMLPasteBefore.label=Πριν
+inspectorHTMLPasteBefore.accesskey=Ρ
+
+# LOCALIZATION NOTE (inspectorHTMLPasteAfter.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users paste
+# the HTML after the current node
+inspectorHTMLPasteAfter.label=Μετά
+inspectorHTMLPasteAfter.accesskey=Μ
+
+# LOCALIZATION NOTE (inspectorHTMLPasteFirstChild.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users paste
+# the HTML as the first child the current node
+inspectorHTMLPasteFirstChild.label=Ως πρώτο παιδί
+inspectorHTMLPasteFirstChild.accesskey=Π
+
+# LOCALIZATION NOTE (inspectorHTMLPasteLastChild.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users paste
+# the HTML as the last child the current node
+inspectorHTMLPasteLastChild.label=Ως τελευταίο παιδί
+inspectorHTMLPasteLastChild.accesskey=Τ
+
+# LOCALIZATION NOTE (inspectorScrollNodeIntoView.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users scroll
+# the current node into view
+inspectorScrollNodeIntoView.label=Κύλιση στην προβολή
+inspectorScrollNodeIntoView.accesskey=Κ
+
+# LOCALIZATION NOTE (inspectorHTMLDelete.label): This is the label shown in
+# the inspector contextual-menu for the item that lets users delete the
+# current node
+inspectorHTMLDelete.label=Διαγραφή κόμβου
+inspectorHTMLDelete.accesskey=Δ
+
+# LOCALIZATION NOTE (inspectorAttributesSubmenu.label): This is the label
+# shown in the inspector contextual-menu for the sub-menu of the other
+# attribute items, which allow to:
+# - add new attribute
+# - edit attribute
+# - remove attribute
+inspectorAttributesSubmenu.label=Ιδιότητες
+inspectorAttributesSubmenu.accesskey=Ι
+
+# LOCALIZATION NOTE (inspectorAddAttribute.label): This is the label shown in
+# the inspector contextual-menu for the item that lets users add attribute
+# to current node
+inspectorAddAttribute.label=Προσθήκη ιδιότητας
+inspectorAddAttribute.accesskey=Π
+
+# LOCALIZATION NOTE (inspectorPseudoClassSubmenu.label): This is the label
+# shown in the inspector contextual-menu for the sub-menu of the pseudo-classes.
+inspectorPseudoClassSubmenu.label=Αλλαγή ψευδοκλάσης
+
+# LOCALIZATION NOTE (inspectorBreakpointSubmenu.label): This is the label
+# shown in the inspector contextual-menu for the sub-menu of the DOM breakpoints.
+inspectorBreakpointSubmenu.label=Διακοπή σε…
+
+# LOCALIZATION NOTE (inspectorSubtreeModification.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users add a DOM breakpoint
+# for subtree modification.
+inspectorSubtreeModification.label=Τροποποίηση υποδέντρου
+
+# LOCALIZATION NOTE (inspectorAttributeModification.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users add a DOM breakpoint
+# for attribute modification.
+inspectorAttributeModification.label=Τροποποίηση ιδιότητας
+
+# LOCALIZATION NOTE (inspectorNodeRemoval.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users add a DOM breakpoint
+# for node removal.
+inspectorNodeRemoval.label=Αφαίρεση κόμβου
+
+# LOCALIZATION NOTE (inspectorSearchHTML.label3): This is the label that is
+# shown as the placeholder for the markup view search in the inspector.
+inspectorSearchHTML.label3=Αναζήτηση HTML
+
+# LOCALIZATION NOTE (inspectorImageDataUri.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users copy
+# the URL embedding the image data encoded in Base 64 (what we name
+# here Image Data URL). For more information:
+# https://developer.mozilla.org/en-US/docs/Web/HTTP/data_URIs
+inspectorImageDataUri.label=Δεδομένα-URL εικόνας
+
+# LOCALIZATION NOTE (inspectorShowDOMProperties.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users see
+# the DOM properties of the current node. When triggered, this item
+# opens the split Console and displays the properties in its side panel.
+inspectorShowDOMProperties.label=Εμφάνιση ιδιοτήτων DOM
+
+# LOCALIZATION NOTE (inspectorShowAccessibilityProperties.label): This is the
+# label shown in the inspector contextual-menu for the item that lets users see
+# the accessibility tree and accessibility properties of the current node.
+# When triggered, this item opens accessibility panel and selects an accessible
+# object for the given node.
+inspectorShowAccessibilityProperties.label=Εμφάνιση ιδιοτήτων προσβασιμότητας
+
+# LOCALIZATION NOTE (inspectorUseInConsole.label): This is the label
+# shown in the inspector contextual-menu for the item that outputs a
+# variable for the current node to the console. When triggered,
+# this item opens the split Console.
+inspectorUseInConsole.label=Χρήση σε κονσόλα
+
+# LOCALIZATION NOTE (inspectorExpandNode.label): This is the label
+# shown in the inspector contextual-menu for recursively expanding
+# mark-up elements
+inspectorExpandNode.label=Επέκταση όλων
+
+# LOCALIZATION NOTE (inspectorCollapseAll.label): This is the label
+# shown in the inspector contextual-menu for recursively collapsing
+# mark-up elements
+inspectorCollapseAll.label=Σύμπτυξη όλων
+
+# LOCALIZATION NOTE (inspectorScreenshotNode.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users take
+# a screenshot of the currently selected node.
+inspectorScreenshotNode.label=Στιγμιότυπο κόμβου
+
+# LOCALIZATION NOTE (inspectorDuplicateNode.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users
+# duplicate the currently selected node.
+inspectorDuplicateNode.label=Διπλασιασμός κόμβου
+
+# LOCALIZATION NOTE (inspectorAddNode.label): This is the label shown in
+# the inspector toolbar for the button that lets users add elements to the
+# DOM (as children of the currently selected element).
+inspectorAddNode.label=Δημιουργία νέου κόμβου
+inspectorAddNode.accesskey=Δ
+
+# LOCALIZATION NOTE (inspectorCopyHTMLSubmenu.label): This is the label
+# shown in the inspector contextual-menu for the sub-menu of the other
+# copy items, which allow to:
+# - Copy Inner HTML
+# - Copy Outer HTML
+# - Copy Unique selector
+# - Copy Image data URI
+inspectorCopyHTMLSubmenu.label=Αντιγραφή
+
+# LOCALIZATION NOTE (inspectorPasteHTMLSubmenu.label): This is the label
+# shown in the inspector contextual-menu for the sub-menu of the other
+# paste items, which allow to:
+# - Paste Inner HTML
+# - Paste Outer HTML
+# - Before
+# - After
+# - As First Child
+# - As Last Child
+inspectorPasteHTMLSubmenu.label=Επικόλληση
+
+# LOCALIZATION NOTE (inspectorCustomElementDefinition.label): This is the label
+# shown in the inspector contextual-menu for custom elements to which a shadow root has
+# been attached. Clicking on the menu item will open the Debugger on the custom element
+# definition location.
+inspectorCustomElementDefinition.label=Προβολή προσαρμοσμένου στοιχείου
+
+# LOCALIZATION NOTE (inspector.searchHTML.key):
+# Key shortcut used to focus the DOM element search box on top-right corner of
+# the markup view
+inspector.searchHTML.key=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (markupView.hide.key):
+# Key shortcut used to hide the selected node in the markup view.
+markupView.hide.key=h
+
+# LOCALIZATION NOTE (markupView.edit.key):
+# Key shortcut used to hide the selected node in the markup view.
+markupView.edit.key=F2
+
+# LOCALIZATION NOTE (markupView.scrollInto.key):
+# Key shortcut used to scroll the webpage in order to ensure the selected node
+# is visible
+markupView.scrollInto.key=s
+
+# LOCALIZATION NOTE (inspector.sidebar.fontInspectorTitle):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying the list of fonts used in the page.
+inspector.sidebar.fontInspectorTitle=Γραμματοσειρές
+
+# LOCALIZATION NOTE (inspector.sidebar.changesViewTitle):
+# Title of the Changes sidebar tab shown in the Inspector panel. The Changes panel shows
+# style changes made using DevTools.
+inspector.sidebar.changesViewTitle=Αλλαγές
+
+# LOCALIZATION NOTE (inspector.sidebar.ruleViewTitle):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying the list of CSS rules used
+# in the page.
+inspector.sidebar.ruleViewTitle=Κανόνες
+
+# LOCALIZATION NOTE (inspector.sidebar.computedViewTitle):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying the list of computed CSS values
+# used in the page.
+inspector.sidebar.computedViewTitle=Υπολογισμένα
+
+# LOCALIZATION NOTE (inspector.sidebar.layoutViewTitle2):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying layout information defined in the page.
+inspector.sidebar.layoutViewTitle2=Διάταξη
+
+# LOCALIZATION NOTE (inspector.sidebar.animationInspectorTitle):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying animations defined in the page.
+inspector.sidebar.animationInspectorTitle=Εφέ κίνησης
+
+# LOCALIZATION NOTE (inspector.sidebar.compatibilityViewTitle):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying web compatibility information about the page.
+inspector.sidebar.compatibilityViewTitle=Συμβατότητα
+
+# LOCALIZATION NOTE (inspector.eyedropper.label): A string displayed as the tooltip of
+# a button in the inspector which toggles the Eyedropper tool
+inspector.eyedropper.label=Λήψη χρώματος από τη σελίδα
+
+# LOCALIZATION NOTE (inspector.breadcrumbs.label): A string visible only to a screen reader and
+# is used to label (using aria-label attribute) a container for inspector breadcrumbs
+inspector.breadcrumbs.label=Ψίχουλα
+
+# LOCALIZATION NOTE (inspector.browserStyles.label): This is the label for the checkbox
+# that specifies whether the styles that are not from the user's stylesheet should be
+# displayed or not.
+inspector.browserStyles.label=Στυλ του περιηγητή
+
+# LOCALIZATION NOTE (inspector.filterStyles.placeholder): This is the placeholder that
+# goes in the search box when no search term has been entered.
+inspector.filterStyles.placeholder=Φιλτράρισμα στυλ
+
+# LOCALIZATION NOTE (inspector.addRule.tooltip): This is the tooltip shown when
+# hovering the `Add new rule` button in the rules view toolbar. This should
+# match ruleView.contextmenu.addNewRule in styleinspector.properties
+inspector.addRule.tooltip=Προσθήκη νέου κανόνα
+
+# LOCALIZATION NOTE (inspector.togglePseudo.tooltip): This is the tooltip
+# shown when hovering over the `Toggle Pseudo Class Panel` button in the
+# rule view toolbar.
+inspector.togglePseudo.tooltip=(Απ)ενεργοποίηση ψευδο-τάξεων
+
+# LOCALIZATION NOTE (inspector.classPanel.toggleClass.tooltip): This is the tooltip
+# shown when hovering over the `Toggle Class Panel` button in the
+# rule view toolbar.
+inspector.classPanel.toggleClass.tooltip=(Απ)ενεργοποίηση κλάσεων
+
+# LOCALIZATION NOTE (inspector.classPanel.newClass.placeholder): This is the placeholder
+# shown inside the text field used to add a new class in the rule-view.
+inspector.classPanel.newClass.placeholder=Προσθήκη νέας κλάσης
+
+# LOCALIZATION NOTE (inspector.classPanel.noClasses): This is the text displayed in the
+# class panel when the current element has no classes applied.
+inspector.classPanel.noClasses=Καμία κλάση σε αυτό το στοιχείο
+
+# LOCALIZATION NOTE (inspector.noProperties): In the case where there are no CSS
+# properties to display e.g. due to search criteria this message is
+# displayed.
+inspector.noProperties=Δεν βρέθηκαν ιδιότητες CSS.
+
+# LOCALIZATION NOTE (inspector.printSimulation.tooltip):
+# This is the tooltip of the print simulation button in the Rule View toolbar
+# that toggles print simulation.
+inspector.printSimulation.tooltip = Εναλλαγή προσομοίωσης μέσων εκτύπωσης για τη σελίδα
+
+# LOCALIZATION NOTE (inspector.colorSchemeSimulation.tooltip):
+# This is the tooltip of the color scheme simulation button in the Rule View
+# toolbar that toggles color scheme simulation.
+inspector.colorSchemeSimulation.tooltip=Εναλλαγή προσομοίωσης συνόλου χρωμάτων για τη σελίδα
+
+# LOCALIZATION NOTE (markupView.scrollableBadge.label): This is the text displayed inside a
+# badge, in the inspector, next to nodes that are scrollable in the page.
+markupView.scrollableBadge.label=κύλιση
+
+# LOCALIZATION NOTE (markupView.scrollableBadge.tooltip): This is the tooltip that is displayed
+# when hovering over badges next to scrollable elements in the inspector.
+markupView.scrollableBadge.tooltip=Αυτό το στοιχείο έχει υπερχείλιση με δυνατότητα κύλισης.
+
+# LOCALIZATION NOTE (markupView.scrollableBadge.interactive.tooltip): This is the tooltip that is displayed
+# when hovering over interactive badges next to scrollable elements in the inspector.
+markupView.scrollableBadge.interactive.tooltip=Αυτό το στοιχείο έχει υπερχείλιση με δυνατότητα κύλισης. Κάντε κλικ για να αποκαλύψετε τα στοιχεία που προκαλούν την υπερχείλιση.
+
+# LOCALIZATION NOTE (markupView.overflowBadge.label): This is the text displayed inside a
+# badge, in the inspector, next to nodes that are causing overflow in other elements.
+markupView.overflowBadge.label=υπερχείλιση
+
+# LOCALIZATION NOTE (markupView.overflowBadge.tooltip): This is the tooltip that is displayed
+# when hovering over badges next to overflow causing elements in the inspector.
+markupView.overflowBadge.tooltip=Αυτό το στοιχείο προκαλεί υπερχείλιση ενός στοιχείου.
+
+# LOCALIZATION NOTE (rulePreviewTooltip.noAssociatedRule): This is the text displayed inside
+# the RulePreviewTooltip when a rule cannot be found for a CSS property declaration.
+rulePreviewTooltip.noAssociatedRule=Κανένας σχετικός κανόνας
+
+# LOCALIZATION NOTE (colorPickerTooltip.contrastAgainstBgTitle): A title text for the
+# contrast ratio value description that labels the background the color contrast ratio is calculated
+# against, used together with the actual background color. %S in the content will be replaced by a
+# span (containing bg color swatch) and textNode (containing bg color hex string) at run time
+colorPickerTooltip.contrastAgainstBgTitle=Υπολογίστηκε βάσει φόντου: %S
+
+# LOCALIZATION NOTE (colorPickerTooltip.spectrumDraggerTitle): A title text for the
+# spectrum dragger panel in the color picker tooltip.
+colorPickerTooltip.spectrumDraggerTitle=Φάσμα
+
+# LOCALIZATION NOTE (colorPickerTooltip.eyedropperTitle): A title text for the
+# eyedropper in the color picker tooltip.
+colorPickerTooltip.eyedropperTitle=Επιλέξτε χρώμα στη σελίδα
+
+# LOCALIZATION NOTE (colorPickerTooltip.colorNameTitle): A title text for the
+# closest color name shown in the color picker tooltip, used together with the actual color.
+# %S in the content will be replaced by the color name the current color is closest to.
+colorPickerTooltip.colorNameTitle=Πλησιέστερα σε: %S
+
+# LOCALIZATION NOTE (colorPickerTooltip.hueSliderTitle): A title text for the
+# hue slider in the color picker tooltip.
+colorPickerTooltip.hueSliderTitle=Απόχρωση
+
+# LOCALIZATION NOTE (colorPickerTooltip.alphaSliderTitle): A title text for the
+# alpha slider in the color picker tooltip.
+colorPickerTooltip.alphaSliderTitle=Αδιαφάνεια
+
+# LOCALIZATION NOTE (colorPickerTooltip.contrast.large.title): A title text for the color
+# contrast ratio description in the color picker tooltip, used together with the specification
+# that the color contrast criteria used is for large text. %S in the content will be replaced by a
+# large text indicator span at run time.
+colorPickerTooltip.contrast.large.title=Αντίθεση %S:
diff --git a/l10n-el/devtools/client/jit-optimizations.properties b/l10n-el/devtools/client/jit-optimizations.properties
new file mode 100644
index 0000000000..f564f1c686
--- /dev/null
+++ b/l10n-el/devtools/client/jit-optimizations.properties
@@ -0,0 +1,35 @@
+# 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 These strings are used within the JIT tools
+# in the Performance Tools which is available from the Web Developer
+# sub-menu -> 'Performance' The correct localization of this file might
+# be to keep it in English, or another language commonly spoken among
+# web developers. You want to make that choice consistent across the
+# developer tools. A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (jit.title):
+# This string is displayed in the header of the JIT Optimizations view.
+jit.title=Βελτιστοποιήσεις JIT
+
+# LOCALIZATION NOTE (jit.optimizationFailure):
+# This string is displayed in a tooltip when no JIT optimizations were detected.
+jit.optimizationFailure=Η βελτιστοποίηση απέτυχε
+
+# LOCALIZATION NOTE (jit.samples):
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This string is displayed for the unit representing the number of times a
+# frame is sampled.
+# "#1" represents the number of samples
+# example: 30 samples
+jit.samples=#1 δείγμα;#1 δείγματα
+
+# LOCALIZATION NOTE (jit.types):
+# This string is displayed for the group of Ion Types in the optimizations view.
+jit.types=Τύποι
+
+# LOCALIZATION NOTE (jit.attempts):
+# This string is displayed for the group of optimization attempts in the optimizations view.
+jit.attempts=Προσπάθειες
diff --git a/l10n-el/devtools/client/jsonview.properties b/l10n-el/devtools/client/jsonview.properties
new file mode 100644
index 0000000000..c1c44293b2
--- /dev/null
+++ b/l10n-el/devtools/client/jsonview.properties
@@ -0,0 +1,47 @@
+# 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 These strings are used in the JSON View tool
+# that is used to inspect application/json document types loaded
+# in the browser.
+
+# LOCALIZATION NOTE The correct localization of this file might be to keep it
+# in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best documentation
+# on web development on the web.
+
+# LOCALIZATION NOTE (jsonViewer.tab.JSON, jsonViewer.tab.RawData,
+# jsonViewer.tab.Headers): Label for a panel tab.
+jsonViewer.tab.JSON=JSON
+jsonViewer.tab.RawData=Ακατέργαστα δεδομένα
+jsonViewer.tab.Headers=Κεφαλίδες
+
+# LOCALIZATION NOTE (jsonViewer.responseHeaders, jsonViewer.requestHeaders):
+# Label for header groups within the 'Headers' panel.
+jsonViewer.responseHeaders=Κεφαλίδες απόκρισης
+jsonViewer.requestHeaders=Κεφαλίδες αίτησης
+
+# LOCALIZATION NOTE (jsonViewer.Save): Label for save command
+jsonViewer.Save=Αποθήκευση
+
+# LOCALIZATION NOTE (jsonViewer.Copy): Label for clipboard copy command
+jsonViewer.Copy=Αντιγραφή
+
+# LOCALIZATION NOTE (jsonViewer.ExpandAll): Label for expanding all nodes
+jsonViewer.ExpandAll=Ανάπτυξη όλων
+
+jsonViewer.ExpandAllSlow=Ανάπτυξη όλων (αργή)
+
+# LOCALIZATION NOTE (jsonViewer.CollapseAll): Label for collapsing all nodes
+jsonViewer.CollapseAll=Σύμπτυξη όλων
+
+# LOCALIZATION NOTE (jsonViewer.PrettyPrint): Label for JSON
+# pretty print action button.
+jsonViewer.PrettyPrint=Όμορφη εμφάνιση
+
+# LOCALIZATION NOTE (jsonViewer.filterJSON): Label used in search box
+# at the top right cornder of the JSON Viewer.
+jsonViewer.filterJSON=Φίλτρο JSON
+
diff --git a/l10n-el/devtools/client/layout.properties b/l10n-el/devtools/client/layout.properties
new file mode 100644
index 0000000000..9c76f0203e
--- /dev/null
+++ b/l10n-el/devtools/client/layout.properties
@@ -0,0 +1,129 @@
+# 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 This file contains the Layout Inspector strings.
+# The Layout Inspector is a panel accessible in the Inspector sidebar.
+
+# LOCALIZATION NOTE (flexbox.header): The accordion header for the Flexbox panel when
+# no flex container or item is selected.
+flexbox.header=Flexbox
+
+# LOCALIZATION NOTE (flexbox.backButtonLabel): The spoken label for the button
+# that returns from the display of a flex item to the flex item list.
+# This label is spoken by screen readers, not displayed on screen.
+flexbox.backButtonLabel=Επιστροφή στο Flex Container
+
+# LOCALIZATION (flexbox.flexContainer): The accordion header for the Flexbox panel
+# when a flex container is selected.
+flexbox.flexContainer=Κιβώτιο flex
+
+# LOCALIZATION NOTE) (flexbox.flexItemOf): The accordion header for the Flexbox panel
+# when a flex item is selected. %s represents the flex container selector.
+flexbox.flexItemOf=Στοιχείο flex του %S
+
+# LOCALIZATION NOTE (flexbox.noFlexboxeOnThisPage): In the case where there are no CSS
+# flex containers to display.
+flexbox.noFlexboxeOnThisPage=Επιλέξτε ένα κιβώτιο ή στοιχείο Flex για να συνεχίσετε.
+
+# LOCALIZATION NOTE (flexbox.flexItems): Header label displayed for the flex item list.
+flexbox.flexItems=Στοιχεία flex
+
+# LOCALIZATION NOTE (flexbox.noFlexItems): Label shown in the flex items list section if
+# there are no flex items for the flex container to display.
+flexbox.noFlexItems=Κανένα στοιχείο flex
+
+# LOCALIZATION NOTE (flexbox.itemSizing.baseSizeSectionHeader): Header label displayed
+# at the start of the flex item sizing Base Size section.
+flexbox.itemSizing.baseSizeSectionHeader=Μέγεθος βάσης
+
+# LOCALIZATION NOTE (flexbox.itemSizing.flexibilitySectionHeader): Header label displayed
+# at the start of the flex item sizing Flexibility section.
+flexbox.itemSizing.flexibilitySectionHeader=Ευελιξία
+
+# LOCALIZATION NOTE (flexbox.itemSizing.minSizeSectionHeader): Header label displayed
+# at the start of the flex item sizing Minimum Size section.
+flexbox.itemSizing.minSizeSectionHeader=Ελάχιστο μέγεθος
+
+# LOCALIZATION NOTE (flexbox.itemSizing.maxSizeSectionHeader): Header label displayed at
+# the start of the flex item sizing Maximum Size section.
+flexbox.itemSizing.maxSizeSectionHeader=Μέγιστο μέγεθος
+
+# LOCALIZATION NOTE (flexbox.itemSizing.finalSizeSectionHeader): Header label displayed at
+# the start of the flex item sizing Final Size section.
+flexbox.itemSizing.finalSizeSectionHeader=Τελικό μέγεθος
+
+# LOCALIZATION NOTE (flexbox.itemSizing.itemContentSize): Label shown in the flex item
+# sizing panel. It tells users that a given item’s base size was calculated from its
+# content size when unconstrained.
+flexbox.itemSizing.itemContentSize=Μέγεθος περιεχομένου
+
+# LOCALIZATION NOTE (flexbox.itemSizing.clampedToMax): Label shown in the flexbox item
+# sizing panel. It tells users that a given item attempted to grow but ended up being
+# clamped to a smaller max size.
+# (Note that clamp is a common word in flexbox terminology. It refers to constraining an
+# item's size to some defined min/max-width/height set on the element, even though there
+# might have been room for it to grow, or reason for it to shrink more).
+flexbox.itemSizing.clampedToMax=Το στοιχείο στερεώθηκε στο μέγιστο μέγεθός του.
+
+# LOCALIZATION NOTE (flexbox.itemSizing.clampedToMin): Label shown in the flexbox item
+# sizing panel. It tells users that a given item attempted to grow but ended up being
+# clamped to a larger min size.
+# (Note that clamp is a common word in flexbox terminology. It refers to constraining an
+# item's size to some defined min/max-width/height set on the element, even though there
+# might have been room for it to grow, or reason for it to shrink more).
+flexbox.itemSizing.clampedToMin=Το στοιχείο στερεώθηκε στο ελάχιστο μέγεθός του.
+
+# LOCALIZATION NOTE (flexbox.itemSizing.setToGrow): Label shown in the flex item sizing
+# panel. It tells users that a given item was set to grow.
+flexbox.itemSizing.setToGrow=Το στοιχείο ρυθμίστηκε για μεγέθυνση.
+
+# LOCALIZATION NOTE (flexbox.itemSizing.setToShrink): Label shown in the flexbox item
+# sizing panel. It tells users that a given item was set to shrink.
+flexbox.itemSizing.setToShrink=Το στοιχείο ρυθμίστηκε για συρρίκνωση.
+
+# LOCALIZATION NOTE (flexbox.itemSizing.notSetToGrow): Label shown in the
+# flexbox item sizing panel. It tells users that a given item was not set to grow, even
+# though there might have been space on the flex line for it to grow.
+flexbox.itemSizing.notSetToGrow=Το στοιχείο δεν ρυθμίστηκε για μεγέθυνση.
+
+# LOCALIZATION NOTE (flexbox.itemSizing.notSetToShrink): Label shown in the
+# flexbox item sizing panel. It tells users that a given item did not shrink even though
+# there might not have been enough space on the flex line for all items to fit.
+flexbox.itemSizing.notSetToShrink=Το στοιχείο δεν ρυθμίστηκε για συρρίκνωση.
+
+# LOCALIZATION NOTE (flexbox.togglesFlexboxHighlighter2): The tooltip text for the Flexbox
+# toggle button.
+flexbox.togglesFlexboxHighlighter2=Εναλλαγή επισήμανσης flexbox
+
+# LOCALIZATION NOTE (layout.cannotShowGridOutline, layout.cannotSHowGridOutline.title):
+# In the case where the grid outline cannot be effectively displayed.
+layout.cannotShowGridOutline=Δεν είναι δυνατή η εμφάνιση περιγράμματος για αυτό το πλέγμα
+layout.cannotShowGridOutline.title=Το επιλεγμένο περίγραμμα του πλέγματος δεν μπορεί να χωρέσει αποτελεσματικά μέσα στον πίνακα διάταξης ώστε να μπορεί να χρησιμοποιηθεί.
+
+# LOCALIZATION NOTE (layout.displayAreaNames): Label of the display area names setting
+# option in the CSS Grid panel.
+layout.displayAreaNames=Προβολή ονομάτων περιοχών
+
+# LOCALIZATION NOTE (layout.displayLineNumbers): Label of the display line numbers
+# setting option in the CSS Grid panel.
+layout.displayLineNumbers=Προβολή αριθμών γραμμών
+
+# LOCALIZATION NOTE (layout.extendLinesInfinitely): Label of the extend lines
+# infinitely setting option in the CSS Grid panel.
+layout.extendLinesInfinitely=Απεριόριστη επέκταση γραμμών
+
+# LOCALIZATION NOTE (layout.header): The accordion header for the CSS Grid panel.
+layout.header=Πλέγμα
+
+# LOCALIZATION NOTE (layout.gridDisplaySettings): The header for the grid display
+# settings container in the CSS Grid panel.
+layout.gridDisplaySettings=Ρυθμίσεις εμφάνισης πλέγματος
+
+# LOCALIZATION NOTE (layout.noGridsOnThisPage): In the case where there are no CSS grid
+# containers to display.
+layout.noGridsOnThisPage=Το πλέγμα CSS δεν χρησιμοποιείται σε αυτή τη σελίδα
+
+# LOCALIZATION NOTE (layout.overlayGrid): Alternate header for the list of grid container
+# elements if only one item can be selected.
+layout.overlayGrid=Επικάλυψη πλέγματος
diff --git a/l10n-el/devtools/client/markers.properties b/l10n-el/devtools/client/markers.properties
new file mode 100644
index 0000000000..773379191e
--- /dev/null
+++ b/l10n-el/devtools/client/markers.properties
@@ -0,0 +1,139 @@
+# 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 These strings are used inside the Performance Tools
+# which is available from the Web Developer sub-menu -> 'Performance'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web. These strings
+# are specifically for marker names in the performance tool.
+
+# LOCALIZATION NOTE (marker.label.*):
+# These strings are displayed in the Performance Tool waterfall, identifying markers.
+# We want to use the same wording as Google Chrome when appropriate.
+marker.label.styles=Επανυπολογισμός στυλ
+marker.label.stylesApplyChanges=Εφαρμογή αλλαγών στυλ
+marker.label.reflow=Διάταξη
+marker.label.paint=Σχεδίαση
+marker.label.composite=Σύνθεση στρωμάτων
+marker.label.compositeForwardTransaction=Στάλθηκε αίτημα σύνθεσης
+marker.label.javascript=Κλήση συνάρτησης
+marker.label.parseHTML=Ανάλυση HTML
+marker.label.parseXML=Ανάλυση XML
+marker.label.domevent=Συμβάν DOM
+marker.label.consoleTime=Κονσόλα
+marker.label.garbageCollection2=Συλλογή απορριμάτων
+marker.label.garbageCollection.incremental=Αυξητική ΣΑ
+marker.label.garbageCollection.nonIncremental=Μη αυξητική ΣΑ
+marker.label.minorGC=Δευτερεύουσα ΣΑ
+marker.label.cycleCollection=Κυκλική συλλογή
+marker.label.cycleCollection.forgetSkippable=Αναγωγή γράφου ΚΣ
+marker.label.timestamp=Χρονοσήμανση
+marker.label.worker=Worker
+marker.label.messagePort=Θύρα μηνυμάτων
+marker.label.unknown=Άγνωστο
+
+# LOCALIZATION NOTE (marker.label.javascript.*):
+# These strings are displayed as JavaScript markers that have special
+# reasons that can be translated.
+marker.label.javascript.scriptElement=Ετικέτα σεναρίου
+marker.label.javascript.promiseCallback=Επιστροφή κλήσης υπόσχεσης
+marker.label.javascript.promiseInit=Αρχικοποίηση υπόσχεσης
+marker.label.javascript.workerRunnable=Worker
+marker.label.javascript.jsURI=JavaScript URI
+marker.label.javascript.eventHandler=Χειρισμός συμβάντων
+
+# LOCALIZATION NOTE (marker.field.*):
+# Strings used in the waterfall sidebar as property names.
+
+# General marker fields
+marker.field.start=Έναρξη:
+marker.field.end=Λήξη:
+marker.field.duration=Διάρκεια:
+
+# General "reason" for a marker (JavaScript, Garbage Collection)
+marker.field.causeName=Αιτία:
+# General "type" for a marker (Cycle Collection, Garbage Collection)
+marker.field.type=Τύπος:
+# General "label" for a marker (user defined)
+marker.field.label=Ετικέτα:
+
+# Field names for stack values
+marker.field.stack=Στοίβα:
+marker.field.startStack=Στοίβα στην αρχή:
+marker.field.endStack=Στοίβα στο τέλος:
+
+# %S is the "Async Cause" of a marker, and this signifies that the cause
+# was an asynchronous one in a displayed stack.
+marker.field.asyncStack=(Ασύγχρονο: %S)
+
+# For console.time markers
+marker.field.consoleTimerName=Όνομα χρονοδιακόπτη:
+
+# For DOM Event markers
+marker.field.DOMEventType=Τύπος συμβάντος:
+marker.field.DOMEventPhase=Φάση:
+
+# Non-incremental cause for a Garbage Collection marker
+marker.field.nonIncrementalCause=Μη αυξητική αιτία:
+
+# For "Recalculate Style" markers
+marker.field.isAnimationOnly=Μόνο εφέ κίνησης:
+
+# The type of operation performed by a Worker.
+marker.worker.serializeDataOffMainThread=Σειριοποίηση δεδομένων στον Εργάτη
+marker.worker.serializeDataOnMainThread=Σειριοποίηση δεδομένων στο κύριο νήμα
+marker.worker.deserializeDataOffMainThread=Αποσειριοποίηση δεδομένων στον Εργάτη
+marker.worker.deserializeDataOnMainThread=Αποσειριοποίηση δεδομένων στο κύριο νήμα
+
+# The type of operation performed by a MessagePort
+marker.messagePort.serializeData=Σειριοποίηση δεδομένων
+marker.messagePort.deserializeData=Αποσειριοποίηση δεδομένων
+
+# Strings used in the waterfall sidebar as values.
+marker.value.unknownFrame=<άγνωστη τοποθεσία>
+marker.value.DOMEventTargetPhase=Προορισμός
+marker.value.DOMEventCapturingPhase=Σύλληψη
+marker.value.DOMEventBubblingPhase=Ανάδυση
+
+# LOCALIZATION NOTE (marker.gcreason.label.*):
+# These strings are used to give a concise but readable description of a GC reason.
+marker.gcreason.label.API=Κλήση API
+marker.gcreason.label.EAGER_ALLOC_TRIGGER=Έναυσμα πρόθυμης εκχώρησης
+marker.gcreason.label.DESTROY_RUNTIME=Τερματισμός
+marker.gcreason.label.LAST_DITCH=Ανεπαρκής μνήμη
+marker.gcreason.label.TOO_MUCH_MALLOC=Εκχωρήθηκαν πάρα πολλά bytes
+marker.gcreason.label.ALLOC_TRIGGER=Πάρα πολλές εκχωρήσεις
+marker.gcreason.label.DEBUG_GC=Αποσφαλμάτωση ΣΑ
+marker.gcreason.label.COMPARTMENT_REVIVED=Επαναφορά αδρανούς καθολικής μεταβλητής
+marker.gcreason.label.RESET=Ολοκλήρωση αυξητικού κύκλου
+marker.gcreason.label.OUT_OF_NURSERY=Το φυτώριο είναι πλήρες
+marker.gcreason.label.EVICT_NURSERY=Έξοδος από το φυτώριο
+marker.gcreason.label.FULL_STORE_BUFFER=Τα αντικείμενα στο φυτώριο είναι πολύ ενεργά
+marker.gcreason.label.SHARED_MEMORY_LIMIT=Η μεγάλη εκχώρηση απέτυχε
+marker.gcreason.label.PERIODIC_FULL_GC=Περιοδική πλήρης ΣΑ
+marker.gcreason.label.INCREMENTAL_TOO_SLOW=Ο ρυθμός εκχωρήσεων είναι πάρα πολύ γρήγορος
+marker.gcreason.label.COMPONENT_UTILS=Cu.forceGC
+marker.gcreason.label.MEM_PRESSURE=Χαμηλή μνήμη
+marker.gcreason.label.CC_WAITING=Αναγκαστική συλλογή λόγω κύκλου
+marker.gcreason.label.CC_FINISHED=Η συλλογή κύκλων ολοκληρώθηκε
+marker.gcreason.label.CC_FORCED=Αναγκαστική συλλογή λόγω κύκλου
+marker.gcreason.label.LOAD_END=Η φόρτωση της σελίδας ολοκληρώθηκε
+marker.gcreason.label.PAGE_HIDE=Μεταφέρθηκε στο παρασκήνιο
+marker.gcreason.label.NSJSCONTEXT_DESTROY=Καταστροφή περιεχομένου JS
+marker.gcreason.label.SET_NEW_DOCUMENT=Νέο έγγραφο
+marker.gcreason.label.SET_DOC_SHELL=Νέο έγγραφο
+marker.gcreason.label.DOM_UTILS=Κλήση API
+marker.gcreason.label.DOM_IPC=IPC
+marker.gcreason.label.DOM_WORKER=Περιοδική ΣΑ εργάτη
+marker.gcreason.label.INTER_SLICE_GC=Τμήμα περιοδικής αυξητικής ΣΑ
+marker.gcreason.label.FULL_GC_TIMER=Περιοδική πλήρης ΣΑ
+marker.gcreason.label.SHUTDOWN_CC=Τερματισμός
+marker.gcreason.label.DOM_WINDOW_UTILS=Ανενεργός χρήστης
+marker.gcreason.label.USER_INACTIVE=Ανενεργός χρήστης
+
+# The name of a nursery collection.
+marker.nurseryCollection=Συλλογή φυτωρίου
diff --git a/l10n-el/devtools/client/memory.properties b/l10n-el/devtools/client/memory.properties
new file mode 100644
index 0000000000..fdc3d17752
--- /dev/null
+++ b/l10n-el/devtools/client/memory.properties
@@ -0,0 +1,426 @@
+# 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 These strings are used inside the Memory Tools
+# which is available from the Web Developer sub-menu -> 'Memory'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (snapshot.io.save): The label for the link that saves a
+# snapshot to disk.
+snapshot.io.save=Αποθήκευση
+
+# LOCALIZATION NOTE (snapshot.io.delete): The label for the link that deletes
+# a snapshot
+snapshot.io.delete=Διαγραφή
+
+# LOCALIZATION NOTE (snapshot.io.save.window): The title for the window
+# displayed when saving a snapshot to disk.
+snapshot.io.save.window=Αποθήκευση στιγμιότυπου
+
+# LOCALIZATION NOTE (snapshot.io.import.window): The title for the window
+# displayed when importing a snapshot form disk.
+snapshot.io.import.window=Εισαγωγή στιγμιότυπου
+
+# LOCALIZATION NOTE (snapshot.io.filter): The title for the filter used to
+# filter file types (*.fxsnapshot)
+snapshot.io.filter=Στιγμιότυπα του Firefox
+
+# LOCALIZATION NOTE (aggregate.mb): The label annotating the number of bytes (in
+# megabytes) in a snapshot. %S represents the value, rounded to 2 decimal
+# points.
+aggregate.mb=%S MB
+
+# LOCALIZATION NOTE (snapshot-title.loading): The title for a snapshot before
+# it has a creation time to display.
+snapshot-title.loading=Επεξεργασία…
+
+# LOCALIZATION NOTE (checkbox.recordAllocationStacks): The label describing the
+# boolean checkbox whether or not to record call stacks.
+checkbox.recordAllocationStacks=Καταγραφή στοιβάδων κλήσεων
+
+# LOCALIZATION NOTE (checkbox.recordAllocationStacks.tooltip): The tooltip for
+# the label describing the boolean checkbox whether or not to record call
+# stacks.
+checkbox.recordAllocationStacks.tooltip=(Απ)ενεργοποίηση καταγραφής της στοίβας κλήσεων όταν εκχωρηθεί ένα αντικείμενο. Τα επόμενα στιγμιότυπα θα μπορούν να ομαδοποιούν και να ονομάζουν τα αντικείμενα κατά στοίβες κλήσεων, αλλά μόνο με τα αντικείμενα που δημιουργήθηκαν μετά την (απ)ενεργοποίηση αυτής της επιλογής. Η καταγραφή στοιβών κλήσεων θα έχει ως συνέπεια την μείωση των επιδόσεων.
+
+# LOCALIZATION NOTE (toolbar.displayBy): The label describing the select menu
+# options of the display options.
+toolbar.displayBy=Ομαδοποίηση κατά:
+
+# LOCALIZATION NOTE (toolbar.displayBy.tooltip): The tooltip for the label
+# describing the select menu options of the display options.
+toolbar.displayBy.tooltip=Αλλαγή τρόπου ομαδοποίησης αντικειμένων
+
+# LOCALIZATION NOTE (toolbar.pop-view): The text in the button to go back to the
+# previous view.
+toolbar.pop-view=←
+
+# LOCALIZATION NOTE (toolbar.pop-view.label): The text for the label for the
+# button to go back to the previous view.
+toolbar.pop-view.label=Επιστροφή στα σύνολα
+
+# LOCALIZATION NOTE (toolbar.viewing-individuals): The text letting the user
+# know that they are viewing individual nodes from a census group.
+toolbar.viewing-individuals=⁂ Προβολή ατόμων στην ομάδα
+
+# LOCALIZATION NOTE (censusDisplays.coarseType.tooltip): The tooltip for the
+# "coarse type" display option.
+censusDisplays.coarseType.tooltip=Ομαδοποίηση στοιχείων κατά τύπο
+
+# LOCALIZATION NOTE (censusDisplays.allocationStack.tooltip): The tooltip for
+# the "call stack" display option.
+censusDisplays.allocationStack.tooltip=Ομαδοποίηση στοιχείων βάσει της στοίβας JavaScript, που καταγράφηκε όταν εκχωρήθηκε το αντικείμενο
+
+# LOCALIZATION NOTE (censusDisplays.invertedAllocationStack.tooltip): The
+# tooltip for the "inverted call stack" display option.
+censusDisplays.invertedAllocationStack.tooltip=Ομαδοποίηση στοιχείων βάσει της ανεστραμμένης στοίβας κλήσεων JavaScript, που καταγράφηκε όταν δημιουργήθηκε το αντικείμενο
+
+# LOCALIZATION NOTE (toolbar.labelBy): The label describing the select menu
+# options of the label options.
+toolbar.labelBy=Ετικέτα κατά:
+
+# LOCALIZATION NOTE (toolbar.labelBy): The tooltip for the label describing the
+# select menu options of the label options.
+toolbar.labelBy.tooltip=Αλλαγή τρόπου ονομασίας αντικειμένων
+
+# LOCALIZATION NOTE (dominatorTreeDisplays.coarseType.tooltip): The tooltip for
+# the "coarse type" dominator tree display option.
+dominatorTreeDisplays.coarseType.tooltip=Ονομασία στοιχείων σύμφωνα με τις ευρείες κατηγορίες που ανήκουν
+
+# LOCALIZATION NOTE (dominatorTreeDisplays.allocationStack.tooltip): The
+# tooltip for the "call stack" dominator tree display option.
+dominatorTreeDisplays.allocationStack.tooltip=Ονομασία στοιχείων σύμφωνα με την εγγεγραμμένη στοίβα JavaScript όταν εκχωρήθηκε
+
+# LOCALIZATION NOTE (treeMapDisplays.coarseType.tooltip): The tooltip for
+# the "coarse type" tree map display option.
+treeMapDisplays.coarseType.tooltip=Ονομασία στοιχείων σύμφωνα με τις ευρείες κατηγορίες που ανήκουν
+
+# LOCALIZATION NOTE (toolbar.view): The label for the view selector in the
+# toolbar.
+toolbar.view=Προβολή:
+
+# LOCALIZATION NOTE (toolbar.view.tooltip): The tooltip for the label for the
+# view selector in the toolbar.
+toolbar.view.tooltip=Αλλαγή προβολής στιγμιότυπου
+
+# LOCALIZATION NOTE (toolbar.view.census): The label for the census view option
+# in the toolbar.
+toolbar.view.census=Συγκέντρωση
+
+# LOCALIZATION NOTE (toolbar.view.census.tooltip): The tooltip for the label for
+# the census view option in the toolbar.
+toolbar.view.census.tooltip=Προβολή σύνοψης των περιεχομένων του στιγμιότυπου συγκεντρώνοντας αντικείμενα σε ομάδες
+
+# LOCALIZATION NOTE (toolbar.view.dominators): The label for the dominators view
+# option in the toolbar.
+toolbar.view.dominators=Κυρίαρχοι
+
+# LOCALIZATION NOTE (toolbar.view.dominators.tooltip): The tooltip for the label
+# for the dominators view option in the toolbar.
+toolbar.view.dominators.tooltip=Προβολή κυρίαρχου δέντρου και ανάδειξη των μεγαλύτερων δομών στο στιγμιότυπο
+
+# LOCALIZATION NOTE (toolbar.view.treemap): The label for the tree map option
+# in the toolbar.
+toolbar.view.treemap=Χάρτης δέντρου
+
+# LOCALIZATION NOTE (toolbar.view.treemap.tooltip): The tooltip for the label for
+# the tree map view option in the toolbar.
+toolbar.view.treemap.tooltip=Οπτικοποίηση χρήσης μνήμης: τα μεγαλύτερα μπλοκ εξηγούν το μεγαλύτερο ποσοστό χρήσης της μνήμης
+
+# LOCALIZATION NOTE (take-snapshot): The label describing the button that
+# initiates taking a snapshot, either as the main label, or a tooltip.
+take-snapshot=Λήψη στιγμιότυπου
+
+# LOCALIZATION NOTE (import-snapshot): The label describing the button that
+# initiates importing a snapshot.
+import-snapshot=Εισαγωγή…
+
+# LOCALIZATION NOTE (clear-snapshots.tooltip): The tooltip for the button that
+# deletes existing snapshot.
+clear-snapshots.tooltip=Διαγραφή όλων των στιγμιότυπων
+
+# LOCALIZATION NOTE (diff-snapshots.tooltip): The tooltip for the button that
+# initiates selecting two snapshots to diff with each other.
+diff-snapshots.tooltip=Σύγκριση στιγμιοτύπων
+
+# LOCALIZATION NOTE (filter.placeholder): The placeholder text used for the
+# memory tool's filter search box.
+filter.placeholder=Φίλτρο
+
+# LOCALIZATION NOTE (filter.tooltip): The tooltip text used for the memory
+# tool's filter search box.
+filter.tooltip=Φιλτράρισμα των περιεχομένων του στιγμιότυπου
+
+# LOCALIZATION NOTE (tree-item.view-individuals.tooltip): The tooltip for the
+# button to view individuals in this group.
+tree-item.view-individuals.tooltip=Προβολή μεμονωμένων κόμβων σε αυτή την ομάδα και των διαδρομών διατήρησής τους
+
+# LOCALIZATION NOTE (tree-item.load-more): The label for the links to fetch the
+# lazily loaded sub trees in the dominator tree view.
+tree-item.load-more=Φόρτωση περισσότερων…
+
+# LOCALIZATION NOTE (tree-item.rootlist): The label for the root of the
+# dominator tree.
+tree-item.rootlist=Ρίζες ΣΑ
+
+# LOCALIZATION NOTE (tree-item.nostack): The label describing the row in the heap tree
+# that represents a row broken down by call stack when no stack was available.
+tree-item.nostack=(καμία διαθέσιμη στοίβα)
+
+# LOCALIZATION NOTE (tree-item.nofilename): The label describing the row in the
+# heap tree that represents a row broken down by filename when no filename was
+# available.
+tree-item.nofilename=(κανένα διαθέσιμο όνομα αρχείου)
+
+# LOCALIZATION NOTE (tree-item.root): The label describing the row in the heap tree
+# that represents the root of the tree when inverted.
+tree-item.root=(root)
+
+# LOCALIZATION NOTE (tree-item.percent2): A percent of bytes or count displayed in the tree view.
+# there are two "%" after %S to escape and display "%"
+tree-item.percent2=%S%%
+
+# LOCALIZATION NOTE (diffing.baseline): The name of the baseline snapshot in a
+# diffing comparison.
+diffing.baseline=Γραμμή αναφοράς
+
+# LOCALIZATION NOTE (diffing.comparison): The name of the snapshot being
+# compared to the baseline in a diffing comparison.
+diffing.comparison=Σύγκριση
+
+# LOCALIZATION NOTE (diffing.prompt.selectBaseline): The prompt to select the
+# first snapshot when doing a diffing comparison.
+diffing.prompt.selectBaseline=Επιλέξτε το στιγμιότυπο γραμμής αναφοράς
+
+# LOCALIZATION NOTE (diffing.prompt.selectComparison): The prompt to select the
+# second snapshot when doing a diffing comparison.
+diffing.prompt.selectComparison=Επιλέξτε το στιγμιότυπο προς σύγκριση με τη γραμμή αναφοράς
+
+# LOCALIZATION NOTE (diffing.state.error): The label describing the diffing
+# state ERROR, used in the snapshot list when an error occurs while diffing two
+# snapshots.
+diffing.state.error=Σφάλμα
+
+# LOCALIZATION NOTE (diffing.state.error.full): The text describing the diffing
+# state ERROR, used in the main view when an error occurs while diffing two
+# snapshots.
+diffing.state.error.full=Προέκυψε σφάλμα κατά τη σύγκριση των στιγμιότυπων.
+
+# LOCALIZATION NOTE (diffing.state.taking-diff): The label describing the diffin
+# state TAKING_DIFF, used in the snapshots list when computing the difference
+# between two snapshots.
+diffing.state.taking-diff=Υπολογισμός διαφοράς…
+
+# LOCALIZATION NOTE (diffing.state.taking-diff.full): The label describing the
+# diffing state TAKING_DIFF, used in the main view when computing the difference
+# between two snapshots.
+diffing.state.taking-diff.full=Υπολογισμός διαφοράς…
+
+# LOCALIZATION NOTE (diffing.state.selecting): The label describing the diffing
+# state SELECTING.
+diffing.state.selecting=Επιλέξτε δύο στιγμιότυπα για σύγκριση
+
+# LOCALIZATION NOTE (diffing.state.selecting.full): The label describing the
+# diffing state SELECTING, used in the main view when selecting snapshots to
+# diff.
+diffing.state.selecting.full=Επιλέξτε δύο στιγμιότυπα για σύγκριση
+
+# LOCALIZATION NOTE (dominatorTree.state.computing): The label describing the
+# dominator tree state COMPUTING.
+dominatorTree.state.computing=Δημιουργία αναφοράς κυρίαρχων…
+
+# LOCALIZATION NOTE (dominatorTree.state.computing): The label describing the
+# dominator tree state COMPUTING, used in the dominator tree view.
+dominatorTree.state.computing.full=Δημιουργία αναφοράς κυρίαρχων…
+
+# LOCALIZATION NOTE (dominatorTree.state.fetching): The label describing the
+# dominator tree state FETCHING.
+dominatorTree.state.fetching=Υπολογισμός μεγεθών…
+
+# LOCALIZATION NOTE (dominatorTree.state.fetching): The label describing the
+# dominator tree state FETCHING, used in the dominator tree view.
+dominatorTree.state.fetching.full=Υπολογισμός διατηρουμένων μεγεθών κυρίαρχου…
+
+# LOCALIZATION NOTE (dominatorTree.state.incrementalFetching): The label
+# describing the dominator tree state INCREMENTAL_FETCHING.
+dominatorTree.state.incrementalFetching=Λήψη…
+
+# LOCALIZATION NOTE (dominatorTree.state.incrementalFetching): The label describing the
+# dominator tree state INCREMENTAL_FETCHING, used in the dominator tree view.
+dominatorTree.state.incrementalFetching.full=Λήψη περισσότερων…
+
+# LOCALIZATION NOTE (dominatorTree.state.error): The label describing the
+# dominator tree state ERROR.
+dominatorTree.state.error=Σφάλμα
+
+# LOCALIZATION NOTE (dominatorTree.state.error): The label describing the
+# dominator tree state ERROR, used in the dominator tree view.
+dominatorTree.state.error.full=Παρουσιάστηκε σφάλμα κατά την επεξεργασία του κυρίαρχου δέντρου
+
+# LOCALIZATION NOTE (snapshot.state.saving.full): The label describing the
+# snapshot state SAVING, used in the main heap view.
+snapshot.state.saving.full=Αποθήκευση στιγμιότυπου…
+
+# LOCALIZATION NOTE (snapshot.state.reading.full): The label describing the
+# snapshot state READING, and SAVED, due to these states being combined
+# visually, used in the main heap view.
+snapshot.state.reading.full=Ανάγνωση στιγμιότυπου…
+
+# LOCALIZATION NOTE (snapshot.state.saving-census.full): The label describing
+# the snapshot state SAVING, used in the main heap view.
+snapshot.state.saving-census.full=Δημιουργία συνολικής αναφοράς…
+
+# LOCALIZATION NOTE (snapshot.state.saving-tree-map.full): The label describing
+# the snapshot state SAVING, used in the main heap view.
+snapshot.state.saving-tree-map.full=Αποθήκευση χάρτη δέντρου…
+
+# LOCALIZATION NOTE (snapshot.state.error.full): The label describing the
+# snapshot state ERROR, used in the main heap view.
+snapshot.state.error.full=Προέκυψε σφάλμα κατά την επεξεργασία αυτού του στιγμιότυπου.
+
+# LOCALIZATION NOTE (individuals.state.error): The short message displayed when
+# there is an error fetching individuals from a group.
+individuals.state.error=Σφάλμα
+
+# LOCALIZATION NOTE (individuals.state.error.full): The longer message displayed
+# when there is an error fetching individuals from a group.
+individuals.state.error.full=Παρουσιάστηκε σφάλμα κατά την ανάκτηση ατόμων στην ομάδα
+
+# LOCALIZATION NOTE (individuals.state.fetching): The short message displayed
+# while fetching individuals.
+individuals.state.fetching=Λήψη…
+
+# LOCALIZATION NOTE (individuals.state.fetching.full): The longer message
+# displayed while fetching individuals.
+individuals.state.fetching.full=Λήψη ατόμων της ομάδας…
+
+# LOCALIZATION NOTE (individuals.field.node): The header label for an individual
+# node.
+individuals.field.node=Κόμβος
+
+# LOCALIZATION NOTE (individuals.field.node.tooltip): The tooltip for the header
+# label for an individual node.
+individuals.field.node.tooltip=Ο μεμονωμένος κόμβος στο στιγμιότυπο
+
+# LOCALIZATION NOTE (snapshot.state.saving): The label describing the snapshot
+# state SAVING, used in the snapshot list view
+snapshot.state.saving=Αποθήκευση στιγμιότυπου…
+
+# LOCALIZATION NOTE (snapshot.state.importing): The label describing the
+# snapshot state IMPORTING, used in the snapshot list view
+snapshot.state.importing=Εισαγωγή στιγμιότυπου…
+
+# LOCALIZATION NOTE (snapshot.state.reading): The label describing the snapshot
+# state READING, and SAVED, due to these states being combined visually, used in
+# the snapshot list view.
+snapshot.state.reading=Ανάγνωση στιγμιότυπου…
+
+# LOCALIZATION NOTE (snapshot.state.saving-census): The label describing the
+# snapshot state SAVING, used in snapshot list view.
+snapshot.state.saving-census=Αποθήκευση αναφοράς…
+
+# LOCALIZATION NOTE (snapshot.state.saving-census): The label describing the
+# snapshot state SAVING, used in snapshot list view.
+snapshot.state.saving-tree-map=Αποθήκευση χάρτη δέντρου…
+
+# LOCALIZATION NOTE (snapshot.state.error): The label describing the snapshot
+# state ERROR, used in the snapshot list view.
+snapshot.state.error=Σφάλμα
+
+# LOCALIZATION NOTE (heapview.no-difference): Message displayed when there is no
+# difference between two snapshots.
+heapview.no-difference=Καμία διαφορά ανάμεσα στη γραμμή αναφοράς και τη σύγκριση.
+
+# LOCALIZATION NOTE (heapview.none-match): Message displayed when there are no
+# matches when filtering.
+heapview.none-match=Καμία αντιστοιχία.
+
+# LOCALIZATION NOTE (heapview.none-match): Message displayed when there report
+# is empty.
+heapview.empty=Κενό.
+
+# LOCALIZATION NOTE (heapview.noAllocationStacks): The message displayed to
+# users when selecting a display by "call stack" but no call stacks
+# were recorded in the heap snapshot.
+heapview.noAllocationStacks=Δεν βρέθηκε στοίβα κλήσεων. Καταγράψτε τις στοίβες κλήσεων πριν λάβετε ένα στιγμιότυπο.
+
+# LOCALIZATION NOTE (heapview.field.retainedSize): The name of the column in the
+# dominator tree view for retained byte sizes.
+heapview.field.retainedSize=Κρατούμενο μέγεθος (Bytes)
+
+# LOCALIZATION NOTE (heapview.field.retainedSize.tooltip): The tooltip for the
+# column header in the dominator tree view for retained byte sizes.
+heapview.field.retainedSize.tooltip=Το άθροισμα του μεγέθους του ίδιου του αντικειμένου και τα μεγέθη όλων των άλλων αντικειμένων που διατηρούνται ζωντανά από αυτό
+
+# LOCALIZATION NOTE (heapview.field.shallowSize): The name of the column in the
+# dominator tree view for shallow byte sizes.
+heapview.field.shallowSize=Μέγεθος σκιάς (Bytes)
+
+# LOCALIZATION NOTE (heapview.field.shallowSize.tooltip): The tooltip for the
+# column header in the dominator tree view for shallow byte sizes.
+heapview.field.shallowSize.tooltip=Το μέγεθος του ίδιου του αντικειμένου
+
+# LOCALIZATION NOTE (dominatortree.field.label): The name of the column in the
+# dominator tree for an object's label.
+dominatortree.field.label=Κυρίαρχος
+
+# LOCALIZATION NOTE (dominatortree.field.label.tooltip): The tooltip for the column
+# header in the dominator tree view for an object's label.
+dominatortree.field.label.tooltip=Η ετικέτα για ένα στοιχείο στη μνήμη
+
+# LOCALIZATION NOTE (heapview.field.bytes): The name of the column in the heap
+# view for bytes.
+heapview.field.bytes=Bytes
+
+# LOCALIZATION NOTE (heapview.field.bytes.tooltip): The tooltip for the column
+# header in the heap view for bytes.
+heapview.field.bytes.tooltip=Ο αριθμός των bytes που καταλαμβάνονται από αυτή την ομάδα, εξαιρουμένων των υποομάδων
+
+# LOCALIZATION NOTE (heapview.field.count): The name of the column in the heap
+# view for count.
+heapview.field.count=Μέτρηση
+
+# LOCALIZATION NOTE (heapview.field.count.tooltip): The tooltip for the column
+# header in the heap view for count.
+heapview.field.count.tooltip=Ο αριθμός των προσπελάσιμων αντικειμένων σε αυτή την ομάδα, εξαιρουμένων των υποομάδων
+
+# LOCALIZATION NOTE (heapview.field.totalbytes): The name of the column in the
+# heap view for total bytes.
+heapview.field.totalbytes=Συνολικά bytes
+
+# LOCALIZATION NOTE (heapview.field.totalbytes.tooltip): The tooltip for the
+# column header in the heap view for total bytes.
+heapview.field.totalbytes.tooltip=Ο αριθμός των bytes που καταλαμβάνονται από αυτή την ομάδα, συμπεριλαμβανομένων των υποομάδων
+
+# LOCALIZATION NOTE (heapview.field.totalcount): The name of the column in the
+# heap view for total count.
+heapview.field.totalcount=Συνολικός αριθμός
+
+# LOCALIZATION NOTE (heapview.field.totalcount.tooltip): The tooltip for the
+# column header in the heap view for total count.
+heapview.field.totalcount.tooltip=Ο αριθμός των προσπελάσιμων αντικειμένων σε αυτή την ομάδα, συμπεριλαμβανομένων των υποομάδων
+
+# LOCALIZATION NOTE (heapview.field.name): The name of the column in the heap
+# view for name.
+heapview.field.name=Ομάδα
+
+# LOCALIZATION NOTE (heapview.field.name.tooltip): The tooltip for the column
+# header in the heap view for name.
+heapview.field.name.tooltip=Το όνομα αυτής της ομάδας
+
+# LOCALIZATION NOTE (shortest-paths.header): The header label for the shortest
+# paths pane.
+shortest-paths.header=Διαδρομές διατήρησης (από τις ρίζες συλλογής απορριμάτων)
+
+# LOCALIZATION NOTE (shortest-paths.select-node): The message displayed in the
+# shortest paths pane when a node is not yet selected.
+shortest-paths.select-node=Επιλέξτε ένα στοιχείο για να δείτε τις διαδρομές διατήρησης του
+
+# LOCALIZATION NOTE (tree-map.node-count): The label for the count value of a
+# node in the tree map
+tree-map.node-count=μέτρηση
diff --git a/l10n-el/devtools/client/menus.properties b/l10n-el/devtools/client/menus.properties
new file mode 100644
index 0000000000..e1d68889d9
--- /dev/null
+++ b/l10n-el/devtools/client/menus.properties
@@ -0,0 +1,35 @@
+# 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 (devtoolsRemoteDebugging.label): This is the label for the menu item
+# in Tools > Web Developer. Clicking on this menu item will open about:debugging which
+# acts as a hub for debugging remote devices.
+devtoolsRemoteDebugging.label = Απομακρυσμένη αποσφαλμάτωση
+devtoolsRemoteDebugging.accesskey = Α
+
+browserConsoleCmd.label = Κονσόλα προγρ. περιήγησης
+browserConsoleCmd.accesskey = Π
+
+responsiveDesignMode.label = Λειτ. αποκρίσιμου σχεδιασμού
+responsiveDesignMode.accesskey = Α
+
+eyedropper.label = Σταγονόμετρο
+eyedropper.accesskey = γ
+
+# LOCALIZATION NOTE (browserToolboxMenu.label): This is the label for the
+# application menu item that opens the browser toolbox UI in the Tools menu.
+browserToolboxMenu.label = Εργαλειοθήκη περιηγητή
+browserToolboxMenu.accesskey = κ
+
+# LOCALIZATION NOTE (browserContentToolboxMenu.label): This is the label for the
+# application menu item that opens the browser content toolbox UI in the Tools menu.
+# This toolbox allows to debug the chrome of the content process in multiprocess builds.
+browserContentToolboxMenu.label = Εργαλειοθήκη περιεχομένου περιηγητή
+browserContentToolboxMenu.accesskey = η
+
+devToolboxMenuItem.label = (Απ)ενεργοποίηση εργαλείων
+devToolboxMenuItem.accesskey = Ε
+
+getMoreDevtoolsCmd.label = Λήψη περισσότερων εργαλείων
+getMoreDevtoolsCmd.accesskey = Λ
diff --git a/l10n-el/devtools/client/netmonitor.properties b/l10n-el/devtools/client/netmonitor.properties
new file mode 100644
index 0000000000..efa2148f88
--- /dev/null
+++ b/l10n-el/devtools/client/netmonitor.properties
@@ -0,0 +1,1539 @@
+# 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 These strings are used inside the Network Monitor
+# which is available from the Web Developer sub-menu -> 'Network Monitor'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (netmonitor.security.state.secure)
+# This string is used as an tooltip for request that was performed over secure
+# channel i.e. the connection was encrypted.
+netmonitor.security.state.secure=Η σύνδεση που χρησιμοποιήθηκε για τη λήψη του πόρου ήταν ασφαλής.
+
+# LOCALIZATION NOTE (netmonitor.security.state.insecure)
+# This string is used as an tooltip for request that was performed over insecure
+# channel i.e. the connection was not https
+netmonitor.security.state.insecure=Η σύνδεση που χρησιμοποιήθηκε για τη λήψη του πόρου δεν ήταν ασφαλής.
+
+# LOCALIZATION NOTE (netmonitor.security.state.broken)
+# This string is used as an tooltip for request that failed due to security
+# issues.
+netmonitor.security.state.broken=Ένα σφάλμα ασφαλείας εμπόδισε τη φόρτωση του πόρου.
+
+# LOCALIZATION NOTE (netmonitor.security.state.weak)
+# This string is used as an tooltip for request that had minor security issues
+netmonitor.security.state.weak=Αυτός ο πόρος μεταφέρθηκε μέσω μιας σύνδεσης με αδύναμη κρυπτογράφηση.
+
+# LOCALIZATION NOTE (netmonitor.security.enabled):
+# This string is used to indicate that a specific security feature is used by
+# a connection in the security details tab.
+# For example: "HTTP Strict Transport Security: Enabled"
+netmonitor.security.enabled=Ενεργό
+
+# LOCALIZATION NOTE (netmonitor.security.disabled):
+# This string is used to indicate that a specific security feature is not used by
+# a connection in the security details tab.
+# For example: "HTTP Strict Transport Security: Disabled"
+netmonitor.security.disabled=Ανενεργό
+
+# LOCALIZATION NOTE (netmonitor.security.hostHeader):
+# This string is used as a header for section containing security information
+# related to the remote host. %S is replaced with the domain name of the remote
+# host. For example: Host example.com
+netmonitor.security.hostHeader=Host %S:
+
+# LOCALIZATION NOTE (netmonitor.security.notAvailable):
+# This string is used to indicate that a certain piece of information is not
+# available to be displayed. For example a certificate that has no organization
+# defined:
+# Organization: <Not Available>
+netmonitor.security.notAvailable=<Μη διαθέσιμοe>
+
+# LOCALIZATION NOTE (collapseDetailsPane): This is the tooltip for the button
+# that collapses the network details pane in the UI.
+collapseDetailsPane=Απόκρυψη λεπτομερειών αιτήματος
+
+# LOCALIZATION NOTE (collapseActionPane): This is the tooltip for the button
+# that collapses the network action pane in the UI.
+collapseActionPane=Απόκρυψη ενέργειας δικτύου
+
+# LOCALIZATION NOTE (allTabsMenuButton.tooltip): The tooltip that gets
+# displayed when hovering over the tabs overflow button.
+allTabsMenuButton.tooltip=Εμφάνιση όλων των καρτελών
+
+# LOCALIZATION NOTE (headersEmptyText): This is the text displayed in the
+# headers tab of the network details pane when there are no headers available.
+headersEmptyText=Καμία κεφαλίδα για αυτό το αίτημα
+
+# LOCALIZATION NOTE (headersFilterText): This is the text displayed in the
+# headers tab of the network details pane for the filtering input.
+headersFilterText=Φιλτράρισμα κεφαλίδων
+
+# LOCALIZATION NOTE (messagesEmptyText): This is the text displayed in the
+# WebSockets tab of the network details pane when there are no frames available.
+messagesEmptyText=Κανένα μήνυμα για αυτό το αίτημα
+
+# LOCALIZATION NOTE (cookiesEmptyText): This is the text displayed in the
+# cookies tab of the network details pane when there are no cookies available.
+cookiesEmptyText=Κανένα cookie για αυτό το αίτημα
+
+# LOCALIZATION NOTE (cookiesFilterText): This is the text displayed in the
+# cookies tab of the network details pane for the filtering input.
+cookiesFilterText=Φιλτράρισμα cookies
+
+# LOCALIZATION NOTE (responseEmptyText): This is the text displayed in the
+# response tab of the network details pane when the response is empty or not
+# available for shown.
+responseEmptyText=Κανένα διαθέσιμο δεδομένο απόκρισης για αυτό το αίτημα
+
+# LOCALIZATION NOTE (paramsEmptyText): This is the text displayed in the
+# request tab of the network details pane when there are no params available.
+paramsEmptyText=Καμία παράμετρος για αυτό το αίτημα
+
+# LOCALIZATION NOTE (paramsFilterText): This is the text displayed in the
+# request tab of the network details pane for the filtering input.
+paramsFilterText=Φιλτράρισμα παραμέτρων αιτήματος
+
+# LOCALIZATION NOTE (paramsQueryString): This is the label displayed
+# in the network details request tab identifying the query string.
+paramsQueryString=Νήμα ερώτησης
+
+# LOCALIZATION NOTE (paramsFormData): This is the label displayed
+# in the network details request tab identifying the form data.
+paramsFormData=Δεδομένα φορμών
+
+# LOCALIZATION NOTE (paramsPostPayload): This is the label displayed
+# in the network details request tab identifying the request payload.
+paramsPostPayload=Φορτίο αιτήματος
+
+# LOCALIZATION NOTE (requestHeaders): This is the label displayed
+# in the network details headers tab identifying the request headers.
+requestHeaders=Κεφαλίδες αιτήματος
+
+# LOCALIZATION NOTE (requestHeadersFromUpload): This is the label displayed
+# in the network details headers tab identifying the request headers from
+# the upload stream of a POST request's body.
+requestHeadersFromUpload=Κεφαλίδες αιτήματος από τη ροή μεταφόρτωσης
+
+# LOCALIZATION NOTE (responseHeaders): This is the label displayed
+# in the network details headers tab identifying the response headers.
+responseHeaders=Κεφαλίδες απόκρισης
+
+# LOCALIZATION NOTE (requestCookies): This is the label displayed
+# in the network details request tab identifying the request cookies.
+requestCookies=Απαίτηση cookies
+
+# LOCALIZATION NOTE (responseCookies): This is the label displayed
+# in the network details request tab identifying the response cookies.
+responseCookies=Απάντηση cookies
+
+# LOCALIZATION NOTE (responsePayload): This is the label displayed
+# in the network details response tab identifying the response payload.
+responsePayload=Φορτίο απόκρισης
+
+# LOCALIZATION NOTE (jsonFilterText): This is the text displayed
+# in the response tab of the network details pane for the JSON filtering input.
+jsonFilterText=Φιλτράρισμα ιδιοτήτων
+
+# LOCALIZATION NOTE (jsonScopeName): This is the text displayed
+# in the response tab of the network details pane for a JSON scope.
+jsonScopeName=JSON
+
+# LOCALIZATION NOTE (jsonpScopeName): This is the text displayed
+# in the response tab of the network details pane for a JSONP scope.
+jsonpScopeName=JSONP → callback %S()
+
+# LOCALIZATION NOTE (responseTruncated): This is the text displayed
+# in the response tab of the network details pane when the response is over
+# the truncation limit and thus was truncated.
+responseTruncated=Η απόκριση έχει αποκοπεί
+
+# LOCALIZATION NOTE (requestTruncated): This is the text displayed
+# in the request tab of the network details pane when the request is over
+# the truncation limit and thus was truncated.
+requestTruncated=Το αίτημα έχει αποκοπεί
+
+# LOCALIZATION NOTE (responsePreview): This is the text displayed
+# in the response tab of the network details pane for an HTML preview.
+responsePreview=Προεπισκόπηση
+
+# LOCALIZATION NOTE (networkMenu.raced): This is the label displayed
+# in the network menu specifying the transfer or a request is
+# raced. %S refers to the current transfer size.
+networkMenu.raced=%S (raced)
+
+# LOCALIZATION NOTE (networkMenu.sortedAsc): This is the tooltip displayed
+# in the network table toolbar, for any column that is sorted ascending.
+networkMenu.sortedAsc=Ταξινομήθηκαν κατά αύξουσα σειρά
+
+# LOCALIZATION NOTE (networkMenu.sortedDesc): This is the tooltip displayed
+# in the network table toolbar, for any column that is sorted descending.
+networkMenu.sortedDesc=Ταξινομήθηκαν κατά φθίνουσα σειρά
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.perf): A tooltip explaining
+# what the perf button does
+networkMenu.summary.tooltip.perf=Έναρξη ανάλυσης επιδόσεων
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.domContentLoaded): A tooltip explaining
+# what the DOMContentLoaded label displays
+networkMenu.summary.tooltip.domContentLoaded=Χρόνος όπου προέκυψε το συμβάν “DOMContentLoad”
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.load): A tooltip explaining
+# what the load label displays
+networkMenu.summary.tooltip.load=Χρόνος όπου προέκυψε το συμβάν “load”
+
+# LOCALIZATION NOTE (networkMenu.summary.requestsCount2): This label is displayed
+# in the network table footer providing the number of requests
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+networkMenu.summary.requestsCount2=Ένα αίτημα;#1 αιτήματα
+
+# LOCALIZATION NOTE (networkMenu.summary.requestsCountEmpty): This label is displayed
+# in the network table footer when there are no requests
+networkMenu.summary.requestsCountEmpty=Κανένα αίτημα
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.requestsCount): A tooltip explaining
+# what the requestsCount label displays
+networkMenu.summary.tooltip.requestsCount=Αριθμός αιτημάτων
+
+# LOCALIZATION NOTE (networkMenu.summary.transferred): This label is displayed
+# in the network table footer providing the transferred size.
+networkMenu.summary.transferred=%S / %S μεταφέρθηκαν
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.transferred): A tooltip explaining
+# what the transferred label displays
+networkMenu.summary.tooltip.transferred=Μέγεθος/μεταβιβασμένο μέγεθος όλων των αιτημάτων
+
+# LOCALIZATION NOTE (networkMenu.summary.finish): This label is displayed
+# in the network table footer providing the transfer time.
+networkMenu.summary.finish=Ολοκλήρωση: %S
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.finish): A tooltip explaining
+# what the finish label displays
+networkMenu.summary.tooltip.finish=Συνολικός χρόνος που απαιτείται για τη φόρτωση όλων των αιτημάτων
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.framesCount2): This label is displayed
+# in the messages table footer providing the number of frames
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+networkMenu.ws.summary.framesCount2=#1 μήνυμα;#1 μηνύματα
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.framesCountEmpty): This label is displayed
+# in the messages table footer when there are no frames
+networkMenu.ws.summary.framesCountEmpty=Κανένα μήνυμα
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.tooltip.framesCount): A tooltip explaining
+# what the framesCount label displays
+networkMenu.ws.summary.tooltip.framesCount=Αριθμός μηνυμάτων
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.tooltip.framesTotalSize): A tooltip explaining
+# what the framesTotalSize label displays
+networkMenu.ws.summary.tooltip.framesTotalSize=Συνολικό μέγεθος προβεβλημένων μηνυμάτων
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.label.framesTranferredSize): A label showing
+# summary size info related to the current list of WS messages
+# %1$S is the total size of the transferred data, %2$S is the size of sent data, %3$S is the size of received data.
+networkMenu.ws.summary.label.framesTranferredSize=%1$S συνολικά, %2$S αποστολές, %3$S παραλαβές
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.tooltip.framesTotalTime): A tooltip explaining
+# what framesTotalTime displays
+networkMenu.ws.summary.tooltip.framesTotalTime=Συνολικός χρόνος που πέρασε μεταξύ του πρώτου και του τελευταίου μηνύματος
+
+# LOCALIZATION NOTE (networkMenu.sizeB): This is the label displayed
+# in the network menu specifying the size of a request (in bytes).
+networkMenu.sizeB=%S B
+
+# LOCALIZATION NOTE (networkMenu.sizeKB): This is the label displayed
+# in the network menu specifying the size of a request (in kilobytes).
+networkMenu.sizeKB=%S KB
+
+# LOCALIZATION NOTE (networkMenu.sizeMB): This is the label displayed
+# in the network menu specifying the size of a request (in megabytes).
+networkMenu.sizeMB=%S MB
+
+# LOCALIZATION NOTE (networkMenu.sizeGB): This is the label displayed
+# in the network menu specifying the size of a request (in gigabytes).
+networkMenu.sizeGB=%S GB
+
+# LOCALIZATION NOTE (networkMenu.sizeUnavailable): This is the label displayed
+# in the network menu specifying the transferred size of a request is
+# unavailable.
+networkMenu.sizeUnavailable=—
+
+# LOCALIZATION NOTE (networkMenu.sizeUnavailable.title): This is the tooltip
+# displayed in the network menu specifying that the transferred size of a
+# request is unavailable.
+networkMenu.sizeUnavailable.title=Το μεταφερόμενο μέγεθος δεν είναι διαθέσιμο
+
+# LOCALIZATION NOTE (networkMenu.sizeCached): This is the label displayed
+# in the network menu and the headers panel specifying the transfer or a request is
+# cached.
+networkMenu.sizeCached=στη μνήμη cache
+
+# LOCALIZATION NOTE (networkMenu.sizeServiceWorker): This is the label displayed
+# in the network menu and the headers panel specifying the transferred of a request
+# computed by a service worker.
+networkMenu.sizeServiceWorker=service worker
+
+# LOCALIZATION NOTE (networkMenu.blocked2): This is a generic message for a
+# URL that has been blocked for an unknown reason
+networkMenu.blocked2=Αποκλεισμένο
+
+# LOCALIZATION NOTE (networkMenu.blockedby): This is a generic message for a
+# URL that has been blocked by an extension
+# %S is the extension name.
+networkMenu.blockedby=Αποκλείστηκε από %S
+
+# LOCALIZATION NOTE (networkMenu.blockedTooltip): This is a the text displayed
+# as a tooltip for the blocked icon in the request list
+networkMenu.blockedTooltip=Αποκλεισμένο
+
+# LOCALIZATION NOTE (networkMenu.totalMS2): This is the label displayed
+# in the network menu specifying the time for a request to finish (in milliseconds).
+networkMenu.totalMS2=%S ms
+
+# This string is used to concatenate tooltips (netmonitor.waterfall.tooltip.*)
+# in the requests waterfall for total time (in milliseconds). \\u0020 represents
+# a whitespace. You can replace this with a different character, e.g. an hyphen
+# or a period, if a comma doesn't work for your language.
+netmonitor.waterfall.tooltip.separator=,\u0020
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.total): This is part of the tooltip
+# displayed in the requests waterfall for total time (in milliseconds).
+netmonitor.waterfall.tooltip.total=Συνολικά %S ms
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.blocked): This is part of the tooltip
+# displayed in the requests waterfall for blocked time (in milliseconds).
+netmonitor.waterfall.tooltip.blocked=Φραγή %S ms
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.dns): This is part of the tooltip
+# displayed in the requests waterfall for dns time (in milliseconds).
+netmonitor.waterfall.tooltip.dns=DNS %S ms
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.ssl): This is part of the tooltip
+# displayed in the requests waterfall for tls setup time (in milliseconds).
+netmonitor.waterfall.tooltip.ssl=TLS %S ms
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.connect): This is part of the tooltip
+# displayed in the requests waterfall for connect time (in milliseconds).
+netmonitor.waterfall.tooltip.connect=Σύνδεση %S ms
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.send): This is part of the tooltip
+# displayed in the requests waterfall for send time (in milliseconds).
+netmonitor.waterfall.tooltip.send=Αποστολή %S ms
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.wait): This is part of the tooltip
+# displayed in the requests waterfall for wait time (in milliseconds).
+netmonitor.waterfall.tooltip.wait=Αναμονή %S ms
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.receive): This is part of the tooltip
+# displayed in the requests waterfall for receive time (in milliseiconds).
+netmonitor.waterfall.tooltip.receive=Λήψη %S ms
+
+# LOCALIZATION NOTE (netmonitor.timings.requestTiming): This is the title of the existing
+# section in Timings side panel. This section contains request timings.
+netmonitor.timings.requestTiming=Χρονισμός αιτήματος
+
+# LOCALIZATION NOTE (netmonitor.timings.serverTiming): This is the title of a new section
+# in Timings side panel. This section contains server timings transferred from the server
+# through the "Server-Timing" header.
+netmonitor.timings.serverTiming=Χρονισμός διακομιστή
+
+# LOCALIZATION NOTE (netmonitor.timings.queuedAt): This is relative queued time to the
+# first request. %S is time expressed in milliseconds or minutes.
+netmonitor.timings.queuedAt=Σε ουρά: %S
+
+# LOCALIZATION NOTE (netmonitor.timings.startedAt): Relative to the first request,
+# when the request actually started. %S is time expressed in milliseconds or minutes.
+netmonitor.timings.startedAt=Έναρξη: %S
+
+# LOCALIZATION NOTE (netmonitor.timings.downloadedAt): Relative to first request,
+# when the request actually finished downloading.
+# %S is time expressed in milliseconds or minutes.
+netmonitor.timings.downloadedAt=Λήφθηκε: %S
+
+# LOCALIZATION NOTE (netmonitor.timings.noTimings): Message that displays in the
+# timings pane when thea request has been blocked
+netmonitor.timings.noTimings=Κανένας χρόνος για αυτό το αίτημα
+
+# LOCALIZATION NOTE (networkMenu.millisecond): This is the label displayed
+# in the network menu specifying timing interval divisions (in milliseconds).
+networkMenu.millisecond=%S ms
+
+# LOCALIZATION NOTE (networkMenu.second): This is the label displayed
+# in the network menu specifying timing interval divisions (in seconds).
+networkMenu.second=%S δ
+
+# LOCALIZATION NOTE (networkMenu.minute): This is the label displayed
+# in the network menu specifying timing interval divisions (in minutes).
+networkMenu.minute=%S λεπτά
+
+# LOCALIZATION NOTE (pieChart.loading): This is the label displayed
+# for pie charts (e.g., in the performance analysis view) when there is
+# no data available yet.
+pieChart.loading=Φόρτωση
+
+# LOCALIZATION NOTE (pieChart.unavailable): This is the label displayed
+# for pie charts (e.g., in the performance analysis view) when there is
+# no data available, even after loading it.
+pieChart.unavailable=Κενό
+
+# LOCALIZATION NOTE (tableChart.loading): This is the label displayed
+# for table charts (e.g., in the performance analysis view) when there is
+# no data available yet.
+tableChart.loading=Παρακαλώ περιμένετε…
+
+# LOCALIZATION NOTE (tableChart.unavailable): This is the label displayed
+# for table charts (e.g., in the performance analysis view) when there is
+# no data available, even after loading it.
+tableChart.unavailable=Κανένα διαθέσιμο δεδομένο
+
+# LOCALIZATION NOTE (charts.sizeKB): This is the label displayed
+# in pie or table charts specifying the size of a request (in kilobytes).
+charts.sizeKB=%S KB
+
+# LOCALIZATION NOTE (charts.transferredSizeKB): This is the label displayed
+# in pie or table charts specifying the size of a transferred request (in kilobytes).
+charts.transferredSizeKB=%S KB
+
+# LOCALIZATION NOTE (charts.totalS): This is the label displayed
+# in pie or table charts specifying the time for a request to finish (in seconds).
+charts.totalS=%S δ
+
+# LOCALIZATION NOTE (charts.totalTransferredSize): This is the label displayed
+# in the performance analysis view for total transferred size, in kilobytes.
+charts.totalTransferredSize=Μέγεθος μεταφερόμενων: %S KB
+
+# LOCALIZATION NOTE (charts.cacheEnabled): This is the label displayed
+# in the performance analysis view for "cache enabled" charts.
+charts.cacheEnabled=Έτοιμη cache
+
+# LOCALIZATION NOTE (charts.cacheDisabled): This is the label displayed
+# in the performance analysis view for "cache disabled" charts.
+charts.cacheDisabled=Κενή cache
+
+# LOCALIZATION NOTE (charts.learnMore): This is the label displayed
+# in the performance analysis view, with a link to external documentation.
+charts.learnMore=Μάθετε περισσότερα σχετικά με την ανάλυση επιδόσεων
+
+# LOCALIZATION NOTE (charts.totalSize): This is the label displayed
+# in the performance analysis view for total requests size, in kilobytes.
+charts.totalSize=Μέγεθος: %S KB
+
+# LOCALIZATION NOTE (charts.totalSeconds): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This is the label displayed in the performance analysis view for the
+# total requests time, in seconds.
+charts.totalSeconds=Χρόνος: #1 δευτερόλεπτο;Χρόνος: #1 δευτερόλεπτα
+
+# LOCALIZATION NOTE (charts.totalSecondsNonBlocking): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This is the label displayed in the performance analysis view for the
+# total requests time (non-blocking), in seconds.
+charts.totalSecondsNonBlocking=Χρόνος μη αποκλεισμού: #1 δευτερόλεπτο;Χρόνος μη αποκλεισμού: #1 δευτερόλεπτα
+
+# LOCALIZATION NOTE (charts.totalCached): This is the label displayed
+# in the performance analysis view for total cached responses.
+charts.totalCached=Απαντήσεις μνήμης cache: %S
+
+# LOCALIZATION NOTE (charts.totalCount): This is the label displayed
+# in the performance analysis view for total requests.
+charts.totalCount=Συνολικά αιτήματα: %S
+
+# LOCALIZATION NOTE (charts.size): This is the label displayed
+# in the header column in the performance analysis view for size of the request.
+charts.size=Μέγεθος
+
+# LOCALIZATION NOTE (charts.type): This is the label displayed
+# in the header column in the performance analysis view for type of request.
+charts.type=Τύπος
+
+# LOCALIZATION NOTE (charts.transferred): This is the label displayed
+# in the header column in the performance analysis view for transferred
+# size of the request.
+charts.transferred=Μεταφέρθηκαν
+
+# LOCALIZATION NOTE (charts.time): This is the label displayed
+# in the header column in the performance analysis view for time of request.
+charts.time=Χρόνος
+
+# LOCALIZATION NOTE (charts.nonBlockingTime): This is the label displayed
+# in the header column in the performance analysis view for non blocking
+# time of request.
+charts.nonBlockingTime=Χρόνος μη αποκλεισμού
+
+# LOCALIZATION NOTE (netRequest.originalFileURL.tooltip): This is the tooltip
+# displayed for the file's original URL value displayed in the file column of
+# a request.
+netRequest.originalFileURL.tooltip=Αρχικό: %S
+
+# LOCALIZATION NOTE (netRequest.decodedFileURL.tooltip): This is the tooltip
+# displayed for the file's decoded URL value displayed in the file column of
+# a request.
+netRequest.decodedFileURL.tooltip=Αποκωδικοποιημένο: %S
+
+# LOCALIZATION NOTE (certmgr.subjectinfo.label):
+# A label used for a certificate section in security tab.
+# This section displays Name and organization who has been assigned the fingerprints
+certmgr.subjectinfo.label=Έκδοση για
+
+# LOCALIZATION NOTE (certmgr.certdetail.cn):
+# A label used for Issued To and Issued By sub-section in security tab
+certmgr.certdetail.cn=Κοινό όνομα (CN):
+
+# LOCALIZATION NOTE (certmgr.certdetail.o):
+# A label used for Issued To and Issued By sub-section in security tab
+certmgr.certdetail.o=Οργανισμός (O):
+
+# LOCALIZATION NOTE (certmgr.certdetail.ou):
+# A label used for Issued To and Issued By sub-section in security tab
+certmgr.certdetail.ou=Οργανωτική μονάδα (OU):
+
+# LOCALIZATION NOTE (certmgr.issuerinfo.label):
+# A label used for a certificate section in security tab
+# This section displays Name and organization who issued the fingerprints
+certmgr.issuerinfo.label=Έκδοση από
+
+# LOCALIZATION NOTE (certmgr.periodofvalidity.label):
+# A label used for a certificate section in security tab
+# This section displays the valid period of this fingerprints
+certmgr.periodofvalidity.label=Περίοδος ισχύος
+
+# LOCALIZATION NOTE (certmgr.begins):
+# A label used for Period of Validity sub-section in security tab
+certmgr.begins=Έναρξη:
+
+# LOCALIZATION NOTE (certmgr.expires):
+# A label used for Period of Validity sub-section in security tab
+certmgr.expires=Λήξη:
+
+# LOCALIZATION NOTE (certmgr.fingerprints.label):
+# A label used for a certificate section in security tab
+# This section displays the valid period of this fingerprints
+certmgr.fingerprints.label=Αποτυπώματα
+
+# LOCALIZATION NOTE (certmgr.certdetail.sha256fingerprint):
+# A label used for Fingerprints sub-section in security tab
+certmgr.certdetail.sha256fingerprint=Αποτύπωμα SHA-256:
+
+# LOCALIZATION NOTE (certmgr.certdetail.sha1fingerprint):
+# A label used for Fingerprints sub-section in security tab
+certmgr.certdetail.sha1fingerprint=Αποτύπωμα SHA1:
+
+# LOCALIZATION NOTE (certmgr.certificateTransparency.label):
+# This string is used as a label in the security tab.
+certmgr.certificateTransparency.label=Διαφάνεια:
+
+# LOCALIZATION NOTE (certmgr.certificateTransparency.status.ok):
+# This string is used to indicate that there are valid signed certificate
+# timestamps. This is a property for the 'Transparency'
+# field in the security tab.
+certmgr.certificateTransparency.status.ok=Έγκυρες εγγραφές SCT
+
+# LOCALIZATION NOTE (certmgr.certificateTransparency.status.notEnoughSCTS):
+# This string is used to indicate that there are not enough valid signed
+# certificate timestamps. This is a property for the 'Transparency'
+# field in the security tab.
+certmgr.certificateTransparency.status.notEnoughSCTS=Ανεπαρκείς SCTs
+
+# LOCALIZATION NOTE (certmgr.certificateTransparency.status.notDiverseSCTS):
+# This string is used to indicate that there ar not enough diverse signed
+# certificate timestamps. This is a property for the 'Transparency'
+# field in the security tab.
+certmgr.certificateTransparency.status.notDiverseSCTS=Όχι διαφορετικές SCTs
+
+# LOCALIZATION NOTE (netmonitor.perfNotice1/2/3): These are the labels displayed
+# in the network table when empty to start performance analysis.
+netmonitor.perfNotice1=• Κάντε κλικ στο
+netmonitor.perfNotice2=κουμπί για έναρξη ανάλυσης επιδόσεων.
+netmonitor.perfNotice3=Ανάλυση
+
+# LOCALIZATION NOTE (netmonitor.reload1/2/3): These are the labels displayed
+# in the network table when empty to start logging network requests.
+netmonitor.reloadNotice1=• Εκτέλεση αιτήματος ή
+netmonitor.reloadNotice2=Ανανέωση
+netmonitor.reloadNotice3=σελίδας για προβολή λεπτομερών πληροφοριών σχετικά με τη δραστηριότητα δικτύου.
+
+# LOCALIZATION NOTE (netmonitor.toolbar.status3): This is the label displayed
+# in the network table toolbar, above the "status" column.
+netmonitor.toolbar.status3=Κατάσταση
+
+# LOCALIZATION NOTE (netmonitor.toolbar.method): This is the label displayed
+# in the network table toolbar, above the "method" column.
+netmonitor.toolbar.method=Μέθοδος
+
+# LOCALIZATION NOTE (netmonitor.toolbar.file): This is the label displayed
+# in the network table toolbar, above the "file" column.
+netmonitor.toolbar.file=Αρχείο
+
+# LOCALIZATION NOTE (netmonitor.toolbar.url): This is the label displayed
+# in the network table toolbar, above the "url" column.
+netmonitor.toolbar.url=URL
+
+# LOCALIZATION NOTE (netmonitor.toolbar.protocol): This is the label displayed
+# in the network table toolbar, above the "protocol" column.
+netmonitor.toolbar.protocol=Πρωτόκολλο
+
+# LOCALIZATION NOTE (netmonitor.toolbar.domain): This is the label displayed
+# in the network table toolbar, above the "domain" column.
+netmonitor.toolbar.domain=Τομέας
+
+# LOCALIZATION NOTE (netmonitor.toolbar.remoteip): This is the label displayed
+# in the network table toolbar, above the "remoteip" column.
+netmonitor.toolbar.remoteip=Απομακρυσμένη IP
+
+# LOCALIZATION NOTE (netmonitor.toolbar.initiator): This is the label displayed
+# in the network table toolbar, above the "initiator" column.
+netmonitor.toolbar.initiator=Εκκινητής
+
+# LOCALIZATION NOTE (netmonitor.toolbar.type): This is the label displayed
+# in the network table toolbar, above the "type" column.
+netmonitor.toolbar.type=Τύπος
+
+# LOCALIZATION NOTE (netmonitor.toolbar.cookies): This is the label displayed
+# in the network table toolbar, above the "cookies" column.
+netmonitor.toolbar.cookies=Cookies
+
+# LOCALIZATION NOTE (netmonitor.toolbar.setCookies): This is the label displayed
+# in the network table toolbar, above the "set cookies" column.
+# Set-Cookie is a HTTP response header. This string is the plural form of it.
+# See https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie
+netmonitor.toolbar.setCookies=Set-Cookies
+
+# LOCALIZATION NOTE (netmonitor.toolbar.scheme): This is the label displayed
+# in the network table toolbar, above the "scheme" column.
+netmonitor.toolbar.scheme=Σχεδιάγραμμα
+
+# LOCALIZATION NOTE (netmonitor.toolbar.startTime): This is the label displayed
+# in the network table toolbar, above the "start time" column, which is the time
+# from start of 1st request until the start of this request.
+netmonitor.toolbar.startTime=Χρόνος έναρξης
+
+# LOCALIZATION NOTE (netmonitor.toolbar.endTime): This is the label displayed
+# in the network table toolbar, above the "end time" column, which is the time
+# from start of 1st request until the end of this response.
+netmonitor.toolbar.endTime=Χρόνος λήξης
+
+# LOCALIZATION NOTE (netmonitor.toolbar.responseTime): This is the label displayed
+# in the network table toolbar, above the "response time" column, which is the time
+# from start of 1st request until the beginning of download of this response.
+netmonitor.toolbar.responseTime=Χρόνος απόκρισης
+
+# LOCALIZATION NOTE (netmonitor.toolbar.duration): This is the label displayed
+# in the network table toolbar, above the "duration" column, which is the time
+# from start of this request until the end of this response.
+netmonitor.toolbar.duration=Διάρκεια
+
+# LOCALIZATION NOTE (netmonitor.toolbar.latency): This is the label displayed
+# in the network table toolbar, above the "latency" column, which is the time
+# from end of this request until the beginning of download of this response.
+netmonitor.toolbar.latency=Καθυστέρηση
+
+# LOCALIZATION NOTE (netmonitor.toolbar.transferred): This is the label displayed
+# in the network table toolbar, above the "transferred" column and in general
+# section of the headers panel, which is the compressed / encoded size.
+netmonitor.toolbar.transferred=Μεταφέρθηκαν
+
+# LOCALIZATION NOTE (netmonitor.toolbar.contentSize): This is the label displayed
+# in the network table toolbar, above the "size" column, which is the
+# uncompressed / decoded size.
+netmonitor.toolbar.contentSize=Μέγεθος
+
+# LOCALIZATION NOTE (netmonitor.toolbar.waterfall): This is the label displayed
+# in the network table toolbar, above the "waterfall" column.
+netmonitor.toolbar.waterfall=Χρονολόγιο
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.size): This is the label displayed
+# in the messages table header, above the "size" column.
+netmonitor.ws.toolbar.size=Μέγεθος
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.data): This is the label displayed
+# in the messages table header, above the "data" column.
+netmonitor.ws.toolbar.data=Δεδομένα
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.opCode): This is the label displayed
+# in the messages table header, above the "opCode" column.
+netmonitor.ws.toolbar.opCode=OpCode
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.maskBit): This is the label displayed
+# in the messages table header, above the "maskBit" column.
+netmonitor.ws.toolbar.maskBit=MaskBit
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.finBit): This is the label displayed
+# in the messages table header, above the "finBit" column.
+netmonitor.ws.toolbar.finBit=FinBit
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.time): This is the label displayed
+# in the messages table header, above the "time" column.
+netmonitor.ws.toolbar.time=Χρόνος
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.eventName): This is the label displayed
+# in the messages table header, above the "eventName" column.
+netmonitor.ws.toolbar.eventName=Όνομα συμβάντος
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.retry): This is the label displayed
+# in the messages table header, above the "retry" column.
+netmonitor.ws.toolbar.retry=Επανάληψη
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.lastEventId): This is the label displayed
+# in the messages table header, above the "lastEventId" column.
+netmonitor.ws.toolbar.lastEventId=ID τελευταίου συμβάντος
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.clear): This is the label displayed
+# in the messages panel toolbar for the "Clear" button.
+netmonitor.ws.toolbar.clear=Εκκαθάριση
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.filterFreetext.label): This is the label
+# displayed in the messages panel toolbar for the frames filtering textbox.
+netmonitor.ws.toolbar.filterFreetext.label=Φιλτράρισμα μηνυμάτων
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.filterFreetext.key): This is the
+# shortcut key to focus on the messages panel toolbar messages filtering textbox
+netmonitor.ws.toolbar.filterFreetext.key=CmdOrCtrl+E
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.resetColumns): This is the label
+# displayed in the messages panel table header context menu.
+netmonitor.ws.toolbar.resetColumns=Επαναφορά στηλών
+
+# LOCALIZATION NOTE (netmonitor.ws.context.all): This is the label displayed
+# on the context menu that shows "All" WebSocket frames.
+netmonitor.ws.context.all=Όλα
+
+# LOCALIZATION NOTE (netmonitor.ws.context.all.accesskey): This is the access key
+# for the "All" menu item displayed in the context menu in the websocket toolbar.
+netmonitor.ws.context.all.accesskey=Ό
+
+# LOCALIZATION NOTE (netmonitor.ws.context.sent): This is the label displayed
+# on the context menu that shows "Sent" WebSocket frames.
+netmonitor.ws.context.sent=Απεσταλμένα
+
+# LOCALIZATION NOTE (netmonitor.ws.context.sent.accesskey): This is the access key
+# for the "Sent" menu item displayed in the context menu in the websocket toolbar.
+netmonitor.ws.context.sent.accesskey=Α
+
+# LOCALIZATION NOTE (netmonitor.ws.context.received): This is the label displayed
+# on the context menu that shows "Received" WebSocket frames.
+netmonitor.ws.context.received=Ληφθέντα
+
+# LOCALIZATION NOTE (netmonitor.ws.context.received.accesskey): This is the access key
+# for the "Received" menu item displayed in the context menu in the websocket toolbar.
+netmonitor.ws.context.received.accesskey=Λ
+
+# LOCALIZATION NOTE (netmonitor.ws.context.controlFrames): This is the label displayed
+# on the context menu that shows "Control Frames" WebSocket frames.
+netmonitor.ws.context.controlFrames=Έλεγχος
+
+# LOCALIZATION NOTE (netmonitor.ws.context.controlFrames.accesskey): This is the access key
+# for the "Control Frames" menu item displayed in the context menu in the websocket toolbar.
+netmonitor.ws.context.controlFrames.accesskey=ο
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrame): This is the label displayed
+# on the context menu that shows "Copy Message".
+netmonitor.ws.context.copyFrame=Αντιγραφή μηνύματος
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrame.accesskey): This is the access key
+# for the "Copy Message" menu item displayed in the context menu of a WebSocket frame.
+netmonitor.ws.context.copyFrame.accesskey=Α
+
+# LOCALIZATION NOTE (netmonitor.ws.connection.closed): This is the text displayed in the
+# websocket messages panel when the connection is closed
+netmonitor.ws.connection.closed=Η σύνδεση έκλεισε
+
+# LOCALIZATION NOTE (netmonitor.ws.type.sent): This is the label used as
+# accessible text for the "sent" type icon in the websocket table's "data" column.
+netmonitor.ws.type.sent=Απεσταλμένα
+
+# LOCALIZATION NOTE (netmonitor.ws.type.received): This is the label used as
+# accessible text for the "received" type icon in the websocket table's "data" column.
+netmonitor.ws.type.received=Ληφθέντα
+
+# LOCALIZATION NOTE (netmonitor.ws.rawData.header): This is the label displayed
+# in the messages panel identifying the raw data.
+netmonitor.ws.rawData.header=Ακατέργαστα δεδομένα (%S)
+
+# LOCALIZATION NOTE (netmonitor.search.toolbar.inputPlaceholder): This is the label
+# displayed in the search toolbar for the search input as the placeholder.
+netmonitor.search.toolbar.inputPlaceholder=Εύρεση σε πόρους…
+
+# LOCALIZATION NOTE (netmonitor.search.toolbar.close): This is the label
+# displayed in the search toolbar to close the search panel.
+netmonitor.search.toolbar.close=Κλείσιμο πλαισίου αναζήτησης
+
+# LOCALIZATION NOTE (netmonitor.search.toolbar.clear): This is the label
+# displayed in the search toolbar to clear the search panel.
+netmonitor.search.toolbar.clear=Κλείσιμο αποτελεσμάτων αναζήτησης
+
+# LOCALIZATION NOTE (netmonitor.search.toolbar.caseSensitive): This is the label
+# displayed in the search toolbar to do a case sensitive search.
+netmonitor.search.toolbar.caseSensitive=Με διάκριση κεφαλαίων-πεζών
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.fetching): This is the label
+# displayed in the search results status bar when status is set to fetching.
+netmonitor.search.status.labels.fetching=Αναζήτηση…
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.canceled): This is the label
+# displayed in the search results status bar when status is set to cancelled.
+netmonitor.search.status.labels.canceled=Η αναζήτηση ακυρώθηκε.
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.done): This is the label
+# displayed in the search results status bar when status is set to done.
+# %1$S is the number of matching lines in search results (netmonitor.search.status.labels.matchingLines)
+# %2$S is the number of files in which matching lines were found (netmonitor.search.status.labels.fileCount)
+netmonitor.search.status.labels.done=Η αναζήτηση ολοκληρώθηκε. %1$S %2$S.
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.matchingLines): Semi-colon list of plural forms.
+# This is the label displayed in the search results status bar showing matching lines found.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of matching lines found
+netmonitor.search.status.labels.matchingLines=Βρέθηκε #1 αντιστοίχιση;Βρέθηκαν #1 αντιστοιχίσεις
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.fileCount): Semi-colon list of plural forms.
+# This is the label displayed in the search results status bar showing file count
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of files in which matching lines were found
+netmonitor.search.status.labels.fileCount=σε #1 αρχείο;σε #1 αρχεία
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.error): This is the label
+# displayed in the search results status bar when status is set to error.
+netmonitor.search.status.labels.error=Σφάλμα αναζήτησης.
+
+# LOCALIZATION NOTE (netmonitor.toolbar.requestBlocking): This is the tooltip displayed
+# over the toolbar's Request Blocking buttonn
+netmonitor.toolbar.requestBlocking=Απαίτηση φραγής
+
+# LOCALIZATION NOTE (netmonitor.actionbar.requestBlocking2): This is the label displayed
+# in the action bar's request blocking tab
+netmonitor.actionbar.requestBlocking2=Φραγή
+
+# LOCALIZATION NOTE (netmonitor.actionbar.enableBlocking): This is the label displayed
+# in request blocking tab to represent if requests blocking should be enabled
+netmonitor.actionbar.enableBlocking=Ενεργοποίηση φραγής αιτήματος
+
+# LOCALIZATION NOTE (netmonitor.actionbar.blockSearchPlaceholder): This is the
+# placeholder text for the request addition form
+netmonitor.actionbar.blockSearchPlaceholder=Φραγή πόρου όταν το URL περιέχει
+
+# LOCALIZATION NOTE (netmonitor.actionbar.removeBlockedUrl): This is the
+# tooltip shown over the remove button for blocked URL item
+netmonitor.actionbar.removeBlockedUrl=Αφαίρεση μοτίβου
+
+# LOCALIZATION NOTE (netmonitor.actionbar.requestBlockingUsageNotice): This is the
+# usage notice displayed when network blocking list is empty
+netmonitor.actionbar.requestBlockingUsageNotice=Προσθέστε μοτίβα URL εδώ για φραγή αντίστοιχεων αιτημάτων.
+
+# LOCALIZATION NOTE (netmonitor.actionbar.requestBlockingAddNotice): This is the
+# add notice that explains ways to add blocking pattern that is displayed when
+# network blocking list is empty
+netmonitor.actionbar.requestBlockingAddNotice=Ξεκινήστε προσθέτοντας ένα μοτίβο ή σύροντας μια σειρά από τον πίνακα δικτύου.
+
+# LOCALIZATION NOTE (netmonitor.requestBlockingMenu.removeAllBlockedUrls): This is the
+# context menu item for removing all blocked URLs
+netmonitor.requestBlockingMenu.removeAllBlockedUrls=Αφαίρεση όλων
+
+# LOCALIZATION NOTE (netmonitor.requestBlockingMenu.enableAllBlockedUrls): This is the
+# context menu item for enabling all blocked URLs
+netmonitor.requestBlockingMenu.enableAllBlockedUrls=Ενεργοποίηση όλων
+
+# LOCALIZATION NOTE (netmonitor.requestBlockingMenu.disableAllBlockedUrls): This is the
+# context menu item for disabling all blocked URLs
+netmonitor.requestBlockingMenu.disableAllBlockedUrls=Απενεργοποίηση όλων
+
+# LOCALIZATION NOTE (netmonitor.actionbar.search): This is the label displayed
+# in the action bar's search tab
+netmonitor.actionbar.search=Αναζήτηση
+
+# LOCALIZATION NOTE (messagesTruncated): This is the text displayed
+# in the messages panel when the number of messages is over the
+# truncation limit.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+netmonitor.ws.truncated-messages.warning=#1 μήνυμα έχει περικοπεί για εξοικονόμηση μνήμης;#1 μηνύματα έχουν περικοπεί για εξοικονόμηση μνήμης
+
+# LOCALIZATION NOTE (disableMessagesTruncation): This is the text displayed
+# in the messages panel checkbox label for toggling message truncation.
+toggleMessagesTruncation=Διατήρηση όλων των μελλοντικών μηνυμάτων
+
+# LOCALIZATION NOTE (toggleMessagesTruncation.title): This is the title used
+# to describe the checkbox used to toggle message truncation.
+toggleMessagesTruncation.title=Διατήρηση όλων των μελλοντικών μηνυμάτων ή συνέχεια εμφάνισης περικομμένων μηνυμάτων
+
+# LOCALIZATION NOTE (messageDataTruncated): This is the text displayed
+# to describe to describe data truncation in the messages panel.
+messageDataTruncated=Τα δεδομένα έχουν περικοπεί
+
+# LOCALIZATION NOTE (netmonitor.tab.headers): This is the label displayed
+# in the network details pane identifying the headers tab.
+netmonitor.tab.headers=Κεφαλίδες
+
+# LOCALIZATION NOTE (netmonitor.tab.messages): This is the label displayed
+# in the network details pane identifying the messages tab.
+netmonitor.tab.messages=Μηνύματα
+
+# LOCALIZATION NOTE (netmonitor.tab.cookies): This is the label displayed
+# in the network details pane identifying the cookies tab.
+netmonitor.tab.cookies=Cookies
+
+# LOCALIZATION NOTE (netmonitor.tab.cache): This is the label displayed
+# in the network details pane identifying the cache tab.
+netmonitor.tab.cache=Προσωρινή μνήμη
+
+# LOCALIZATION NOTE (netmonitor.tab.params): This is the label displayed
+# in the network details pane identifying the params tab.
+netmonitor.tab.params=Παράμετροι
+
+# LOCALIZATION NOTE (netmonitor.tab.request): This is the label displayed
+# in the network details pane identifying the request tab.
+netmonitor.tab.request=Αίτημα
+
+# LOCALIZATION NOTE (netmonitor.tab.response): This is the label displayed
+# in the network details pane identifying the response tab.
+netmonitor.tab.response=Απάντηση
+
+# LOCALIZATION NOTE (netmonitor.tab.timings): This is the label displayed
+# in the network details pane identifying the timings tab.
+netmonitor.tab.timings=Χρονισμοί
+
+# LOCALIZATION NOTE (netmonitor.tab.stackTrace): This is the label displayed
+# in the network details pane identifying the stack-trace tab.
+netmonitor.tab.stackTrace=Ίχνος στοίβας
+
+# LOCALIZATION NOTE (netmonitor.tab.security): This is the label displayed
+# in the network details pane identifying the security tab.
+netmonitor.tab.security=Ασφάλεια
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.all): This is the label displayed
+# in the network toolbar for the "All" filtering button.
+netmonitor.toolbar.filter.all=Όλα
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.html): This is the label displayed
+# in the network toolbar for the "HTML" filtering button.
+netmonitor.toolbar.filter.html=HTML
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.css): This is the label displayed
+# in the network toolbar for the "CSS" filtering button.
+netmonitor.toolbar.filter.css=CSS
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.js): This is the label displayed
+# in the network toolbar for the "JS" filtering button.
+netmonitor.toolbar.filter.js=JS
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.xhr): This is the label displayed
+# in the network toolbar for the "XHR" filtering button.
+netmonitor.toolbar.filter.xhr=XHR
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.fonts): This is the label displayed
+# in the network toolbar for the "Fonts" filtering button.
+netmonitor.toolbar.filter.fonts=Γραμματοσειρές
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.images): This is the label displayed
+# in the network toolbar for the "Images" filtering button.
+netmonitor.toolbar.filter.images=Εικόνες
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.media): This is the label displayed
+# in the network toolbar for the "Media" filtering button.
+netmonitor.toolbar.filter.media=Πολυμέσα
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.flash): This is the label displayed
+# in the network toolbar for the "Flash" filtering button.
+netmonitor.toolbar.filter.flash=Flash
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.ws): This is the label displayed
+# in the network toolbar for the "WS" filtering button.
+netmonitor.toolbar.filter.ws=WS
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.other): This is the label displayed
+# in the network toolbar for the "Other" filtering button.
+netmonitor.toolbar.filter.other=Άλλο
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filterFreetext.label): This is the label
+# displayed in the network toolbar for the url filtering textbox.
+netmonitor.toolbar.filterFreetext.label=URLs φίλτρων
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filterFreetext.key): This is the
+# shortcut key to focus on the toolbar url filtering textbox
+netmonitor.toolbar.filterFreetext.key=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (netmonitor.toolbar.search.key): This is the
+# shortcut key to toggle the search panel
+netmonitor.toolbar.search.key=CmdOrCtrl+Shift+F
+
+# LOCALIZATION NOTE (netmonitor.toolbar.copy.key): This is the
+# shortcut key to copy a selected request url from the network table
+netmonitor.toolbar.copy.key=CmdOrCtrl+C
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filterFreetext.learnMore): This is
+# the title used for MDN icon in filtering textbox
+netmonitor.toolbar.filterFreetext.learnMore=Μάθετε περισσότερα για το φιλτράρισμα
+
+# LOCALIZATION NOTE (netmonitor.toolbar.enablePersistentLogs.label): This is the label
+# displayed for the checkbox for enabling persistent logs.
+netmonitor.toolbar.enablePersistentLogs.label=Διατήρηση Καταγραφής
+
+# LOCALIZATION NOTE (netmonitor.toolbar.enablePersistentLogs.tooltip): This is the tooltip
+# displayed for the checkbox for enabling persistent logs.
+netmonitor.toolbar.enablePersistentLogs.tooltip=Αν ενεργοποιήσετε αυτή την επιλογή, η λίστα αιτημάτων δεν θα διαγράφεται κάθε φορά που πλοηγείστε σε μια νέα σελίδα
+
+# LOCALIZATION NOTE (netmonitor.toolbar.disableCache.label): This is the label
+# displayed for the checkbox for disabling browser cache.
+netmonitor.toolbar.disableCache.label=Απενεργοποίηση cache
+
+# LOCALIZATION NOTE (netmonitor.toolbar.disableCache.tooltip): This is the tooltip
+# displayed for the checkbox for disabling browser cache.
+netmonitor.toolbar.disableCache.tooltip=Απενεργοποίησης μνήμης cache HTTP
+
+# LOCALIZATION NOTE (netmonitor.toolbar.clear): This is the label displayed
+# in the network toolbar for the "Clear" button.
+netmonitor.toolbar.clear=Εκκαθάριση
+
+# LOCALIZATION NOTE (netmonitor.toolbar.toggleRecording): This is the label displayed
+# in the network toolbar for the toggle recording button.
+netmonitor.toolbar.toggleRecording=Παύση/συνέχιση καταγραφής δραστηριότητας δικτύου
+
+# LOCALIZATION NOTE (netmonitor.toolbar.search): This is the tooltip label displayed
+# in the network toolbar for the search button.
+netmonitor.toolbar.search=Αναζήτηση
+
+# LOCALIZATION NOTE (netmonitor.toolbar.resetColumns): This is the label
+# displayed in the network table header context menu.
+netmonitor.toolbar.resetColumns=Επαναφορά στηλών
+
+# LOCALIZATION NOTE (netmonitor.toolbar.resetSorting): This is the label
+# displayed in the network table header context menu to reset sorting
+netmonitor.toolbar.resetSorting=Επαναφορά ταξινόμησης
+
+# LOCALIZATION NOTE (netmonitor.toolbar.resizeColumnToFitContent): This is the label
+# displayed in the network table header context menu to resize a column to fit its content
+netmonitor.toolbar.resizeColumnToFitContent=Προσαρμογή μεγέθους στήλης στο περιεχόμενο
+
+# LOCALIZATION NOTE (netmonitor.toolbar.resizeColumnToFitContent.title): This is the title
+# tooltip displayed when draggable resizer in network table headers is hovered
+netmonitor.toolbar.resizeColumnToFitContent.title=Κάντε διπλό κλικ για προσαρμογή της στήλης στο περιεχόμενο
+
+# LOCALIZATION NOTE (netmonitor.toolbar.timings): This is the label
+# displayed in the network table header context menu for the timing submenu
+netmonitor.toolbar.timings=Χρονομετρήσεις
+
+# LOCALIZATION NOTE (netmonitor.toolbar.responseHeaders): This is the
+# label displayed in the network table header context menu for the
+# response headers submenu.
+netmonitor.toolbar.responseHeaders=Επικεφαλίδες απόκρισης
+
+# LOCALIZATION NOTE (netmonitor.headers.toolbar.block): This is the
+# label displayed in the network details headers tab identifying the
+# block url toolbar button.
+netmonitor.headers.toolbar.block=Φραγή
+
+# LOCALIZATION NOTE (netmonitor.headers.address): This is the label displayed
+# in the network details headers tab identifying the remote address.
+netmonitor.headers.address=Διεύθυνση
+
+# LOCALIZATION NOTE (netmonitor.headers.status): This is the label displayed
+# in the network details headers tab identifying the status code.
+netmonitor.headers.status=Κατάσταση
+
+# LOCALIZATION NOTE (netmonitor.headers.size): This is the label displayed
+# in the network details headers tab identifying the size.
+netmonitor.headers.size=Μέγεθος
+
+# LOCALIZATION NOTE (networkMenu.headers.sizeDetails): This label is displayed
+# in the network details headers tab providing the size details.
+# %1$S is the transferred size, %2$S is the size.
+netmonitor.headers.sizeDetails=%1$S (%2$S μέγεθος)
+
+# LOCALIZATION NOTE (netmonitor.headers.version): This is the label displayed
+# in the network details headers tab identifying the http version.
+netmonitor.headers.version=Έκδοση
+
+# LOCALIZATION NOTE (netmonitor.summary.learnMore): This is the label displayed
+# in the network details headers tab, with a link to external documentation for
+# status codes.
+netmonitor.summary.learnMore=Μάθετε περισσότερα σχετικά με τον κωδικό κατάστασης
+
+# LOCALIZATION NOTE (netmonitor.headers.referrerPolicy): This is the label displayed
+# in the network details headers tab identifying the referrer policy.
+netmonitor.headers.referrerPolicy=Πολιτική αναφοράς
+
+# LOCALIZATION NOTE (netmonitor.headers.contentBlocking): This is the label displayed
+# in the network details headers tab identifying the content blocking mode.
+netmonitor.headers.contentBlocking=Φραγή
+
+# LOCALIZATION NOTE (netmonitor.summary.editAndResend): This is the label displayed
+# on the button in the headers tab that opens a form to edit and resend the currently
+# displayed request
+netmonitor.summary.editAndResend=Επεξεργασία και εκ νέου αποστολή
+
+# LOCALIZATION NOTE (netmonitor.headers.raw): This is the label displayed
+# on the button in the headers tab that toggle view for raw request/response headers
+# from the currently displayed request
+netmonitor.headers.raw=Ακατέργαστα
+
+# LOCALIZATION NOTE (netmonitor.response.name): This is the label displayed
+# in the network details response tab identifying an image's file name.
+netmonitor.response.name=Όνομα:
+
+# LOCALIZATION NOTE (netmonitor.response.dimensions): This is the label displayed
+# in the network details response tab identifying an image's dimensions.
+netmonitor.response.dimensions=Διαστάσεις:
+
+# LOCALIZATION NOTE (netmonitor.response.mime): This is the label displayed
+# in the network details response tab identifying an image's mime.
+netmonitor.response.mime=Τύπος MIME:
+
+# LOCALIZATION NOTE (netmonitor.timings.blocked): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "blocked" state.
+netmonitor.timings.blocked=Αποκλεισμένα:
+
+# LOCALIZATION NOTE (netmonitor.timings.dns): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "dns" state.
+netmonitor.timings.dns=Ανάλυση DNS:
+
+# LOCALIZATION NOTE (netmonitor.timings.ssl): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "tls" handshake state.
+netmonitor.timings.ssl=Ρύθμιση TLS:
+
+# LOCALIZATION NOTE (netmonitor.timings.connect): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "connect" state.
+netmonitor.timings.connect=Σύνδεση:
+
+# LOCALIZATION NOTE (netmonitor.timings.send): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "send" state.
+netmonitor.timings.send=Αποστολή:
+
+# LOCALIZATION NOTE (netmonitor.timings.wait): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "wait" state.
+netmonitor.timings.wait=Αναμονή:
+
+# LOCALIZATION NOTE (netmonitor.timings.receive): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "receive" state.
+netmonitor.timings.receive=Λήψη:
+
+# LOCALIZATION NOTE (netmonitor.timings.learnMore): This is the label displayed
+# in the network details timings tab, with a link to external documentation
+netmonitor.timings.learnMore=Μάθετε περισσότερα σχετικά με τους συγχρονισμούς
+
+# LOCALIZATION NOTE (netmonitor.audits.slowIconTooltip): This is the tooltip text displayed
+# in the network request list file column, on the slow icon button.
+# %1$S is the waiting time %2$S is the slow threshold.
+netmonitor.audits.slowIconTooltip=Αργή απόκριση διακομιστή (%1$S). Το προτεινόμενο όριο είναι %2$S.
+
+# LOCALIZATION NOTE (netmonitor.security.warning.cipher): A tooltip
+# for warning icon that indicates a connection uses insecure cipher suite.
+netmonitor.security.warning.cipher=Ο κώδικας που χρησιμοποιήθηκε για την κρυπτογράφηση είναι παλιός και επισφαλής.
+
+# LOCALIZATION NOTE (netmonitor.security.error): This is the label displayed
+# in the security tab if a security error prevented the connection.
+netmonitor.security.error=Προέκυψε σφάλμα:
+
+# LOCALIZATION NOTE (netmonitor.security.protocolVersion): This is the label displayed
+# in the security tab describing TLS/SSL protocol version.
+netmonitor.security.protocolVersion=Έκδοση πρωτοκόλλου:
+
+# LOCALIZATION NOTE (netmonitor.security.cipherSuite): This is the label displayed
+# in the security tab describing the cipher suite used to secure this connection.
+netmonitor.security.cipherSuite=Σουίτα κρυπτογράφησης:
+
+# LOCALIZATION NOTE (netmonitor.security.keaGroup): This is the label displayed
+# in the security tab describing the key exchange group suite used to secure
+# this connection.
+netmonitor.security.keaGroup=Ομάδα ανταλλαγής κλειδιών:
+
+# LOCALIZATION NOTE (netmonitor.security.keaGroup.none): This is the label
+# displayed in the security tab describing the case when no group was used.
+netmonitor.security.keaGroup.none=καμία
+
+# LOCALIZATION NOTE (netmonitor.security.keaGroup.custom): This is the label
+# displayed in the security tab describing the case when a custom group was used.
+netmonitor.security.keaGroup.custom=προσαρμοσμένο
+
+# LOCALIZATION NOTE (netmonitor.security.keaGroup.unknown): This is the value
+# displayed in the security tab describing an unknown group.
+netmonitor.security.keaGroup.unknown=άγνωστη ομάδα
+
+# LOCALIZATION NOTE (netmonitor.security.signatureScheme): This is the label
+# displayed in the security tab describing the signature scheme used by for
+# the server certificate in this connection.
+netmonitor.security.signatureScheme=Μοτίβο υπογραφής:
+
+# LOCALIZATION NOTE (netmonitor.security.signatureScheme.none): This is the
+# label displayed in the security tab describing the case when no signature
+# was used.
+netmonitor.security.signatureScheme.none=κανένα
+
+# LOCALIZATION NOTE (netmonitor.security.signatureScheme.unknown): This is the
+# value displayed in the security tab describing an unknown signature scheme.
+netmonitor.security.signatureScheme.unknown=άγνωστο μοτίβο υπογραφής
+
+# LOCALIZATION NOTE (netmonitor.security.hsts): This is the label displayed
+# in the security tab describing the usage of HTTP Strict Transport Security.
+netmonitor.security.hsts=Ασφάλεια Αυστηρής Μεταφοράς HTTP:
+
+# LOCALIZATION NOTE (netmonitor.security.hpkp): This is the label displayed
+# in the security tab describing the usage of Public Key Pinning.
+netmonitor.security.hpkp=Pinning δημοσίου κλειδιού:
+
+# LOCALIZATION NOTE (netmonitor.security.connection): This is the label displayed
+# in the security tab describing the section containing information related to
+# the secure connection.
+netmonitor.security.connection=Σύνδεση:
+
+# LOCALIZATION NOTE (netmonitor.security.certificate): This is the label displayed
+# in the security tab describing the server certificate section.
+netmonitor.security.certificate=Πιστοποιητικό:
+
+# LOCALIZATION NOTE (netmonitor.trackingResource.tooltip): This is the label used
+# in the Network monitor panel as a tooltip for tracking resource icon.
+netmonitor.trackingResource.tooltip=Αυτό το URL αντιστοιχεί σε ένα γνωστό ιχνηλάτη και θα αποκλειστεί με την ενεργοποίηση της φραγής περιεχομένου.
+
+# LOCALIZATION NOTE (netmonitor.trackingResource.enhancedTrackingProtection): This is
+# the label used in the Network monitor panel for showing enhanced tracking protection.
+netmonitor.trackingResource.enhancedTrackingProtection=Ενισχυμένη προστασία από καταγραφή
+
+# LOCALIZATION NOTE (netmonitor.enhancedTrackingProtection.learnMore): This is the label
+# displayed in the network details headers tab, with a link to external documentation for
+# enhanced tracking protection.
+netmonitor.enhancedTrackingProtection.learnMore=Μάθετε περισσότερα για την ενισχυμένη προστασία από καταγραφή
+
+# LOCALIZATION NOTE (netmonitor.context.copy): This is the label displayed
+# for the copy sub-menu in the context menu for a request
+netmonitor.context.copy=Αντιγραφή
+
+# LOCALIZATION NOTE (netmonitor.context.copy.accesskey): This is the access key
+# for the copy menu/sub-menu displayed in the context menu for a request
+netmonitor.context.copy.accesskey=Α
+
+# LOCALIZATION NOTE (netmonitor.context.copyUrl): This is the label displayed
+# on the context menu that copies the selected request's url
+netmonitor.context.copyUrl=Αντιγραφή URL
+
+# LOCALIZATION NOTE (netmonitor.context.copyUrl.accesskey): This is the access key
+# for the Copy URL menu item displayed in the context menu for a request
+netmonitor.context.copyUrl.accesskey=U
+
+# LOCALIZATION NOTE (netmonitor.context.copyUrlParams): This is the label displayed
+# on the context menu that copies the selected request's url parameters
+netmonitor.context.copyUrlParams=Αντιγραφή παραμέτρων URL
+
+# LOCALIZATION NOTE (netmonitor.context.copyUrlParams.accesskey): This is the access key
+# for the Copy URL Parameters menu item displayed in the context menu for a request
+netmonitor.context.copyUrlParams.accesskey=Π
+
+# LOCALIZATION NOTE (netmonitor.context.copyRequestData): This is the label displayed
+# on the context menu that copies the selected request's data
+netmonitor.context.copyRequestData=Αντιγραφή δεδομένων %S
+
+# LOCALIZATION NOTE (netmonitor.context.copyRequestData.accesskey): This is the access key
+# for the Copy POST/PATCH/PUT/DELETE Data menu item displayed in the context menu for a request
+netmonitor.context.copyRequestData.accesskey=δ
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsCurl): This is the label displayed
+# on the context menu that copies the selected request as a cURL command.
+# The capitalization is part of the official name and should be used throughout all languages.
+# http://en.wikipedia.org/wiki/CURL
+netmonitor.context.copyAsCurl=Αντιγραφή ως cURL
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsCurl.accesskey): This is the access key
+# for the Copy as cURL menu item displayed in the context menu for a request
+netmonitor.context.copyAsCurl.accesskey=C
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsCurl.*): This is the template used to add
+# a target platform to the label for "Copy as cURL" command
+# e.g. Copy as cURL (Windows)
+# Localized label for "Copy as cURL": %S
+netmonitor.context.copyAsCurl.win=%S (Windows)
+netmonitor.context.copyAsCurl.win.accesskey=W
+netmonitor.context.copyAsCurl.posix=%S (POSIX)
+netmonitor.context.copyAsCurl.posix.accesskey=P
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsFetch): This is the label displayed
+# on the context menu that copies the selected request as a fetch request.
+netmonitor.context.copyAsFetch=Αντιγραφή ως "Λήψη"
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsFetch.accesskey): This is the access key
+# for the Copy as fetch menu item displayed in the context menu for a request
+netmonitor.context.copyAsFetch.accesskey=Λ
+
+# LOCALIZATION NOTE (netmonitor.context.copyRequestHeaders): This is the label displayed
+# on the context menu that copies the selected item's request headers
+netmonitor.context.copyRequestHeaders=Αντιγραφή κεφαλίδων αιτήματος
+
+# LOCALIZATION NOTE (netmonitor.context.copyRequestHeaders.accesskey): This is the access key
+# for the Copy Request Headers menu item displayed in the context menu for a request
+netmonitor.context.copyRequestHeaders.accesskey=Τ
+
+# LOCALIZATION NOTE (netmonitor.context.copyResponseHeaders): This is the label displayed
+# on the context menu that copies the selected item's response headers
+netmonitor.context.copyResponseHeaders=Αντιγραφή κεφαλίδων απόκρισης
+
+# LOCALIZATION NOTE (netmonitor.context.copyResponseHeaders.accesskey): This is the access key
+# for the Copy Response Headers menu item displayed in the context menu for a response
+netmonitor.context.copyResponseHeaders.accesskey=Π
+
+# LOCALIZATION NOTE (netmonitor.context.copyResponse): This is the label displayed
+# on the context menu that copies the selected response as a string
+netmonitor.context.copyResponse=Αντιγραφή απάντησης
+
+# LOCALIZATION NOTE (netmonitor.context.copyResponse.accesskey): This is the access key
+# for the Copy Response menu item displayed in the context menu for a request
+netmonitor.context.copyResponse.accesskey=Α
+
+# LOCALIZATION NOTE (netmonitor.context.copyImageAsDataUri): This is the label displayed
+# on the context menu that copies the selected image as data uri
+netmonitor.context.copyImageAsDataUri=Αντιγραφή εικόνας ως URI δεδομένων
+
+# LOCALIZATION NOTE (netmonitor.context.copyImageAsDataUri.accesskey): This is the access key
+# for the Copy Image As Data URI menu item displayed in the context menu for a request
+netmonitor.context.copyImageAsDataUri.accesskey=Ε
+
+# LOCALIZATION NOTE (netmonitor.context.useAsFetch): This is the label displayed
+# on the context menu that copies the selected request as a fetch command.
+netmonitor.context.useAsFetch=Χρήση ως "Λήψη σε κονσόλα"
+
+# LOCALIZATION NOTE (netmonitor.context.useAsFetch.accesskey): This is the access key
+# for the Copy as fetch menu item displayed in the context menu for a request
+netmonitor.context.useAsFetch.accesskey=Λ
+
+# LOCALIZATION NOTE (netmonitor.context.saveImageAs): This is the label displayed
+# on the context menu that save the Image
+netmonitor.context.saveImageAs=Αποθήκευση εικόνας ως
+
+# LOCALIZATION NOTE (netmonitor.context.saveImageAs.accesskey): This is the access key
+# for the Copy Image As Data URI menu item displayed in the context menu for a request
+netmonitor.context.saveImageAs.accesskey=Θ
+
+# LOCALIZATION NOTE (netmonitor.context.copyAll): This is the label displayed
+# on the context menu that copies all data
+netmonitor.context.copyAll=Αντιγραφή όλων
+
+# LOCALIZATION NOTE (netmonitor.context.copyAll.accesskey): This is the access key
+# for the Copy All menu item displayed in the context menu for a properties view panel
+netmonitor.context.copyAll.accesskey=Α
+
+# LOCALIZATION NOTE (netmonitor.context.copyAllAsHar): This is the label displayed
+# on the context menu that copies all as HAR format
+netmonitor.context.copyAllAsHar=Αντιγραφή όλων ως HAR
+
+# LOCALIZATION NOTE (netmonitor.context.copyAllAsHar.accesskey): This is the access key
+# for the Copy All As HAR menu item displayed in the context menu for a network panel
+netmonitor.context.copyAllAsHar.accesskey=Ν
+
+# LOCALIZATION NOTE (netmonitor.context.saveAllAsHar): This is the label displayed
+# on the context menu that saves all as HAR format
+netmonitor.context.saveAllAsHar=Αποθήκευση όλων ως HAR
+
+# LOCALIZATION NOTE (netmonitor.context.saveAllAsHar.accesskey): This is the access key
+# for the Save All As HAR menu item displayed in the context menu for a network panel
+netmonitor.context.saveAllAsHar.accesskey=H
+
+# LOCALIZATION NOTE (netmonitor.context.importHar.accesskey): This is the access key
+# for the Import HAR menu item displayed in the context menu for a network panel
+netmonitor.context.importHar.accesskey=Ε
+
+# LOCALIZATION NOTE (netmonitor.har.importHarDialogTitle): This is a label
+# used for import file open dialog
+netmonitor.har.importHarDialogTitle=Εισαγωγή αρχείου HAR
+
+# LOCALIZATION NOTE (netmonitor.har.importDialogHARFilter):
+# This string is displayed as a filter for importing HAR file
+netmonitor.har.importDialogHARFilter=Αρχεία HAR
+
+# LOCALIZATION NOTE (netmonitor.har.importDialogAllFilter):
+# This string is displayed as a filter for importing HAR file
+netmonitor.har.importDialogAllFilter=Όλα τα αρχεία
+
+# LOCALIZATION NOTE (netmonitor.context.resend.label): This is the label displayed
+# on the context menu that resends the currently displayed request immediately
+netmonitor.context.resend.label=Εκ νέου αποστολή
+
+# LOCALIZATION NOTE (netmonitor.context.resend.accesskey): This is the access key
+# for the "Resend" menu item displayed in the context menu for a request
+netmonitor.context.resend.accesskey=ν
+
+# LOCALIZATION NOTE (netmonitor.context.editAndResend): This is the label displayed
+# on the context menu that opens a form to edit and resend the currently
+# displayed request
+netmonitor.context.editAndResend=Επεξεργασία και επαναποστολή
+
+# LOCALIZATION NOTE (netmonitor.context.editAndResend.accesskey): This is the access key
+# for the "Edit and Resend" menu item displayed in the context menu for a request
+netmonitor.context.editAndResend.accesskey=π
+
+# LOCALIZATION NOTE (netmonitor.context.blockURL): This is the label displayed
+# on the context menu that blocks any requests matching the selected request's URL.
+netmonitor.context.blockURL=Φραγή URL
+
+# LOCALIZATION NOTE (netmonitor.context.unblockURL): This is the label displayed
+# on the context menu that unblocks any requests matching the selected request's URL.
+netmonitor.context.unblockURL=Άρση φραγής URL
+
+# LOCALIZATION NOTE (netmonitor.context.newTab): This is the label
+# for the Open in New Tab menu item displayed in the context menu of the
+# network container
+netmonitor.context.newTab=Άνοιγμα σε νέα καρτέλα
+
+# LOCALIZATION NOTE (netmonitor.context.newTab.accesskey): This is the access key
+# for the Open in New Tab menu item displayed in the context menu of the
+# network container
+netmonitor.context.newTab.accesskey=Α
+
+# LOCALIZATION NOTE (netmonitor.context.openInDebugger): This is the label
+# for the Open in Debugger menu item displayed in the context menu of the
+# network container
+netmonitor.context.openInDebugger=Άνοιγμα σε Αποσφαλμάτωση
+
+# LOCALIZATION NOTE (netmonitor.context.openInDebugger.accesskey): This is the access key
+# for the Open in Debugger menu item displayed in the context menu of the
+# network container
+netmonitor.context.openInDebugger.accesskey=Α
+
+# LOCALIZATION NOTE (netmonitor.context.openInStyleEditor): This is the label
+# for the Open in Style Editor menu item displayed in the context menu of the
+# network container
+netmonitor.context.openInStyleEditor=Άνοιγμα σε Επεξεργασία Στυλ
+
+# LOCALIZATION NOTE (netmonitor.context.openInStyleEditor.accesskey): This is
+# the access key for the Open in Style Editor menu item displayed in the
+# context menu of the network container
+netmonitor.context.openInStyleEditor.accesskey=Σ
+
+# LOCALIZATION NOTE (netmonitor.context.perfTools): This is the label displayed
+# on the context menu that shows the performance analysis tools
+netmonitor.context.perfTools=Έναρξη ανάλυσης επιδόσεων…
+
+# LOCALIZATION NOTE (netmonitor.context.perfTools.accesskey): This is the access key
+# for the performance analysis menu item displayed in the context menu for a request
+netmonitor.context.perfTools.accesskey=Ε
+
+# LOCALIZATION NOTE (netmonitor.custom.newRequest): This is the label displayed
+# as the title of the new custom request form
+netmonitor.custom.newRequest=Νέο αίτημα
+
+# LOCALIZATION NOTE (netmonitor.custom.newRequestMethodLabel): This is the label displayed
+# above the method text input field of the new custom request form
+netmonitor.custom.newRequestMethodLabel=Μέθοδος
+
+# LOCALIZATION NOTE (netmonitor.custom.newRequestUrlLabel): This is the label displayed
+# above the url text input field of the new custom request form
+netmonitor.custom.newRequestUrlLabel=URL
+
+# LOCALIZATION NOTE (netmonitor.custom.query): This is the label displayed
+# above the query string entry in the custom request form
+netmonitor.custom.query=Νήμα ερώτησης
+
+# LOCALIZATION NOTE (netmonitor.custom.headers): This is the label displayed
+# above the request headers entry in the custom request form
+netmonitor.custom.headers=Κεφαλίδες απόκρισης:
+
+# LOCALIZATION NOTE (netmonitor.custom.postData): This is the label displayed
+# above the request body entry in the custom request form
+netmonitor.custom.postData=Κυρίως μέρος αιτήματος:
+
+# LOCALIZATION NOTE (netmonitor.custom.send): This is the label displayed
+# on the button which sends the custom request
+netmonitor.custom.send=Αποστολή
+
+# LOCALIZATION NOTE (netmonitor.custom.cancel): This is the label displayed
+# on the button which cancels and closes the custom request form
+netmonitor.custom.cancel=Ακύρωση
+
+# LOCALIZATION NOTE (netmonitor.backButton): This is the label displayed
+# on the button which exists the performance statistics view
+netmonitor.backButton=Πίσω
+
+# LOCALIZATION NOTE (netmonitor.status.tooltip.simple): This is the tooltip of the
+# column status code, when request is not being cached or is not from a service worker
+# %1$S is the status code, %2$S is the status text.
+netmonitor.status.tooltip.simple = %1$S %2$S
+
+# LOCALIZATION NOTE (netmonitor.status.tooltip.cached): This is the tooltip of
+# the column status code, when the request is cached
+# %1$S is the status code, %2$S is the status text.
+netmonitor.status.tooltip.cached = %1$S %2$S (σε cache)
+
+# LOCALIZATION NOTE (netmonitor.status.tooltip.worker): This is the tooltip of
+# the column status code, when the request is from a service worker
+# %1$S is the status code, %2$S is the status text.
+netmonitor.status.tooltip.worker = %1$S %2$S (service worker)
+
+# LOCALIZATION NOTE (netmonitor.status.tooltip.cachedworker): This is the tooltip
+# of the column status code, when the request is cached and is from a service worker
+# %1$S is the status code, %2$S is the status text.
+netmonitor.status.tooltip.cachedworker = %1$S %2$S (σε cache, service worker)
+
+# LOCALIZATION NOTE (netmonitor.label.dropHarFiles): This is a label
+# rendered within the Network panel when *.har file(s) are dragged
+# over the content.
+netmonitor.label.dropHarFiles = Εναποθέστε τα αρχεία HAR εδώ
+
+# LOCALIZATION NOTE (netmonitor.label.har): This is a label used
+# as a tooltip for toolbar drop-down button with HAR actions
+netmonitor.label.har=Εξαγωγή/Εισαγωγή HAR
+
+# LOCALIZATION NOTE (netmonitor.cache.cache): This is the label text for the parent
+# node in the TreeView.
+netmonitor.cache.cache=Προσωρινή μνήμη
+
+# LOCALIZATION NOTE (netmonitor.cache.empty): This is the text displayed when cache
+# information is not available.
+netmonitor.cache.empty=Καμία πληροφορία προσωρινής μνήμης
+
+# LOCALIZATION NOTE (netmonitor.cache.notAvailable): This is the text displayed under
+# a node that has no information available.
+netmonitor.cache.notAvailable=Μη διαθέσιμο
+
+# LOCALIZATION NOTE (netmonitor.cache.dataSize): This is the label text for
+# the datasize of the cached object.
+netmonitor.cache.dataSize=Μέγεθος δεδομένων
+
+# LOCALIZATION NOTE (netmonitor.cache.expires): This is the label text for the
+# expires time of the cached object.
+netmonitor.cache.expires=Λήγει
+
+# LOCALIZATION NOTE (netmonitor.cache.fetchCount): This is the label text for the
+# fetch count of the cached object.
+netmonitor.cache.fetchCount=Πλήθος προσπελάσεων
+
+# LOCALIZATION NOTE (netmonitor.cache.lastFetched): This is the label text for the
+# last fetched date/time of the cached object.
+netmonitor.cache.lastFetched=Τελευταία προσπέλαση
+
+# LOCALIZATION NOTE (netmonitor.cache.lastModified): This is the label text for the
+# last modified date/time of the cached object.
+netmonitor.cache.lastModified=Τελευταία τροποποίηση
+
+# LOCALIZATION NOTE (netmonitor.cache.device): This is the label text for the device
+# where a cached object was fetched from (e.g. "disk").
+netmonitor.cache.device=Συσκευή
+
+# LOCALIZATION NOTE (netmonitor.settings.menuTooltip): This is the tooltip that gets displayed
+# when the settings menu button is hovered.
+netmonitor.settings.menuTooltip=Ρυθμίσεις δικτύου
+
+# LOCALIZATION NOTE (netmonitor.settings.importHarTooltip): This is the tooltip that gets displayed
+# when the HAR import menu item is hovered
+netmonitor.settings.importHarTooltip=Εισαγωγή αρχείου HAR με δεδομένα δικτύου
+
+# LOCALIZATION NOTE (netmonitor.settings.saveHarTooltip): This is the tooltip that gets displayed
+# when the HAR save menu item is hovered
+netmonitor.settings.saveHarTooltip=Αποθήκευση δεδομένων δικτύου σε αρχείο HAR
+
+# LOCALIZATION NOTE (netmonitor.settings.copyHarTooltip): This is the tooltip that gets displayed
+# when the HAR copy menu item is hovered
+netmonitor.settings.copyHarTooltip=Αντιγραφή δεδομένων δικτύου στο πρόχειρο
+
+# LOCALIZATION NOTE (netmonitor.errorpanel.description): This is the information displayed once the monitor errors out
+netmonitor.errorpanel.description=Ο πίνακας δικτύου κατέρρευσε.
+
+# LOCALIZATION NOTE (netmonitor.errorpanel.fileBugButton): This is the text that appears in the button to visit the bug filing link.
+netmonitor.errorpanel.fileBugButton=Υποβολή αναφοράς σφάλματος
+
+# LOCALIZATION NOTE (netmonitor.errorpanel.reloadPanelInfo): This is the text that appears after Network panel errors to instruct the user to reload the panel.
+netmonitor.errorpanel.reloadPanelInfo=Κλείστε και ανοίξτε ξανά την εργαλειοθήκη για να διαγράψετε αυτό το σφάλμα.
diff --git a/l10n-el/devtools/client/network-throttling.properties b/l10n-el/devtools/client/network-throttling.properties
new file mode 100644
index 0000000000..bd267cd033
--- /dev/null
+++ b/l10n-el/devtools/client/network-throttling.properties
@@ -0,0 +1,27 @@
+# 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 These strings are used inside the NetworkThrottlingSelector
+# component used to throttle network bandwidth.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE These strings are used inside the NetworkThrottlingMenu
+# component used to throttle network bandwidth.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (responsive.noThrottling): UI option in a menu to configure
+# network throttling. This option is the default and disables throttling so you
+# just have normal network conditions. There is not very much room in the UI
+# so a short string would be best if possible.
+responsive.noThrottling=Χωρίς περιορισμό
diff --git a/l10n-el/devtools/client/performance.dtd b/l10n-el/devtools/client/performance.dtd
new file mode 100644
index 0000000000..0ba054855e
--- /dev/null
+++ b/l10n-el/devtools/client/performance.dtd
@@ -0,0 +1,130 @@
+<!-- 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 : FILE This file contains the Performance strings -->
+<!-- LOCALIZATION NOTE : FILE Do not translate commandkey -->
+
+<!-- LOCALIZATION NOTE : FILE The correct localization of this file might be to
+ - keep it in English, or another language commonly spoken among web developers.
+ - You want to make that choice consistent across the developer tools.
+ - A good criteria is the language in which you'd find the best
+ - documentation on web development on the web. -->
+
+<!-- LOCALIZATION NOTE (performanceUI.bufferStatusTooltip): This string
+ - is displayed as the tooltip for the buffer capacity during a recording. -->
+<!ENTITY performanceUI.bufferStatusTooltip "Το πρόγραμμα προφίλ αποθηκεύει δείγματα σε ένα κυκλικό ρυθμιστή και μόλις ο ρυθμιστής φτάσει στο όριο για μια εγγραφή, νεότερα δείγματα αρχίζουν να αντικαθιστούν τα πρώτα δείγματα της εγγραφής.">
+
+<!-- LOCALIZATION NOTE (performanceUI.disabledRealTime.disabledE10S): This string
+ - is displayed as a message for why the real time overview graph is disabled
+ - when running on a build that can run multiprocess Firefox, but just is not enabled. -->
+<!ENTITY performanceUI.disabledRealTime.disabledE10S "Ενεργοποιήστε τον πολλαπλών διεργασιών Firefox στις προτιμήσεις για την απόδοση των δεδομένων εγγραφής σε πραγματικό χρόνο.">
+
+<!-- LOCALIZATION NOTE (performanceUI.bufferStatusFull): This string
+ - is displayed when the profiler's circular buffer has started to overlap. -->
+<!ENTITY performanceUI.bufferStatusFull "Ο ρυθμιστής είναι πλήρης. Τα παλαιότερα δείγματα θα αντικαθίστανται πλέον.">
+
+<!-- LOCALIZATION NOTE (performanceUI.unavailableNoticePB): This is the label shown
+ - in the details view while the profiler is unavailable, for example, while
+ - in Private Browsing mode. -->
+<!ENTITY performanceUI.unavailableNoticePB "Η εγγραφή ενός προφίλ δεν είναι διαθέσιμη αυτή τη στιγμή. Κλείστε όλα τα παράθυρα ιδιωτικής περιήγησης και δοκιμάστε ξανά.">
+
+<!-- LOCALIZATION NOTE (performanceUI.loadingNotice): This is the label shown
+ - in the details view while loading a profile. -->
+<!ENTITY performanceUI.loadingNotice "Φόρτωση…">
+
+<!-- LOCALIZATION NOTE (performanceUI.toolbar.*): These strings are displayed
+ - in the toolbar on buttons that select which view is currently shown. -->
+<!ENTITY performanceUI.toolbar.waterfall "Καταρράκτης">
+<!ENTITY performanceUI.toolbar.waterfall.tooltiptext "Δείχνει τις διάφορες λειτουργίες που εκτελεί το πρόγραμμα περιήγησης κατά την διάρκεια της εγγραφής, που παρουσιάζεται διαδοχικά ως ένας καταρράκτης.">
+<!ENTITY performanceUI.toolbar.js-calltree "Δέντρο κλήσεων">
+<!ENTITY performanceUI.toolbar.js-calltree.tooltiptext "Επισημαίνει τις λειτουργίες JavaScript όπου το πρόγραμμα περιήγησης πέρασε τον περισσότερο χρόνο κατά τη διάρκεια της εγγραφής.">
+<!ENTITY performanceUI.toolbar.memory-calltree "Καταμερισμοί">
+<!ENTITY performanceUI.toolbar.allocations.tooltiptext "Εμφανίζει πως η μνήμη ήταν καταμερισμένη κατά την εγγραφή.">
+<!ENTITY performanceUI.toolbar.js-flamegraph "Γράφημα Φωτιάς JS">
+<!ENTITY performanceUI.toolbar.js-flamegraph.tooltiptext "Εμφανίζει τη στοίβα κλήσεων JavaScript από όλη τη διάρκεια της εγγραφής.">
+<!ENTITY performanceUI.toolbar.memory-flamegraph 'Γράφημα "flame" εκχωρήσεων'>
+
+<!-- LOCALIZATION NOTE (performanceUI.table.*): These strings are displayed
+ - in the call tree headers for a recording. -->
+<!ENTITY performanceUI.table.totalDuration "Συνολικός χρόνος">
+<!ENTITY performanceUI.table.totalDuration.tooltip "Ο χρόνος που σπαταλήθηκε στη συνάρτηση και στις συναρτήσεις που καλεί.">
+<!ENTITY performanceUI.table.selfDuration "Ίδιος Χρόνος">
+<!ENTITY performanceUI.table.selfDuration.tooltip "Ο χρόνος που σπαταλήθηκε μόνο μέσα στη συνάρτηση.">
+<!ENTITY performanceUI.table.totalPercentage "Συνολικό κόστος">
+<!ENTITY performanceUI.table.totalPercentage.tooltip "Το ποσοστό του χρόνου που σπαταλήθηκε στη συνάρτηση και τις συναρτήσεις που καλεί.">
+<!ENTITY performanceUI.table.selfPercentage "Ίδιο Κόστος">
+<!ENTITY performanceUI.table.selfPercentage.tooltip "Το ποσοστό του χρόνου που σπαταλήθηκε μόνο μέσα στη συνάρτηση.">
+<!ENTITY performanceUI.table.samples "Δείγματα">
+<!ENTITY performanceUI.table.samples.tooltip "Ο αριθμός των φορών που αυτή η συνάρτηση βρισκόταν στη στοίβα όταν το πρόγραμμα προφίλ σύλλεξε ένα δείγμα.">
+<!ENTITY performanceUI.table.function "Συνάρτηση">
+<!ENTITY performanceUI.table.function.tooltip "Το όνομα και η τοποθεσία στον κώδικα της συνάρτησης δειγματοληψίας.">
+<!ENTITY performanceUI.table.totalAlloc "Συνολικοί Καταμερισμοί Δειγμάτων">
+<!ENTITY performanceUI.table.totalAlloc.tooltip "Ο συνολικός αριθμός εκχωρήσεων αντικειμένων, από τα οποία λήφθηκε δείγμα σε αυτή την τοποθεσία και στους καλούντες.">
+
+<!-- LOCALIZATION NOTE (performanceUI.options.filter.tooltiptext): This string
+ - is displayed next to the filter button-->
+<!ENTITY performanceUI.options.filter.tooltiptext "Επιλέξτε ποια δεδομένα θα εμφανίζονται στο χρονοδιάγραμμα">
+
+<!-- LOCALIZATION NOTE (performanceUI.options.gear.tooltiptext): This is the
+ - tooltip for the options button. -->
+<!ENTITY performanceUI.options.gear.tooltiptext "Ρύθμιση προτιμήσεων απόδοσης.">
+
+<!-- LOCALIZATION NOTE (performanceUI.invertTree): This is the label shown next to
+ - a checkbox that inverts and un-inverts the profiler's call tree. -->
+<!ENTITY performanceUI.invertTree "Αναστροφή δέντρου κλήσεων">
+<!ENTITY performanceUI.invertTree.tooltiptext "Η αναστροφή του δέντρου κλήσεων εμφανίζει τις διαδρομές κλήσεων σε προφίλ, ξεκινώντας από τα νεώτερα πλαίσια έως και τα παλαιότερα.">
+
+<!-- LOCALIZATION NOTE (performanceUI.invertFlameGraph): This is the label shown next to
+ - a checkbox that inverts and un-inverts the profiler's flame graph. -->
+<!ENTITY performanceUI.invertFlameGraph 'Αναστροφή γραφήματος "flame"'>
+<!ENTITY performanceUI.invertFlameGraph.tooltiptext 'Η αναστροφή του γραφήματος "flame" εμφανίζει τις διαδρομές κλήσεων σε προφίλ, ξεκινώντας από τα νεώτερα πλαίσια έως και τα παλαιότερα.'>
+
+<!-- LOCALIZATION NOTE (performanceUI.showPlatformData): This is the
+ - label for the checkbox that toggles whether or not Gecko platform data
+ - is displayed in the profiler. -->
+<!ENTITY performanceUI.showPlatformData "Εμφάνιση δεδομένων πλατφόρμας Gecko">
+<!ENTITY performanceUI.showPlatformData.tooltiptext "Η εμφάνιση των δεδομένων πλατφόρμας επιτρέπει στις αναφορές του προγράμματος προφίλ JavaScript να περιλαμβάνουν σύμβολα της πλατφόρμας Gecko.">
+
+<!-- LOCALIZATION NOTE (performanceUI.showJITOptimizations): This string
+ - is displayed next to a checkbox determining whether or not JIT optimization data
+ - should be displayed. -->
+<!ENTITY performanceUI.showJITOptimizations "Εμφάνιση βελτιστοποιήσεων JIT">
+<!ENTITY performanceUI.showJITOptimizations.tooltiptext "Εμφάνιση δεδομένων βελτιστοποίησης JIT σε κάθε πλαίσιο JavaScript.">
+
+<!-- LOCALIZATION NOTE (performanceUI.flattenTreeRecursion): This is the
+ - label for the checkbox that toggles the flattening of tree recursion in inspected
+ - functions in the profiler. -->
+<!ENTITY performanceUI.flattenTreeRecursion "Ομαλοποίηση αναδρομής δέντρου">
+<!ENTITY performanceUI.flattenTreeRecursion.tooltiptext "Ομαλοποίηση αναδρομής κατά την επιθεώρηση συναρτήσεων.">
+
+<!-- LOCALIZATION NOTE (performanceUI.enableMemory): This string
+ - is displayed next to a checkbox determining whether or not memory
+ - measurements are enabled. -->
+<!ENTITY performanceUI.enableMemory "Εγγραφή μνήμης">
+<!ENTITY performanceUI.enableMemory.tooltiptext "Εγγραφή κατανάλωσης μνήμης κατά τη δημιουργία προφίλ.">
+
+<!-- LOCALIZATION NOTE (performanceUI.enableAllocations): This string
+ - is displayed next to a checkbox determining whether or not allocation
+ - measurements are enabled. -->
+<!ENTITY performanceUI.enableAllocations "Εγγραφή εκχωρήσεων">
+<!ENTITY performanceUI.enableAllocations.tooltiptext "Εγγραφή εκχωρήσεων αντικειμένων κατά τη δημιουργία προφίλ.">
+
+<!-- LOCALIZATION NOTE (performanceUI.enableFramerate): This string
+ - is displayed next to a checkbox determining whether or not framerate
+ - is recorded. -->
+<!ENTITY performanceUI.enableFramerate "Εγγραφή ρυθμού καρέ">
+<!ENTITY performanceUI.enableFramerate.tooltiptext "Εγγραφή ρυθμού καρέ κατά τη δημιουργία προφίλ.">
+
+<!-- LOCALIZATION NOTE (performanceUI.console.recordingNoticeStart/recordingNoticeEnd):
+ - This string is displayed when a recording is selected that started via console.profile.
+ - Wraps the command used to start, like "Currently recording via console.profile("label")" -->
+<!ENTITY performanceUI.console.recordingNoticeStart "Γίνεται εγγραφή μέσω">
+<!ENTITY performanceUI.console.recordingNoticeEnd "">
+
+<!-- LOCALIZATION NOTE (performanceUI.console.stopCommandStart/stopCommandEnd):
+ - This string is displayed when a recording is selected that started via console.profile.
+ - Indicates how to stop the recording, wrapping the command, like
+ - "Stop recording by entering console.profileEnd("label") into the console." -->
+<!ENTITY performanceUI.console.stopCommandStart "Τερματισμός εγγραφής με εισαγωγή">
+<!ENTITY performanceUI.console.stopCommandEnd "στην κονσόλα.">
diff --git a/l10n-el/devtools/client/performance.properties b/l10n-el/devtools/client/performance.properties
new file mode 100644
index 0000000000..3601faa986
--- /dev/null
+++ b/l10n-el/devtools/client/performance.properties
@@ -0,0 +1,160 @@
+# 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 These strings are used inside the Performance Tools
+# which is available from the Web Developer sub-menu -> 'Performance'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (noRecordingsText): The text to display in the
+# recordings menu when there are no recorded profiles yet.
+noRecordingsText=Δεν υπάρχουν ακόμη προφίλ.
+
+# LOCALIZATION NOTE (recordingsList.itemLabel):
+# This string is displayed in the recordings list of the Performance Tools,
+# identifying a set of function calls. %S represents the number of recording,
+# iterating for every new recording, resulting in "Recording #1", "Recording #2", etc.
+recordingsList.itemLabel=Εγγραφή #%S
+
+# LOCALIZATION NOTE (recordingsList.recordingLabel):
+# This string is displayed in the recordings list of the Performance Tools,
+# for an item that has not finished recording.
+recordingsList.recordingLabel=Σε εξέλιξη…
+
+# LOCALIZATION NOTE (recordingsList.loadingLabel):
+# This string is displayed in the recordings list of the Performance Tools,
+# for an item that is finished and is loading.
+recordingsList.loadingLabel=Φόρτωση…
+
+# LOCALIZATION NOTE (recordingsList.durationLabel):
+# This string is displayed in the recordings list of the Performance Tools,
+# for an item that has finished recording.
+recordingsList.durationLabel=%S ms
+
+# LOCALIZATION NOTE (recordingsList.saveLabel):
+# This string is displayed in the recordings list of the Performance Tools,
+# for saving an item to disk.
+recordingsList.saveLabel=Αποθήκευση
+
+# LOCALIZATION NOTE (graphs.fps):
+# This string is displayed in the framerate graph of the Performance Tools,
+# as the unit used to measure frames per second. This label should be kept
+# AS SHORT AS POSSIBLE so it doesn't obstruct important parts of the graph.
+graphs.fps=fps
+
+# LOCALIZATION NOTE (graphs.ms):
+# This string is displayed in the flamegraph of the Performance Tools,
+# as the unit used to measure time (in milliseconds). This label should be kept
+# AS SHORT AS POSSIBLE so it doesn't obstruct important parts of the graph.
+graphs.ms=ms
+
+# LOCALIZATION NOTE (graphs.memory):
+# This string is displayed in the memory graph of the Performance tool,
+# as the unit used to memory consumption. This label should be kept
+# AS SHORT AS POSSIBLE so it doesn't obstruct important parts of the graph.
+graphs.memory=MB
+
+# LOCALIZATION NOTE (category.*):
+# These strings are displayed in the categories graph of the Performance Tools,
+# as the legend for each block in every bar. These labels should be kept
+# AS SHORT AS POSSIBLE so they don't obstruct important parts of the graph.
+category.other=Gecko
+category.layout=Διάταξη
+category.js=JIT
+category.gc=GC
+category.network=Δίκτυο
+category.graphics=Γραφικά
+category.dom=DOM
+category.idle=Σε αδράνεια
+category.tools=Εργαλεία
+
+# LOCALIZATION NOTE (table.bytes):
+# This string is displayed in the call tree after bytesize units.
+# %S represents the value in bytes.
+table.bytes=%S B
+
+# LOCALIZATION NOTE (table.ms2):
+# This string is displayed in the call tree after units of time in milliseconds.
+# %S represents the value in milliseconds.
+table.ms2=%S ms
+
+# LOCALIZATION NOTE (table.percentage3):
+# This string is displayed in the call tree after units representing percentages.
+# %S represents the value in percentage with two decimal points, localized.
+# there are two "%" after %S to escape and display "%"
+table.percentage3=%S%%
+
+# LOCALIZATION NOTE (table.root):
+# This string is displayed in the call tree for the root node.
+table.root=(ρίζα)
+
+# LOCALIZATION NOTE (table.idle):
+# This string is displayed in the call tree for the idle blocks.
+table.idle=(αδρανές)
+
+# LOCALIZATION NOTE (table.url.tooltiptext):
+# This string is displayed in the call tree as the tooltip text for the url
+# labels which, when clicked, jump to the debugger.
+table.url.tooltiptext=Προβολή πηγής στην Αποσφαλμάτωση
+
+# LOCALIZATION NOTE (table.view-optimizations.tooltiptext2):
+# This string is displayed in the icon displayed next to frames that
+# have optimization data
+table.view-optimizations.tooltiptext2=Το πλαίσιο περιέχει δεδομένα βελτιστοποίησης JIT
+
+# LOCALIZATION NOTE (recordingsList.importDialogTitle):
+# This string is displayed as a title for importing a recoring from disk.
+recordingsList.importDialogTitle=Εισαγωγή εγγραφής…
+
+# LOCALIZATION NOTE (recordingsList.saveDialogTitle):
+# This string is displayed as a title for saving a recording to disk.
+recordingsList.saveDialogTitle=Αποθήκευση εγγραφής…
+
+# LOCALIZATION NOTE (recordingsList.saveDialogJSONFilter):
+# This string is displayed as a filter for saving a recording to disk.
+recordingsList.saveDialogJSONFilter=Αρχεία JSON
+
+# LOCALIZATION NOTE (recordingsList.saveDialogAllFilter):
+# This string is displayed as a filter for saving a recording to disk.
+recordingsList.saveDialogAllFilter=Όλα τα αρχεία
+
+# LOCALIZATION NOTE (timeline.tick):
+# This string is displayed in the timeline overview, for delimiting ticks
+# by time, in milliseconds.
+timeline.tick=%S ms
+
+# LOCALIZATION NOTE (timeline.records):
+# This string is displayed in the timeline waterfall, as a title for the menu.
+timeline.records=ΕΓΓΡΑΦΕΣ
+
+# LOCALIZATION NOTE (profiler.bufferFull):
+# This string is displayed when recording, indicating how much of the
+# buffer is currently be used.
+# %S is the percentage of the buffer used -- there are two "%"s after to escape
+# the % that is actually displayed.
+# Example: "Buffer 54% full"
+profiler.bufferFull=Ρυθμιστής: %S%% πλήρης
+
+# LOCALIZATION NOTE (recordings.start):
+# The label shown on the main recording buttons to start recording.
+recordings.start=Έναρξη καταγραφής απόδοσης
+
+# LOCALIZATION NOTE (recordings.stop):
+# The label shown on the main recording buttons to stop recording.
+recordings.stop=Τερματισμός καταγραφής απόδοσης
+
+# LOCALIZATION NOTE (recordings.start.tooltip):
+# This string is displayed as a tooltip on a button that starts a new profile.
+recordings.start.tooltip=(Απ)ενεργοποίηση κατάστασης καταγραφής της απόδοσης.
+
+# LOCALIZATION NOTE (recordings.import.tooltip):
+# This string is displayed on a button that opens a dialog to import a saved profile data file.
+recordings.import.tooltip=Εισαγωγή…
+
+# LOCALIZATION NOTE (recordings.clear.tooltip):
+# This string is displayed on a button that removes all the recordings.
+recordings.clear.tooltip=Εκκαθάριση
diff --git a/l10n-el/devtools/client/perftools.ftl b/l10n-el/devtools/client/perftools.ftl
new file mode 100644
index 0000000000..d5e74cb191
--- /dev/null
+++ b/l10n-el/devtools/client/perftools.ftl
@@ -0,0 +1,59 @@
+# 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/.
+
+
+### These strings are used in DevTools’ performance-new panel, about:profiling, and
+### the remote profiling panel. There are additional profiler strings in the appmenu.ftl
+### file that are used for the profiler popup.
+
+perftools-intro-title = Ρυθμίσεις profiler
+
+## All of the headings for the various sections.
+
+perftools-heading-settings = Πλήρεις ρυθμίσεις
+perftools-heading-buffer = Ρυθμίσεις buffer
+perftools-heading-features = Λειτουργίες
+perftools-heading-features-default = Λειτουργίες (Προτείνεται ενεργοποίηση από προεπιλογή)
+perftools-heading-features-disabled = Ανενεργές λειτουργίες
+perftools-heading-threads = Threads
+perftools-heading-local-build = Τοπική έκδοση δομής
+
+##
+
+
+## The controls for the interval at which the profiler samples the code.
+
+perftools-range-interval-label = Διάστημα δειγματοληψίας:
+perftools-range-interval-milliseconds = { NUMBER($interval, maxFractionalUnits: 2) } ms
+
+##
+
+# The size of the memory buffer used to store things in the profiler.
+perftools-range-entries-label = Μέγεθος buffer:
+perftools-devtools-interval-label = Διάστημα:
+perftools-devtools-settings-label = Ρυθμίσεις
+
+## Various statuses that affect the current state of profiling, not typically displayed.
+
+
+## These are shown briefly when the user is waiting for the profiler to respond.
+
+perftools-request-to-stop-profiler = Διακοπή εγγραφής
+
+##
+
+perftools-button-start-recording = Έναρξη εγγραφής
+perftools-button-cancel-recording = Ακύρωση εγγραφής
+perftools-button-restart = Επανεκκίνηση
+perftools-button-add-directory = Προσθήκη καταλόγου
+perftools-button-remove-directory = Αφαίρεση επιλεγμένων
+perftools-button-edit-settings = Επεξεργασία ρυθμίσεων…
+
+## These messages are descriptions of the threads that can be enabled for the profiler.
+
+perftools-thread-dns-resolver =
+ .title = Η ανάλυση DNS συμβαίνει σε αυτό το thread
+
+##
+
diff --git a/l10n-el/devtools/client/responsive.properties b/l10n-el/devtools/client/responsive.properties
new file mode 100644
index 0000000000..a49296e008
--- /dev/null
+++ b/l10n-el/devtools/client/responsive.properties
@@ -0,0 +1,173 @@
+# 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 These strings are used inside the Responsive Design Mode,
+# available from the Web Developer sub-menu -> 'Responsive Design Mode'.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (responsive.editDeviceList2): Context menu item displayed in the
+# device selector.
+responsive.editDeviceList2=Επεξεργασία λίστας…
+
+# LOCALIZATION NOTE (responsive.exit): Tooltip text of the exit button.
+responsive.exit=Κλείσιμο λειτουργίας αποκρίσιμου σχεδιασμού
+
+# LOCALIZATION NOTE (responsive.rotate): Tooltip text of the rotate button.
+responsive.rotate=Περιστροφή της προβολής
+
+# LOCALIZATION NOTE (responsive.responsiveMode): Placeholder text for the
+# device selector.
+responsive.responsiveMode=Αποκρίσιμο
+
+# LOCALIZATION NOTE (responsive.enableTouch): Tooltip text for the touch
+# simulation button when it's disabled.
+responsive.enableTouch=Ενεργοποίηση προσομοίωσης αφής
+
+# LOCALIZATION NOTE (responsive.disableTouch): Tooltip text for the touch
+# simulation button when it's enabled.
+responsive.disableTouch=Απενεργοποίηση προσομοίωσης αφής
+
+# LOCALIZATION NOTE (responsive.screenshot): Tooltip of the screenshot button.
+responsive.screenshot=Λήψη στιγμιότυπου της προβολής
+
+# LOCALIZATION NOTE (responsive.screenshotGeneratedFilename): The auto generated
+# filename.
+# The first argument (%1$S) is the date string in yyyy-mm-dd format and the
+# second argument (%2$S) is the time string in HH.MM.SS format.
+responsive.screenshotGeneratedFilename=Στιγμιότυπο %1$S στις %2$S
+
+# LOCALIZATION NOTE (responsive.remoteOnly): Message displayed in the tab's
+# notification box if a user tries to open Responsive Design Mode in a
+# non-remote tab.
+responsive.remoteOnly=Η λειτουργία αποκρίσιμου σχεδιασμού είναι διαθέσιμη μόνο στις απομακρυσμένες καρτέλες, όπως αυτές που χρησιμοποιούνται για διαδικτυακό περιεχόμενο στις πολυδιεργασίες του Firefox.
+
+# LOCALIZATION NOTE (responsive.changeDevicePixelRatio): Tooltip for the
+# device pixel ratio dropdown when is enabled.
+responsive.changeDevicePixelRatio=Αλλαγή αναλογίας εικονοστοιχείων συσκευής στην προβολή
+
+# LOCALIZATION NOTE (responsive.devicePixelRatio.auto): Tooltip for the device pixel ratio
+# dropdown when it is disabled because a device is selected.
+# The argument (%1$S) is the selected device (e.g. iPhone 6) that set
+# automatically the device pixel ratio value.
+responsive.devicePixelRatio.auto=Η αναλογία εικονοστοιχείων συσκευής έχει οριστεί αυτόματα βάσει του %1$S
+
+# LOCALIZATION NOTE (responsive.customDeviceName): Default value in a form to
+# add a custom device based on an arbitrary size (no association to an existing
+# device).
+responsive.customDeviceName=Προσαρμοσμένη συσκευή
+
+# LOCALIZATION NOTE (responsive.customDeviceNameFromBase): Default value in a
+# form to add a custom device based on the properties of another. %1$S is the
+# name of the device we're staring from, such as "Apple iPhone 6".
+responsive.customDeviceNameFromBase=%1$S (Προσαρμοσμένη)
+
+# LOCALIZATION NOTE (responsive.addDevice2): Button text that reveals a form to
+# be used for adding custom devices.
+responsive.addDevice2=Προσθήκη προσαρμοσμένης συσκευής…
+
+# LOCALIZATION NOTE (responsive.deviceAdderName): Label of form field for the
+# name of a new device.
+responsive.deviceAdderName=Όνομα
+
+# LOCALIZATION NOTE (responsive.deviceAdderSize): Label of form field for the
+# size of a new device.
+responsive.deviceAdderSize=Μέγεθος
+
+# LOCALIZATION NOTE (responsive.deviceAdderPixelRatio2): Label of form field for
+# the device pixel ratio of a new device.
+responsive.deviceAdderPixelRatio2=Αναλογία εικονοστοιχείων συσκευής
+
+# LOCALIZATION NOTE (responsive.deviceAdderUserAgent2): Label of form field for
+# the user agent of a new device.
+responsive.deviceAdderUserAgent2=Νήμα λειτουργίας χρήσης
+
+# LOCALIZATION NOTE (responsive.deviceAdderTouch2): Label of form field for the
+# touch input support of a new device.
+responsive.deviceAdderTouch2=Οθόνη αφής
+
+# LOCALIZATION NOTE (responsive.deviceAdderSave): Button text that submits a
+# form to add a new device.
+responsive.deviceAdderSave=Αποθήκευση
+
+# LOCALIZATION NOTE (responsive.deviceAdderCancel): Button text that cancels a
+# form to add a new device.
+responsive.deviceAdderCancel=Ακύρωση
+
+# LOCALIZATION NOTE (responsive.deviceDetails): Tooltip that appears when
+# hovering on a device in the device modal. %1$S is the width of the device.
+# %2$S is the height of the device. %3$S is the device pixel ratio value of the
+# device. %4$S is the user agent of the device. %5$S is a boolean value
+# noting whether touch input is supported.
+responsive.deviceDetails=Μέγεθος: %1$S x %2$S\nDPR: %3$S\nΠΧ: %4$S\nΑφή: %5$S
+
+# LOCALIZATION NOTE (responsive.deviceDetails.browserAndOS): Used to display the browser
+# and the OS in a tooltip that appears when hovering on a device in the device modal.
+# %1$S: browser
+# %2$S: OS
+responsive.deviceDetails.browserAndOS=%1$S στο %2$S
+
+# LOCALIZATION NOTE (responsive.deviceDetails.size): Used to display the pixel
+# size in a tooltip that appears when hovering on a device in the device modal.
+# %1$S: width
+# %2$S: height
+responsive.deviceDetails.size=Μέγεθος: %1$S x %2$S
+
+# LOCALIZATION NOTE (responsive.deviceDetails.DPR): Used to display the DPR in a tooltip
+# that appears when hovering on a device in the device modal.
+# %1$S: device pixel ratio
+responsive.deviceDetails.DPR=DPR: %1$S
+
+# LOCALIZATION NOTE (responsive.deviceDetails.UA): Used to display the UA in a tooltip
+# that appears when hovering on a device in the device modal.
+# %1$S: user agent
+responsive.deviceDetails.UA=UA: %1$S
+
+# LOCALIZATION NOTE (responsive.deviceDetails.touch): Used to display a boolean value
+# which is whether the touch input is supported or not in a tooltip that appears when
+# hovering on a device in the device modal.
+# %1$S: touch
+responsive.deviceDetails.touch=Άγγιγμα: %1$S
+
+# LOCALIZATION NOTE (responsive.devicePixelRatioOption): UI option in a menu to configure
+# the device pixel ratio. %1$S is the devicePixelRatio value of the device.
+responsive.devicePixelRatioOption=DPR: %1$S
+
+# LOCALIZATION NOTE (responsive.reloadConditions.touchSimulation): Label on checkbox used
+# to select whether to reload when touch simulation is toggled.
+responsive.reloadConditions.touchSimulation=Εκ νέου φόρτωση όταν εναλλάσσεται η προσομοίωση αφής
+
+# LOCALIZATION NOTE (responsive.reloadConditions.userAgent): Label on checkbox used
+# to select whether to reload when user agent is changed.
+responsive.reloadConditions.userAgent=Εκ νέου φόρτωση όταν αλλάζει η πλατφόρμα χρήστη
+
+# LOCALIZATION NOTE (responsive.reloadNotification.description2): Text in notification bar
+# shown on first open to clarify that some features need a reload to apply.
+responsive.reloadNotification.description2=Οι αλλαγές στην προσομοίωση συσκευής απαιτούν εκ νέου φόρτωση για πλήρη εφαρμογή. Οι αυτόματες ανανεώσεις είναι απενεργοποιημένες από προεπιλογή για να μην χαθούν τυχόν αλλαγές στο DevTools. Μπορείτε να ενεργοποιήσετε την εκ νέου φόρτωση μέσω του μενού ρυθμίσεων.
+
+# LOCALIZATION NOTE (responsive.leftAlignViewport): Label on checkbox used in the settings
+# menu.
+responsive.leftAlignViewport=Προβολή αριστερής στοίχισης
+
+# LOCALIZATION NOTE (responsive.customUserAgent): This is the placeholder for the user
+# agent input in the responsive design mode toolbar.
+responsive.customUserAgent=Προσαρμοσμένη πλατφόρμα χρήστη
+
+responsive.showUserAgentInput=Εμφάνιση πλατφόρμας χρήστη
+
+# LOCALIZATION NOTE (responsive.deviceSettings): The header text for the device settings
+# view.
+responsive.deviceSettings=Ρυθμίσεις συσκευής
+
+# LOCALIZATION NOTE (responsive.deviceNameAlreadyInUse): This is the text shown when adding a new
+# device with an already existing device name.
+responsive.deviceNameAlreadyInUse=Το όνομα συσκευής χρησιμοποιείται ήδη
+
+# LOCALIZATION NOTE (responsive.deviceFormUpdate): Button text that updates a custom
+# device when the form is submitted.
+responsive.deviceFormUpdate=Ενημέρωση
diff --git a/l10n-el/devtools/client/shared.properties b/l10n-el/devtools/client/shared.properties
new file mode 100644
index 0000000000..19802ff7b6
--- /dev/null
+++ b/l10n-el/devtools/client/shared.properties
@@ -0,0 +1,26 @@
+# 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 (dimensions): This is used to display the dimensions
+# of a node or image, like 100×200.
+dimensions=%S\u00D7%S
+
+# LOCALIZATION NOTE (boxModelSize.accessibleLabel): This is used to read the
+# dimensions of a node by a screen reader. This helps communicate
+# the visual information in a more explicit form. Example:
+# Size: Width 100, height 200.
+boxModelSize.accessibleLabel=Μέγεθος: Πλάτος %1$S, ύψος %2$S
+
+# LOCALIZATION NOTE (boxModelInfo.accessibleLabel): This is used to read the
+# dimensions and position of a node by a screen reader. This helps communicate
+# the visual information in a more explicit form. Example:
+# Dimensions: Width 100, height 200, position static.
+boxModelInfo.accessibleLabel=Διαστάσεις: Πλάτος %1$S, ύψος %2$S, θέση %3$S
+
+# LOCALIZATION NOTE (boxModelEditable.accessibleLabel): The string spoken by
+# screen readers for each button in the box model view that opens that property
+# for editing. %1$S is the property displayed in the tooltip when hovering.
+# %2$S is the value that is visually displayed.
+# Example: margin-left: 0.
+boxModelEditable.accessibleLabel=%1$S: %2$S
diff --git a/l10n-el/devtools/client/sourceeditor.dtd b/l10n-el/devtools/client/sourceeditor.dtd
new file mode 100644
index 0000000000..e3b9bcb87d
--- /dev/null
+++ b/l10n-el/devtools/client/sourceeditor.dtd
@@ -0,0 +1,18 @@
+<!-- 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 : FILE This file contains the Source Editor component
+ - strings. The source editor component is used within the Style Editor. -->
+
+<!-- LOCALIZATION NOTE : FILE Do not translate commandkeys -->
+
+<!-- LOCALIZATION NOTE : FILE The correct localization of this file might be to
+ - keep it in English, or another language commonly spoken among web developers.
+ - You want to make that choice consistent across the developer tools.
+ - A good criteria is the language in which you'd find the best
+ - documentation on web development on the web. -->
+
+<!ENTITY gotoLineCmd.label "Μετάβαση στη γραμμή…">
+<!ENTITY gotoLineCmd.key "J">
+<!ENTITY gotoLineCmd.accesskey "Μ">
diff --git a/l10n-el/devtools/client/sourceeditor.properties b/l10n-el/devtools/client/sourceeditor.properties
new file mode 100644
index 0000000000..e97cb4559f
--- /dev/null
+++ b/l10n-el/devtools/client/sourceeditor.properties
@@ -0,0 +1,117 @@
+# 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 These strings are used inside the Source Editor component.
+# This component is used whenever source code is displayed for the purpose of
+# being edited, inside the Firefox developer tools - current examples are the
+# Scratchpad and the Style Editor tools.
+
+# LOCALIZATION NOTE These strings are used inside the Source Editor component.
+# This component is used whenever source code is displayed for the purpose of
+# being edited, inside the Firefox developer tools (like Style Editor).
+
+# LOCALIZATION NOTE The correct localization of this file might be to keep it
+# in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best documentation
+# on web development on the web.
+
+# LOCALIZATION NOTE (findCmd.promptMessage): This is the message shown when
+# the user wants to search for a string in the code. You can
+# access this feature by pressing Ctrl-F on Windows/Linux or Cmd-F on Mac.
+findCmd.promptMessage=Αναζήτηση για:
+
+# LOCALIZATION NOTE (gotoLineCmd.promptTitle): This is the dialog title used
+# when the user wants to jump to a specific line number in the code. You can
+# access this feature by pressing Ctrl-J on Windows/Linux or Cmd-J on Mac.
+gotoLineCmd.promptTitle=Μετάβαση στη γραμμή…
+
+# LOCALIZATION NOTE (autocompletion.docsLink): This is the text shown on
+# the link inside of the documentation popup. If you type 'document' in Scratchpad
+# then press Shift+Space you can see the popup.
+autocompletion.docsLink=έγγραφα
+
+# LOCALIZATION NOTE (autocompletion.notFound): This is the text shown in
+# the documentation popup if Tern fails to find a type for the object.
+autocompletion.notFound=δεν βρέθηκε
+
+# LOCALIZATION NOTE (jumpToLine.commandkey): This is the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to jump to
+# a specific line in the editor.
+jumpToLine.commandkey=J
+
+# LOCALIZATION NOTE (toggleComment.commandkey): This is the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to either
+# comment or uncomment selected lines in the editor.
+toggleComment.commandkey=/
+
+# LOCALIZATION NOTE (indentLess.commandkey): This is the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to reduce
+# indentation level in CodeMirror. However, its default value also used by
+# the Toolbox to switch between tools so we disable it.
+#
+# DO NOT translate this key without proper synchronization with toolbox.dtd.
+indentLess.commandkey=[
+
+# LOCALIZATION NOTE (indentMore.commandkey): This is the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to increase
+# indentation level in CodeMirror. However, its default value also used by
+# the Toolbox to switch between tools
+#
+# DO NOT translate this key without proper synchronization with toolbox.dtd.
+indentMore.commandkey=]
+
+# LOCALIZATION NOTE (moveLineUp.commandkey): This is the combination of keys
+# used to move the current line up.
+# Do not localize "Alt", "Up", or change the format of the string. These are key
+# identifiers, not messages displayed to the user.
+moveLineUp.commandkey=Alt-Up
+
+# LOCALIZATION NOTE (moveLineDown.commandkey): This is the combination of keys
+# used to move the current line up.
+# Do not localize "Alt", "Down", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+moveLineDown.commandkey=Alt-Down
+
+# LOCALIZATION NOTE (autocompletion.commandkey): This is the key, used with
+# Ctrl, for code autocompletion.
+# Do not localize "Space", it's the key identifier, not a message displayed to
+# the user.
+autocompletion.commandkey=Space
+
+# LOCALIZATION NOTE (showInformation2.commandkey): This is the combination of
+# keys used to display more information, like type inference.
+# Do not localize "Shift", "Ctrl", "Space", or change the format of the string.
+# These are key identifiers, not messages displayed to the user.
+showInformation2.commandkey=Shift-Ctrl-Space
+
+# LOCALIZATION NOTE (find.key):
+# Key shortcut used to find the typed search
+# Do not localize "CmdOrCtrl", "F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+find.key=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (replaceAll.key):
+# Key shortcut used to replace the content of the editor
+# Do not localize "Shift", "CmdOrCtrl", "F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+replaceAll.key=Shift+CmdOrCtrl+F
+
+# LOCALIZATION NOTE (replaceAllMac.key):
+# Key shortcut used to replace the content of the editor on Mac
+# Do not localize "Alt", "CmdOrCtrl", "F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+replaceAllMac.key=Alt+CmdOrCtrl+F
+
+# LOCALIZATION NOTE (findNext.key):
+# Key shortcut used to find again the typed search
+# Do not localize "CmdOrCtrl", "G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+findNext.key=CmdOrCtrl+G
+
+# LOCALIZATION NOTE (findPrev.key):
+# Key shortcut used to find the previous typed search
+# Do not localize "Shift", "CmdOrCtrl", "G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+findPrev.key=Shift+CmdOrCtrl+G
diff --git a/l10n-el/devtools/client/startup.properties b/l10n-el/devtools/client/startup.properties
new file mode 100644
index 0000000000..83c8c8b9a9
--- /dev/null
+++ b/l10n-el/devtools/client/startup.properties
@@ -0,0 +1,252 @@
+# 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 (optionsButton.tooltip): This is used as the tooltip
+# for the options panel tab.
+optionsButton.tooltip=Επιλογές εργαλειοθήκης
+
+# LOCALIZATION NOTE (options.label): This is used as the label of the tab in
+# the devtools window.
+options.label=Επιλογές
+
+# LOCALIZATION NOTE (options.panelLabel): This is used as the label for the
+# toolbox panel.
+options.panelLabel=Πλαίσιο επιλογών εργαλειοθήκης
+
+# LOCALIZATION NOTE (options.darkTheme.label2)
+# Used as a label for dark theme
+options.darkTheme.label2=Σκούρο
+
+# LOCALIZATION NOTE (options.lightTheme.label2)
+# Used as a label for light theme
+options.lightTheme.label2=Φωτεινό
+
+# LOCALIZATION NOTE (performance.label):
+# This string is displayed in the title of the tab when the profiler is
+# displayed inside the developer tools window and in the Developer Tools Menu.
+performance.label=Επιδόσεις
+
+# LOCALIZATION NOTE (performance.panelLabel):
+# This is used as the label for the toolbox panel.
+performance.panelLabel=Πλαίσιο απόδοσης
+
+# LOCALIZATION NOTE (performance.accesskey)
+# Used for the menuitem in the tool menu
+performance.accesskey=Ε
+
+# LOCALIZATION NOTE (performance.tooltip):
+# This string is displayed in the tooltip of the tab when the profiler is
+# displayed inside the developer tools window.
+# Keyboard shortcut for Performance Tools will be shown inside brackets.
+performance.tooltip=Επιδόσεις (%S)
+
+# LOCALIZATION NOTE (MenuWebconsole.label): the string displayed in the Tools
+# menu as a shortcut to open the devtools with the Web Console tab selected.
+MenuWebconsole.label=Κονσόλα ιστού
+
+# LOCALIZATION NOTE (ToolboxTabWebconsole.label): the string displayed as the
+# label of the tab in the devtools window.
+ToolboxTabWebconsole.label=Κονσόλα
+
+# LOCALIZATION NOTE (ToolboxWebConsole.panelLabel): the string used as the
+# label for the toolbox panel.
+ToolboxWebConsole.panelLabel=Πλαίσιο κονσόλας
+
+# LOCALIZATION NOTE (ToolboxWebconsole.tooltip2): the string displayed in the
+# tooltip of the tab when the Web Console is displayed inside the developer
+# tools window.
+# Keyboard shortcut for Console will be shown inside the brackets.
+ToolboxWebconsole.tooltip2=Κονσόλα ιστού (%S)
+
+webConsoleCmd.accesskey=Ι
+
+# LOCALIZATION NOTE (ToolboxDebugger.label):
+# This string is displayed in the title of the tab when the debugger is
+# displayed inside the developer tools window and in the Developer Tools Menu.
+ToolboxDebugger.label=Αποσφαλμάτωση
+
+# LOCALIZATION NOTE (ToolboxDebugger.panelLabel):
+# This is used as the label for the toolbox panel.
+ToolboxDebugger.panelLabel=Πλαίσιο αποσφαλμάτωσης
+
+# LOCALIZATION NOTE (ToolboxDebugger.tooltip4):
+# This string is displayed in the tooltip of the tab when the debugger is
+# displayed inside the developer tools window.
+ToolboxDebugger.tooltip4=Εντοπισμός σφαλμάτων JavaScript (%S)
+
+# LOCALIZATION NOTE (debuggerMenu.accesskey)
+# Used for the menuitem in the tool menu
+debuggerMenu.accesskey=Φ
+
+# LOCALIZATION NOTE (ToolboxStyleEditor.label):
+# This string is displayed in the title of the tab when the style editor is
+# displayed inside the developer tools window and in the Developer Tools Menu.
+ToolboxStyleEditor.label=Επεξεργασία στυλ
+
+# LOCALIZATION NOTE (ToolboxStyleEditor.panelLabel):
+# This is used as the label for the toolbox panel.
+ToolboxStyleEditor.panelLabel=Πλαίσιο επεξεργασίας στυλ
+
+# LOCALIZATION NOTE (ToolboxStyleEditor.tooltip3):
+# This string is displayed in the tooltip of the tab when the style editor is
+# displayed inside the developer tools window.
+# A keyboard shortcut for Stylesheet Editor will be shown inside the latter pair of brackets.
+ToolboxStyleEditor.tooltip3=Επεξεργαστής φύλλου στυλ (CSS) (%S)
+
+# LOCALIZATION NOTE (open.accesskey): The access key used to open the style
+# editor.
+open.accesskey=Ε
+
+# LOCALIZATION NOTE (inspector.*)
+# Used for the menuitem in the tool menu
+inspector.label=Επιθεώρηση
+inspector.accesskey=Ε
+
+# LOCALIZATION NOTE (inspector.panelLabel)
+# Labels applied to the panel and views within the panel in the toolbox
+inspector.panelLabel=Πλαίσιο επιθεώρησης
+
+# LOCALIZATION NOTE (inspector.tooltip2)
+# Keyboard shortcut for DOM and Style Inspector will be shown inside brackets.
+inspector.tooltip2=DOM και επιθεώρηση στυλ (%S)
+
+# LOCALIZATION NOTE (inspector.mac.tooltip)
+# This is the exact same string as inspector.tooltip2, except that we show it
+# on mac only, where we support toggling the inspector with either cmd+shift+C,
+# or cmd+opt+C
+inspector.mac.tooltip=Επιθεώρηση DOM και στυλ (%1$S ή %2$S)
+
+# LOCALIZATION NOTE (netmonitor.label):
+# This string is displayed in the title of the tab when the Network Monitor is
+# displayed inside the developer tools window and in the Developer Tools Menu.
+netmonitor.label=Δίκτυο
+
+# LOCALIZATION NOTE (netmonitor.panelLabel):
+# This is used as the label for the toolbox panel.
+netmonitor.panelLabel=Πλαίσιο δικτύου
+
+# LOCALIZATION NOTE (netmonitor.accesskey)
+# Used for the menuitem in the tool menu
+netmonitor.accesskey=Δ
+
+# LOCALIZATION NOTE (netmonitor.tooltip2):
+# This string is displayed in the tooltip of the tab when the Network Monitor is
+# displayed inside the developer tools window.
+# Keyboard shortcut for Network Monitor will be shown inside the brackets.
+netmonitor.tooltip2=Εποπτεία δικτύου (%S)
+
+# LOCALIZATION NOTE (storage.accesskey): The access key used to open the storage
+# editor.
+storage.accesskey=η
+
+# LOCALIZATION NOTE (storage.label):
+# This string is displayed as the label of the tab in the developer tools window
+storage.label=Αποθήκευση
+
+# LOCALIZATION NOTE (storage.menuLabel):
+# This string is displayed in the Tools menu as a shortcut to open the devtools
+# with the Storage Inspector tab selected.
+storage.menuLabel=Επιθεώρηση αποθήκευσης
+
+# LOCALIZATION NOTE (storage.panelLabel):
+# This string is used as the aria-label for the iframe of the Storage Inspector
+# tool in developer tools toolbox.
+storage.panelLabel=Πλαίσιο αποθηκευτικών χώρων
+
+# LOCALIZATION NOTE (storage.tooltip3):
+# This string is displayed in the tooltip of the tab when the storage editor is
+# displayed inside the developer tools window.
+# A keyboard shortcut for Storage Inspector will be shown inside the brackets.
+storage.tooltip3=Επιθεώρηση αποθήκευσης (Cookies, τοπική αποθήκευση, …) (%S)
+
+# LOCALIZATION NOTE (memory.label): This string is displayed in the title of the
+# tab when the memory tool is displayed inside the developer tools window and in
+# the Developer Tools Menu.
+memory.label=Μνήμη
+
+# LOCALIZATION NOTE (memory.panelLabel): This is used as the label for the
+# toolbox panel.
+memory.panelLabel=Πλαίσιο μνήμης
+
+# LOCALIZATION NOTE (memory.tooltip): This string is displayed in the tooltip of
+# the tab when the memory tool is displayed inside the developer tools window.
+memory.tooltip=Μνήμη
+
+# LOCALIZATION NOTE (dom.label):
+# This string is displayed in the title of the tab when the DOM panel is
+# displayed inside the developer tools window and in the Developer Tools Menu.
+dom.label=DOM
+
+# LOCALIZATION NOTE (dom.panelLabel):
+# This is used as the label for the toolbox panel.
+dom.panelLabel=Πλαίσιο DOM
+
+# LOCALIZATION NOTE (dom.accesskey)
+# Used for the menuitem in the tool menu
+dom.accesskey=D
+
+# LOCALIZATION NOTE (dom.tooltip):
+# This string is displayed in the tooltip of the tab when the DOM is
+# displayed inside the developer tools window.
+# Keyboard shortcut for DOM panel will be shown inside the brackets.
+dom.tooltip=DOM (%S)
+
+# LOCALIZATION NOTE (accessibility.label):
+# This string is displayed in the title of the tab when the Accessibility panel
+# is displayed inside the developer tools window and in the Developer Tools Menu.
+accessibility.label=Προσβασιμότητα
+
+# LOCALIZATION NOTE (accessibility.panelLabel):
+# This is used as the label for the toolbox panel.
+accessibility.panelLabel=Καρτέλα προσβασιμότητας
+
+# LOCALIZATION NOTE (accessibility.accesskey)
+# Used for the menuitem in the tool menu
+accessibility.accesskey=β
+
+# LOCALIZATION NOTE (accessibility.tooltip3):
+# This string is displayed in the tooltip of the tab when the Accessibility is
+# displayed inside the developer tools window.
+# Keyboard shortcut for Accessibility panel will be shown inside the brackets.
+accessibility.tooltip3=Προσβασιμότητα (%S)
+
+# LOCALIZATION NOTE (application.label):
+# This string is displayed in the title of the tab when the Application panel
+# is displayed inside the developer tools window and in the Developer Tools Menu.
+application.label=Εφαρμογή
+
+# LOCALIZATION NOTE (application.panelLabel):
+# This is used as the label for the toolbox panel.
+application.panelLabel=Καρτέλα εφαρμογών
+
+# LOCALIZATION NOTE (application.tooltip):
+# This string is displayed in the tooltip of the tab when the Application panel is
+# displayed inside the developer tools window.
+application.tooltip=Καρτέλα εφαρμογών
+
+# LOCALIZATION NOTE (toolbox.buttons.responsive):
+# This is the tooltip of the button in the toolbox toolbar that toggles
+# the Responsive mode.
+# Keyboard shortcut will be shown inside brackets.
+toolbox.buttons.responsive = Λειτ. αποκρίσιμου σχεδιασμού (%S)
+
+# LOCALIZATION NOTE (toolbox.buttons.paintflashing):
+# This is the tooltip of the paintflashing button in the toolbox toolbar
+# that toggles paintflashing.
+toolbox.buttons.paintflashing = (Απ)ενεργοποίηση ανάδειξης χρώματος
+
+# LOCALIZATION NOTE (toolbox.buttons.screenshot):
+# This is the tooltip of the button in the toolbox toolbar that allows you to
+# take a screenshot of the entire page
+toolbox.buttons.screenshot = Λήψη στιγμιοτύπου οθόνης για όλη τη σελίδα
+
+# LOCALIZATION NOTE (toolbox.buttons.rulers):
+# This is the tooltip of the button in the toolbox toolbar that toggles the
+# rulers in the page
+toolbox.buttons.rulers = (Απ)ενεργοποίηση κανόνων για τη σελίδα
+
+# LOCALIZATION NOTE (toolbox.buttons.measure):
+# This is the tooltip of the button in the toolbox toolbar that toggles the
+# measuring tools
+toolbox.buttons.measure = Μέτρηση ενός μέρους της σελίδας
diff --git a/l10n-el/devtools/client/storage.dtd b/l10n-el/devtools/client/storage.dtd
new file mode 100644
index 0000000000..6d43342f4a
--- /dev/null
+++ b/l10n-el/devtools/client/storage.dtd
@@ -0,0 +1,17 @@
+<!-- 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 : This file contains the Storage Inspector strings. -->
+
+<!-- LOCALIZATION NOTE : Placeholder for the searchbox that allows you to filter the table items. -->
+<!ENTITY searchBox.placeholder "Φιλτράρισμα στοιχείων">
+
+<!-- LOCALIZATION NOTE : Label of popup menu action to delete all storage items. -->
+<!ENTITY storage.popupMenu.deleteAllLabel "Διαγραφή όλων">
+
+<!-- LOCALIZATION NOTE : Label of popup menu action to delete all session cookies. -->
+<!ENTITY storage.popupMenu.deleteAllSessionCookiesLabel "Διαγραφή όλων των cookies συνεδρίας">
+
+<!-- LOCALIZATION NOTE : Label of popup menu action to copy a storage item. -->
+<!ENTITY storage.popupMenu.copyLabel "Αντιγραφή">
diff --git a/l10n-el/devtools/client/storage.ftl b/l10n-el/devtools/client/storage.ftl
new file mode 100644
index 0000000000..7f45a943d7
--- /dev/null
+++ b/l10n-el/devtools/client/storage.ftl
@@ -0,0 +1,33 @@
+# 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/.
+
+
+### These strings are used inside the Storage Inspector.
+
+# Hint shown when the selected storage host does not contain any data
+storage-table-empty-text = Δεν υπάρχουν δεδομένα για τον επιλεγμένο host
+
+# Hint shown when the cookies storage type is selected. Clicking the link will open
+# https://developer.mozilla.org/docs/Tools/Storage_Inspector/Cookies
+storage-table-type-cookies-hint = Δείτε και επεξεργαστείτε cookies επιλέγοντας ένα host. <a data-l10n-name="learn-more-link">Μάθετε περισσότερα</a>
+
+# Hint shown when the local storage type is selected. Clicking the link will open
+# https://developer.mozilla.org/docs/Tools/Storage_Inspector/Local_Storage_Session_Storage
+storage-table-type-localstorage-hint = Δείτε και επεξεργαστείτε την τοπική αποθήκευση επιλέγοντας ένα host. <a data-l10n-name="learn-more-link">Μάθετε περισσότερα</a>
+
+# Hint shown when the session storage type is selected. Clicking the link will open
+# https://developer.mozilla.org/docs/Tools/Storage_Inspector/Local_Storage_Session_Storage
+storage-table-type-sessionstorage-hint = Δείτε και επεξεργαστείτε την αποθήκευση συνεδρίας επιλέγοντας ένα host. <a data-l10n-name="learn-more-link">Μάθετε περισσότερα</a>
+
+# Hint shown when the IndexedDB storage type is selected. Clicking the link will open
+# https://developer.mozilla.org/docs/Tools/Storage_Inspector/IndexedDB
+storage-table-type-indexeddb-hint = Δείτε και διαγράψτε τις καταχωρήσεις IndexedDB επιλέγοντας μια βάση δεδομένων. <a data-l10n-name="learn-more-link">Μάθετε περισσότερα</a>
+
+# Hint shown when the cache storage type is selected. Clicking the link will open
+# https://developer.mozilla.org/docs/Tools/Storage_Inspector/Cache_Storage
+storage-table-type-cache-hint = Δείτε και διαγράψτε την αποθήκευση προσωρινής μνήμης επιλέγοντας έναν αποθηκευτικό χώρο. <a data-l10n-name="learn-more-link">Μάθετε περισσότερα</a>
+
+# Hint shown when the extension storage type is selected. Clicking the link will open
+# https://developer.mozilla.org/docs/Tools/Storage_Inspector/Extension_Storage
+storage-table-type-extensionstorage-hint = Δείτε και επεξεργαστείτε την αποθήκευση επεκτάσεων επιλέγοντας ένα host. <a data-l10n-name="learn-more-link">Μάθετε περισσότερα</a>
diff --git a/l10n-el/devtools/client/storage.properties b/l10n-el/devtools/client/storage.properties
new file mode 100644
index 0000000000..e16bf6dd37
--- /dev/null
+++ b/l10n-el/devtools/client/storage.properties
@@ -0,0 +1,104 @@
+# 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 These strings are used inside the Storage Editor tool.
+# LOCALIZATION NOTE The correct localization of this file might be to keep it
+# in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best documentation
+# on web development on the web.
+
+# LOCALIZATION NOTE (storage.filter.key):
+# Key shortcut used to focus the filter box on top of the data view
+storage.filter.key=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (tree.labels.*):
+# These strings are the labels for Storage type groups present in the Storage
+# Tree, like cookies, local storage etc.
+tree.labels.cookies=Cookies
+tree.labels.localStorage=Τοπική αποθήκευση
+tree.labels.sessionStorage=Αποθήκευση συνεδρίας
+tree.labels.indexedDB=ΒΔ με ευρετήριο
+tree.labels.Cache=Προσωρινή αποθήκευση
+
+tree.labels.extensionStorage=Αποθήκευση επέκτασης
+
+# LOCALIZATION NOTE (table.headers.*.*):
+# These strings are the header names of the columns in the Storage Table for
+# each type of storage available through the Storage Tree to the side.
+table.headers.cookies.name=Όνομα
+table.headers.cookies.value=Τιμή
+
+table.headers.cookies.expires2=Λήξη/Μέγιστος χρόνος
+table.headers.cookies.size=Μέγεθος
+table.headers.cookies.lastAccessed2=Τελευταία πρόσβαση
+table.headers.cookies.creationTime2=Δημιουργήθηκε
+
+table.headers.Cache.status=Κατάσταση
+
+table.headers.indexedDB.uniqueKey=Μοναδικό κλειδί
+table.headers.indexedDB.name=Κλειδί
+table.headers.indexedDB.db=Όνομα Βάσης Δεδομένων
+table.headers.indexedDB.storage=Αποθήκευση
+table.headers.indexedDB.objectStore=Όνομα αποθήκης αντικειμένων
+table.headers.indexedDB.value=Τιμή
+table.headers.indexedDB.origin=Προέλευση
+table.headers.indexedDB.version=Έκδοση
+table.headers.indexedDB.objectStores=Αποθήκες αντικειμένων
+table.headers.indexedDB.keyPath2=Διαδρομή κλειδιού
+table.headers.indexedDB.autoIncrement=Αυτόματη αύξηση
+table.headers.indexedDB.indexes=Ευρετήρια
+
+table.headers.extensionStorage.area=Περιοχή αποθήκευσης
+
+# LOCALIZATION NOTE (label.expires.session):
+# This string is displayed in the expires column when the cookie is Session
+# Cookie
+label.expires.session=Συνεδρία
+
+# LOCALIZATION NOTE (storage.search.placeholder):
+# This is the placeholder text in the sidebar search box
+storage.search.placeholder=Φιλτράρισμα τιμών
+
+# LOCALIZATION NOTE (storage.data.label):
+# This is the heading displayed over the item value in the sidebar
+storage.data.label=Δεδομένα
+
+# LOCALIZATION NOTE (storage.parsedValue.label):
+# This is the heading displayed over the item parsed value in the sidebar
+storage.parsedValue.label=Αναλυμένη τιμή
+
+# LOCALIZATION NOTE (storage.popupMenu.deleteLabel):
+# Label of popup menu action to delete storage item.
+storage.popupMenu.deleteLabel=Διαγραφή “%S”
+
+# LOCALIZATION NOTE (storage.popupMenu.addItemLabel):
+# Label of popup menu action to add an item.
+storage.popupMenu.addItemLabel=Προσθήκη στοιχείου
+
+# LOCALIZATION NOTE (storage.popupMenu.refreshItemLabel):
+# Label of popup menu action to refresh an item.
+storage.popupMenu.refreshItemLabel=Ανανέωση στοιχείων
+
+# LOCALIZATION NOTE (storage.popupMenu.deleteAllFromLabel):
+# Label of popup menu action to delete all storage items.
+storage.popupMenu.deleteAllFromLabel=Διαγραφή όλων από “%S”
+
+# LOCALIZATION NOTE (storage.idb.deleteBlocked):
+# Warning notification when IndexedDB database could not be deleted immediately.
+storage.idb.deleteBlocked=Η βάση δεδομένων “%S” θα διαγραφεί αφού κλείσουν όλες οι συνδέσεις.
+
+# LOCALIZATION NOTE (storage.idb.deleteError):
+# Error notification when IndexedDB database could not be deleted.
+storage.idb.deleteError=Δεν ήταν δυνατή η διαγραφή της βάσης δεδομένων “%S”.
+
+# LOCALIZATION NOTE (storage.expandPane):
+# This is the tooltip for the button that collapses the right panel in the
+# storage UI when the panel is closed.
+storage.expandPane=Επέκταση προβολής
+
+# LOCALIZATION NOTE (storage.collapsePane):
+# This is the tooltip for the button that collapses the right panel in the
+# storage UI when the panel is open.
+storage.collapsePane=Σύμπτυξη προβολής
diff --git a/l10n-el/devtools/client/styleeditor.ftl b/l10n-el/devtools/client/styleeditor.ftl
new file mode 100644
index 0000000000..0516cd9a67
--- /dev/null
+++ b/l10n-el/devtools/client/styleeditor.ftl
@@ -0,0 +1,27 @@
+# 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/.
+
+styleeditor-new-button =
+ .tooltiptext = Δημιουργία και σύνδεση ενός νέου φύλλου στυλ στο έγγραφο
+ .accesskey = Ν
+styleeditor-import-button =
+ .tooltiptext = Εισαγωγή και επισύναψη ενός υπάρχοντος φύλλου στυλ στο έγγραφο
+ .accesskey = Ε
+styleeditor-visibility-toggle =
+ .tooltiptext = (Απ)ενεργοποίηση ορατότητας φύλλου στυλ
+ .accesskey = Α
+styleeditor-save-button = Αποθήκευση
+ .tooltiptext = Αποθήκευση φύλλου στυλ σε αρχείο
+ .accesskey = Α
+styleeditor-options-button =
+ .tooltiptext = Επιλογές επεξεργασίας στυλ
+styleeditor-media-rules = Κανόνες @media
+styleeditor-editor-textbox =
+ .data-placeholder = Πληκτρολογήστε CSS εδώ.
+styleeditor-no-stylesheet = Αυτή η σελίδα δεν έχει φύλλο στυλ.
+styleeditor-no-stylesheet-tip = Μήπως θέλετε να <a data-l10n-name="append-new-stylesheet">προσθέσετε ένα νέο φύλλο στυλ</a>;
+styleeditor-open-link-new-tab =
+ .label = Άνοιγμα συνδέσμου σε νέα καρτέλα
+styleeditor-copy-url =
+ .label = Αντιγραφή URL
diff --git a/l10n-el/devtools/client/styleeditor.properties b/l10n-el/devtools/client/styleeditor.properties
new file mode 100644
index 0000000000..3f88e81f99
--- /dev/null
+++ b/l10n-el/devtools/client/styleeditor.properties
@@ -0,0 +1,67 @@
+# 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 These strings are used inside the Style Editor.
+# LOCALIZATION NOTE The correct localization of this file might be to keep it
+# in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best documentation
+# on web development on the web.
+
+# LOCALIZATION NOTE (inlineStyleSheet): This is the name used for an style sheet
+# that is declared inline in the <style> element. Shown in the stylesheets list.
+# the argument is the index (order) of the containing <style> element in the
+# document.
+inlineStyleSheet=<inline style sheet #%S>
+
+# LOCALIZATION NOTE (newStyleSheet): This is the default name for a new
+# user-created style sheet.
+newStyleSheet=Νέο φύλλο στυλ #%S
+
+# LOCALIZATION NOTE (ruleCount.label): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This is shown in the style sheets list.
+# #1 rule.
+# example: 111 rules.
+ruleCount.label=#1 κανόνας.;#1 κανόνες.
+
+# LOCALIZATION NOTE (error-load): This is shown when loading fails.
+error-load=Δεν ήταν δυνατή η φόρτωση του φύλλου στυλ.
+
+# LOCALIZATION NOTE (error-save): This is shown when saving fails.
+error-save=Δεν ήταν δυνατή η αποθήκευση του φύλλου στυλ.
+
+# LOCALIZATION NOTE (importStyleSheet.title): This is the file picker title,
+# when you import a style sheet into the Style Editor.
+importStyleSheet.title=Εισαγωγή φύλλου στυλ
+
+# LOCALIZATION NOTE (importStyleSheet.filter): This is the *.css filter title
+importStyleSheet.filter=Αρχεία CSS
+
+# LOCALIZATION NOTE (saveStyleSheet.title): This is the file picker title,
+# when you save a style sheet from the Style Editor.
+saveStyleSheet.title=Αποθήκευση φύλλου στυλ
+
+# LOCALIZATION NOTE (saveStyleSheet.filter): This is the *.css filter title
+saveStyleSheet.filter=Αρχεία CSS
+
+# LOCALIZATION NOTE (saveStyleSheet.commandkey): This the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to Save
+saveStyleSheet.commandkey=S
+
+# LOCALIZATION NOTE (showOriginalSources.label): This is the label on the context
+# menu item to toggle showing original sources in the editor.
+showOriginalSources.label=Εμφάνιση αρχικών πηγών
+
+# LOCALIZATION NOTE (showOriginalSources.accesskey): This is the access key for
+# the menu item to toggle showing original sources in the editor.
+showOriginalSources.accesskey=α
+
+# LOCALIZATION NOTE (showMediaSidebar.label): This is the label on the context
+# menu item to toggle showing @media rule shortcuts in a sidebar.
+showMediaSidebar.label=Εμφάνιση πλευρικής στήλης @media
+
+# LOCALIZATION NOTE (showMediaSidebar.accesskey): This is the access key for
+# the menu item to toggle showing the @media sidebar.
+showMediaSidebar.accesskey=m
diff --git a/l10n-el/devtools/client/toolbox-options.ftl b/l10n-el/devtools/client/toolbox-options.ftl
new file mode 100644
index 0000000000..6a6712127e
--- /dev/null
+++ b/l10n-el/devtools/client/toolbox-options.ftl
@@ -0,0 +1,140 @@
+# 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 for Developer Tools options
+
+
+## Default Developer Tools section
+
+# The heading
+options-select-default-tools-label = Προεπιλεγμένα εργαλεία προγραμματιστή
+
+# The label for the explanation of the * marker on a tool which is currently not supported
+# for the target of the toolbox.
+options-tool-not-supported-label = * Δεν υποστηρίζεται για τον τρέχοντα στόχο εργαλειοθήκης
+
+# The label for the heading of group of checkboxes corresponding to the developer tools
+# added by add-ons. This heading is hidden when there is no developer tool installed by add-ons.
+options-select-additional-tools-label = Τα εργαλεία για προγραμματιστές εγκαταστάθηκαν από τα πρόσθετα
+
+# The label for the heading of group of checkboxes corresponding to the default developer
+# tool buttons.
+options-select-enabled-toolbox-buttons-label = Διαθέσιμα κουμπιά εργαλειοθήκης
+
+# The label for the heading of the radiobox corresponding to the theme
+options-select-dev-tools-theme-label = Θέματα
+
+## Inspector section
+
+# The heading
+options-context-inspector = Επιθεώρηση
+
+# The label for the checkbox option to show user agent styles
+options-show-user-agent-styles-label = Εμφάνιση στυλ προγράμματος περιήγησης
+options-show-user-agent-styles-tooltip =
+ .title = Η ενεργοποίηση αυτού θα εμφανίσει τα προεπιλεγμένα στυλ που φορτώνονται από το πρόγραμμα περιήγησης.
+
+# The label for the checkbox option to enable collapse attributes
+options-collapse-attrs-label = Κόψιμο ιδιοτήτων DOM
+options-collapse-attrs-tooltip =
+ .title = Κόψιμο μεγάλων ιδιοτήτων στην επιθεώρηση
+
+## "Default Color Unit" options for the Inspector
+
+options-default-color-unit-label = Προεπιλεγμένη μονάδα χρώματος
+options-default-color-unit-authored = Ως συγγραφέας
+options-default-color-unit-hex = Hex
+options-default-color-unit-hsl = HSL(A)
+options-default-color-unit-rgb = RGB(A)
+options-default-color-unit-name = Ονόματα χρωμάτων
+
+## Style Editor section
+
+# The heading
+options-styleeditor-label = Επεξεργασία στυλ
+
+# The label for the checkbox that toggles autocompletion of css in the Style Editor
+options-stylesheet-autocompletion-label = Αυτόματη συμπλήρωση CSS
+options-stylesheet-autocompletion-tooltip =
+ .title = Αυτόματη συμπλήρωση ιδιοτήτων CSS, τιμών και επιλογέων στην Επεξεργασία Στυλ καθώς πληκτρολογείτε
+
+## Screenshot section
+
+# The heading
+options-screenshot-label = Συμπεριφορά στιγμιότυπου
+
+# Label for the checkbox that toggles screenshot to clipboard feature
+options-screenshot-clipboard-label = Στιγμιότυπο στο πρόχειρο
+options-screenshot-clipboard-tooltip =
+ .title = Αποθηκεύει το στιγμιότυπο απευθείας στο πρόχειρο
+
+# Label for the checkbox that toggles the camera shutter audio for screenshot tool
+options-screenshot-audio-label = Αναπαραγωγή ήχου κλείστρου κάμερας
+options-screenshot-audio-tooltip =
+ .title = Ενεργοποιεί τον ήχο κάμερας κατά τη λήψη στιγμιότυπου
+
+## Editor section
+
+# The heading
+options-sourceeditor-label = Προτιμήσεις επεξεργασίας
+
+options-sourceeditor-detectindentation-tooltip =
+ .title = Υπολογισμός εσοχής με βάση το περιεχόμενο της πηγής
+options-sourceeditor-detectindentation-label = Εντοπισμός εσοχής
+options-sourceeditor-autoclosebrackets-tooltip =
+ .title = Αυτόματη εισαγωγή παρενθέσεων κλεισίματος
+options-sourceeditor-autoclosebrackets-label = Αυτόματο κλείσιμο παρενθέσεων
+options-sourceeditor-expandtab-tooltip =
+ .title = Χρήση διαστημάτων αντί για το χαρακτήρα καρτέλας
+options-sourceeditor-expandtab-label = Εσοχή με διαστήματα
+options-sourceeditor-tabsize-label = Μέγεθος καρτέλας
+options-sourceeditor-keybinding-label = Συντομεύσεις πλήκτρων
+options-sourceeditor-keybinding-default-label = Προεπιλογή
+
+## Advanced section
+
+# The heading
+options-context-advanced-settings = Ρυθμίσεις για προχωρημένους
+
+# The label for the checkbox that toggles the HTTP cache on or off
+options-disable-http-cache-label = Απενεργοποίηση HTTP Cache (όταν είναι ανοικτή η εργαλειοθήκη)
+options-disable-http-cache-tooltip =
+ .title = Η ενεργοποίηση αυτής της επιλογής θα απενεργοποιήσει την HTTP cache για όλες τις καρτέλες που έχουν ανοικτή την εργαλειοθήκη. Τα service workers δεν επηρεάζονται από αυτή την επιλογή.
+
+# The label for checkbox that toggles JavaScript on or off
+options-disable-javascript-label = Απενεργοποίηση JavaScript *
+options-disable-javascript-tooltip =
+ .title = Η ενεργοποίηση αυτής της επιλογής θα απενεργοποιήσει το JavaScript για την τρέχουσα καρτέλα. Αν η καρτέλα ή η εργαλειοθήκη είναι κλειστή, τότε αυτή η ρύθμιση θα ξεχαστεί.
+
+# The label for checkbox that toggles chrome debugging, i.e. the devtools.chrome.enabled preference
+options-enable-chrome-label = Ενεργοποίηση εργαλειοθηκών προγράμματος περιήγησης chrome και προσθέτων αποσφαλμάτωσης
+options-enable-chrome-tooltip =
+ .title = Η ενεργοποίηση αυτής της επιλογής θα σάς επιτρέψει να χρησιμοποιήσετε διάφορα εργαλεία προγραμματιστή στο πλαίσιο του προγράμματος περιήγησης (μέσω του Εργαλεία > Προγραμματιστής ιστού > Εργαλειοθήκη προγράμματος περιήγησης) και να αποσφαλματώσετε πρόσθετα στη διαχείριση προσθέτων
+
+# The label for checkbox that toggles remote debugging, i.e. the devtools.debugger.remote-enabled preference
+options-enable-remote-label = Ενεργοποίηση απομακρυσμένης αποσφαλμάτωσης
+options-enable-remote-tooltip2 =
+ .title = Η ενεργοποίηση αυτής της επιλογής θα επιτρέψει τον εντοπισμό σφαλμάτων σε αυτό το παράθυρο του προγράμματος περιήγησης απομακρυσμένα
+
+# The label for checkbox that toggles the service workers testing over HTTP on or off.
+options-enable-service-workers-http-label = Ενεργοποίηση Service Workers μέσω HTTP (όταν είναι ανοικτή η εργαλειοθήκη)
+options-enable-service-workers-http-tooltip =
+ .title = Η ενεργοποίηση αυτής της επιλογής θα ενεργοποιήσει τα service workers του HTTP για όλες τις καρτέλες που έχουν ανοικτή την εργαλειοθήκη.
+
+# The label for the checkbox that toggles source maps in all tools.
+options-source-maps-label = Ενεργοποίηση χαρτών πηγής
+options-source-maps-tooltip =
+ .title = Αν ενεργοποιήσετε αυτή την επιλογή, οι πηγές θα αντιστοιχιστούν στα εργαλεία.
+
+# The message shown for settings that trigger page reload
+options-context-triggers-page-refresh = * Τρέχουσα συνεδρία μόνο, επαναφορτώνει τη σελίδα
+
+# The label for the checkbox that toggles the display of the platform data in the
+# Profiler i.e. devtools.profiler.ui.show-platform-data a boolean preference in about:config
+options-show-platform-data-label = Εμφάνιση δεδομένων πλατφόρμας Gecko
+options-show-platform-data-tooltip =
+ .title =
+ Αν ενεργοποιήσετε αυτή την επιλογή, οι αναφορές του προγράμματος προφίλ JavaScript θα περιλαμβάνουν
+ σύμβολα της πλατφόρμας Gecko
diff --git a/l10n-el/devtools/client/toolbox.properties b/l10n-el/devtools/client/toolbox.properties
new file mode 100644
index 0000000000..21074ef7e3
--- /dev/null
+++ b/l10n-el/devtools/client/toolbox.properties
@@ -0,0 +1,285 @@
+# 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 (toolbox.titleTemplate1): This is the template
+# used to format the title of the toolbox.
+# The URL of the page being targeted: %1$S.
+toolbox.titleTemplate1=Εργαλεία προγραμματιστή - %1$S
+
+# LOCALIZATION NOTE (toolbox.titleTemplate2): This is the template
+# used to format the title of the toolbox.
+# The page title or other name for the thing being targeted: %1$S
+# The URL of the page being targeted: %2$S.
+toolbox.titleTemplate2=Εργαλεία προγραμματιστή - %1$S - %2$S
+
+# LOCALIZATION NOTE (toolbox.multiProcessBrowserToolboxTitle): Title used for
+# the Browser Toolbox when the pref `devtools.browsertoolbox.fission` is true.
+# This Browser Toolbox allows to debug the parent process as well as the content
+# processes in the same toolbox.
+toolbox.multiProcessBrowserToolboxTitle=Εργαλειοθήκη πολλαπλών διεργασιών προγράμματος περιήγησης
+
+# LOCALIZATION NOTE (toolbox.defaultTitle): This is used as the tool
+# name when no tool is selected.
+toolbox.defaultTitle=Εργαλεία προγραμματιστή
+
+# LOCALIZATION NOTE (toolbox.label): This is used as the label for the
+# toolbox as a whole
+toolbox.label=Εργαλεία προγραμματιστή
+
+# LOCALIZATION NOTE (options.toolNotSupportedMarker): This is the template
+# used to add a * marker to the label for the Options Panel tool checkbox for the
+# tool which is not supported for the current toolbox target.
+# The name of the tool: %1$S.
+options.toolNotSupportedMarker=%1$S *
+
+# LOCALIZATION NOTE (toolbox.pickButton.tooltip)
+# This is the tooltip of the element picker button in the toolbox toolbar.
+# %S is the keyboard shortcut that toggles the element picker.
+toolbox.elementPicker.tooltip=Επιλογή στοιχείου από τη σελίδα (%S)
+
+# LOCALIZATION NOTE (toolbox.pickButton.mac.tooltip)
+# Like toolbox.pickButton.tooltip, but for macOS there are two possible keyboard
+# shortcuts: Cmd+Shift+C or Cmd+Opt+C
+toolbox.elementPicker.mac.tooltip=Επιλογή στοιχείου από τη σελίδα (%1$S ή %2$S)
+
+# LOCALIZATION NOTE (toolbox.elementPicker.key)
+# Key shortcut used to toggle the element picker.
+toolbox.elementPicker.key=CmdOrCtrl+Shift+C
+
+# LOCALIZATION NOTE (toolbox.elementPicker.mac.key)
+# Key shortcut used to toggle the element picker for macOS.
+toolbox.elementPicker.mac.key=Cmd+Opt+C
+
+# LOCALIZATION NOTE (toolbox.noContentProcessForTab.message)
+# Used as a message in the alert displayed when trying to open a browser
+# content toolbox and there is no content process running for the current tab
+toolbox.noContentProcessForTab.message=Καμία διεργασία περιεχομένου για την καρτέλα.
+
+# LOCALIZATION NOTE (toolbox.viewCssSourceInStyleEditor.label)
+# Used as a message in either tooltips or contextual menu items to open the
+# corresponding URL as a css file in the Style-Editor tool.
+# DEV NOTE: Mostly used wherever toolbox.viewSourceInStyleEditorByXX is used.
+toolbox.viewCssSourceInStyleEditor.label=Άνοιγμα του αρχείου στην επεξεργασία στυλ
+
+# LOCALIZATION NOTE (toolbox.viewJsSourceInDebugger.label)
+# Used as a message in either tooltips or contextual menu items to open the
+# corresponding URL as a js file in the Debugger tool.
+# DEV NOTE: Mostly used wherever toolbox.viewSourceInDebugger is used.
+toolbox.viewJsSourceInDebugger.label=Άνοιγμα αρχείου στον αποσφαλματωτή
+
+toolbox.resumeOrderWarning=Η σελίδα δεν συνέχισε μετά την προσάρτηση του αποσφαλματωτή. Για να διορθωθεί αυτό, κλείστε και ανοίξτε πάλι τα εργαλεία προγραμματιστή.
+
+# LOCALIZATION NOTE (toolbox.help.key)
+# Key shortcut used to open the options panel
+toolbox.help.key=F1
+
+# LOCALIZATION NOTE (toolbox.nextTool.key)
+# Key shortcut used to select the next tool
+toolbox.nextTool.key=CmdOrCtrl+]
+
+# LOCALIZATION NOTE (toolbox.previousTool.key)
+# Key shortcut used to select the previous tool
+toolbox.previousTool.key=CmdOrCtrl+[
+
+# LOCALIZATION NOTE (toolbox.zoom*.key)
+# Key shortcuts used to zomm in/out or reset the toolbox
+# Should match fullZoom*Cmd.commandkey values from browser.dtd
+toolbox.zoomIn.key=CmdOrCtrl+Plus
+toolbox.zoomIn2.key=CmdOrCtrl+=
+
+toolbox.zoomOut.key=CmdOrCtrl+-
+toolbox.zoomOut2.key=
+
+toolbox.zoomReset.key=CmdOrCtrl+0
+toolbox.zoomReset2.key=
+
+# LOCALIZATION NOTE (toolbox.reload*.key)
+# Key shortcuts used to reload the page
+toolbox.reload.key=CmdOrCtrl+R
+toolbox.reload2.key=F5
+
+# LOCALIZATION NOTE (toolbox.forceReload*.key)
+# Key shortcuts used to force reload of the page by bypassing caches
+toolbox.forceReload.key=CmdOrCtrl+Shift+R
+toolbox.forceReload2.key=CmdOrCtrl+F5
+
+# LOCALIZATION NOTE (toolbox.toggleHost.key)
+# Key shortcut used to move the toolbox in bottom or side of the browser window
+toolbox.toggleHost.key=CmdOrCtrl+Shift+D
+
+# LOCALIZATION NOTE (toolbox.closeToolbox.key) Key shortcut used to close the toolbox
+toolbox.closeToolbox.key=CmdOrCtrl+W
+
+# LOCALIZATION NOTE (toolbox.toggleToolbox.key) Key shortcut used to toggle the toolbox
+toolbox.toggleToolbox.key=CmdOrCtrl+Shift+I
+
+# LOCALIZATION NOTE (toolbox.toggleToolboxOSX.key) Key shortcut used to toggle the toolbox
+toolbox.toggleToolboxOSX.key=CmdOrCtrl+Alt+I
+
+# LOCALIZATION NOTE (toolbox.toggleToolboxF12.key) Key shortcut used to toggle the toolbox
+toolbox.toggleToolboxF12.key=F12
+
+# LOCALIZATION NOTE (toolbox.frames.tooltip): This is the label for
+# the iframes menu list that appears only when the document has some.
+# It allows you to switch the context of the whole toolbox.
+toolbox.frames.tooltip=Επιλέξτε ένα iframe ως το τρέχον έγγραφο-στόχος
+
+# LOCALIZATION NOTE (toolbox.frames.disabled.tooltip): This is the title
+# displayed as a tooltip of the iframes menu button, when disabled. The button
+# is normally hidden when no frames are available. But if the user is on the
+# DevTools Options panel, the button is always shown for discoverability.
+toolbox.frames.disabled.tooltip=Αυτό το κουμπί είναι διαθέσιμο μόνο σε σελίδες με αρκετά iframes
+
+# LOCALIZATION NOTE (toolbox.showFrames.key)
+# Key shortcut used to show frames menu when 'frames' button is focused
+toolbox.showFrames.key=Alt+Down
+
+# LOCALIZATION NOTE (toolbox.meatballMenu.button.tooltip): This is the tooltip
+# for the "..." button on the developer tools toolbox.
+toolbox.meatballMenu.button.tooltip=Προσαρμογή των εργαλείων προγραμματιστή και λήψη βοήθειας
+
+# LOCALIZATION NOTE (toolbox.meatballMenu.dock.*.label): These labels are shown
+# in the "..." menu in the toolbox and represent the different arrangements for
+# docking (or undocking) the developer tools toolbox.
+toolbox.meatballMenu.dock.bottom.label=Κλείδωμα στο κάτω μέρος
+toolbox.meatballMenu.dock.left.label=Κλείδωμα αριστερά
+toolbox.meatballMenu.dock.right.label=Κλείδωμα δεξιά
+toolbox.meatballMenu.dock.separateWindow.label=Ξεχωριστό παράθυρο
+
+# LOCALIZATION NOTE (toolbox.meatballMenu.{splitconsole,hideconsole}.label):
+# These are the labels in the "..." menu in the toolbox for toggling the split
+# console window.
+# The keyboard shortcut will be shown to the side of the label.
+toolbox.meatballMenu.splitconsole.label=Εμφάνιση διαιρούμενης κονσόλας
+toolbox.meatballMenu.hideconsole.label=Απόκρυψη διαιρούμενης κονσόλας
+
+# LOCALIZATION NOTE (toolbox.meatballMenu.noautohide.label): This is the label
+# in the "..." menu in the toolbox to force the popups/panels to stay visible on
+# blur.
+# This is only visible in the browser toolbox as it is meant for
+# addon developers and Firefox contributors.
+toolbox.meatballMenu.noautohide.label=Απενεργοποίηση αυτόματης απόκρυψης αναδυόμενων παραθύρων
+
+# LOCALIZATION NOTE (toolbox.meatballMenu.settings.label): This is the label for
+# the item in the "..." menu in the toolbox that brings up the Settings
+# (Options) panel.
+# The keyboard shortcut will be shown to the side of the label.
+toolbox.meatballMenu.settings.label=Ρυθμίσεις
+
+# LOCALIZATION NOTE (toolbox.meatballMenu.documentation.label): This is the
+# label for the Documentation menu item.
+toolbox.meatballMenu.documentation.label=Τεκμηρίωση…
+
+# LOCALIZATION NOTE (toolbox.meatballMenu.community.label): This is the label
+# for the Community menu item.
+toolbox.meatballMenu.community.label=Κοινότητα…
+
+# LOCALIZATION NOTE (toolbox.closebutton.tooltip): This is the tooltip for
+# the close button the developer tools toolbox.
+toolbox.closebutton.tooltip=Κλείσιμο εργαλείων προγραμματιστών
+
+# LOCALIZATION NOTE (toolbox.errorCountButton.tooltip): This is the tooltip for
+# the error count button displayed in the developer tools toolbox.
+toolbox.errorCountButton.tooltip=Εμφάνιση διαιρούμενης κονσόλας
+
+# LOCALIZATION NOTE (toolbox.errorCountButton.description): This is the description that
+# will be used for the error count button in the devTools settings panel.
+toolbox.errorCountButton.description=Εμφάνιση αριθμού σφαλμάτων σελίδας
+
+# LOCALIZATION NOTE (toolbox.sourceMapFailure): This is shown in the web console
+# when there is a failure to fetch or parse a source map.
+# The text of the error: %1$S
+# The URL that caused DevTools to try to fetch a source map: %2$S
+# The URL of the source map itself: %3$S
+toolbox.sourceMapFailure=Σφάλμα χάρτη πηγής: %1$S\nURL πόρου: %2$S\nURL χάρτη πηγής: %3$S
+
+# LOCALIZATION NOTE (toolbox.sourceMapSourceFailure): This is shown in
+# the web console when there is a failure to fetch or parse an
+# original source that was mentioned in a source map.
+# The text of the error: %1$S
+# The URL of the source: %2$S
+toolbox.sourceMapSourceFailure=Σφάλμα κατά τη λήψη μιας αρχικής πηγής: %1$S\nURL πηγής: %2$S
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.runtimeLabel): This is displayed as a toolbox
+# header in about:devtools-toolbox. about:devtools-toolbox is used for instance when
+# inspecting tabs in about:debugging.
+# e.g. Mozilla Fennec (65.0a1)
+# The name of runtime: %1$S
+# The version of runtime: %2$S
+toolbox.debugTargetInfo.runtimeLabel=%1$S (%2$S)
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.runtimeLabel.thisFirefox): this is displayed
+# as a toolbox header in about:devtools-toolbox, when inspecting the current Firefox runtime
+# (for instance, when inspecting one of its tabs in about:debugging)
+# e.g. This Firefox (65.0a1)
+# The version of runtime: %S
+toolbox.debugTargetInfo.runtimeLabel.thisFirefox=Αυτό το Firefox (%S)
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.tabTitleRemote):
+# Used as the tab title for about:devtools-toolbox when connected to a remote target.
+# The connection type (see toolbox.debugTargetInfo.connection.*): %1$S
+# The target type (see toolbox.debugTargetInfo.targetType.*): %2$S
+# The target name (retrieved from DevTools, eg the extension's name): %3$S
+toolbox.debugTargetInfo.tabTitleRemote=Εργαλειοθήκη (%1$S) - %2$S / %3$S
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.tabTitleLocal):
+# Used as the tab title for about:devtools-toolbox when connected to This Firefox.
+# The target type (see toolbox.debugTargetInfo.targetType.*): %1$S
+# The target name (retrieved from DevTools, eg the extension's name): %2$S
+toolbox.debugTargetInfo.tabTitleLocal=Εργαλειοθήκη - %1$S/%2$S
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.tabTitleError):
+# Used as the tab title for about:devtools-toolbox when it failed to connect to the
+# target.
+toolbox.debugTargetInfo.tabTitleError=Εργαλειοθήκη - προέκυψε σφάλμα
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.connection.*): This is displayed in the
+# toolbox header in about:devtools-toolbox, to indicate how the connection to the
+# runtime being inspected was made.
+toolbox.debugTargetInfo.connection.usb=USB
+toolbox.debugTargetInfo.connection.network=Δίκτυο
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.reload):
+# Used as the reload button tooltip
+toolbox.debugTargetInfo.reload=Ανανέωση
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.forward):
+# Used as the navigation's "forward" button tooltip
+toolbox.debugTargetInfo.forward=Μπροστά
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.back):
+# Used as the navigation's "back" button tooltip
+toolbox.debugTargetInfo.back=Πίσω
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.targetType.*): This is displayed as the
+# alt attribute for an icon in the toolbox header in about:devtools-toolbox,
+# to indicate what is the type of the debug target being inspected.
+toolbox.debugTargetInfo.targetType.extension=Επέκταση
+toolbox.debugTargetInfo.targetType.process=Διεργασία
+toolbox.debugTargetInfo.targetType.tab=Καρτέλα
+toolbox.debugTargetInfo.targetType.worker=Worker
+
+# LOCALIZATION NOTE (browserToolbox.statusMessage): This is the label
+# shown next to status details when the Browser Toolbox fails to connect or
+# appears to be taking a while to do so.
+browserToolbox.statusMessage=Κατάσταση σύνδεσης εργαλειοθήκης προγράμματος περιήγησης:
+
+# LOCALIZATION NOTE (toolbox.debugTargetErrorPage.title): This is the title
+# for the Error view shown by the toolbox when a connection to a debug target
+# could not be made
+toolbox.debugTargetErrorPage.title = Σφάλμα
+
+# LOCALIZATION NOTE (toolbox.debugTargetErrorPage.description): This is the
+# text that appears in the Error view and explains to the user that an error
+# has happened while trying to connect to a debug target
+toolbox.debugTargetErrorPage.description = Αδυναμία σύνδεσης με το στόχο αποσφαλμάτωσης. Δείτε τις λεπτομέρειες σφάλματος παρακάτω:
+
+# LOCALIZATION NOTE (options.deprecationNotice): This is the text that appears in the
+# settings panel for panel that will be removed in future releases.
+# This entire text is treated as a link to an MDN page.
+options.deprecationNotice=Παρωχημένο. Μάθετε περισσότερα…
+
+# LOCALIZATION NOTE (options.enableMultiProcessToolbox): This is the text that appears in the
+# settings panel for the checkbox that enables the Multiprocess Browser Toolbox.
+options.enableMultiProcessToolbox=Ενεργοποίηση εργαλειοθήκης πολλαπλών διεργασιών προγράμματος περιήγησης (απαιτείται επανεκκίνηση της εργαλειοθήκης προγράμματος περιήγησης)
diff --git a/l10n-el/devtools/client/tooltips.ftl b/l10n-el/devtools/client/tooltips.ftl
new file mode 100644
index 0000000000..b6cc449fa3
--- /dev/null
+++ b/l10n-el/devtools/client/tooltips.ftl
@@ -0,0 +1,69 @@
+# 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 for Developer Tools tooltips.
+
+learn-more = <span data-l10n-name="link">Μάθετε περισσότερα</span>
+
+## In the Rule View when a CSS property cannot be successfully applied we display
+## an icon. When this icon is hovered this message is displayed to explain why
+## the property is not applied.
+## Variables:
+## $property (string) - A CSS property name e.g. "color".
+## $display (string) - A CSS display value e.g. "inline-block".
+
+inactive-css-not-grid-or-flex-container = Το <strong>{ $property }</strong> δεν έχει επίδραση σε αυτό το στοιχείο, αφού δεν είναι περιέκτης flex ούτε περιέκτης πλέγματος.
+inactive-css-not-grid-or-flex-container-or-multicol-container = Το <strong>{ $property }</strong> δεν έχει επίδραση σε αυτό το στοιχείο, αφού δεν είναι περιέκτης flex, περιέκτης πλέγματος ή περιέκτης πολλαπλών στηλών.
+inactive-css-not-grid-or-flex-item = Το <strong>{ $property }</strong> δεν έχει επίδραση σε αυτό το στοιχείο, αφού δεν είναι στοιχείο flex ή πλέγματος.
+inactive-css-not-grid-item = Το <strong>{ $property }</strong> δεν έχει επίδραση σε αυτό το στοιχείο, αφού δεν είναι στοιχείο πλέγματος.
+inactive-css-not-grid-container = Το <strong>{ $property }</strong> δεν έχει επίδραση σε αυτό το στοιχείο, αφού δεν είναι περιέκτης πλέγματος.
+inactive-css-not-flex-item = Το <strong>{ $property }</strong> δεν έχει επίδραση σε αυτό το στοιχείο, αφού δεν είναι στοιχείο flex.
+inactive-css-not-flex-container = Το <strong>{ $property }</strong> δεν έχει επίδραση σε αυτό το στοιχείο, αφού δεν είναι περιέκτης flex.
+inactive-css-not-inline-or-tablecell = Η ιδιότητα <strong>{ $property }</strong> δεν έχει επίδραση σε αυτό το στοιχείο, αφού δεν είναι στοιχείο εντός της γραμμής ή κελιού πίνακα.
+inactive-css-property-because-of-display = Το <strong>{ $property }</strong> δεν έχει επίδραση σε αυτό το στοιχείο, αφού δεν έχει προβολή του <strong>{ $display }</strong>.
+inactive-css-not-display-block-on-floated = Η τιμή <strong>display</strong> έχει αλλάξει από τη μηχανή σε <strong>block</strong> επειδή το στοιχείο είναι <strong>floated</strong>.
+inactive-css-property-is-impossible-to-override-in-visited = Είναι αδύνατο να παρακάμψετε το <strong>{ $property }</strong> λόγω του περιορισμού <strong>:visited</strong>.
+inactive-css-position-property-on-unpositioned-box = Το <strong>{ $property }</strong> δεν έχει επίδραση σε αυτό το στοιχείο, αφού δεν είναι τοποθετημένο στοιχείο.
+inactive-text-overflow-when-no-overflow = Το <strong>{ $property }</strong> δεν έχει επίδραση σε αυτό το στοιχείο αφού το <strong>overflow:hidden</strong> δεν έχει οριστεί.
+inactive-outline-radius-when-outline-style-auto-or-none = Το <strong>{ $property }</strong> δεν έχει επίδραση σε αυτό το στοιχείο επειδή το <strong>outline-style</strong> του είναι <strong>auto</strong> ή <strong>none</strong>.
+inactive-css-not-for-internal-table-elements = Το <strong>{ $property }</strong> δεν επηρεάζει τα εσωτερικά στοιχεία πίνακα.
+inactive-css-not-for-internal-table-elements-except-table-cells = Το <strong>{ $property }</strong> δεν επηρεάζει τα εσωτερικά στοιχεία πίνακα, εκτός από τα κελιά πίνακα.
+
+## In the Rule View when a CSS property cannot be successfully applied we display
+## an icon. When this icon is hovered this message is displayed to explain how
+## the problem can be solved.
+
+inactive-css-not-grid-or-flex-container-fix = Δοκιμάστε να προσθέσετε το <strong>display:grid</strong> ή το <strong>display:flex</strong>. { learn-more }
+inactive-css-not-grid-or-flex-container-or-multicol-container-fix = Δοκιμάστε να προσθέσετε το <strong>display:grid</strong>, το <strong>display:flex</strong> ή το <strong>columns:2</strong>. { learn-more }
+inactive-css-not-grid-or-flex-item-fix-2 = Δοκιμάστε να προσθέσετε το <strong>display:grid</strong>, το <strong>display:flex</strong>, το <strong>display:inline-grid</strong>, ή το <strong>display:inline-flex</strong>. { learn-more }
+inactive-css-not-grid-item-fix-2 = Δοκιμάστε να προσθέσετε το <strong>display:grid</strong> ή το <strong>display:inline-grid</strong> στο γονικό στοιχείο. { learn-more }
+inactive-css-not-grid-container-fix = Δοκιμάστε να προσθέσετε το <strong>display:grid</strong> ή το <strong>display:inline-grid</strong>. { learn-more }
+inactive-css-not-flex-item-fix-2 = Δοκιμάστε να προσθέσετε το <strong>display:flex</strong> ή το <strong>display:inline-flex</strong> στο γονικό στοιχείο. { learn-more }
+inactive-css-not-flex-container-fix = Δοκιμάστε να προσθέσετε το <strong>display:flex</strong> ή το <strong>display:inline-flex</strong>. { learn-more }
+inactive-css-not-inline-or-tablecell-fix = Δοκιμάστε να προσθέσετε το <strong>display:inline</strong> ή το <strong>display:table-cell</strong>. { learn-more }
+inactive-css-non-replaced-inline-or-table-row-or-row-group-fix = Δοκιμάστε να προσθέσετε το <strong>display:inline-block</strong> ή το <strong>display:block</strong>. { learn-more }
+inactive-css-non-replaced-inline-or-table-column-or-column-group-fix = Δοκιμάστε να προσθέσετε το <strong>display:inline-block</strong>. { learn-more }
+inactive-css-not-display-block-on-floated-fix = Δοκιμάστε να αφαιρέσετε το <strong>float</strong> ή να προσθέσετε το <strong>display:block</strong>. { learn-more }
+inactive-css-position-property-on-unpositioned-box-fix = Δοκιμάστε να ορίσετε τη ιδιότητα <strong>position</strong> του σε κάτι άλλο εκτός από <strong>static</strong>. { learn-more }
+inactive-text-overflow-when-no-overflow-fix = Δοκιμάστε να προσθέσετε το <strong>overflow:hidden</strong>. { learn-more }
+inactive-css-not-for-internal-table-elements-fix = Δοκιμάστε να ορίσετε την ιδιότητα <strong>display</strong> του σε κάτι άλλο εκτός από <strong>table-cell</strong>, <strong>table-column</strong>, <strong>table-row</strong>, <strong>table-column-group</strong>, <strong>table-row-group</strong>, ή <strong>table-footer-group</strong>. { learn-more }
+inactive-css-not-for-internal-table-elements-except-table-cells-fix = Δοκιμάστε να ορίσετε την ιδιότητα <strong>display</strong> του σε κάτι άλλο εκτός από <strong>table-column</strong>, <strong>table-row</strong>, <strong>table-column-group</strong>, <strong>table-row-group</strong>, ή <strong>table-footer-group</strong>. { learn-more }
+inactive-outline-radius-when-outline-style-auto-or-none-fix = Δοκιμάστε να ορίσετε την ιδιότητα <strong>outline-style</strong> σε κάτι άλλο εκτός από <strong>auto</strong> ή <strong>none</strong>. { learn-more }
+
+## In the Rule View when a CSS property may have compatibility issues with other browsers
+## we display an icon. When this icon is hovered this message is displayed to explain why
+## the property is incompatible and the platforms it is incompatible on.
+## Variables:
+## $property (string) - A CSS declaration name e.g. "-moz-user-select" that can be a platform specific alias.
+## $rootProperty (string) - A raw CSS property name e.g. "user-select" that is not a platform specific alias.
+
+css-compatibility-default-message = Το <strong>{ $property }</strong> δεν υποστηρίζεται στα εξής προγράμματα περιήγησης:
+css-compatibility-deprecated-experimental-message = Το <strong>{ $property }</strong> ήταν πειραματική ιδιότητα, αλλά πλέον είναι παρωχημένο σύμφωνα με τα πρότυπα W3C. Δεν υποστηρίζεται στα εξής προγράμματα περιήγησης:
+css-compatibility-deprecated-experimental-supported-message = Το <strong>{ $property }</strong> ήταν πειραματική ιδιότητα, αλλά πλέον είναι παρωχημένο σύμφωνα με τα πρότυπα W3C.
+css-compatibility-deprecated-message = Το <strong>{ $property }</strong> είναι παρωχημένο σύμφωνα με τα πρότυπα W3C. Δεν υποστηρίζεται στα εξής προγράμματα περιήγησης:
+css-compatibility-deprecated-supported-message = Το <strong>{ $property }</strong> είναι παρωχημένο σύμφωνα με τα πρότυπα W3C.
+css-compatibility-experimental-message = Το <strong>{ $property }</strong> είναι μια πειραματική ιδιότητα. Δεν υποστηρίζεται στα εξής προγράμματα περιήγησης:
+css-compatibility-experimental-supported-message = Το <strong>{ $property }</strong> είναι μια πειραματική ιδιότητα.
+css-compatibility-learn-more-message = <span data-l10n-name="link">Μάθετε περισσότερα</span> σχετικά με το <strong>{ $rootProperty }</strong>
diff --git a/l10n-el/devtools/client/webconsole.properties b/l10n-el/devtools/client/webconsole.properties
new file mode 100644
index 0000000000..c42edfa0cd
--- /dev/null
+++ b/l10n-el/devtools/client/webconsole.properties
@@ -0,0 +1,561 @@
+# 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
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (browserConsole.title): shown as the
+# title when opening the browser console popup
+browserConsole.title=Κονσόλα προγρ. περιήγησης
+
+# LOCALIZATION NOTE (multiProcessBrowserConsole.title): Title of the Browser
+# Console window when the pref `devtools.browsertoolbox.fission` is true. This
+# Browser Console will log messages from all processes, not just the the parent
+# process.
+multiProcessBrowserConsole.title=Κονσόλα πολλαπλών διεργασιών προγράμματος περιήγησης
+
+# LOCALIZATION NOTE (timestampFormat): %1$02S = hours (24-hour clock),
+# %2$02S = minutes, %3$02S = seconds, %4$03S = milliseconds.
+timestampFormat=%02S:%02S:%02S.%03S
+
+ConsoleAPIDisabled=Το API καταγραφής της κονσόλας ιστού (console.log, console.info, console.warn, console.error) έχει απενεργοποιηθεί από ένα σενάριο σε αυτή τη σελίδα.
+
+# LOCALIZATION NOTE (webConsoleXhrIndicator): the indicator displayed before
+# a URL in the Web Console that was requested using an XMLHttpRequest.
+webConsoleXhrIndicator=XHR
+
+# LOCALIZATION NOTE (webConsoleMoreInfoLabel): the more info tag displayed
+# after security related web console messages.
+webConsoleMoreInfoLabel=Μάθετε περισσότερα
+
+# LOCALIZATION NOTE (stacktrace.anonymousFunction): this string is used to
+# display JavaScript functions that have no given name - they are said to be
+# anonymous. Test console.trace() in the webconsole.
+stacktrace.anonymousFunction=<ανώνυμο>
+
+# LOCALIZATION NOTE (stacktrace.asyncStack): this string is used to
+# indicate that a given stack frame has an async parent.
+# %S is the "Async Cause" of the frame.
+stacktrace.asyncStack=(Ασύγχρονο: %S)
+
+# LOCALIZATION NOTE (timeLog): this string is used to display the result of
+# the console.timeLog() call. Parameters: %1$S is the name of the timer, %2$S
+# is the number of milliseconds.
+timeLog=%1$S: %2$Sms
+
+# LOCALIZATION NOTE (console.timeEnd): this string is used to display the result of
+# the console.timeEnd() call. Parameters: %1$S is the name of the timer, %2$S
+# is the number of milliseconds.
+console.timeEnd=%1$S: %2$Sms - το χρονόμετρο έληξε
+
+# LOCALIZATION NOTE (consoleCleared): this string is displayed when receiving a
+# call to console.clear() to let the user know the previous messages of the
+# console have been removed programmatically.
+consoleCleared=Η κονσόλα εκκαθαρίστηκε.
+
+# LOCALIZATION NOTE (noCounterLabel): this string is used to display
+# count-messages with no label provided.
+noCounterLabel=<καμία ετικέτα>
+
+# LOCALIZATION NOTE (counterDoesntExist): this string is displayed when
+# console.countReset() is called with a counter that doesn't exist.
+counterDoesntExist=Ο μετρητής “%S” δεν υπάρχει.
+
+# LOCALIZATION NOTE (noGroupLabel): this string is used to display
+# console.group messages with no label provided.
+noGroupLabel=<καμία ετικέτα ομάδας>
+
+maxTimersExceeded=Ξεπεράστηκε ο μέγιστος επιτρεπτός αριθμός χρονοδιακοπτών σε αυτή τη σελίδα.
+timerAlreadyExists=Το χρονόμετρο “%S” υπάρχει ήδη.
+timerDoesntExist=Το χρονόμετρο “%S” δεν υπάρχει.
+timerJSError=Αποτυχία επεξεργασίας ονόματος χρονομέτρου.
+
+# LOCALIZATION NOTE (connectionTimeout): message displayed when the Remote Web
+# Console fails to connect to the server due to a timeout.
+connectionTimeout=Λήξη χρονικού ορίου σύνδεσης. Ελέγξτε την Κονσόλα Σφαλμάτων και στις δύο συσκευές για πιθανά μηνύματα σφαλμάτων. Ανοίξτε ξανά την Κονσόλα Ιστού για εκ νέου προσπάθεια.
+
+# LOCALIZATION NOTE (propertiesFilterPlaceholder): this is the text that
+# appears in the filter text box for the properties view container.
+propertiesFilterPlaceholder=Ιδιότητες φίλτρου
+
+# LOCALIZATION NOTE (messageRepeats.tooltip2): the tooltip text that is displayed
+# when you hover the red bubble that shows how many times a message is repeated
+# in the web console output.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of message repeats
+# example: 3 repeats
+messageRepeats.tooltip2=#1 επανάληψη;#1 επαναλήψεις
+
+# LOCALIZATION NOTE (openNodeInInspector): the text that is displayed in a
+# tooltip when hovering over the inspector icon next to a DOM Node in the console
+# output
+openNodeInInspector=Κάντε κλικ για επιλογή του κόμβου στην επιθεώρηση
+
+# LOCALIZATION NOTE (cdFunctionInvalidArgument): the text that is displayed when
+# cd() is invoked with an invalid argument.
+cdFunctionInvalidArgument=Αδυναμία cd() στο καθορισμένο παράθυρο. Μη έγκυρο επιχείρημα.
+
+# LOCALIZATION NOTE (selfxss.msg): the text that is displayed when
+# a new user of the developer tools pastes code into the console
+# %1 is the text of selfxss.okstring
+selfxss.msg=Προειδοποίηση απάτης: Να προσέχετε με την επικόλληση πραγμάτων που δεν καταλαβαίνετε. Αυτό μπορεί να επιτρέψει σε επιτιθέμενους να κλέψουν την ταυτότητά σας ή να καταλάβουν τον υπολογιστή σας. Παρακαλώ πληκτρολογήστε ‘%S’ παρακάτω (δεν χρειάζεται να πατήσετε enter) για να επιτρέψετε την επικόλληση.
+
+# LOCALIZATION NOTE (selfxss.okstring): the string to be typed
+# in by a new user of the developer tools when they receive the sefxss.msg prompt.
+# Please avoid using non-keyboard characters here
+selfxss.okstring=να επιτρέπεται επικόλληση
+
+# LOCALIZATION NOTE (messageToggleDetails): the text that is displayed when
+# you hover the arrow for expanding/collapsing the message details. For
+# console.error() and other messages we show the stacktrace.
+messageToggleDetails=Εμφάνιση/απόκρυψη λεπτομερειών μηνύματος.
+
+# LOCALIZATION NOTE (groupToggle): the text that is displayed when
+# you hover the arrow for expanding/collapsing the messages of a group.
+groupToggle=Εμφάνιση/απόκρυψη ομάδας.
+
+# LOCALIZATION NOTE (table.index, table.iterationIndex, table.key, table.value):
+# the column header displayed in the console table widget.
+table.index=(ευρετήριο)
+table.iterationIndex=(ευρετήριο επανάληψης)
+table.key=Κλειδί
+table.value=Τιμές
+
+# LOCALIZATION NOTE (level.error, level.warn, level.info, level.log, level.debug):
+# tooltip for icons next to console output
+level.error=Σφάλμα
+level.warn=Προειδοποίηση
+level.info=Πληροφορίες
+level.log=Αρχείο καταγραφής
+level.debug=Εντοπισμός σφαλμάτων
+
+# LOCALIZATION NOTE (logpoint.title)
+# Tooltip shown for logpoints sent from the debugger
+logpoint.title=Σημεία σύνδεσης από την αποσφαλμάτωση
+
+# LOCALIZATION NOTE (blockedReason.title)
+# Tooltip shown for blocked network events sent from the network panel
+blockedrequest.label=Αποκλείστηκε από το DevTools
+
+# LOCALIZATION NOTE (webconsole.find.key)
+# Key shortcut used to focus the search box on upper right of the console
+webconsole.find.key=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (webconsole.close.key)
+# Key shortcut used to close the Browser console (doesn't work in regular web console)
+webconsole.close.key=CmdOrCtrl+W
+
+# LOCALIZATION NOTE (webconsole.clear.key*)
+# Key shortcut used to clear the console output
+webconsole.clear.key=Ctrl+Shift+L
+webconsole.clear.keyOSX=Ctrl+L
+webconsole.clear.alternativeKeyOSX=Cmd+K
+
+# LOCALIZATION NOTE (webconsole.menu.copyURL.label)
+# Label used for a context-menu item displayed for network message logs. Clicking on it
+# copies the URL displayed in the message to the clipboard.
+webconsole.menu.copyURL.label=Αντιγραφή τοποθεσίας συνδέσμου
+webconsole.menu.copyURL.accesskey=ο
+
+# LOCALIZATION NOTE (webconsole.menu.openURL.label)
+# Label used for a context-menu item displayed for network message logs. Clicking on it
+# opens the URL displayed in a new browser tab.
+webconsole.menu.openURL.label=Άνοιγμα URL σε νέα καρτέλα
+webconsole.menu.openURL.accesskey=Κ
+
+# LOCALIZATION NOTE (webconsole.menu.openInNetworkPanel.label)
+# Label used for a context-menu item displayed for network message logs. Clicking on it
+# opens the network message in the Network panel
+webconsole.menu.openInNetworkPanel.label=Άνοιγμα στον πίνακα δικτύου
+webconsole.menu.openInNetworkPanel.accesskey=Δ
+
+# LOCALIZATION NOTE (webconsole.menu.resendNetworkRequest.label)
+# Label used for a context-menu item displayed for network message logs. Clicking on it
+# resends the network request
+webconsole.menu.resendNetworkRequest.label=Εκ νέου αποστολή αιτήματος
+webconsole.menu.resendNetworkRequest.accesskey=ν
+
+# LOCALIZATION NOTE (webconsole.menu.openNodeInInspector.label)
+# Label used for a context-menu item displayed for DOM Node logs. Clicking on it will
+# reveal that specific DOM Node in the Inspector.
+webconsole.menu.openNodeInInspector.label=Αποκάλυψη στην επιθεώρηση
+webconsole.menu.openNodeInInspector.accesskey=Α
+
+# LOCALIZATION NOTE (webconsole.menu.storeAsGlobalVar.label)
+# Label used for a context-menu item displayed for object/variable logs. Clicking on it
+# creates a new global variable pointing to the logged variable.
+webconsole.menu.storeAsGlobalVar.label=Αποθήκευση ως καθολική μεταβλητή
+webconsole.menu.storeAsGlobalVar.accesskey=Α
+
+# LOCALIZATION NOTE (webconsole.menu.copyMessage.label)
+# Label used for a context-menu item displayed for any log. Clicking on it will copy the
+# content of the log (or the user selection, if any).
+webconsole.menu.copyMessage.label=Αντιγραφή μηνύματος
+webconsole.menu.copyMessage.accesskey=Α
+
+# LOCALIZATION NOTE (webconsole.menu.copyObject.label)
+# Label used for a context-menu item displayed for object/variable log. Clicking on it
+# will copy the object/variable.
+webconsole.menu.copyObject.label=Αντιγραφή αντικειμένου
+webconsole.menu.copyObject.accesskey=α
+
+# LOCALIZATION NOTE (webconsole.menu.selectAll.label)
+# Label used for a context-menu item that will select all the content of the webconsole
+# output.
+webconsole.menu.selectAll.label=Επιλογή όλων
+webconsole.menu.selectAll.accesskey=Ε
+
+# LOCALIZATION NOTE (webconsole.menu.openInSidebar.label)
+# Label used for a context-menu item displayed for object/variable logs. Clicking on it
+# opens the webconsole sidebar for the logged variable.
+webconsole.menu.openInSidebar.label1=Επιθεώρηση αντικειμένου στην πλευρική γραμμή
+webconsole.menu.openInSidebar.accesskey=Ε
+
+# LOCALIZATION NOTE (webconsole.menu.exportSubmenu.label)
+# Label used for a context-menu item displayed on the output. Clicking on it
+# opens a submenu where the user can select how to export messages.
+webconsole.menu.exportSubmenu.label=Εξαγωγή ορατών μηνυμάτων σε
+
+# LOCALIZATION NOTE (webconsole.menu.exportClipboard.label)
+# Label used for a context-menu item displayed on the output. Clicking on it
+# copies the entire output of the console to the clipboard.
+webconsole.menu.exportSubmenu.exportCliboard.label=Πρόχειρο
+
+# LOCALIZATION NOTE (webconsole.menu.exportFile.label)
+# Label used for a context-menu item displayed on the output. Clicking on it
+# opens a file picker to allow the user save a file containing
+# the output of the console.
+webconsole.menu.exportSubmenu.exportFile.label=Αρχείο
+
+# LOCALIZATION NOTE (webconsole.clearButton.tooltip)
+# Label used for the tooltip on the clear logs button in the console top toolbar bar.
+# Clicking on it will clear the content of the console.
+webconsole.clearButton.tooltip=Εκκαθάριση εξόδου κονσόλας ιστού
+
+# LOCALIZATION NOTE (webconsole.toggleFilterButton.tooltip)
+# Label used for the tooltip on the toggle filter bar button in the console top
+# toolbar bar. Clicking on it will toggle the visibility of an additional bar which
+# contains filter buttons.
+webconsole.toggleFilterButton.tooltip=(Απ)ενεργοποίηση γραμμής φίλτρου
+
+# LOCALIZATION NOTE (webconsole.filterInput.placeholder)
+# Label used for for the placeholder on the filter input, in the console top toolbar.
+webconsole.filterInput.placeholder=Φιλτράρισμα εξόδου
+
+# LOCALIZATION NOTE (webconsole.errorsFilterButton.label)
+# Label used as the text of the "Errors" button in the additional filter toolbar.
+# It shows or hides error messages, either inserted in the page using
+# console.error() or as a result of a javascript error..
+webconsole.errorsFilterButton.label=Σφάλματα
+
+# LOCALIZATION NOTE (webconsole.warningsFilterButton.label)
+# Label used as the text of the "Warnings" button in the additional filter toolbar.
+# It shows or hides warning messages, inserted in the page using console.warn().
+webconsole.warningsFilterButton.label=Προειδοποιήσεις
+
+# LOCALIZATION NOTE (webconsole.logsFilterButton.label)
+# Label used as the text of the "Logs" button in the additional filter toolbar.
+# It shows or hides log messages, inserted in the page using console.log().
+webconsole.logsFilterButton.label=Καταγραφές
+
+# LOCALIZATION NOTE (webconsole.infoFilterButton.label)
+# Label used as the text of the "Info" button in the additional filter toolbar.
+# It shows or hides info messages, inserted in the page using console.info().
+webconsole.infoFilterButton.label=Πληροφορίες
+
+# LOCALIZATION NOTE (webconsole.debugFilterButton.label)
+# Label used as the text of the "Debug" button in the additional filter toolbar.
+# It shows or hides debug messages, inserted in the page using console.debug().
+webconsole.debugFilterButton.label=Εντοπισμός σφαλμάτων
+
+# LOCALIZATION NOTE (webconsole.cssFilterButton.label)
+# Label used as the text of the "CSS" button in the additional filter toolbar.
+# It shows or hides CSS warning messages, inserted in the page by the browser
+# when there are CSS errors in the page.
+webconsole.cssFilterButton.label=CSS
+
+# LOCALIZATION NOTE (webconsole.cssFilterButton.inactive.tooltip)
+# Label used as the tooltip of the "CSS" button in the additional filter toolbar, when the
+# filter is inactive (=unchecked).
+webconsole.cssFilterButton.inactive.tooltip=Τα φύλλα στυλ θα επαναπροσδιοριστούν για τον έλεγχο σφαλμάτων. Ανανεώστε τη σελίδα για να δείτε επίσης σφάλματα από τα φύλλα στυλ που τροποποιήθηκαν από τη Javascript.
+
+# LOCALIZATION NOTE (webconsole.xhrFilterButton.label)
+# Label used as the text of the "XHR" button in the additional filter toolbar.
+# It shows or hides messages displayed when the page makes an XMLHttpRequest or
+# a fetch call.
+webconsole.xhrFilterButton.label=XHR
+
+# LOCALIZATION NOTE (webconsole.requestsFilterButton.label)
+# Label used as the text of the "Requests" button in the additional filter toolbar.
+# It shows or hides messages displayed when the page makes a network call, for example
+# when an image or a scripts is requested.
+webconsole.requestsFilterButton.label=Αιτήματα
+
+# LOCALIZATION NOTE (webconsole.filteredMessagesByText.label)
+# Text on the filter input displayed when some console messages are hidden because the
+# user has filled in the input.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# example: 345 hidden.
+webconsole.filteredMessagesByText.label=#1 κρυφό;#1 κρυφά
+
+# LOCALIZATION NOTE (webconsole.filteredMessagesByText.tooltip)
+# Tooltip on the filter input "hidden" text, displayed when some console messages are
+# hidden because the user has filled in the input.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# example: 345 items hidden by text filter.
+webconsole.filteredMessagesByText.tooltip=#1 κρυμμένο στοιχείο λόγω φίλτρου κειμένου;#1 κρυμμένα στοιχεία λόγω φίλτρου κειμένου
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.menuButton.tooltip)
+# Tooltip for the filter bar preferences menu. This menu will display multiple perefences for the
+# filter bar, such as enabling the compact toolbar mode, enable the timestamps, persist logs, etc
+webconsole.console.settings.menu.button.tooltip=Ρυθμίσεις κονσόλας
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.compactToolbar.label)
+# Label for the `Compact Toolbar` preference option. This will turn the message filters buttons
+# into a Menu Button, making the filter bar more compact.
+webconsole.console.settings.menu.item.compactToolbar.label=Μικρή γραμμή εργαλείων
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.timestamps.label)
+# Label for enabling the timestamps in the Web Console.
+webconsole.console.settings.menu.item.timestamps.label=Εμφάνιση χρονικών σημάνσεων
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.timestamps.tooltip)
+webconsole.console.settings.menu.item.timestamps.tooltip=Αν ενεργοποιήσετε αυτή την επιλογή, οι εντολές και η έξοδος στην κονσόλα ιστού θα εμφανίσουν μια χρονική σήμανση
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.warningGroups.label)
+# Label for grouping the similar messages in the Web Console
+webconsole.console.settings.menu.item.warningGroups.label=Ομαδοποίηση παρόμοιων μηνυμάτων
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.warningGroups.tooltip)
+webconsole.console.settings.menu.item.warningGroups.tooltip=Όταν είναι ενεργό, ομαδοποιούνται τα παρόμοια μηνύματα
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.autocomplete.label)
+# Label for enabling autocomplete for input in the Web Console
+webconsole.console.settings.menu.item.autocomplete.label=Ενεργοποίηση αυτόματης συμπλήρωσης
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.autocomplete.tooltip)
+webconsole.console.settings.menu.item.autocomplete.tooltip=Αν ενεργοποιήσετε αυτή την επιλογή, η είσοδος θα εμφανίζει προτάσεις καθώς πληκτρολογείτε
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.enablePersistentLogs.label)
+webconsole.console.settings.menu.item.enablePersistentLogs.label=Επίμονα αρχεία καταγραφής
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.enablePersistentLogs.tooltip)
+webconsole.console.settings.menu.item.enablePersistentLogs.tooltip=Αν ενεργοποιήσετε αυτή την επιλογή, η έξοδος δεν θα εκκαθαρίζεται κάθε φορά που πλοηγείστε σε μια νέα σελίδα
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.instantEvaluation.label)
+webconsole.console.settings.menu.item.instantEvaluation.label=Άμεση αξιολόγηση
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.instantEvaluation.tooltip)
+webconsole.console.settings.menu.item.instantEvaluation.tooltip=Αν ενεργοποιήσετε αυτή την επιλογή, η είσοδος θα αξιολογείται άμεσα καθώς πληκτρολογείτε
+
+# LOCALIZATION NOTE (browserconsole.contentMessagesCheckbox.label)
+# Label used in the browser console filter bar. This label is used for a checkbox that
+# allows the user to show or hide console messages from the content process in the browser
+# console.
+browserconsole.contentMessagesCheckbox.label=Εμφάνιση μηνυμάτων περιεχομένου
+# LOCALIZATION NOTE (browserconsole.contentMessagesCheckbox.tooltip)
+# Tooltip for the "Show content messages" checkbox in the Browser Console filter bar.
+browserconsole.contentMessagesCheckbox.tooltip=Ενεργοποιήστε το για να εμφανίζονται μηνύματα από τη διεργασία περιεχομένου στην έξοδο
+
+# LOCALIZATION NOTE (webconsole.navigated): this string is used in the console when the
+# current inspected page is navigated to a new location.
+# Parameters: %S is the new URL.
+webconsole.navigated=Έγινε πλοήγηση σε %S
+
+# LOCALIZATION NOTE (webconsole.closeSplitConsoleButton.tooltip): This is the tooltip for
+# the close button of the split console.
+webconsole.closeSplitConsoleButton.tooltip=Κλείσιμο χωριστής κονσόλας (Esc)
+
+# LOCALIZATION NOTE (webconsole.closeSidebarButton.tooltip): This is the tooltip for
+# the close button of the sidebar.
+webconsole.closeSidebarButton.tooltip=Κλείσιμο πλευρικής γραμμής
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.input.placeHolder):
+# This string is displayed in the placeholder of the reverse search input in the console.
+webconsole.reverseSearch.input.placeHolder=Ιστορικό αναζήτησης
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.result.closeButton.tooltip):
+# This string is displayed in the tooltip of the close button in the reverse search toolbar.
+# A keyboard shortcut will be shown inside the latter pair of brackets.
+webconsole.reverseSearch.closeButton.tooltip=Κλείσιμο (%S)
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.results):
+# This string is displayed in the reverse search UI when there are at least one result
+# to the search.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 index of current search result displayed.
+# #2 total number of search results.
+webconsole.reverseSearch.results=1 αποτέλεσμα;#1 από #2 αποτελέσματα
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.noResult):
+# This string is displayed in the reverse search UI when there is no results to the search.
+webconsole.reverseSearch.noResult=Κανένα αποτέλεσμα
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.result.previousButton.tooltip):
+# This string is displayed in the tooltip of the "previous result" button in the reverse search toolbar.
+# A keyboard shortcut will be shown inside the latter pair of brackets.
+webconsole.reverseSearch.result.previousButton.tooltip=Προηγούμενο αποτέλεσμα (%S)
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.result.nextButton.tooltip):
+# This string is displayed in the tooltip of the "next result" button in the reverse search toolbar.
+# A keyboard shortcut will be shown inside the latter pair of brackets.
+webconsole.reverseSearch.result.nextButton.tooltip=Επόμενο αποτέλεσμα (%S)
+
+# LOCALIZATION NOTE (webconsole.confirmDialog.getter.label)
+# Label used for the "invoke getter" confirm dialog that appears in the console when
+# a user tries to autocomplete a property with a getter.
+# Example: given the following object `x = {get y() {}}`, when the user types `x.y.`, it
+# would return "Invoke getter y to retrieve the property list?".
+# Parameters: %S is the name of the getter.
+webconsole.confirmDialog.getter.label=Επίκληση στοιχείου πρόσβασης %S για ανάκτηση της λίστας ιδιοτήτων;
+
+# LOCALIZATION NOTE (webconsole.confirmDialog.getter.invokeButtonLabelWithShortcut)
+# Label used for the confirm button in the "invoke getter" dialog that appears in the
+# console when a user tries to autocomplete a property with a getter.
+# A keyboard shortcut will be shown inside the latter pair of brackets.
+webconsole.confirmDialog.getter.invokeButtonLabelWithShortcut=Επίκληση (%S)
+
+# LOCALIZATION NOTE (webconsole.confirmDialog.getter.closeButton.tooltip)
+# Label used as the tooltip for the close button in the "invoke getter" dialog that
+# appears in the console when a user tries to autocomplete a property with a getter.
+# A keyboard shortcut will be shown inside the latter pair of brackets.
+webconsole.confirmDialog.getter.closeButton.tooltip=Κλείσιμο (%S)
+
+# LOCALIZATION NOTE (webconsole.cssWarningElements.label)
+# Label for the list of HTML elements matching the selector associated
+# with the CSS warning. Parameters: %S is the CSS selector.
+webconsole.cssWarningElements.label=Στοιχεία που ταιριάζουν με τον επιλογέα: %S
+
+# LOCALIZATION NOTE (webconsole.message.componentDidCatch.label)
+# Label displayed when the webconsole couldn't handle a given packet.
+# Parameters: %S is the URL to file a bug about the error.
+webconsole.message.componentDidCatch.label=[DEVTOOLS ERROR] Λυπούμαστε, αλλά δεν μπορέσαμε να απεικονίσουμε το μήνυμα. Αυτό δεν έπρεπε να έχει συμβεί - παρακαλούμε αναφέρετε ένα σφάλμα στο %S με τα μεταδεδομένα του μηνύματος στην περιγραφή.
+
+# LOCALIZATION NOTE (webconsole.message.commands.blockedURL)
+# Label displayed when the :block <url> command is successful
+# Parameters: %S is the URL filter
+webconsole.message.commands.blockedURL=Πλέον αποκλείονται τα αιτήματα προς URL που περιέχουν “%S”
+
+# LOCALIZATION NOTE (webconsole.message.commands.unblockedURL)
+# Label displayed when the :unblock <url> command is successful
+# Parameters: %S is the URL filter
+webconsole.message.commands.unblockedURL=Αφαιρέθηκε το φίλτρο αποκλεισμού “%S”
+
+# LOCALIZATION NOTE (webconsole.messages.commands.blockArgMissing)
+# Message displayed when no filter is passed to block/unblock command
+webconsole.messages.commands.blockArgMissing=Δεν ορίστηκε φίλτρο
+
+# LOCALIZATION NOTE (webconsole.message.componentDidCatch.copyButton.label)
+# Label displayed on the button next to the message we display when the webconsole
+# couldn't handle a given packet (See webconsole.message.componentDidCatch.label).
+webconsole.message.componentDidCatch.copyButton.label=Αντιγραφή μεταδεδομένων μηνύματος στο πρόχειρο
+
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.executeButton.label)
+# Label used for the text of the execute button, in the editor toolbar, which is
+# displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+webconsole.editor.toolbar.executeButton.label=Εκτέλεση
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.reverseSearchButton.openReverseSearch.tooltip)
+# Label used for the tooltip on the reverse search button for opening the Reverse Search UI.
+# The Reverse Search is a feature that mimics the bash-like reverse search of
+# command history in WebConsole, searching commands from the last item backwards.
+# Parameters: %S is the keyboard shortcut.
+webconsole.editor.toolbar.reverseSearchButton.openReverseSearch.tooltip=Άνοιγμα αντίστροφης αναζήτησης ιστορικού (%S)
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.reverseSearchButton.closeReverseSearch.tooltip)
+# Label used for the tooltip on the reverse search button for closing the Reverse Search UI.
+# The Reverse Search is a feature that mimics the bash-like reverse search of
+# command history in WebConsole, searching commands from the last item backwards.
+# Parameters: %S is the keyboard shortcut.
+webconsole.editor.toolbar.reverseSearchButton.closeReverseSearch.tooltip=Κλείσιμο αντίστροφης αναζήτησης ιστορικού (%S)
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.executeButton.tooltip)
+# Label used for the tooltip on the execute button, in the editor toolbar, which is
+# displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+# Parameters: %S is the keyboard shortcut.
+webconsole.editor.toolbar.executeButton.tooltip=Εκτέλεση έκφρασης (%S). Αυτό δεν θα εκκαθαρίσει την είσοδο.
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.prettyPrintButton.tooltip)
+# Label used for the tooltip on the prettyPrint button, in the editor toolbar, which is
+# displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+webconsole.editor.toolbar.prettyPrintButton.tooltip=Όμορφη έκφραση εκτύπωσης
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.executeButton.tooltip)
+# Label used for the tooltip on the history previous expression, in the editor toolbar,
+# which is displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+webconsole.editor.toolbar.history.prevExpressionButton.tooltip=Προηγούμενη έκφραση
+
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.executeButton.tooltip)
+# Label used for the tooltip on the history next expression, in the editor toolbar,
+# which is displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+webconsole.editor.toolbar.history.nextExpressionButton.tooltip=Επόμενη έκφραση
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.closeButton.tooltip2)
+# Label used for the tooltip on the close button, in the editor toolbar, which is
+# displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+# Parameters: %S is the keyboard shortcut.
+webconsole.editor.toolbar.closeButton.tooltip2=Εναλλαγή στη λειτουργία εντός γραμμής (%S)
+
+# LOCALIZATION NOTE (webconsole.input.openEditorButton.tooltip2)
+# Label used for the tooltip on the open editor button, in console input, which is
+# displayed when the console is in regular mode.
+# Parameters: %S is the keyboard shortcut.
+webconsole.input.openEditorButton.tooltip2=Εναλλαγή στη λειτουργία επεξεργατή πολλαπλών σειρών (%S)
+
+# LOCALIZATION NOTE (webconsole.warningGroup.messageCount.tooltip): the tooltip text
+# displayed when you hover a warning group badge (i.e. repeated warning messages for a
+# given category, for example Content Blocked messages) in the web console output.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of message in the group.
+# example: 3 messages
+webconsole.warningGroup.messageCount.tooltip=#1 μήνυμα;#1 μηνύματα
+
+# LOCALIZATION NOTE (webconsole.input.editor.onboarding.label): the text that is displayed
+# when displaying the multiline-input mode for the first time, until the user dismiss the
+# text.
+# Parameters: %1$S is Enter key, %2$S is the shorcut to evaluate the expression (
+# Ctrl+Enter or Cmd+Enter on OSX).
+webconsole.input.editor.onboarding.label=Επαναλάβετε τον κώδικά σας ταχύτερα με τη νέα λειτουργία επεξεργαστή πολλαπλών σειρών. Χρησιμοποιήστε το %1$S για να προσθέσετε νέες σειρές και το %2$S για εκτέλεση.
+
+# LOCALIZATION NOTE (webconsole.input.editor.onboarding.dismiss.label): the text that is
+# displayed in the multiline-input mode onboarding UI to dismiss it.
+webconsole.input.editor.onboarding.dismiss.label=Το 'πιασα!
+
+# LOCALIZATION NOTE (webconsole.enterKey): The text that will be used to represent the
+# Enter key in the editor onboarding UI, as well as on the Editor toolbar "Run" button
+# tooltip.
+webconsole.enterKey=Enter
+
+# LOCALIZATION NOTE (webconsole.input.openJavaScriptFile): This is a label
+# used for opening a file in the console input (Ctrl+O or Cmd+O on OSX while
+# being focused on the input).
+webconsole.input.openJavaScriptFile=Άνοιγμα αρχείου JavaScript
+
+# LOCALIZATION NOTE (webconsole.input.openJavaScriptFileFilter):
+# This string is displayed as a filter when opening a file in the console input.
+webconsole.input.openJavaScriptFileFilter=Αρχεία JavaScript
+
+# LOCALIZATION NOTE (webconsole.input.selector.top): This is the term used
+# to describe the primary thread of execution in the page
+webconsole.input.selector.top=Κορυφή
+
+# LOCALIZATION NOTE (webconsole.input.selector.tooltip): This is the tooltip
+# shown when users select a thread that they want to evaluate an
+# expression for.
+webconsole.input.selector.tooltip=Επιλογή πλαισίου αξιολόγησης
+
+# LOCALIZATION NOTE (webconsole.group.cookieSameSiteLaxByDefaultEnabled): do not translate 'sameSite'.
+webconsole.group.cookieSameSiteLaxByDefaultEnabled=Ορισμένα cookies καταχράζονται την ιδιότητα “sameSite“, ώστε να μην λειτουργεί όπως πρέπει
+# LOCALIZATION NOTE (webconsole.group.cookieSameSiteLaxByDefaultDisabled): do not translate 'sameSite'.
+webconsole.group.cookieSameSiteLaxByDefaultDisabled=Ορισμένα cookies καταχράζονται την προτεινόμενη ιδιότητα “sameSite“
+
+# LOCALIZATION NOTE (webconsole.group.cookieSameSiteLaxByDefaultEnabled2): do not translate 'SameSite'.
+webconsole.group.cookieSameSiteLaxByDefaultEnabled2=Ορισμένα cookies καταχρώνται την ιδιότητα “SameSite“, επομένως δεν θα λειτουργεί όπως πρέπει
+# LOCALIZATION NOTE (webconsole.group.cookieSameSiteLaxByDefaultDisabled2): do not translate 'SameSite'.
+webconsole.group.cookieSameSiteLaxByDefaultDisabled2=Ορισμένα cookies καταχρώνται την προτεινόμενη ιδιότητα “SameSite“
diff --git a/l10n-el/devtools/shared/accessibility.properties b/l10n-el/devtools/shared/accessibility.properties
new file mode 100644
index 0000000000..f9e07e381b
--- /dev/null
+++ b/l10n-el/devtools/shared/accessibility.properties
@@ -0,0 +1,142 @@
+# 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 (accessibility.contrast.ratio): A title text for the color contrast
+# ratio description, used by the accessibility highlighter to display the value. %S in the
+# content will be replaced by the contrast ratio numerical value.
+accessibility.contrast.ratio=Αντίθεση: %S
+
+# LOCALIZATION NOTE (accessibility.contrast.ratio.error): A title text for the color
+# contrast ratio, used when the tool is unable to calculate the contrast ratio value.
+accessibility.contrast.ratio.error=Αδυναμία υπολογισμού
+
+# LOCALIZATION NOTE (accessibility.contrast.ratio.label): A title text for the color
+# contrast ratio description, used together with the actual values.
+accessibility.contrast.ratio.label=Αντίθεση:
+
+# LOCALIZATION NOTE (accessibility.contrast.ratio.label.large): A title text for the color
+# contrast ratio description that also specifies that the color contrast criteria used is
+# if for large text.
+accessibility.contrast.ratio.label.large=Αντίθεση (μεγάλο κείμενο):
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.area): A title text that
+# describes that currently selected accessible object for an <area> element must have
+# its name provided via the alt attribute.
+accessibility.text.label.issue.area = Χρησιμοποιήστε την ιδιότητα “alt” για την επισήμανση των στοιχείων “area” που έχουν την ιδιότητα “href”.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.dialog): A title text that
+# describes that currently selected accessible object for a dialog should have a name
+# provided.
+accessibility.text.label.issue.dialog = Οι διάλογοι πρέπει να φέρουν ετικέτα.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.document.title): A title text that
+# describes that currently selected accessible object for a document must have a name
+# provided via title.
+accessibility.text.label.issue.document.title = Τα έγγραφα πρέπει να έχουν τίτλο.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.embed): A title text that
+# describes that currently selected accessible object for an <embed> must have a name
+# provided.
+accessibility.text.label.issue.embed = Το ενσωματωμένο περιεχόμενο πρέπει να φέρει ετικέτα.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.figure): A title text that
+# describes that currently selected accessible object for a figure should have a name
+# provided.
+accessibility.text.label.issue.figure = Οι αριθμοί με προαιρετικές λεζάντες πρέπει να φέρουν ετικέτα.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.fieldset): A title text that
+# describes that currently selected accessible object for a <fieldset> must have a name
+# provided.
+accessibility.text.label.issue.fieldset = Τα στοιχεία “fieldset” πρέπει να φέρουν ετικέτα.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.fieldset.legend2): A title text that
+# describes that currently selected accessible object for a <fieldset> must have a name
+# provided via <legend> element.
+accessibility.text.label.issue.fieldset.legend2 = Χρησιμοποιήστε ένα στοιχείο “legend” για επισήμανση ενός “fieldset”.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.form): A title text that
+# describes that currently selected accessible object for a form element must have a name
+# provided.
+accessibility.text.label.issue.form = Τα στοιχεία φόρμας πρέπει να φέρουν ετικέτα.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.form.visible): A title text that
+# describes that currently selected accessible object for a form element should have a name
+# provided via a visible label/element.
+accessibility.text.label.issue.form.visible = Τα στοιχεία φόρμας πρέπει να έχουν μια ορατή ετικέτα κειμένου.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.frame): A title text that
+# describes that currently selected accessible object for a <frame> must have a name
+# provided.
+accessibility.text.label.issue.frame = Τα στοιχεία “frame” πρέπει να φέρουν ετικέτα.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.glyph): A title text that
+# describes that currently selected accessible object for a <mglyph> must have a name
+# provided via alt attribute.
+accessibility.text.label.issue.glyph = Χρησιμοποιήστε την ιδιότητα “alt” για επισήμανση των στοιχείων “mglyph”.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.heading): A title text that
+# describes that currently selected accessible object for a heading must have a name
+# provided.
+accessibility.text.label.issue.heading = Οι επικεφαλίδες πρέπει να φέρουν ετικέτα.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.heading.content): A title text that
+# describes that currently selected accessible object for a heading must have visible
+# content.
+accessibility.text.label.issue.heading.content = Οι επικεφαλίδες πρέπει να έχουν ορατό περιεχόμενο κειμένου.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.iframe): A title text that
+# describes that currently selected accessible object for an <iframe> have a name
+# provided via title attribute.
+accessibility.text.label.issue.iframe = Χρησιμοποιήστε την ιδιότητα “title” για την περιγραφή του περιεχομένου “iframe”.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.image): A title text that
+# describes that currently selected accessible object for graphical content must have a
+# name provided.
+accessibility.text.label.issue.image = Το περιεχόμενο με εικόνες πρέπει να φέρει ετικέτα.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.interactive): A title text that
+# describes that currently selected accessible object for interactive element must have a
+# name provided.
+accessibility.text.label.issue.interactive = Τα διαδραστικά στοιχεία πρέπει να φέρουν ετικέτα.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.optgroup.label2): A title text that
+# describes that currently selected accessible object for an <optgroup> must have a
+# name provided via label attribute.
+accessibility.text.label.issue.optgroup.label2 = Χρησιμοποιήστε μια ιδιότητα “label” για επισήμανση ενός “optgroup”.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.toolbar): A title text that
+# describes that currently selected accessible object for a toolbar must have a
+# name provided when there is more than one toolbar in the document.
+accessibility.text.label.issue.toolbar = Οι γραμμές εργαλείων πρέπει να φέρουν ετικέτα όταν υπάρχουν περισσότερες από μία γραμμές εργαλείων.
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.semantics): A title text that
+# describes that currently selected accessible object is focusable and should
+# indicate that it could be interacted with.
+accessibility.keyboard.issue.semantics=Τα στοιχεία με δυνατότητα εστίασης πρέπει να έχουν διαδραστική σημασιολογία.
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.tabindex): A title text that
+# describes that currently selected accessible object has a corresponding
+# DOMNode that defines a tabindex attribute greater that 0 which can result in
+# unexpected behaviour when navigating with keyboard.
+accessibility.keyboard.issue.tabindex=Αποφύγετε τη χρήση της ιδιότητας “tabindex” μεγαλύτερης από μηδέν.
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.action): A title text that
+# describes that currently selected accessible object is interactive but can not
+# be activated using keyboard or accessibility API.
+accessibility.keyboard.issue.action=Τα διαδραστικά στοιχεία πρέπει να μπορούν να ενεργοποιηθούν με πληκτρολόγιο.
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.focusable): A title text that
+# describes that currently selected accessible object is interactive but is not
+# focusable with a keyboard.
+accessibility.keyboard.issue.focusable=Τα διαδραστικά στοιχεία πρέπει να έχουν δυνατότητα εστίασης.
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.focus.visible): A title text
+# that describes that currently selected accessible object is focusable but
+# might not have appropriate focus styling.
+accessibility.keyboard.issue.focus.visible=Το στοιχείο με δυνατότητα εστίασης ενδέχεται να μην έχει το στυλ εστίασης.
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.mouse.only): A title text that
+# describes that currently selected accessible object is not focusable and not
+# semantic but can be activated via mouse (e.g. has click handler).
+accessibility.keyboard.issue.mouse.only=Τα στοιχεία με δυνατότητα κλικ πρέπει να έχουν δυνατότητα εστίασης και διαδραστική σημασιολογία.
diff --git a/l10n-el/devtools/shared/debugger.properties b/l10n-el/devtools/shared/debugger.properties
new file mode 100644
index 0000000000..b5181df693
--- /dev/null
+++ b/l10n-el/devtools/shared/debugger.properties
@@ -0,0 +1,59 @@
+# 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 These strings are used inside the Debugger
+# which is available from the Web Developer sub-menu -> 'Debugger'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (remoteIncomingPromptTitle): The title displayed on the
+# dialog that prompts the user to allow the incoming connection.
+remoteIncomingPromptTitle=Εισερχόμενη σύνδεση
+
+# LOCALIZATION NOTE (remoteIncomingPromptHeader): Header displayed on the
+# dialog that prompts the user to allow the incoming connection.
+remoteIncomingPromptHeader=Ανιχνεύθηκε ένα εισερχόμενο αίτημα για να επιτραπεί η σύνδεση απομακρυσμένης αποσφαλμάτωσης. Ένας απομακρυσμένος δέκτης μπορεί να πάρει τον πλήρη έλεγχο του προγράμματος περιήγησής σας!
+# LOCALIZATION NOTE (remoteIncomingPromptClientEndpoint): Part of the prompt
+# dialog for the user to choose whether an incoming connection should be
+# allowed.
+# %1$S: The host and port of the client such as "127.0.0.1:6000"
+remoteIncomingPromptClientEndpoint=Απόληξη δέκτη: %1$S
+# LOCALIZATION NOTE (remoteIncomingPromptServerEndpoint): Part of the prompt
+# dialog for the user to choose whether an incoming connection should be
+# allowed.
+# %1$S: The host and port of the server such as "127.0.0.1:6000"
+remoteIncomingPromptServerEndpoint=Απόληξη διακομιστή: %1$S
+# LOCALIZATION NOTE (remoteIncomingPromptFooter): Footer displayed on the
+# dialog that prompts the user to allow the incoming connection.
+remoteIncomingPromptFooter=Αποδοχή σύνδεσης;
+
+# LOCALIZATION NOTE (remoteIncomingPromptDisable): The label displayed on the
+# third button in the incoming connection dialog that lets the user disable the
+# remote debugger server.
+remoteIncomingPromptDisable=Απενεργοποίηση
+
+# LOCALIZATION NOTE (clientSendOOBTitle): The title displayed on the dialog that
+# instructs the user to transfer an authentication token to the server.
+clientSendOOBTitle=Αναγνώριση δέκτη
+# LOCALIZATION NOTE (clientSendOOBHeader): Header displayed on the dialog that
+# instructs the user to transfer an authentication token to the server.
+clientSendOOBHeader=Το τελικό σημείο στο οποίο συνδέεστε χρειάζεται περισσότερες πληροφορίες για να πιστοποιήσει αυτή τη σύνδεση. Παρακαλώ παραθέστε το παρακάτω διακριτικό στο παράθυρο που θα εμφανιστεί στην άλλη άκρη.
+# LOCALIZATION NOTE (clientSendOOBHash): Part of the dialog that instructs the
+# user to transfer an authentication token to the server.
+# %1$S: The client's cert fingerprint
+clientSendOOBHash=Το πιστοποιητικό μου: %1$S
+# LOCALIZATION NOTE (clientSendOOBToken): Part of the dialog that instructs the
+# user to transfer an authentication token to the server.
+# %1$S: The authentication token that the user will transfer.
+clientSendOOBToken=Διακριτικό: %1$S
+
+# LOCALIZATION NOTE (serverReceiveOOBTitle): The title displayed on the dialog
+# that instructs the user to provide an authentication token from the client.
+serverReceiveOOBTitle=Παραθέστε σύμβολο δέκτη
+# LOCALIZATION NOTE (serverReceiveOOBBody): Main text displayed on the dialog
+# that instructs the user to provide an authentication token from the client.
+serverReceiveOOBBody=Ο δέκτης θα έπρεπε να εμφανίζει μια τιμή συμβόλου. Εισάγετε την τιμή συμβόλου εδώ για να ολοκληρώσετε την πιστοποίηση με αυτό τον δέκτη.
diff --git a/l10n-el/devtools/shared/eyedropper.properties b/l10n-el/devtools/shared/eyedropper.properties
new file mode 100644
index 0000000000..2879d8a900
--- /dev/null
+++ b/l10n-el/devtools/shared/eyedropper.properties
@@ -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/.
+
+# LOCALIZATION NOTE These strings are used in the Eyedropper color tool.
+# LOCALIZATION NOTE The correct localization of this file might be to keep it
+# in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best documentation
+# on web development on the web.
+
+# LOCALIZATION NOTE (colorValue.copied): This text is displayed when the user selects a
+# color with the eyedropper and it's copied to the clipboard.
+colorValue.copied=αντιγράφηκε
diff --git a/l10n-el/devtools/shared/highlighters.properties b/l10n-el/devtools/shared/highlighters.properties
new file mode 100644
index 0000000000..ce92d8c095
--- /dev/null
+++ b/l10n-el/devtools/shared/highlighters.properties
@@ -0,0 +1,35 @@
+# 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 This file contains strings used in highlighters.
+# Highlighters are visualizations that DevTools draws on top of content to aid
+# in understanding content sizing, etc.
+
+# LOCALIZATION NOTE (grid.rowColumnPositions): The row and column position of a grid
+# cell shown in the grid cell infobar when hovering over the CSS grid outline.
+grid.rowColumnPositions=Σειρά %S / Στήλη %S
+
+# LOCALIZATION NOTE (gridType.container): the layout type of an element shown in
+# the infobar when hovering over a DOM element and it is a grid container.
+gridType.container=Περιέκτης πλέγματος
+
+# LOCALIZATION NOTE (gridType.item): the layout type of an element shown in
+# the infobar when hovering over a DOM element and it is a grid item.
+gridType.item=Στοιχείο πλέγματος
+
+# LOCALIZATION NOTE (gridType.dual): the layout type of an element shown in
+# the infobar when hovering over a DOM element and it is both a grid container and a grid item.
+gridType.dual=Στοιχείο/περιέκτης πλέγματος
+
+# LOCALIZATION NOTE (flexType.container): the layout type of an element shown in
+# the infobar when hovering over a DOM element and it is a flex container.
+flexType.container=Περιέκτης flex
+
+# LOCALIZATION NOTE (flexType.item): the layout type of an element shown in
+# the infobar when hovering over a DOM element and it is a flex item.
+flexType.item=Στοιχείο flex
+
+# LOCALIZATION NOTE (flexType.dual): the layout type of an element shown in
+# the infobar when hovering over a DOM element and it is both a flex container and a flex item.
+flexType.dual=Στοιχεία/περιέκτης flex
diff --git a/l10n-el/devtools/shared/screenshot.properties b/l10n-el/devtools/shared/screenshot.properties
new file mode 100644
index 0000000000..881cf4aac2
--- /dev/null
+++ b/l10n-el/devtools/shared/screenshot.properties
@@ -0,0 +1,133 @@
+# 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 These strings are used inside Web Console commands.
+# The Web Console command line is available from the Web Developer sub-menu
+# -> 'Web Console'.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (screenshotDesc) A very short description of the
+# 'screenshot' command. Displayed when the --help flag is passed to
+# the screenshot command.
+screenshotDesc=Αποθήκευση εικόνας της σελίδας
+
+# LOCALIZATION NOTE (screenshotFilenameDesc) A very short string to describe
+# the 'filename' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the screenshot command.
+screenshotFilenameDesc=Όνομα αρχείου προορισμού
+
+# LOCALIZATION NOTE (screenshotFilenameManual) A fuller description of the
+# 'filename' parameter to the 'screenshot' command.
+screenshotFilenameManual=Το όνομα του αρχείου (πρέπει να έχει επέκταση ‘.png’) στο οποίο αποθηκεύουμε το στιγμιότυπο.
+
+# LOCALIZATION NOTE (screenshotClipboardDesc) A very short string to describe
+# the 'clipboard' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the screenshot command.
+screenshotClipboardDesc=Αντιγραφή στιγμιότυπου στο πρόχειρο; (true/false)
+
+# LOCALIZATION NOTE (screenshotClipboardManual) A fuller description of the
+# 'clipboard' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the screenshot command.
+screenshotClipboardManual=True, αν θέλετε το στιγμιότυπο να αντιγράφεται, αντί να αποθηκεύεται σε αρχείο.
+
+# LOCALIZATION NOTE (screenshotGroupOptions) A label for the optional options of
+# the screenshot command. Displayed when the --help flag is passed to the
+# screenshot command.
+screenshotGroupOptions=Επιλογές
+
+# LOCALIZATION NOTE (screenshotDelayDesc) A very short string to describe
+# the 'delay' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the screenshot command.
+screenshotDelayDesc=Καθυστέρηση (δευτερόλεπτα)
+
+# LOCALIZATION NOTE (screenshotDelayManual) A fuller description of the
+# 'delay' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the screenshot command.
+screenshotDelayManual=Ο χρόνος αναμονής (σε δευτερόλεπτα) πριν ληφθεί το στιγμιότυπο
+
+# LOCALIZATION NOTE (screenshotDPRDesc) A very short string to describe
+# the 'dpr' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotDPRDesc=Αναλογία εικονοστοιχείων συσκευής
+
+# LOCALIZATION NOTE (screenshotDPRManual) A fuller description of the
+# 'dpr' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotDPRManual=Η αναλογία εικονοστοιχείων συσκευής κατά τη λήψη στιγμιότυπου
+
+# LOCALIZATION NOTE (screenshotFullPageDesc) A very short string to describe
+# the 'fullpage' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotFullPageDesc=Ολόκληρη η ιστοσελίδα; (true/false)
+
+# LOCALIZATION NOTE (screenshotFullPageManual) A fuller description of the
+# 'fullpage' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotFullPageManual=True, αν το στιγμιότυπο θα πρέπει να περιλαμβάνει και μέρη της ιστοσελίδας, που είναι εκτός του τρέχοντος τμήματος που προβάλλεται.
+
+# LOCALIZATION NOTE (screenshotFileDesc) A very short string to describe
+# the 'file' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotFileDesc=Αποθήκευση σε αρχείο; (true/false)
+
+# LOCALIZATION NOTE (screenshotFileManual) A fuller description of the
+# 'file' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotFileManual=True, αν το στιγμιότυπο θα πρέπει να αποθηκεύει το αρχείο, όταν είναι ενεργές άλλες επιλογές (π.χ. πρόχειρο).
+
+# LOCALIZATION NOTE (screenshotGeneratedFilename) The auto generated filename
+# when no file name is provided. The first argument (%1$S) is the date string
+# in yyyy-mm-dd format and the second argument (%2$S) is the time string
+# in HH.MM.SS format. Please don't add the extension here.
+screenshotGeneratedFilename=Στιγμιότυπο από %1$S στις %2$S
+
+# LOCALIZATION NOTE (screenshotErrorSavingToFile) Text displayed to user upon
+# encountering error while saving the screenshot to the file specified.
+# The argument (%1$S) is the filename.
+screenshotErrorSavingToFile=Σφάλμα αποθήκευσης στο %1$S
+
+# LOCALIZATION NOTE (screenshotSavedToFile) Text displayed to user when the
+# screenshot is successfully saved to the file specified.
+# The argument (%1$S) is the filename.
+screenshotSavedToFile=Αποθηκεύτηκε στο %1$S
+
+# LOCALIZATION NOTE (screenshotErrorCopying) Text displayed to user upon
+# encountering error while copying the screenshot to clipboard.
+screenshotErrorCopying=Προέκυψε σφάλμα κατά την αντιγραφή του στιγμιότυπου στο πρόχειρο.
+
+# LOCALIZATION NOTE (screenshotCopied) Text displayed to user when the
+# screenshot is successfully copied to the clipboard.
+screenshotCopied=Το στιγμιότυπο αντιγράφηκε στο πρόχειρο.
+
+# LOCALIZATION NOTE (inspectNodeDesc) A very short string to describe the
+# 'node' parameter to the 'inspect' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+inspectNodeDesc=Επιλογέας CSS
+
+# LOCALIZATION NOTE (inspectNodeManual) A fuller description of the 'node'
+# parameter to the 'inspect' command. Displayed when the --help flag is
+# passed to the `screenshot command.
+inspectNodeManual=Ένας επιλογέας CSS για χρήση με το document.querySelector, το οποίο αναγνωρίζει ένα μόνο στοιχείο
+
+# LOCALIZATION NOTE (screenshotTruncationWarning) Text displayed to user when the image
+# that would be created by the screenshot is too big and needs to be truncated to avoid
+# errors.
+# The first parameter is the width of the final image and the second parameter is the
+# height of the image.
+screenshotTruncationWarning=Η εικόνα περικόπηκε σε %1$S×%2$S καθώς η τελική εικόνα ήταν πολύ μεγάλη
+
+# LOCALIZATION NOTE (screenshotDPRDecreasedWarning) Text displayed to user when the
+# screenshot they want to take is for the full page and the Device Pixel Ratio is
+# decreased to 1, to avoid creating images that are too big which may cause errors.
+screenshotDPRDecreasedWarning=Η αναλογία εικονοστοιχείων της συσκευής μειώθηκε σε 1 καθώς η τελική εικόνα ήταν πολύ μεγάλη
+
+# LOCALIZATION NOTE (screenshotRenderingError) Text displayed to user upon
+# encountering an error while rendering the screenshot. This most often happens when the
+# resulting image is too large to be rendered.
+screenshotRenderingError=Σφάλμα δημιουργίας εικόνας. Η τελική εικόνα ήταν μάλλον πολύ μεγάλη.
diff --git a/l10n-el/devtools/shared/shared.properties b/l10n-el/devtools/shared/shared.properties
new file mode 100644
index 0000000000..1fb1dc2307
--- /dev/null
+++ b/l10n-el/devtools/shared/shared.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/.
+
+# LOCALIZATION NOTE (ellipsis): The ellipsis (three dots) character
+ellipsis=… \ No newline at end of file
diff --git a/l10n-el/devtools/shared/styleinspector.properties b/l10n-el/devtools/shared/styleinspector.properties
new file mode 100644
index 0000000000..b3d24ed040
--- /dev/null
+++ b/l10n-el/devtools/shared/styleinspector.properties
@@ -0,0 +1,242 @@
+# 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 These strings are used inside the Style Inspector.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+
+# LOCALIZATION NOTE (rule.status): For each style property the panel shows
+# the rules which hold that specific property. For every rule, the rule status
+# is also displayed: a rule can be the best match, a match, a parent match, or a
+# rule did not match the element the user has highlighted.
+rule.status.BEST=Καλύτερη αντιστοιχία
+rule.status.MATCHED=Αντιστοιχήθηκε
+rule.status.PARENT_MATCH=Αντιστοιχία γονέα
+
+# LOCALIZATION NOTE (rule.sourceElement, rule.sourceInline): For each
+# style property the panel shows the rules which hold that specific property.
+# For every rule, the rule source is also displayed: a rule can come from a
+# file, from the same page (inline), or from the element itself (element).
+rule.sourceInline=εντός γραμμής
+rule.sourceElement=στοιχείο
+
+# LOCALIZATION NOTE (rule.inheritedFrom): Shown for CSS rules
+# that were inherited from a parent node. Will be passed a node
+# identifier of the parent node.
+# e.g "Inherited from body#bodyID"
+rule.inheritedFrom=Κληρονομήθηκε από %S
+
+# LOCALIZATION NOTE (rule.keyframe): Shown for CSS Rules keyframe header.
+# Will be passed an identifier of the keyframe animation name.
+rule.keyframe=Keyframes %S
+
+# LOCALIZATION NOTE (rule.userAgentStyles): Shown next to the style sheet
+# link for CSS rules that were loaded from a user agent style sheet.
+# These styles will not be editable, and will only be visible if the
+# devtools.inspector.showUserAgentStyles pref is true.
+rule.userAgentStyles=(πλατφόρμα χρήστη)
+
+# LOCALIZATION NOTE (rule.pseudoElement): Shown for CSS rules
+# pseudo element header
+rule.pseudoElement=Ψευδο-στοιχεία
+
+# LOCALIZATION NOTE (rule.selectedElement): Shown for CSS rules element header if
+# pseudo elements are present in the rule view.
+rule.selectedElement=Αυτό το στοιχείο
+
+# LOCALIZATION NOTE (rule.warning.title): When an invalid property value is
+# entered into the rule view a warning icon is displayed. This text is used for
+# the title attribute of the warning icon.
+rule.warning.title=Μη έγκυρη τιμή ιδιότητας
+
+# LOCALIZATION NOTE (rule.warningName.title): When an invalid property name is
+# entered into the rule view a warning icon is displayed. This text is used for
+# the title attribute of the warning icon.
+rule.warningName.title=Άκυρο όνομα ιδιότητας
+
+# LOCALIZATION NOTE (rule.filterProperty.title): Text displayed in the tooltip
+# of the search button that is shown next to a property that has been overridden
+# in the rule view.
+rule.filterProperty.title=Φιλτράρισμα κανόνων με αυτή την ιδιότητα
+
+# LOCALIZATION NOTE (rule.empty): Text displayed when the highlighter is
+# first opened and there's no node selected in the rule view.
+rule.empty=Κανένα επιλεγμένο στοιχείο.
+
+# LOCALIZATION NOTE (rule.variableValue): Text displayed in a tooltip
+# when the mouse is over a variable use (like "var(--something)") in
+# the rule view. The first argument is the variable name and the
+# second argument is the value.
+rule.variableValue=%S = %S
+
+# LOCALIZATION NOTE (rule.variableUnset): Text displayed in a tooltip
+# when the mouse is over a variable use (like "var(--something)"),
+# where the variable is not set. the rule view. The argument is the
+# variable name.
+rule.variableUnset=Το %S δεν έχει οριστεί
+
+# LOCALIZATION NOTE (rule.selectorHighlighter.tooltip): Text displayed in a
+# tooltip when the mouse is over a selector highlighter icon in the rule view.
+rule.selectorHighlighter.tooltip=Επισήμανση όλων των στοιχείων που αντιστοιχούν σε αυτό τον επιλογέα
+
+# LOCALIZATION NOTE (rule.colorSwatch.tooltip): Text displayed in a tooltip
+# when the mouse is over a color swatch in the rule view.
+rule.colorSwatch.tooltip=Κάντε κλικ για άνοιγμα της επιλογής χρώματος, shift+κλικ για αλλαγή της μορφής χρώματος
+
+# LOCALIZATION NOTE (rule.bezierSwatch.tooltip): Text displayed in a tooltip
+# when the mouse is over a cubic-bezier swatch in the rule view.
+rule.bezierSwatch.tooltip=Κάντε κλικ για να ανοίξετε τον επεξεργαστή λειτουργίας χρονισμού
+
+# LOCALIZATION NOTE (rule.filterSwatch.tooltip): Text displayed in a tooltip
+# when the mouse is over a filter swatch in the rule view.
+rule.filterSwatch.tooltip=Κάντε κλικ για άνοιγμα επεξεργασίας φίλτρων
+
+# LOCALIZATION NOTE (rule.angleSwatch.tooltip): Text displayed in a tooltip
+# when the mouse is over a angle swatch in the rule view.
+rule.angleSwatch.tooltip=Shift+κλικ για αλλαγή της μορφής γωνίας
+
+# LOCALIZATION NOTE (rule.flexToggle.tooltip): Text displayed in a tooltip
+# when the mouse is over a Flexbox toggle icon in the rule view.
+rule.flexToggle.tooltip=Κάντε κλικ για εναλλαγή επισήμανσης στο Flexbox
+
+# LOCALIZATION NOTE (rule.gridToggle.tooltip): Text displayed in a tooltip
+# when the mouse is over a CSS Grid toggle icon in the rule view.
+rule.gridToggle.tooltip=Κάντε κλικ για (απ)ενεργοποίηση επισήμανσης πλέγματος CSS
+
+# LOCALIZATION NOTE (rule.filterStyles.placeholder): This is the placeholder that
+# goes in the search box when no search term has been entered.
+rule.filterStyles.placeholder=Φιλτράρισμα στυλ
+
+# LOCALIZATION NOTE (rule.addRule.tooltip): This is the tooltip shown when
+# hovering the `Add new rule` button in the rules view toolbar.
+rule.addRule.tooltip=Προσθήκη νέου κανόνα
+
+# LOCALIZATION NOTE (rule.togglePseudo.tooltip): This is the tooltip
+# shown when hovering over the `Toggle Pseudo Class Panel` button in the
+# rule view toolbar.
+rule.togglePseudo.tooltip=Εναλλαγή ψευδο-κλάσεων
+
+# LOCALIZATION NOTE (rule.classPanel.toggleClass.tooltip): This is the tooltip
+# shown when hovering over the `Toggle Class Panel` button in the
+# rule view toolbar.
+rule.classPanel.toggleClass.tooltip=(Απ)ενεργοποίηση κλάσεων
+
+# LOCALIZATION NOTE (rule.classPanel.newClass.placeholder): This is the placeholder
+# shown inside the text field used to add a new class in the rule-view.
+rule.classPanel.newClass.placeholder=Προσθήκη νέας κλάσης
+
+# LOCALIZATION NOTE (rule.classPanel.noClasses): This is the text displayed in the
+# class panel when the current element has no classes applied.
+rule.classPanel.noClasses=Καμία κλάση σε αυτό το στοιχείο
+
+# LOCALIZATION NOTE (rule.printSimulation.tooltip):
+# This is the tooltip of the print simulation button in the Rule View toolbar
+# that toggles print simulation.
+rule.printSimulation.tooltip=Εναλλαγή προσομοίωσης μέσων εκτύπωσης για τη σελίδα
+
+# LOCALIZATION NOTE (rule.colorSchemeSimulation.tooltip):
+# This is the tooltip of the color scheme simulation button in the Rule View
+# toolbar that toggles color-scheme simulation.
+rule.colorSchemeSimulation.tooltip=Εναλλαγή προσομοίωσης συνόλου χρωμάτων για τη σελίδα
+
+# LOCALIZATION NOTE (rule.twistyCollapse.label): The text a screen reader
+# speaks when the header of a rule is expanded.
+rule.twistyCollapse.label=Σύμπτυξη
+
+# LOCALIZATION NOTE (rule.twistyExpand.label): The text a screen reader
+# speaks when the header of a rule is collapsed.
+rule.twistyExpand.label=Επέκταση
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyColor): Text displayed in the rule
+# and computed view context menu when a color value was clicked.
+styleinspector.contextmenu.copyColor=Αντιγραφή χρώματος
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyColor.accessKey): Access key for
+# the rule and computed view context menu "Copy Color" entry.
+styleinspector.contextmenu.copyColor.accessKey=Ρ
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyUrl): In rule and computed view :
+# text displayed in the context menu for an image URL.
+# Clicking it copies the URL to the clipboard of the user.
+styleinspector.contextmenu.copyUrl=Αντιγραφή URL
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyUrl.accessKey): Access key for
+# the rule and computed view context menu "Copy URL" entry.
+styleinspector.contextmenu.copyUrl.accessKey=U
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyImageDataUrl): In rule and computed view :
+# text displayed in the context menu for an image URL.
+# Clicking it copies the image as Data-URL to the clipboard of the user.
+styleinspector.contextmenu.copyImageDataUrl=Αντιγραφή δεδομένων-URL εικόνας
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyImageDataUrl.accessKey): Access key for
+# the rule and computed view context menu "Copy Image Data-URL" entry.
+styleinspector.contextmenu.copyImageDataUrl.accessKey=U
+
+# LOCALIZATION NOTE (styleinspector.copyImageDataUrlError): Text set in the clipboard
+# if an error occurs when using the copyImageDataUrl context menu action
+# (invalid image link, timeout, etc...)
+styleinspector.copyImageDataUrlError=Αποτυχία αντιγραφής δεδομένων-URL εικόνας
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.toggleOrigSources): Text displayed in the rule view
+# context menu.
+styleinspector.contextmenu.toggleOrigSources=Εμφάνιση αρχικών πηγών
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.toggleOrigSources.accessKey): Access key for
+# the rule view context menu "Show original sources" entry.
+styleinspector.contextmenu.toggleOrigSources.accessKey=Π
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.addNewRule): Text displayed in the
+# rule view context menu for adding a new rule to the element.
+# This should match inspector.addRule.tooltip in inspector.properties
+styleinspector.contextmenu.addNewRule=Νέος κανόνας
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.addNewRule.accessKey): Access key for
+# the rule view context menu "Add rule" entry.
+styleinspector.contextmenu.addNewRule.accessKey=Κ
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.selectAll): Text displayed in the
+# computed view context menu.
+styleinspector.contextmenu.selectAll=Επιλογή όλων
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.selectAll.accessKey): Access key for
+# the computed view context menu "Select all" entry.
+styleinspector.contextmenu.selectAll.accessKey=Ο
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copy): Text displayed in the
+# computed view context menu.
+styleinspector.contextmenu.copy=Αντιγραφή
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copy.accessKey): Access key for
+# the computed view context menu "Copy" entry.
+styleinspector.contextmenu.copy.accessKey=Α
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyLocation): Text displayed in the
+# rule view context menu for copying the source location.
+styleinspector.contextmenu.copyLocation=Αντιγραφή τοποθεσίας
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyDeclaration): Text
+# displayed in the rule view context menu for copying the CSS declaration.
+styleinspector.contextmenu.copyDeclaration=Αντιγραφή δήλωσης
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyPropertyName): Text displayed in
+# the rule view context menu for copying the property name.
+styleinspector.contextmenu.copyPropertyName=Αντιγραφή ονόματος ιδιότητας
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyPropertyValue): Text displayed in
+# the rule view context menu for copying the property value.
+styleinspector.contextmenu.copyPropertyValue=Αντιγραφή τιμής ιδιότητας
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyRule): Text displayed in the
+# rule view context menu for copying the rule.
+styleinspector.contextmenu.copyRule=Αντιγραφή κανόνα
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copySelector): Text displayed in the
+# rule view context menu for copying the selector.
+styleinspector.contextmenu.copySelector=Αντιγραφή επιλογέα
diff --git a/l10n-el/devtools/startup/aboutDevTools.ftl b/l10n-el/devtools/startup/aboutDevTools.ftl
new file mode 100644
index 0000000000..7397f1cb25
--- /dev/null
+++ b/l10n-el/devtools/startup/aboutDevTools.ftl
@@ -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/.
+
+head-title = Σχετικά με τα εργαλεία προγραμματιστή
+enable-title = Ενεργοποίηση εργαλείων προγραμματιστή Firefox
+enable-inspect-element-title = Ενεργοποιήστε τα εργαλεία προγραμματιστή Firefox για να χρησιμοποιήσετε την Επιθεώρηση στοιχείου
+enable-inspect-element-message = Εξετάστε και επεξεργαστείτε HTML και CSS με την Επιθεώρηση των εργαλείων προγραμματιστή.
+enable-about-debugging-message = Αναπτύξτε και διορθώστε WebExtensions, web workers, service workers και άλλα με τα εργαλεία προγραμματιστή Firefox.
+enable-key-shortcut-message = Έχετε ενεργοποιήσει μια συντόμευση των εργαλείων προγραμματιστή. Αν το κάνατε κατά λάθος, μπορείτε να κλείσετε αυτή την καρτέλα.
+enable-menu-message = Τελειοποιήστε τους κώδικες HTML, CSS και JavaScript για την ιστοσελίδα σας με εργαλεία όπως η Επιθεώρηση και η Αποσφαλμάτωση.
+enable-common-message = Τα Εργαλεία Προγραμματιστή Firefox είναι απενεργοποιημένα από προεπιλογή για να έχετε περισσότερο έλεγχο στο πρόγραμμα περιήγησής σας.
+enable-learn-more-link = Μάθετε περισσότερα για τα Εργαλεία Προγραμματιστή
+enable-enable-button = Ενεργοποίηση εργαλείων προγραμματιστή
+enable-close-button = Κλείσιμο της Καρτέλας
+welcome-title = Καλωσορίσατε στα Εργαλεία Προγραμματιστή Firefox!
+newsletter-title = Ενημέρωση προγραμματιστών Mozilla
+newsletter-message = Λάβετε ειδήσεις, κόλπα και πόρους για προγραμματιστές απευθείας στα εισερχόμενά σας.
+newsletter-email-placeholder =
+ .placeholder = Email
+newsletter-privacy-label = Δεν με πειράζει να διαχειρίζεται η Mozilla τις πληροφορίες μου, όπως εξηγείται σε αυτή την <a data-l10n-name="privacy-policy">Πολιτική Απορρήτου</a>.
+newsletter-subscribe-button = Εγγραφή
+newsletter-thanks-title = Ευχαριστούμε!
+newsletter-thanks-message = Αν δεν έχετε προηγουμένως επιβεβαιώσει την εγγραφή σας σε κάποιο newsletter σχετικό με τη Mozilla, ίσως θα πρέπει να το κάνετε. Παρακαλούμε ελέγξτε τα εισερχόμενα ή το φίλτρο ανεπιθύμητων για ένα e-mail από εμάς.
+footer-title = Firefox Developer Edition
+footer-message = Ψάχνετε περισσότερα από απλά εργαλεία προγραμματιστή; Ελέγξτε το πρόγραμμα περιήγησης Firefox που φτιάχνεται συγκεκριμένα για τους προγραμματιστές και τις σύγχρονες ροές εργασίας.
+footer-learn-more-link = Μάθετε περισσότερα
+features-learn-more = Μάθετε περισσότερα
+features-inspector-title = Επιθεώρηση
+features-inspector-desc = Επιθεώρηση και βελτίωση κώδικα για δημιουργία τέλειων διατάξεων. <a data-l10n-name="learn-more">{ features-learn-more }</a>
+features-console-title = Κονσόλα
+features-console-desc = Καταγραφή προβλημάτων σε CSS, JavaScript, ασφάλεια και δίκτυο. <a data-l10n-name="learn-more">{ features-learn-more }</a>
+features-debugger-title = Αποσφαλμάτωση
+features-debugger-desc = Πανίσχυρη αποσφαλμάτωση JavaScript με υποστήριξη για το πλαίσιό σας. <a data-l10n-name="learn-more">{ features-learn-more }</a>
+features-network-title = Δίκτυο
+features-network-desc = Εποπτεία των αιτημάτων δικτύου που ενδέχεται να καθυστερούν ή να αποκλείσουν την ιστοσελίδα σας. <a data-l10n-name="learn-more">{ features-learn-more }</a>
+features-storage-title = Αποθήκευση
+features-storage-desc = Προσθήκη, τροποποίηση και διαγραφή προσωρινής μνήμης, cookies, βάσεων δεδομένων και δεδομένων συνεδρίας. <a data-l10n-name="learn-more">{ features-learn-more }</a>
+features-responsive-title = Λειτ. αποκρίσιμου σχεδιασμού
+features-responsive-desc = Δοκιμή ιστοσελίδων σε εξομοιωτές συσκευών στο πρόγραμμα περιήγησής σας. <a data-l10n-name="learn-more">{ features-learn-more }</a>
+features-visual-editing-title = Οπτική επεξεργασία
+features-visual-editing-desc = Μικρο-ρύθμιση εφέ κίνησης, στοίχισης και γεμίσματος. <a data-l10n-name="learn-more">{ features-learn-more }</a>
+features-performance-title = Επιδόσεις
+features-performance-desc = Απελευθέρωση σημείων συμφόρησης, βελτίωση διαδικασιών, βελτιστοποίηση διαθέσιμων πόρων. <a data-l10n-name="learn-more">{ features-learn-more }</a>
+features-memory-title = Μνήμη
+features-memory-desc = Εύρεση διαρροών μνήμης και βελτίωση της λειτουργίας της εφαρμογής σας. <a data-l10n-name="learn-more">{ features-learn-more }</a>
+# Variables:
+# $errorDescription (String) - The error that occurred e.g. 404 - Not Found
+newsletter-error-common = Αποτυχία αιτήματος εγγραφής ({ $errorDescription }).
+newsletter-error-unknown = Προέκυψε απρόσμενο σφάλμα.
+newsletter-error-timeout = Έληξε ο χρόνος αίτησης για εγγραφή.
+# Variables:
+# $shortcut (String) - The keyboard shortcut used for the tool
+welcome-message = Έχετε ενεργοποιήσει επιτυχώς τα εργαλεία προγραμματιστή! Για να ξεκινήστε, εξερευνήστε το μενού Web Developer ή να ανοίξτε τα εργαλεία με { $shortcut }.
diff --git a/l10n-el/devtools/startup/key-shortcuts.properties b/l10n-el/devtools/startup/key-shortcuts.properties
new file mode 100644
index 0000000000..a5bdf43188
--- /dev/null
+++ b/l10n-el/devtools/startup/key-shortcuts.properties
@@ -0,0 +1,67 @@
+# 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 (toggleToolbox.commandkey):
+# Key pressed to open a toolbox with the default panel selected
+toggleToolbox.commandkey=I
+
+# LOCALIZATION NOTE (toggleToolboxF12.commandkey):
+# Alternative key pressed to open a toolbox with the default panel selected
+toggleToolboxF12.commandkey=VK_F12
+
+# LOCALIZATION NOTE (browserToolbox.commandkey):
+# Key pressed to open the Browser Toolbox, used for debugging Firefox itself
+browserToolbox.commandkey=I
+
+# LOCALIZATION NOTE (browserConsole.commandkey):
+# Key pressed to open the Browser Console, used for debugging Firefox itself
+browserConsole.commandkey=J
+
+# LOCALIZATION NOTE (responsiveDesignMode.commandkey):
+# Key pressed to toggle on the Responsive Design Mode
+responsiveDesignMode.commandkey=M
+
+# LOCALIZATION NOTE (inspector.commandkey):
+# Key pressed to open a toolbox with the inspector panel selected
+inspector.commandkey=C
+
+# LOCALIZATION NOTE (webconsole.commandkey):
+# Key pressed to open a toolbox with the web console panel selected
+webconsole.commandkey=K
+
+# LOCALIZATION NOTE (jsdebugger.commandkey2):
+# Key pressed to open a toolbox with the debugger panel selected
+jsdebugger.commandkey2=Z
+
+# LOCALIZATION NOTE (netmonitor.commandkey):
+# Key pressed to open a toolbox with the network monitor panel selected
+netmonitor.commandkey=E
+
+# LOCALIZATION NOTE (styleeditor.commandkey):
+# Key pressed to open a toolbox with the style editor panel selected
+styleeditor.commandkey=VK_F7
+
+# LOCALIZATION NOTE (performance.commandkey):
+# Key pressed to open a toolbox with the performance panel selected
+performance.commandkey=VK_F5
+
+# LOCALIZATION NOTE (storage.commandkey):
+# Key pressed to open a toolbox with the storage panel selected
+storage.commandkey=VK_F9
+
+# LOCALIZATION NOTE (dom.commandkey):
+# Key pressed to open a toolbox with the DOM panel selected
+dom.commandkey=W
+
+# LOCALIZATION NOTE (accessibilityF12.commandkey):
+# Key pressed to open a toolbox with the accessibility panel selected
+accessibilityF12.commandkey=VK_F12
+
+# LOCALIZATION NOTE (profilerStartStop.commandkey):
+# Key pressed to start or stop the performance profiler
+profilerStartStop.commandkey=VK_1
+
+# LOCALIZATION NOTE (profilerCapture.commandkey):
+# Key pressed to capture a recorded performance profile
+profilerCapture.commandkey=VK_2
diff --git a/l10n-el/devtools/startup/startup.properties b/l10n-el/devtools/startup/startup.properties
new file mode 100644
index 0000000000..5de5d6549f
--- /dev/null
+++ b/l10n-el/devtools/startup/startup.properties
@@ -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/.
+
+# LOCALIZATION NOTE (enableDevTools.label):
+# Label for the menu item displayed in Tools > Developer Tools when DevTools are disabled.
+enableDevTools.label=Ενεργοποίηση εργαλείων προγραμματιστή…
+enableDevTools.accesskey=Ε
diff --git a/l10n-el/dom/chrome/accessibility/AccessFu.properties b/l10n-el/dom/chrome/accessibility/AccessFu.properties
new file mode 100644
index 0000000000..ff3b232b20
--- /dev/null
+++ b/l10n-el/dom/chrome/accessibility/AccessFu.properties
@@ -0,0 +1,359 @@
+# 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/.
+
+# Screen reader started/stopped
+screenReaderStarted = Η ανάγνωση οθόνης ενεργοποιήθηκε
+screenReaderStopped = Η ανάγνωση οθόνης απενεργοποιήθηκε
+
+# Roles
+menubar = γραμμή μενού
+scrollbar = γραμμή κύλισης
+grip = λαβή
+alert = ειδοποίηση
+menupopup = αναδυόμενο μενού
+document = έγγραφο
+pane = παράθυρο
+dialog = διάλογος
+separator = διαχωριστικό
+toolbar = γραμμή εργαλείων
+statusbar = γραμμή κατάστασης
+table = πίνακας
+columnheader = κεφαλίδα στήλης
+rowheader = κεφαλίδα γραμμής
+column = στήλη
+row = γραμμή
+cell = κελί
+link = σύνδεσμος
+list = λίστα
+listitem = στοιχείο λίστας
+outline = διάταξη
+outlineitem = στοιχείο περιγράμματος
+pagetab = καρτέλα
+propertypage = σελίδα ιδιοτήτων
+graphic = γραφικό
+switch = διακόπτης
+pushbutton = κουμπί
+checkbutton = κουμπί ελέγχου
+radiobutton = κουμπί επιλογής
+combobox = πλαίσιο συνδυασμών
+progressbar = γραμμή προόδου
+slider = ρυθμιστής με κύλιση
+spinbutton = κουμπί περιστροφής
+diagram = διάγραμμα
+animation = κίνηση
+equation = εξίσωση
+buttonmenu = κουμπί μενού
+whitespace = κενός χώρος
+pagetablist = λίστα καρτελών
+canvas = καμβάς
+checkmenuitem = στοιχείο ελέγχου στο μενού
+label = ετικέτα
+passwordtext = κείμενο κωδικού
+radiomenuitem = στοιχείο επιλογής στο μενού
+textcontainer = πλαίσιο κειμένου
+togglebutton = κουμπί-διακόπτης
+treetable = δενδρικής δομής πίνακας
+header = κεφαλίδα
+footer = υποσέλιδο
+paragraph = παράγραφος
+entry = καταχώριση
+caption = τίτλος
+heading = επικεφαλίδα
+section = ενότητα
+form = φόρμα
+comboboxlist = λίστα πλαισίου συνδυασμών
+comboboxoption = επιλογή πλαισίου συνδυασμών
+imagemap = χάρτης εικόνας
+listboxoption = επιλογή
+listbox = πλαίσιο λίστας
+flatequation = επίπεδη εξίσωση
+gridcell = πλέγμα κελιών
+note = σημείωση
+figure = σχήμα
+definitionlist = λίστα ορισμών
+term = όρος
+definition = ορισμός
+
+mathmltable = μαθηματικός πίνακας
+mathmlcell = κελί
+mathmlenclosed = κλεισμένος
+mathmlfraction = κλάσμα
+mathmlfractionwithoutbar = κλάσμα χωρίς γραμμή
+mathmlroot = ρίζα
+mathmlscripted = γραφή
+mathmlsquareroot = τετραγωνική ρίζα
+
+# More sophisticated roles which are not actual numeric roles
+textarea = περιοχή κειμένου
+
+base = βάση
+close-fence = κλείσιμο εγκλεισμού
+denominator = παρονομαστής
+numerator = αριθμητής
+open-fence = άνοιγμα εγκλεισμού
+overscript = γραφή πάνω από
+presubscript = προδείκτης
+presuperscript = προεκθέτης
+root-index = δείκτης ρίζας
+subscript = δείκτης
+superscript = εκθέτης
+underscript = γραφή κάτω από
+
+# Text input types
+textInputType_date = ημερομηνία
+textInputType_email = email
+textInputType_search = αναζήτηση
+textInputType_tel = τηλέφωνο
+textInputType_url = URL
+
+# More sophisticated object descriptions
+headingLevel = επίπεδο κεφαλίδας %S
+
+# more sophisticated list announcement
+listStart = Πρώτο στοιχείο
+listEnd = Τελευταίο στοιχείο
+# LOCALIZATION NOTE (listItemsCount): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+listItemsCount = 1 στοιχείο;#1 στοιχεία
+
+# LOCALIZATION NOTE: # %1$S is the position of the item n the set.
+# %2$S is the total number of such items in the set.
+# An expanded example would read "2 of 5".
+objItemOfN = %1$S από %2$S
+
+# Landmark announcements
+banner = τίτλος
+complementary = συμπληρωματικό
+contentinfo = πληροφορίες περιεχομένου
+main = κύριο
+navigation = πλοήγηση
+search = αναζήτηση
+region = περιοχή
+
+# LOCALIZATION NOTE (tblColumnInfo): Semi-colon list of plural forms.
+# Number of columns within the table.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+tblColumnInfo = με 1 στήλη;με #1 στήλες
+# LOCALIZATION NOTE (tblRowInfo): Semi-colon list of plural forms.
+# Number of rows within the table or grid.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+tblRowInfo = και 1 γραμμή;και #1 γραμμές
+
+# table or grid cell information
+columnInfo = Στήλη %S
+rowInfo = Γραμμή %S
+spansColumns = εκτείνεται σε %S στήλες
+spansRows = εκτείνεται σε %S γραμμές
+
+# Invoked actions
+jumpAction = παραλήφθηκε
+pressAction = πατήθηκε
+checkAction = επιλεγμένο
+uncheckAction = αποεπιλεγμένο
+onAction = ενεργό
+offAction = ανενεργό
+selectAction = επιλεγμένο
+unselectAction = αποεπιλεγμένο
+openAction = ανοικτό
+closeAction = κλειστό
+switchAction = άλλαξε
+clickAction = πατημένο
+collapseAction = συμπτυγμένο
+expandAction = αναπτυγμένο
+activateAction = ενεργοποιημένο
+cycleAction = κυκλώθηκε
+
+# Live regions
+# 'hidden' will be spoken when something disappears in a live region.
+hidden = κρυμμένο
+
+# Tab states
+tabLoading = φόρτωση
+tabLoaded = φορτωμένο
+tabNew = νέα καρτέλα
+tabLoadStopped = η φόρτωση διακόπηκε
+tabReload = ανανέωση
+
+# Object states
+stateChecked = επιλεγμένο
+stateOn = ενεργό
+stateNotChecked = μη επιλεγμένο
+stateOff = κλειστό
+statePressed = πατημένο
+# No string for a not pressed toggle button
+stateExpanded = επεκταμένο
+stateCollapsed = κλειστό
+stateUnavailable = μη διαθέσιμο
+stateReadonly = μόνο για ανάγνωση
+stateRequired = απαιτείται
+stateTraversed = επισκέφθηκε
+stateHasPopup = έχει αναδυόμενα
+stateSelected = επιλεγμένο
+
+# App modes
+editingMode = γίνεται επεξεργασία
+navigationMode = γίνεται πλοήγηση
+
+# Quick navigation modes
+quicknav_Simple = Προεπιλογή
+quicknav_Anchor = Άγκυρες
+quicknav_Button = Κουμπιά
+quicknav_Combobox = Λίστες επιλογής
+quicknav_Landmark = Ορόσημα
+quicknav_Entry = Εγγραφές
+quicknav_FormElement = Στοιχεία φόρμας
+quicknav_Graphic = Εικόνες
+quicknav_Heading = Κεφαλίδες
+quicknav_ListItem = Στοιχεία λίστας
+quicknav_Link = Σύνδεσμοι
+quicknav_List = Λίστες
+quicknav_PageTab = Καρτέλες σελίδας
+quicknav_RadioButton = Κουμπιά ραδιοφώνου
+quicknav_Separator = Διαχωριστές
+quicknav_Table = Πίνακες
+quicknav_Checkbox = Πλαίσια επιλογής
+
+# MathML menclose notations.
+# See developer.mozilla.org/docs/Web/MathML/Element/menclose#attr-notation
+notation-longdiv = μακρά διαίρεση
+notation-actuarial = σύμβολο αναλογιστή
+notation-phasorangle = γωνία φάσης
+notation-radical = ριζικό
+notation-box = κουτί
+notation-roundedbox = στρογγυλεμένο πλαίσιο
+notation-circle = κύκλος
+notation-left = αριστερά
+notation-right = δεξιά
+notation-top = επάνω
+notation-bottom = κάτω
+notation-updiagonalstrike = επάνω διαγώνια διαγραφή
+notation-downdiagonalstrike = κάτω διαγώνια διαγραφή
+notation-verticalstrike = κάθετη διαγραφή
+notation-horizontalstrike = οριζόντια διαγραφή
+notation-updiagonalarrow = επάνω διαγώνιο βέλος
+notation-madruwb = madruwb
+
+# Shortened role names for braille
+menubarAbbr = γραμμή μενού
+scrollbarAbbr = γραμμή κύλισης
+gripAbbr = λαβή
+alertAbbr = ειδοποίηση
+menupopupAbbr = αναδυόμενο μενού
+documentAbbr = έγγραφο
+paneAbbr = παράθυρο
+dialogAbbr = διάλογος
+separatorAbbr = διαχωριστής
+toolbarAbbr = γραμμή εργαλείων
+statusbarAbbr = γραμμή κατάστασης
+tableAbbr = πίνακας
+columnheaderAbbr = επικεφαλίδα στήλης
+rowheaderAbbr = επικεφαλίδα γραμμής
+columnAbbr = στήλη
+rowAbbr = γραμμή
+cellAbbr = κελί
+linkAbbr = σύνδεσμος
+listAbbr = λίστα
+listitemAbbr = στοιχείο λίστας
+outlineAbbr = σύνοψη
+outlineitemAbbr = στοιχείο περιγράμματος
+pagetabAbbr = καρτέλα
+propertypageAbbr = σελίδα ιδιοτήτων
+graphicAbbr = γραφικό
+pushbuttonAbbr = πλήκτρο
+checkbuttonAbbr = πλήκτρο επιλογής
+radiobuttonAbbr = κουμπί επιλογής
+comboboxAbbr = σύνθετο πλαίσιο
+progressbarAbbr = γραμμή προόδου
+sliderAbbr = ρυθμιστικό
+spinbuttonAbbr = κουμπί περιστροφής
+diagramAbbr = διάγραμμα
+animationAbbr = κίνηση
+equationAbbr = εξίσωση
+buttonmenuAbbr = μενού πλήκτρο
+whitespaceAbbr = λευκό κενό
+pagetablistAbbr = λίστα καρτελών
+canvasAbbr = καμβάς
+checkmenuitemAbbr = στοιχείο μενού επιλογής
+labelAbbr = ετικέτα
+passwordtextAbbr = κείμενο κωδικού
+radiomenuitemAbbr = στοιχείο μενού επιλογών
+textcontainerAbbr = πλαίσιο κειμένου
+togglebuttonAbbr = κουμπί-διακόπτης
+treetableAbbr = δενδροδιάγραμμα
+headerAbbr = επικεφαλίδα
+footerAbbr = υποσέλιδο
+paragraphAbbr = παράγραφος
+entryAbbr = καταχώρηση
+captionAbbr = λεζάντα
+headingAbbr = επικεφαλίδα
+sectionAbbr = ενότητα
+formAbbr = φόρμα
+comboboxlistAbbr = λίστα σύνθετων πλαισίων
+comboboxoptionAbbr = επιλογή σύνθετου πλαισίου
+imagemapAbbr = imgmap
+listboxoptionAbbr = επιλογή
+listboxAbbr = πλαίσιο λίστας
+flatequationAbbr = εξίσωση
+gridcellAbbr = κελί πλέγμ.
+noteAbbr = σημείωση
+figureAbbr = ψηφ
+definitionlistAbbr = λίστα ορισμών
+termAbbr = όρος
+definitionAbbr = ορισμός
+textareaAbbr = περιοχή κειμένου
+
+# LOCALIZATION NOTE (tblColumnInfoAbbr): Semi-colon list of plural forms.
+# Number of columns within the table.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+tblColumnInfoAbbr = #1σ;#1σ
+# LOCALIZATION NOTE (tblRowInfoAbbr): Semi-colon list of plural forms.
+# Number of rows within the table or grid.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+tblRowInfoAbbr = #1σ;#1σ
+cellInfoAbbr = σ%Sσ%S
+
+stateCheckedAbbr = (x)
+stateUncheckedAbbr = ( )
+statePressedAbbr = (x)
+stateUnpressedAbbr = ( )
+
+mathmlenclosedAbbr = φραγμένο
+mathmltableAbbr = πίνακας
+mathmlcellAbbr = κελί
+mathmlfractionAbbr = κλάσμα
+mathmlfractionwithoutbarAbbr = κλάσμα χωρίς γραμμή
+mathmlrootAbbr = ρίζα
+mathmlscriptedAbbr = με σενάριο
+mathmlsquarerootAbbr = τετρ. ρίζα
+
+baseAbbr = βάση
+close-fenceAbbr = κλείσιμο
+denominatorAbbr = παρονομ.
+numeratorAbbr = αριθμ.
+open-fenceAbbr = ανοικτό
+overscriptAbbr = πάνω από
+presubscriptAbbr = presub
+presuperscriptAbbr = presup
+root-indexAbbr = ευρετήριο
+subscriptAbbr = δεικτ
+superscriptAbbr = εκθ
+underscriptAbbr = κάτω
+
+notation-longdivAbbr = μακρά διαιρ.
+notation-actuarialAbbr = αναλογιστής
+notation-phasorangleAbbr = γωνφασ
+notation-radicalAbbr = rad
+notation-boxAbbr = κουτί
+notation-roundedboxAbbr = στρογγυλό κουτί
+notation-circleAbbr = κύκλος
+notation-leftAbbr = αριστερά
+notation-rightAbbr = δεξιά
+notation-topAbbr = πάνω
+notation-bottomAbbr = κάτω
+notation-updiagonalstrikeAbbr = updiagstrike
+notation-downdiagonalstrikeAbbr = dwndiagstrike
+notation-verticalstrikeAbbr = vstrike
+notation-horizontalstrikeAbbr = hstrike
+notation-updiagonalarrowAbbr = updiagarrow
+notation-madruwbAbbr = madruwb
diff --git a/l10n-el/dom/chrome/accessibility/mac/accessible.properties b/l10n-el/dom/chrome/accessibility/mac/accessible.properties
new file mode 100644
index 0000000000..1cc4e5ee67
--- /dev/null
+++ b/l10n-el/dom/chrome/accessibility/mac/accessible.properties
@@ -0,0 +1,65 @@
+# 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/.
+
+jump = Μετάβαση
+press = Παρατεταμένο πάτημα
+check = Επιλογή
+uncheck = Αποεπιλογή
+select = Επιλογή
+open = Άνοιγμα
+close = Κλείσιμο
+switch = Εναλλαγή
+click = Κλικ
+collapse= Σύμπτυξη
+expand = Ανάπτυξη
+activate= Ενεργοποίηση
+cycle = Κυκλική εναλλαγή
+
+# Universal Access API support
+# (Mac Only)
+# The Role Description for AXWebArea (the web widget). Like in Safari.
+htmlContent = Περιεχόμενο HTML
+# The Role Description for the Tab button.
+tab = καρτέλα
+# The Role Description for definition list dl, dt and dd
+term = όρος
+definition = ορισμός
+# The Role Description for an input type="search" text field
+searchTextField = πεδίο κειμένου αναζήτησης
+# The Role Description for WAI-ARIA Landmarks
+application = εφαρμογή
+search = αναζήτηση
+banner = μπάνερ
+navigation = πλοήγηση
+complementary = συμπληρωματικό
+content = περιεχόμενο
+main = κύριο
+# The (spoken) role description for various WAI-ARIA roles
+alert = ειδοποίηση
+alertDialog = διάλογος ειδοποίησης
+dialog = διάλογος
+article = άρθρο
+document = έγγραφο
+# The (spoken) role description for the WAI-ARIA figure role
+# https://w3c.github.io/aria/core-aam/core-aam.html#role-map-figure
+figure = σχήμα
+# The (spoken) role description for the WAI-ARIA heading role
+# https://w3c.github.io/aria/core-aam/core-aam.html#role-map-heading
+heading = επικεφαλίδα
+log = καταγραφή
+marquee = κυλιόμενο μήνυμα
+math = μαθηματικά
+note = σημείωση
+region = περιοχή
+status = κατάσταση εφαρμογής
+timer = χρονόμετρο
+tooltip = υπόδειξη
+separator = διαχωριστικό
+tabPanel = πίνακας καρτελών
+# The roleDescription for the html:mark element
+highlight = επισήμανση
+# The roleDescription for the details element
+details = λεπτομέρειες
+# The roleDescription for the summary element
+summary = περίληψη
diff --git a/l10n-el/dom/chrome/accessibility/unix/accessible.properties b/l10n-el/dom/chrome/accessibility/unix/accessible.properties
new file mode 100644
index 0000000000..a1f7e11a67
--- /dev/null
+++ b/l10n-el/dom/chrome/accessibility/unix/accessible.properties
@@ -0,0 +1,17 @@
+# 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/.
+
+jump = Μετάβαση
+press = Παρατεταμένο πάτημα
+check = Επιλογή
+uncheck = Αποεπιλογή
+select = Επιλογή
+open = Άνοιγμα
+close = Κλείσιμο
+switch = Εναλλαγή
+click = Κλικ
+collapse= Σύμπτυξη
+expand = Ανάπτυξη
+activate= Ενεργοποίηση
+cycle = Κυκλική εναλλαγή
diff --git a/l10n-el/dom/chrome/accessibility/win/accessible.properties b/l10n-el/dom/chrome/accessibility/win/accessible.properties
new file mode 100644
index 0000000000..a1f7e11a67
--- /dev/null
+++ b/l10n-el/dom/chrome/accessibility/win/accessible.properties
@@ -0,0 +1,17 @@
+# 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/.
+
+jump = Μετάβαση
+press = Παρατεταμένο πάτημα
+check = Επιλογή
+uncheck = Αποεπιλογή
+select = Επιλογή
+open = Άνοιγμα
+close = Κλείσιμο
+switch = Εναλλαγή
+click = Κλικ
+collapse= Σύμπτυξη
+expand = Ανάπτυξη
+activate= Ενεργοποίηση
+cycle = Κυκλική εναλλαγή
diff --git a/l10n-el/dom/chrome/appstrings.properties b/l10n-el/dom/chrome/appstrings.properties
new file mode 100644
index 0000000000..cfc93e0508
--- /dev/null
+++ b/l10n-el/dom/chrome/appstrings.properties
@@ -0,0 +1,38 @@
+# 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/.
+
+malformedURI2=Παρακαλούμε ελέγξτε ότι το URL είναι σωστό και ξαναδοκιμάστε.
+fileNotFound=Το αρχείο %S δεν βρέθηκε. Ελέγξτε τη διαδρομή και προσπαθήστε ξανά.
+fileAccessDenied=Το αρχείο στο %S δεν είναι αναγνώσιμο.
+dnsNotFound2=Το %S δεν βρέθηκε. Παρακαλώ ελέγξτε το όνομα και προσπαθήστε ξανά.
+unknownProtocolFound=Ένα από τα ακόλουθα (%S) δεν είναι καταχωρημένο πρωτόκολλο ή δεν επιτρέπεται σε αυτό το πλαίσιο.
+connectionFailure=Υπήρξε πρόβλημα σύνδεσης στην προσπάθεια επικοινωνίας με %S.
+netInterrupt=Η σύνδεση στο %S τερματίστηκε απρόσμενα. Μερικά από τα δεδομένα μπορεί να μην έχουν μεταφερθεί.
+netTimeout=Λήξη προθεσμίας ενέργειας κατά την προσπάθεια σύνδεσης σε %S.
+redirectLoop=Υπέρβαση του ορίου ανακατεύθυνσης για αυτό το URL. Η φόρτωση διακόπηκε.
+confirmRepostPrompt=Για να εμφανιστεί αυτή η σελίδα, η εφαρμογή θα επαναλάβει οποιαδήποτε προηγούμενη ενέργεια (π.χ. αναζήτηση ή αγορά).
+resendButton.label=Αποστολή ξανά
+unknownSocketType=Δεν είναι η δυνατή η προβολή αυτού του εγγράφου μέχρι να εγκαταστήσετε τη Διαχείριση Προσωπικής ασφάλειας (PSM). Βρείτε και εγκαταστήστε τον PSM και προσπαθήστε ξανά, ή επικοινωνήστε με το διαχειριστή του συστήματος σας.
+netReset=Το έγγραφο δεν περιέχει δεδομένα.
+notCached=Αυτό το έγγραφο δεν είναι πια διαθέσιμο.
+netOffline=Το έγγραφο δε μπορεί να προβληθεί χωρίς σύνδεση.
+isprinting=Το έγγραφο δεν μπορεί να αλλαχθεί κατά την εκτύπωση ή την προεπισκόπηση εκτύπωσης
+deniedPortAccess=Η πρόσβαση στον καθορισμένο αριθμό θύρας έχει απενεργοποιηθεί για λόγους ασφάλειας.
+proxyResolveFailure=Ο διαμεσολαβητής που ρυθμίσατε δεν βρέθηκε. Ελέγξτε τις ρυθμίσεις του διαμεσολαβητή και προσπαθήστε ξανά.
+proxyConnectFailure=Άρνηση σύνδεσης κατά την προσπάθεια επικοινωνίας με το διαμεσολαβητή που ρυθμίσατε. Ελέγξτε τις ρυθμίσεις του διαμεσολαβητή και προσπαθήστε ξανά.
+contentEncodingError=Η σελίδα που προσπαθείτε να δείτε δεν μπορεί να εμφανιστεί επειδή χρησιμοποιεί μια μη έγκυρη ή μη υποστηριζόμενη μορφή συμπίεσης. Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους πληροφορήσετε για το πρόβλημα.
+unsafeContentType=Δεν είναι δυνατή η εμφάνιση αυτής της σελίδας επειδή εμπεριέχεται σε ένα τύπο αρχείου ο οποίος δεν είναι ασφαλής. Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε για το πρόβλημα.
+malwareBlocked=Η σελίδα στο %S έχει αναφερθεί ως σελίδα κακόβουλων επιθέσεων και έχει φραγεί σύμφωνα με τις προτιμήσεις ασφαλείας σας.
+harmfulBlocked=Η σελίδα στο %S έχει αναφερθεί ως πιθανώς βλαβερή ιστοσελίδα και έχει φραγεί σύμφωνα με τις προτιμήσεις ασφαλείας σας.
+unwantedBlocked=Η ιστοσελίδα στο %S έχει αναφερθεί ότι περιέχει ανεπιθύμητο λογισμικό και έχει φραγεί σύμφωνα με τις προτιμήσεις ασφαλείας σας.
+deceptiveBlocked=Αυτή η ιστοσελίδα στο %S έχει αναφερθεί ως παραπλανητική ιστοσελίδα και έχει αποκλειστεί βάσει των προτιμήσεων ασφαλείας σας.
+cspBlocked=Η πολιτική ασφάλειας περιεχομένου αυτής της σελίδας δεν της επιτρέπει να φορτωθεί με αυτόν τον τρόπο.
+xfoBlocked=Αυτή η σελίδα έχει πολιτική X-Frame-Options που εμποδίζει τη φόρτωσή της σε αυτό το πλαίσιο.
+corruptedContentErrorv2=Η ιστοσελίδα στο %S έχει υποστεί παραβίαση πρωτοκόλλου δικτύου που δεν μπορεί να διορθωθεί.
+remoteXUL=Αυτή η σελίδα χρησιμοποιεί μια μη υποστηριζόμενη τεχνολογία που δεν είναι πια διαθέσιμη στον Firefox.
+sslv3Used=Δεν υπάρχει εγγύηση της ασφάλειας των δεδομένων σας στο %S, επειδή χρησιμοποιεί SSLv3, ένα ανασφαλές πρωτόκολλο.
+weakCryptoUsed=Ο ιδιοκτήτης της ιστοσελίδας %S δεν την έχει ρυθμίσει σωστά.  Για να προστατευτούν οι πληροφορίες σας από κλοπή, δεν έγινε σύνδεση στην ιστοσελίδα αυτή.
+inadequateSecurityError=Η ιστοσελίδα επιχείρησε να διαπραγματευθεί ένα ανεπαρκές επίπεδο ασφάλειας.
+blockedByPolicy=Ο οργανισμός σας έχει αποκλείσει την πρόσβαση σε αυτή τη σελίδα ή την ιστοσελίδα.
+networkProtocolError=Το Firefox αντιμετώπισε μια παραβίαση πρωτοκόλλου δικτύου που δεν μπορεί να επιδιορθωθεί.
diff --git a/l10n-el/dom/chrome/dom/dom.properties b/l10n-el/dom/chrome/dom/dom.properties
new file mode 100644
index 0000000000..897c8aa43d
--- /dev/null
+++ b/l10n-el/dom/chrome/dom/dom.properties
@@ -0,0 +1,430 @@
+# 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/.
+
+KillScriptTitle=Προειδοποίηση: Μη αποκρίσιμο σενάριο
+KillScriptMessage=Ένα σενάριο σε αυτή τη σελίδα ενδέχεται να είναι απασχολημένο, ή να έχει σταματήσει να ανταποκρίνεται. Μπορείτε να το διακόψετε, ή να συνεχίσετε για να δείτε αν θα ολοκληρωθεί.
+KillScriptWithDebugMessage=Ένα σενάριο σε αυτή τη σελίδα ενδέχεται να είναι απασχολημένο, ή να έχει σταματήσει να ανταποκρίνεται. Μπορείτε να το διακόψετε, να το ανοίξετε στον εντοπισμό σφαλμάτων, ή να του επιτρέψετε να συνεχίσει.
+KillScriptLocation=Σενάριο ενεργειών: %S
+
+KillAddonScriptTitle=Προειδοποίηση: Μη αποκρίσιμο σενάριο προσθέτου
+# LOCALIZATION NOTE (KillAddonScriptMessage): %1$S is the name of an extension.
+# %2$S is the name of the application (e.g., Firefox).
+KillAddonScriptMessage=Ένα σενάριο από την επέκταση “%1$S” εκτελείται σε αυτή τη σελίδα και κάνει το %2$S μη αποκρίσιμο.\n\nΕνδέχεται να είναι απασχολημένο, ή ενδέχεται να έχει σταματήσει να αποκρίνεται οριστικά. Μπορείτε να σταματήσετε το σενάριο τώρα, ή μπορείτε να συνεχίσετε για να δείτε αν θα ολοκληρωθεί.
+KillAddonScriptGlobalMessage=Αποτροπή εκτέλεσης σεναρίου επέκτασης σε αυτή τη σελίδα, μέχρι την επόμενη φορά που θα φορτωθεί εκ νέου
+
+StopScriptButton=Διακοπή σεναρίου ενεργειών
+DebugScriptButton=Εκσφαλμάτωση σεναρίου
+WaitForScriptButton=Συνέχεια
+DontAskAgain=Να μην γίνει ερώτηση ξανά
+WindowCloseBlockedWarning=Τα σενάρια ενεργειών δεν θα μπορούν να κλείσουν παράθυρα που δεν ανοίχθηκαν από ένα σενάριο.
+OnBeforeUnloadTitle=Σίγουρα;
+OnBeforeUnloadMessage=Αυτή η σελίδα ζητά την επιβεβαίωση σας για την έξοδο σας από αυτήν - τα δεδομένα που έχετε εισάγει πιθανόν να μην αποθηκευτούν.
+OnBeforeUnloadStayButton=Παραμονή στη σελίδα
+OnBeforeUnloadLeaveButton=Έξοδος από τη σελίδα
+EmptyGetElementByIdParam=Πέρασε κενή συμβολοσειρά στην getElementById().
+SpeculationFailed=Ένα ασύμμετρο δέντρο γράφτηκε μέσω της document.write() προκαλώντας επανεπεξεργασία των δικτυακών δεδομένων. Για περισσότερες πληροφορίες https://developer.mozilla.org/en/Optimizing_Your_Pages_for_Speculative_Parsing
+DocumentWriteIgnored=Αγνοήθηκε μια κλήση της document.write() από ασύγχρονα φορτωμένο εξωτερικό σενάριο.
+# LOCALIZATION NOTE (EditorFileDropFailed): Do not translate contenteditable, %S is the error message explaining why the drop failed.
+EditorFileDropFailed=Απέτυχε η απόθεση ενός αρχείου σε ένα στοιχείο contenteditable: %S.
+FormValidationTextTooLong=Παρακαλώ συντομεύστε αυτό το κείμενο σε %S ή λιγότερους χαρακτήρες (τώρα χρησιμοποιείτε %S).
+FormValidationTextTooShort=Παρακαλώ χρησιμοποιήστε τουλάχιστον %S χαρακτήρες (τώρα, χρησιμοποιείτε %S χαρακτήρες).
+FormValidationValueMissing=Παρακαλώ συμπληρώστε αυτό το πεδίο.
+FormValidationCheckboxMissing=Παρακαλώ επιλέξτε αυτό το κουτί αν θέλετε να συνεχίσετε.
+FormValidationRadioMissing=Παρακαλούμε επιλέξτε μια από αυτές τις επιλογές.
+FormValidationFileMissing=Παρακαλώ επιλέξτε ένα αρχείο.
+FormValidationSelectMissing=Παρακαλούμε επιλέξτε ένα στοιχείο στη λίστα.
+FormValidationInvalidEmail=Παρακαλώ εισάγετε μια διεύθυνση email.
+FormValidationInvalidURL=Παρακαλώ εισάγετε ένα URL.
+FormValidationInvalidDate =Παρακαλώ εισάγετε μια έγκυρη ημερομηνία.
+FormValidationPatternMismatch=Παρακαλώ να ταιριάζει στην απαιτούμενη μορφή.
+# LOCALIZATION NOTE (FormValidationPatternMismatchWithTitle): %S is the (possibly truncated) title attribute value.
+FormValidationPatternMismatchWithTitle=Παρακαλώ να ταιριάζει στην απαιτούμενη μορφή: %S.
+# LOCALIZATION NOTE (FormValidationNumberRangeOverflow): %S is a number.
+FormValidationNumberRangeOverflow=Παρακαλώ επιλέξτε τιμή όχι μεγαλύτερη από %S.
+# LOCALIZATION NOTE (FormValidationDateTimeRangeOverflow): %S is a date or a time.
+FormValidationDateTimeRangeOverflow=Παρακαλώ επιλέξτε μια τιμή που να μην είναι μετά το %S.
+# LOCALIZATION NOTE (FormValidationNumberRangeUnderflow): %S is a number.
+FormValidationNumberRangeUnderflow=Παρακαλώ επιλέξτε τιμή όχι μικρότερη από %S.
+# LOCALIZATION NOTE (FormValidationDateTimeRangeUnderflow): %S is a date or a time.
+FormValidationDateTimeRangeUnderflow=Παρακαλώ επιλέξτε μια τιμή που να μην είναι πριν το %S.
+# LOCALIZATION NOTE (FormValidationStepMismatch): both %S can be a number, a date or a time.
+FormValidationStepMismatch=Παρακαλώ επιλέξτε μια έγκυρη τιμή. Οι δύο πλησιέστερες έγκυρες τιμές είναι %S και %S.
+# LOCALIZATION NOTE (FormValidationStepMismatchOneValue): %S can be a number, a date or a time. This is called instead of FormValidationStepMismatch when the second value is the same as the first.
+FormValidationStepMismatchOneValue=Παρακαλώ επιλέξτε μια έγκυρη τιμή. Η πλησιέστερη έγκυρη τιμή είναι %S.
+# LOCALIZATION NOTE (FormValidationTimeReversedRangeUnderflowAndOverflow): %1$S,%2$S are time.
+FormValidationTimeReversedRangeUnderflowAndOverflow=Παρακαλούμε επιλέξτε μια τιμή μεταξύ %1$S και %2$S.
+FormValidationBadInputNumber=Παρακαλώ εισάγετε έναν αριθμό.
+FullscreenDeniedDisabled=Η αίτηση για πλήρη οθόνη δεν έγινε δεκτή επειδή το Fullscreen API είναι απενεργοποιημένο από τις προτιμήσεις του χρήστη.
+FullscreenDeniedFocusedPlugin=Η αίτηση για πλήρη οθόνη δεν έγινε δεκτή επειδή ένα παράθυρο αρθρώματος έχει την εστίαση.
+FullscreenDeniedHidden=Η αίτηση για πλήρη οθόνη δεν έγινε δεκτή επειδή το έγγραφο δεν είναι πλέον ορατό.
+FullscreenDeniedHTMLDialog=Το αίτημα για πλήρη οθόνη απορρίφθηκε επειδή το στοιχείο αιτήματος είναι στοιχείο <dialog>.
+FullscreenDeniedContainerNotAllowed=Το αίτημα για πλήρη οθόνη δεν έγινε δεκτό, επειδή τουλάχιστον ένα από τα στοιχεία-περιέκτες του εγγράφου δεν είναι iframe ή δεν διαθέτει την ιδιότητα “allowfullscreen”.
+FullscreenDeniedNotInputDriven=Η αίτηση για πλήρη οθόνη δεν έγινε δεκτή, επειδή η κλήση του Element.requestFullscreen() δεν έγινε μέσα από ένα βραχύβιο χειριστή συμβάντων χρήστη.
+FullscreenDeniedMouseEventOnlyLeftBtn=Η αίτηση για πλήρη οθόνη δεν έγινε δεκτή, επειδή η κλήση του Element.requestFullscreen() έγινε μέσα από ένα χειριστή συμβάντων ποντικιού, που δεν προκλήθηκε από το αριστερό κουμπί του ποντικιού.
+FullscreenDeniedNotHTMLSVGOrMathML=Το αίτημα για πλήρη οθόνη δεν έγινε δεκτό επειδή το αιτούν στοιχείο δεν είναι <svg>, <math> ή στοιχείο HTML.
+FullscreenDeniedNotInDocument=Το αίτημα για πλήρη οθόνη δεν έγινε δεκτό επειδή το αιτούν στοιχείο δεν βρίσκεται πλέον στο έγγραφο του.
+FullscreenDeniedMovedDocument=Το αίτημα για πλήρη οθόνη δεν έγινε δεκτό επειδή το αιτούν στοιχείο έχει μετακινήσει το έγγραφο.
+FullscreenDeniedLostWindow=Το αίτημα για πλήρη οθόνη δεν έγινε δεκτό επειδή δεν υπάρχει πλέον παράθυρο.
+FullscreenDeniedSubDocFullscreen=Το αίτημα για πλήρη οθόνη δεν έγινε δεκτό επειδή ένα υπό-έγγραφο του αιτούντος εγγράφου βρίσκεται ήδη σε πλήρη οθόνη.
+FullscreenDeniedNotDescendant=Το αίτημα για πλήρη οθόνη δεν έγινε δεκτό επειδή το αιτούν στοιχείο δεν είναι απόγονος του τρέχοντος στοιχείου σε πλήρη οθόνη.
+FullscreenDeniedNotFocusedTab=Το αίτημα για πλήρη οθόνη δεν έγινε δεκτό επειδή το αιτούν στοιχείο δεν βρίσκεται στην τρέχουσα εστιασμένη καρτέλα.
+FullscreenDeniedFeaturePolicy=Το αίτημα για πλήρη οθόνη δεν έγινε δεκτό λόγω των οδηγιών του FeaturePolicy.
+FullscreenExitWindowFocus=Η πλήρης οθόνη τερματίστηκε επειδή έγινε εστίαση σε παράθυρο.
+RemovedFullscreenElement=Η πλήρης οθόνη τερματίστηκε επειδή το στοιχείο πλήρους οθόνης αφαιρέθηκε από το έγγραφο.
+FocusedWindowedPluginWhileFullscreen=Η πλήρης οθόνη τερματίστηκε επειδή έγινε εστίαση σε παράθυρο αρθρώματος.
+PointerLockDeniedDisabled=Το αίτημα για κλείδωμα δείκτη δεν έγινε δεκτό επειδή το Pointer Lock API έχει απενεργοποιηθεί από προτίμηση του χρήστη.
+PointerLockDeniedInUse=Το αίτημα για κλείδωμα δείκτη δεν έγινε δεκτό επειδή ο δείκτης ελέγχεται προς το παρόν από ένα διαφορετικό έγγραφο.
+PointerLockDeniedNotInDocument=Το αίτημα για κλείδωμα δείκτη δεν έγινε δεκτό επειδή το αιτούν στοιχείο δεν βρίσκεται σε έγγραφο.
+PointerLockDeniedSandboxed=Το αίτημα για κλείδωμα δείκτη δεν έγινε δεκτό επειδή το Pointer Lock API περιορίζεται μέσω του sandbox.
+PointerLockDeniedHidden=Το αίτημα για κλείδωμα δείκτη δεν έγινε δεκτό επειδή το έγγραφο δεν είναι ορατό.
+PointerLockDeniedNotFocused=Το αίτημα για κλείδωμα δείκτη δεν έγινε δεκτό επειδή το έγγραφο δεν είναι εστιασμένο.
+PointerLockDeniedMovedDocument=Το αίτημα για κλείδωμα δείκτη δεν έγινε δεκτό επειδή το αιτούν στοιχείο έχει μετακινήσει το έγγραφο.
+PointerLockDeniedNotInputDriven=Το αίτημα για κλείδωμα δείκτη δεν έγινε δεκτό επειδή το Element.requestPointerLock() δεν κλήθηκε από το εσωτερικό ενός βραχύχρονου διαχειριστή συμβάντων του χρήστη και το έγγραφο δεν είναι σε πλήρη οθόνη.
+PointerLockDeniedFailedToLock=Το αίτημα για κλείδωμα δείκτη δεν έγινε δεκτό επειδή το πρόγραμμα περιήγησης απέτυχε στο κλείδωμα του δείκτη.
+HTMLSyncXHRWarning=Η ανάλυση HTML στο XMLHttpRequest δεν υποστηρίζεται στη σύγχρονη λειτουργία.
+# LOCALIZATION NOTE: %S is the name of the header in question
+ForbiddenHeaderWarning=Η προσπάθεια ορισμού απαγορευμένης κεφαλίδας απορρίφθηκε: %S
+ResponseTypeSyncXHRWarning=Η χρήση της ιδιότητας responseType του XMLHttpRequest δεν υποστηρίζεται πλέον στην ταυτόχρονη λειτουργία σε πλαίσιο παραθύρου.
+TimeoutSyncXHRWarning=Η χρήση της ιδιότητας χρονικού ορίου του XMLHttpRequest δεν υποστηρίζεται στην ταυτόχρονη λειτουργία σε πλαίσιο παραθύρου.
+# LOCALIZATION NOTE: Do not translate navigator.sendBeacon, unload, pagehide, or XMLHttpRequest.
+UseSendBeaconDuringUnloadAndPagehideWarning=Η χρήση του navigator.sendBeacon αντί του συγχρονισμένου XMLHttpRequest κατά τα unload και pagehide βελτιώνει την εμπειρία χρήστη.
+JSONCharsetWarning=Έγινε προσπάθεια για δήλωση μιας κωδικοποίησης μη-UTF-8 για το JSON, που ανακτήθηκε με χρήση του XMLHttpRequest. Υποστηρίζεται μόνο το UTF-8 για την αποκωδικοποίηση του JSON.
+# LOCALIZATION NOTE: Do not translate decodeAudioData.
+MediaDecodeAudioDataUnknownContentType=Το buffer, που πέρασε στο decodeAudioData, περιέχει έναν άγνωστο τύπο περιεχομένου.
+# LOCALIZATION NOTE: Do not translate decodeAudioData.
+MediaDecodeAudioDataUnknownError=Προέκυψε άγνωστο σφάλμα κατά την επεξεργασία του decodeAudioData.
+# LOCALIZATION NOTE: Do not translate decodeAudioData.
+MediaDecodeAudioDataInvalidContent=Το buffer, που πέρασε στο decodeAudioData, περιέχει μη έγκυρο περιεχόμενο, το οποίο δεν μπορεί να αποκωδικοποιηθεί με επιτυχία.
+# LOCALIZATION NOTE: Do not translate decodeAudioData.
+MediaDecodeAudioDataNoAudio=Το buffer, που πέρασε στο decodeAudioData, δεν περιέχει ήχο.
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and createMediaElementSource.
+MediaElementAudioSourceNodeCrossOrigin=Το HTMLMediaElement, που πέρασε στο createMediaElementSource, έχει έναν πόρο πολλαπλών προελεύσεων· ο κόμβος θα εκπέμψει σιωπή.
+# LOCALIZATION NOTE: Do not translate MediaStream and createMediaStreamSource.
+MediaStreamAudioSourceNodeCrossOrigin=Το MediaStream, που πέρασε στο createMediaElementSource, έχει έναν πόρο πολλαπλών προελεύσεων· ο κόμβος θα εκπέμψει σιωπή.
+# LOCALIZATION NOTE : Do not translate MediaStreamTrack and createMediaStreamTrackSource.
+MediaStreamTrackAudioSourceNodeCrossOrigin=Το MediaStreamTrack, που πέρασε στο createMediaStreamTrackSource, είναι ένας πόρος πολλαπλών προελεύσεων· ο κόμβος θα εκπέμψει σιωπή.
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and MediaStream.
+MediaElementAudioCaptureOfMediaStreamError=Το συλληφθέν HTMLMediaElement αναπαράγει ένα MediaStream. Η ρύθμιση έντασης ή σίγασης του ήχου δεν υποστηρίζεται προς το παρόν.
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and MediaStream.
+MediaElementStreamCaptureCycle=Το MediaStream που έχει ανατεθεί στο srcObject προέρχεται από καταγραφή αυτού του HTMLMediaElement, σχηματίζοντας κύκλο, η ανάθεση παραβλέπεται.
+MediaLoadExhaustedCandidates=Όλοι οι υποψήφιοι πόροι απέτυχαν να φορτωθούν. Φόρτωση μέσων σε παύση.
+MediaLoadSourceMissingSrc=Το στοιχείο <source> δεν έχει ιδιότητα “src”. Η φόρτωση του πόρου μέσων απέτυχε.
+MediaStreamAudioSourceNodeDifferentRate=Η σύνδεση AudioNodes από AudioContexts με διαφορετικό ρυθμό δειγματοληψίας δεν υποστηρίζεται προς το παρόν.
+# LOCALIZATION NOTE: %1$S is the Http error code the server returned (e.g. 404, 500, etc), %2$S is the URL of the media resource which failed to load.
+MediaLoadHttpError=Αποτυχία φόρτωσης HTTP με κατάσταση %1$S. Η φόρτωση του πόρου μέσων %2$S απέτυχε.
+# LOCALIZATION NOTE: %S is the URL of the media resource which failed to load.
+MediaLoadInvalidURI=Μη έγκυρο URI. Αποτυχία φόρτωσης πόρου πολυμέσων %S.
+# LOCALIZATION NOTE: %1$S is the media resource's format/codec type (basically equivalent to the file type, e.g. MP4,AVI,WMV,MOV etc), %2$S is the URL of the media resource which failed to load.
+MediaLoadUnsupportedTypeAttribute=Η καθορισμένη ιδιότητα “type” του “%1$S” δεν υποστηρίζεται. Η φόρτωση του πόρου μέσων %2$S απέτυχε.
+MediaLoadUnsupportedTypeAttributeLoadingNextChild=Η καθορισμένη ιδιότητα “type” του “%1$S” δεν υποστηρίζεται. Η φόρτωση του πόρου πολυμέσεων %2$S απέτυχε. Γίνεται προσπάθεια φόρτωσης από το επόμενο στοιχείο <source>.
+# LOCALIZATION NOTE: %1$S is the MIME type HTTP header being sent by the web server, %2$S is the URL of the media resource which failed to load.
+MediaLoadUnsupportedMimeType=Το HTTP “Content-Type” του “%1$S” δεν υποστηρίζεται. Η φόρτωση του πόρου μέσων %2$S απέτυχε.
+# LOCALIZATION NOTE: %S is the URL of the media resource which failed to load because of error in decoding.
+MediaLoadDecodeError=Αδυναμία αποκωδικοποίησης πόρου πολυμέσων %S.
+MediaWidevineNoWMF=Απόπειρα αναπαραγωγής του Widevine με κανένα Windows Media Foundation. Δείτε το https://support.mozilla.org/kb/fix-video-audio-problems-firefox-windows
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaWMFNeeded=Για να αναπαραγάγετε μορφές βίντεο %S, πρέπει να εγκαταστήσετε επιπρόσθετο λογισμικό της Microsoft, δείτε το https://support.mozilla.org/kb/fix-video-audio-problems-firefox-windows
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaPlatformDecoderNotFound=Το βίντεο σε αυτή τη σελίδα δεν μπορεί να αναπαραχθεί. Το σύστημά σας ενδέχεται να μην έχει τους απαιτούμενους κωδικοποιητές βίντεο για το: %S
+MediaUnsupportedLibavcodec=Το βίντεο σε αυτή τη σελίδα δεν μπορεί να αναπαραχθεί. Το σύστημά σας έχει μια μη υποστηριζόμενη έκδοση του libavcodec
+# LOCALIZATION NOTE: %1$S is the URL of the media resource, %2$S is technical information (in English)
+MediaDecodeError=Αδυναμία αποκρυπτογράφησης του πόρου μέσων %1$S, σφάλμα: %2$S
+# LOCALIZATION NOTE: %1$S is the URL of the media resource, %2$S is technical information (in English)
+MediaDecodeWarning=Ο πόρος πολυμέσων %1$S μπόρεσε να αποκωδικοποιηθεί, αλλά με σφάλμα: %2$S
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaCannotPlayNoDecoders=Αδυναμία αναπαραγωγής πολυμέσων. Κανένας αποκωδικοποιητής για τις ζητούμενες μορφές: %S
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaNoDecoders=Κανένας αποκωδικοποιητής για ορισμένες από τις ζητούμενες μορφές: %S
+MediaCannotInitializePulseAudio=Αδυναμία χρήσης PulseAudio
+# LOCALIZATION NOTE: Do not translate "MediaRecorder".
+MediaRecorderMultiTracksNotSupported=Το MediaRecorder δεν υποστηρίζει την εγγραφή πολλαπλών κομματιών του ίδιου τύπου προς το παρόν.
+# LOCALIZATION NOTE: %S is the URL of the web page which is not served on HTTPS and thus is not encrypted and considered insecure.
+MediaEMEInsecureContextDeprecatedWarning=Η χρήση των Encrypted Media Extensions στο %S, σε επισφαλές (δηλ. μη-HTTPS) περιβάλλον είναι παρωχημένη και θα αφαιρεθεί σύντομα. Πρέπει να σκεφτείτε την αλλαγή σε μια ασφαλή προέλευση, όπως το HTTPS.
+# LOCALIZATION NOTE: %S is the URL of the web page which is calling web APIs without passing data (either an audioCapabilities or a videoCapabilities) that will soon be required. See https://bugzilla.mozilla.org/show_bug.cgi?id=1368583#c21 for explanation of this string.
+MediaEMENoCapabilitiesDeprecatedWarning=Η κλήση του navigator.requestMediaKeySystemAccess() (σε %S), χωρίς να περάσει από ένα υποψήφιο MediaKeySystemConfiguration, που περιέχει τα audioCapabilities ή videoCapabilities, είναι παρωχημένη και, σύντομα, δεν θα υποστηρίζεται.
+# LOCALIZATION NOTE: %S is the URL of the web page which is calling web APIs without passing data (a "codecs" string in the "contentType") that will soon be required. See https://bugzilla.mozilla.org/show_bug.cgi?id=1368583#c21 for explanation of this string.
+MediaEMENoCodecsDeprecatedWarning=Η κλήση του navigator.requestMediaKeySystemAccess() (σε %S), που περνάει από ένα υποψήφιο MediaKeySystemConfiguration, που περιέχει τα audioCapabilities ή videoCapabilities, χωρίς ένα contentType με μια συμβολοσειρά “codecs”, είναι παρωχημένη και, σύντομα, δεν θα υποστηρίζεται.
+# LOCALIZATION NOTE: Do not translate "Mutation Event" and "MutationObserver"
+MutationEventWarning=Η χρήση του Mutation Events είναι παρωχημένη. Χρησιμοποιήστε το MutationObserver.
+BlockAutoplayError=Η αυτόματη αναπαραγωγή επιτρέπεται μόνο όταν εγκρίνεται από το χρήστη, η ιστοσελίδα ενεργοποιείται από το χρήστη, ή γίνεται σίγαση πολυμέσων.
+BlockAutoplayWebAudioStartError=Εμποδίστηκε η αυτόματη εκκίνηση ενός AudioContext. Πρέπει να δημιουργηθεί ή να συνεχιστεί μετά από μια χειρονομία χρήστη στη σελίδα.
+# LOCALIZATION NOTE: Do not translate "Components"
+ComponentsWarning=Το αντικείμενο Components είναι παρωχημένο. Θα αφαιρεθεί σύντομα.
+PluginHangUITitle=Προειδοποίηση: Μη αποκρίσιμο άρθρωμα
+PluginHangUIMessage=Το %S μπορεί να είναι απασχολημένο, ή να έχει σταματήσει να αποκρίνεται. Μπορείτε να διακόψετε το άρθρωμα τώρα ή να συνεχίσετε για να δείτε αν θα ολοκληρωθεί.
+PluginHangUIWaitButton=Συνέχεια
+PluginHangUIStopButton=Διακοπή αρθρώματος
+# LOCALIZATION NOTE: Do not translate "NodeIterator" or "detach()".
+NodeIteratorDetachWarning=Η κλήση detach() σε ένα NodeIterator δεν έχει πλέον επίδραση.
+# LOCALIZATION NOTE: Do not translate "LenientThis" and "this"
+LenientThisWarning=Παράβλεψη απόκτησης ή ορισμού ιδιότητας που έχει [LenientThis], επειδή το αντικείμενο “this” είναι λάθος.
+# LOCALIZATION NOTE: Do not translate "captureEvents()" or "addEventListener()"
+UseOfCaptureEventsWarning=Η χρήση του captureEvents() είναι παρωχημένη. Για να αναβαθμίσετε τον κώδικά σας, χρησιμοποιήστε τη μέθοδο DOM 2 addEventListener(). Για περισσότερη βοήθεια: http://developer.mozilla.org/en/docs/DOM:element.addEventListener
+# LOCALIZATION NOTE: Do not translate "releaseEvents()" or "removeEventListener()"
+UseOfReleaseEventsWarning=Η χρήση του releaseEvents() είναι παρωχημένη. Για να αναβαθμίσετε τον κώδικά σας, χρησιμοποιήστε τη μέθοδο DOM 2 removeEventListener(). Για περισσότερη βοήθεια: http://developer.mozilla.org/en/docs/DOM:element.removeEventListener
+# LOCALIZATION NOTE: Do not translate "XMLHttpRequest"
+SyncXMLHttpRequestWarning=Το συγχρονισμένο XMLHttpRequest στο κύριο νήμα είναι παρωχημένο λόγω των καταστροφικών του επιπτώσεων στην εμπειρία του τελικού χρήστη. Για περισσότερη βοήθεια: http://xhr.spec.whatwg.org/
+# LOCALIZATION NOTE: Do not translate "window.controllers/Controllers"
+Window_Cc_ontrollersWarning=Το «window.controllers/Controllers» είναι παρωχημένο. Μην το χρησιμοποιείτε για ανίχνευση UA.
+ImportXULIntoContentWarning=Η εισαγωγή κόμβων XUL σε ένα έγγραφο περιεχομένου είναι παρωχημένη. Αυτή η λειτουργικότητα ενδέχεται να αφαιρεθεί σύντομα.
+# LOCALIZATION NOTE: Do not translate "IndexedDB".
+IndexedDBTransactionAbortNavigation=Μια συναλλαγή IndexedDB, η οποία δεν είχε ακόμη ολοκληρωθεί, έχει ακυρωθεί λόγω της πλοήγησης σελίδας.
+# LOCALIZATION NOTE: Do not translate Will-change, %1$S,%2$S are numbers.
+IgnoringWillChangeOverBudgetWarning=Η κατανάλωση μνήμης Will-change είναι πολύ υψηλή. Το όριο προϋπολογισμού είναι η περιοχή επιφάνειας εγγράφου πολλαπλασιασμένη με %1$S (%2$S px). Θα αγνοηθούν περιπτώσεις του will-change στον προϋπολογισμό.
+# LOCALIZATION NOTE: Do not translate "Worker".
+HittingMaxWorkersPerDomain2=Ένα worker δεν μπορούσε να ξεκινήσει άμεσα, επειδή άλλα έγγραφα στην ίδια προέλευση χρησιμοποιούν ήδη το μέγιστο αριθμό workers. Το worker βρίσκεται πλέον στην ουρά και θα ξεκινήσει αφού ολοκληρωθούν μερικά άλλα workers.
+# LOCALIZATION NOTE: Do not translate "Application Cache API", "AppCache" and "ServiceWorker".
+AppCacheWarning=Το Application Cache API (AppCache) είναι παρωχημένο και θα αφαιρεθεί σε μελλοντική ημερομηνία. Παρακαλώ σκεφτείτε να χρησιμοποιήσετε το ServiceWorker για υποστήριξη εκτός σύνδεσης.
+# LOCALIZATION NOTE: Do not translate "Worker".
+EmptyWorkerSourceWarning=Προσπάθεια δημιουργίας worker από μια κενή πηγή. Αυτό είναι πιθανώς ακούσιο.
+WebrtcDeprecatedPrefixWarning=Οι διεπαφές WebRTC με το πρόθεμα “moz” (mozRTCPeerConnection, mozRTCSessionDescription, mozRTCIceCandidate) είναι παρωχημένες.
+NavigatorGetUserMediaWarning=Το navigator.mozGetUserMedia έχει αντικατασταθεί από το navigator.mediaDevices.getUserMedia
+# LOCALIZATION NOTE: Do not translate "RTCPeerConnection", "getLocalStreams", "getRemoteStreams", "getSenders" or "getReceivers".
+RTCPeerConnectionGetStreamsWarning=Τα RTCPeerConnection.getLocalStreams/getRemoteStreams είναι παλιά. Χρησιμοποιήστε τα RTCPeerConnection.getSenders/getReceivers.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %S is a URL.
+InterceptionFailedWithURL=Αποτυχία φόρτωσης ‘%S’. Ένα ServiceWorker αναχαίτισε το αίτημα και αντιμετώπισε ένα απροσδόκητο σφάλμα.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "cors", "Response", "same-origin" or "Request". %1$S is a URL, %2$S is a URL.
+CorsResponseForSameOriginRequest=Αποτυχία φόρτωσης του ‘%1$S’ με απάντηση ‘%2$S’. Δεν επιτρέπεται στο ServiceWorker να συνθέσει μια cors Response για same-origin Request.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "FetchEvent.respondWith()", "FetchEvent", "no-cors", "opaque", "Response", or "RequestMode". %1$S is a URL. %2$S is a RequestMode value.
+BadOpaqueInterceptionRequestModeWithURL=Αποτυχία φόρτωσης ‘%1$S’. Ένα ServiceWorker πέρασε ένα opaque Response στο FetchEvent.respondWith() κατά τον χειρισμό ενός ‘%2$S’ FetchEvent. Τα αντικείμενα Opaque Response είναι έγκυρα μόνο όταν το RequestMode είναι ‘no-cors’.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Error", "Response", "FetchEvent.respondWith()", or "fetch()". %S is a URL.
+InterceptedErrorResponseWithURL=Αποτυχία φόρτωσης ‘%1$S’. Ένα ServiceWorker πέρασε ένα Error Response στο FetchEvent.respondWith(). Αυτό, τυπικά, σημαίνει ότι το ServiceWorker εκτέλεσε μια άκυρη κλήση fetch().
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Response", "FetchEvent.respondWith()", or "Response.clone()". %S is a URL.
+InterceptedUsedResponseWithURL=Αποτυχία φόρτωσης ‘%1$S’. Ένα ServiceWorker πέρασε ένα χρησιμοποιημένο Response στο FetchEvent.respondWith(). Το κυρίως μέρος ενός Response μπορεί να αναγνωσθεί μόνο μια φορά. Χρησιμοποιήστε το Response.clone() για πρόσβαση στο κυρίως μέρος πολλαπλές φορές.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "opaqueredirect", "Response", "FetchEvent.respondWith()", or "FetchEvent". %s is a URL.
+BadOpaqueRedirectInterceptionWithURL=Αποτυχία φόρτωσης ‘%1$S’. Ένα ServiceWorker πέρασε ένα opaqueredirect Response στο FetchEvent.respondWith() κατά τον χειρισμό ενός FetchEvent μη-πλοήγησης.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Response", "FetchEvent.respondWith()", "RedirectMode" or "follow". %S is a URL.
+BadRedirectModeInterceptionWithURL=Αποτυχία φόρτωσης ‘%1$S’. Ένα ServiceWorker πέρασε ένα ανακατευθυνόμενο Response στο FetchEvent.respondWith(), ενώ το RedirectMode δεν είναι ‘follow’.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker" or "FetchEvent.preventDefault()". %S is a URL.
+InterceptionCanceledWithURL=Αποτυχία φόρτωσης ‘%1$S’. Ένα ServiceWorker ακύρωσε τη φόρτωση καλώντας το FetchEvent.preventDefault().
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "promise", or "FetchEvent.respondWith()". %1$S is a URL. %2$S is an error string.
+InterceptionRejectedResponseWithURL=Αποτυχία φόρτωσης ‘%1$S’. Ένα ServiceWorker πέρασε ένα promise στο FetchEvent.respondWith() που απορρίφθηκε με ‘%2$S’.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "promise", "FetchEvent.respondWith()", or "Response". %1$S is a URL. %2$S is an error string.
+InterceptedNonResponseWithURL=Αποτυχία φόρτωσης ‘%1$S’. Ένα ServiceWorker ακύρωσε ένα promise στο FetchEvent.respondWith() που επιλύθηκε με μη-Response τιμή ‘%2$S’.
+# LOCALIZATION NOTE: Do not translate "mozImageSmoothingEnabled", or "imageSmoothingEnabled"
+PrefixedImageSmoothingEnabledWarning=Η χρήση του mozImageSmoothingEnabled είναι παρωχημένη. Παρακαλώ χρησιμοποιήστε την ιδιότητα imageSmoothingEnabled χωρίς πρόθεμα.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Service-Worker-Allowed" or "HTTP". %1$S and %2$S are URLs.
+ServiceWorkerScopePathMismatch=Αποτυχία εγγραφής ServiceWorker: Η διαδρομή του παρεχόμενου εύρους ‘%1$S’ δεν είναι κάτω του μέγιστου εύρους που επιτρέπεται στο ‘%2$S’. Προσαρμόστε το εύρος, μετακινήστε το σενάριο του Service Worker ή χρησιμοποιήστε την επικεφαλίδα HTTP Service-Worker-Allowed για να επιτρέψετε το εύρος.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %1$S is a URL representing the scope of the ServiceWorker, %2$S is a stringified numeric HTTP status code like "404" and %3$S is a URL.
+ServiceWorkerRegisterNetworkError=Αποτυχία εγγραφής/ενημέρωσης ενός ServiceWorker για εύρος ‘%1$S’: Η φόρτωση απέτυχε με κατάσταση %2$S για σενάριο ‘%3$S’.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %1$S is a URL representing the scope of the ServiceWorker, %2$S is a MIME Media Type like "text/plain" and %3$S is a URL.
+ServiceWorkerRegisterMimeTypeError2=Αποτυχία εγγραφής/ενημέρωσης ενός ServiceWorker για εύρος ‘%1$S’: Ελήφθη κακό Content-Type του ‘%2$S’ για σενάριο ‘%3$S’. Πρέπει να είναι τύπος JavaScript MIME.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %S is a URL representing the scope of the ServiceWorker.
+ServiceWorkerRegisterStorageError=Αποτυχία εγγραφής/ενημέρωσης ενός ServiceWorker στο πεδίο ‘%S’: Η πρόσβαση αποθήκευσης είναι περιορισμένη στο περιεχόμενο αυτό λόγω ρυθμίσεων χρήστη ή λειτουργίας ιδιωτικής περιήγησης.
+ServiceWorkerGetRegistrationStorageError=Αποτυχία λήψης καταχώρισης(εων) service worker: Η πρόσβαση αποθήκευσης είναι περιορισμένη στο περιεχόμενο αυτό λόγω ρυθμίσεων χρήστη ή ιδιωτικής περιήγησης.
+ServiceWorkerGetClientStorageError=Αποτυχία λήψης προγράμματος(α)-πελάτη για το service worker: Η πρόσβαση αποθήκευσης είναι περιορισμένη στο περιεχόμενο αυτό λόγω ρυθμίσεων χρήστη ή ιδιωτικής περιήγησης.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker" and "postMessage". %S is a URL representing the scope of the ServiceWorker.
+ServiceWorkerPostMessageStorageError=Το ServiceWorker στο πεδίο ‘%S’ απέτυχε να εκτελέσει το ‘postMessage‘, επειδή η πρόσβαση αποθήκευσης είναι περιορισμένη στο περιεχόμενο αυτό λόγω ρυθμίσεων χρήστη ή ιδιωτικής περιήγησης.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %1$S is a URL representing the scope of the ServiceWorker.
+ServiceWorkerGraceTimeoutTermination=Τερματισμός ServiceWorker για εύρος ‘%1$S’ με εκκρεμούσες υποσχέσεις waitUntil/respondWith λόγω λήξης χρόνου.
+# LOCALIZATION NOTE (ServiceWorkerNoFetchHandler): Do not translate "Fetch".
+ServiceWorkerNoFetchHandler=Οι χειριστές συμβάντων λήψης πρέπει να προστεθούν κατά την αρχική αξιολόγηση του σεναρίου worker.
+ExecCommandCutCopyDeniedNotInputDriven=Το document.execCommand(‘cut’/‘copy’) απορρίφθηκε, επειδή δεν κλήθηκε μέσα από βραχύχρονο χειριστή γεγονότων που δημιουργήθηκε από το χρήστη.
+ManifestShouldBeObject=Το αρχείο manifest πρέπει να είναι αντικείμενο.
+ManifestScopeURLInvalid=Το URL πεδίου είναι άκυρο.
+ManifestScopeNotSameOrigin=Το URL εύρους πρέπει να έχει την ίδια προέλευση με το έγγραφο.
+ManifestStartURLOutsideScope=Το URL έναρξης βρίσκεται εκτός του εύρους, οπότε το εύρος είναι άκυρο.
+ManifestStartURLInvalid=Το URL έναρξης δεν είναι έγκυρο.
+ManifestStartURLShouldBeSameOrigin=Το URL έναρξης πρέπει να έχει την ίδια προέλευση με το έγγραφο.
+# LOCALIZATION NOTE: %1$S is the name of the object whose property is invalid. %2$S is the name of the invalid property. %3$S is the expected type of the property value. E.g. "Expected the manifest's start_url member to be a string."
+ManifestInvalidType=Αναμενόταν το μέλος %2$S του %1$S να είναι %3$S.
+# LOCALIZATION NOTE: %1$S is the name of the property whose value is invalid. %2$S is the (invalid) value of the property. E.g. "theme_color: 42 is not a valid CSS color."
+ManifestInvalidCSSColor=%1$S: το %2$S δεν είναι έγκυρο χρώμα CSS.
+# LOCALIZATION NOTE: %1$S is the name of the property whose value is invalid. %2$S is the (invalid) value of the property. E.g. "lang: 42 is not a valid language code."
+ManifestLangIsInvalid=%1$S: το %2$S δεν είναι έγκυρος κωδικός γλώσσας.
+# LOCALIZATION NOTE: %1$S is the name of the parent property whose value is invalid (e.g., "icons"). %2$S is the index of the image object that is invalid (from 0). %3$S is the name of actual member that is invalid. %4$S is the invalid value. E.g. "icons item at index 2 is invalid. The src member is an invalid URL http://:Invalid"
+ManifestImageURLIsInvalid=Το στοιχείο %1$S στο ευρετήριο %2$S δεν είναι έγκυρο. Το μέλος %3$S είναι ένα μη έγκυρο URL %4$S
+# LOCALIZATION NOTE: %1$S is the name of the parent property that that contains the unusable image object (e.g., "icons"). %2$S is the index of the image object that is unusable (from 0). E.g. "icons item at index 2 lacks a usable purpose. It will be ignored."
+ManifestImageUnusable=Το στοιχείο %1$S στο ευρετήριο %2$S δεν έχει χρήσιμο σκοπό. Θα αγνοηθεί.
+# LOCALIZATION NOTE: %1$S is the name of the parent property that contains the unsupported value (e.g., "icons"). %2$S is the index of the image object that has the unsupported value (from 0). %3$S are the unknown purposes. E.g. "icons item at index 2 includes unsupported purpose(s): a b."
+ManifestImageUnsupportedPurposes=Το στοιχείο %1$S στο ευρετήριο %2$S περιλαμβάνει μη υποστηριζόμενο(ους) σκοπό(ούς): %3$S.
+# LOCALIZATION NOTE: %1$S is the name of the parent property that has a repeated purpose (e.g., "icons"). %2$S is the index of the image object that has the repeated purpose (from 0). %3$S is the repeated purposes. E.g. "icons item at index 2 includes repeated purpose(s): a b."
+ManifestImageRepeatedPurposes=Το στοιχείο %1$S στο ευρετήριο %2$S περιλαμβάνει επαναλαμβανόμενο(ους) σκοπό(ούς): %3$S.
+PatternAttributeCompileFailure=Αδυναμία ελέγχου του <input pattern='%S'> επειδή το μοτίβο δεν είναι έγκυρη κανονική έκφραση: %S
+# LOCALIZATION NOTE: Do not translate "postMessage" or DOMWindow. %S values are origins, like https://domain.com:port
+TargetPrincipalDoesNotMatch=Αποτυχία εκτέλεσης ‘postMessage’ στο ‘DOMWindow’: Η παρεχόμενη προέλευση στόχου (‘%S’) δεν ταιριάζει με την προέλευση του παραθύρου παραλήπτη (‘%S’).
+# LOCALIZATION NOTE: Do not translate 'YouTube'. %S values are origins, like https://domain.com:port
+RewriteYouTubeEmbed=Εκ νέου εγγραφή της ενσωμάτωσης του παλαιού στυλ YouTube Flash (%S) σε ενσωμάτωση iframe (%S). Παρακαλώ ενημερώστε τη σελίδα για χρήση του iframe αντί για embed/object, αν είναι δυνατό.
+# LOCALIZATION NOTE: Do not translate 'YouTube'. %S values are origins, like https://domain.com:port
+RewriteYouTubeEmbedPathParams=Εκ νέου εγγραφή της ενσωμάτωσης του παλαιού στυλ YouTube Flash (%S) σε ενσωμάτωση iframe (%S). Οι παράμετροι δεν υποστηρίζονται από την ενσωμάτωση iframe και μετατράπηκαν. Παρακαλώ ενημερώστε τη σελίδα για να χρησιμοποιήσετε το iframe αντί για embed/object, αν είναι δυνατό.
+# LOCALIZATION NOTE: This error is reported when the "Encryption" header for an
+# incoming push message is missing or invalid. Do not translate "ServiceWorker",
+# "Encryption", and "salt". %1$S is the ServiceWorker scope URL.
+PushMessageBadEncryptionHeader=Το ServiceWorker για το πεδίο ‘%1$S’ απέτυχε να αποκρυπτογραφήσει ένα μήνυμα push. Η κεφαλίδα ‘Encryption’ πρέπει να περιλαμβάνει μια μοναδική παράμετρο ‘salt‘ για κάθε μήνυμα. Δείτε το https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 για περισσότερες πληροφορίες.
+# LOCALIZATION NOTE: This error is reported when the "Crypto-Key" header for an
+# incoming push message is missing or invalid. Do not translate "ServiceWorker",
+# "Crypto-Key", and "dh". %1$S is the ServiceWorker scope URL.
+PushMessageBadCryptoKeyHeader=Το ServiceWorker για το πεδίο ‘%1$S’ απέτυχε να αποκρυπτογραφήσει ένα μήνυμα push. Η κεφαλίδα ‘Crypto-Key‘ πρέπει να περιλαμβάνει μια παράμετρο ‘dh‘ που να περιέχει το δημόσιο κλειδί του διακομιστή της εφαρμογής. Δείτε το https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 για περισσότερες πληροφορίες.
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt because the deprecated
+# "Encryption-Key" header for an incoming push message is missing or invalid.
+# Do not translate "ServiceWorker", "Encryption-Key", "dh", "Crypto-Key", and
+# "Content-Encoding: aesgcm". %1$S is the ServiceWorker scope URL.
+PushMessageBadEncryptionKeyHeader=Το ServiceWorker για το πεδίο ‘%1$S’ απέτυχε να αποκρυπτογραφήσει ένα μήνυμα push. Η κεφαλίδα ‘Encryption-Key’ πρέπει να περιλαμβάνει μια παράμετρο ‘dh‘. Αυτή η κεφαλίδα είναι παλιά και θα αφαιρεθεί σύντομα. Παρακαλώ χρησιμοποιήστε την ‘Crypto-Key‘ με ‘Content-Encoding: aesgcm‘. Δείτε το https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 για περισσότερες πληροφορίες.
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "Content-Encoding" header is missing or contains an
+# unsupported encoding. Do not translate "ServiceWorker", "Content-Encoding",
+# "aesgcm", and "aesgcm128". %1$S is the ServiceWorker scope URL.
+PushMessageBadEncodingHeader=Το ServiceWorker για το πεδίο ‘%1$S’ απέτυχε να αποκρυπτογραφήσει ένα μήνυμα push. Η κεφαλίδα ‘Content-Encoding‘ πρέπει να είναι ‘aesgcm‘. Το ‘aesgcm128‘ επιτρέπεται, αλλά είναι παλιό και θα αφαιρεθεί σύντομα. Δείτε το https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-2 για περισσότερες πληροφορίες.
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "dh" parameter is not valid base64url. Do not translate
+# "ServiceWorker", "dh", "Crypto-Key", and "base64url". %1$S is the
+# ServiceWorker scope URL.
+PushMessageBadSenderKey=Το ServiceWorker για το πεδίο ‘%1$S’ απέτυχε να αποκρυπτογραφήσει ένα μήνυμα push. Η παράμετρος ‘dh‘ στην κεφαλίδα ‘Crypto-Key‘ πρέπει να είναι το δημόσιο κλειδί Diffie-Hellman του διακομιστή της εφαρμογής, κωδικοποιημένη με base64url (https://tools.ietf.org/html/rfc7515#appendix-C) και σε “μη συμπιεσμένη” ή “ακατέργαστη” μορφή (65 bytes πριν την κωδικοποίηση). Δείτε το https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 για περισσότερες πληροφορίες.
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "salt" parameter is not valid base64url. Do not translate
+# "ServiceWorker", "salt", "Encryption", and "base64url". %1$S is the
+# ServiceWorker scope URL.
+PushMessageBadSalt=Το ServiceWorker για το πεδίο ‘%1$S’ απέτυχε να αποκρυπτογραφήσει ένα μήνυμα push. Η παράμετρος ‘salt‘ στην κεφαλίδα ‘Encryption‘ πρέπει να είναι κωδικοποιημένη με base64url (https://tools.ietf.org/html/rfc7515#appendix-C) και τουλάχιστον 16 bytes πριν την κωδικοποίηση. Δείτε το https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 για περισσότερες πληροφορίες.
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "rs" parameter is not a number, or is less than the pad size.
+# Do not translate "ServiceWorker", "rs", or "Encryption". %1$S is the
+# ServiceWorker scope URL. %2$S is the minimum value (1 for aesgcm128, 2 for
+# aesgcm).
+PushMessageBadRecordSize=Το ServiceWorker για το πεδίο ‘%1$S’ απέτυχε να αποκρυπτογραφήσει ένα μήνυμα push. Η παράμετρος ‘rs‘ της κεφαλίδας ‘Encryption‘ πρέπει να είναι μεταξύ %2$S και 2^36-31 ή να παραλειφθεί εξ' ολοκλήρου. Δείτε το https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 για περισσότερες πληροφορίες.
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because an encrypted record is shorter than the pad size, the pad is larger
+# than the record, or any of the padding bytes are non-zero. Do not translate
+# "ServiceWorker". %1$S is the ServiceWorker scope URL. %2$S is the pad size
+# (1 for aesgcm128, 2 for aesgcm).
+PushMessageBadPaddingError=Το ServiceWorker για το πεδίο ‘%1$S’ απέτυχε να αποκρυπτογραφήσει ένα μήνυμα push. Μια εγγραφή στο κρυπτογραφημένο μήνυμα δεν συμπληρώθηκε σωστά. Δείτε το https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-2 για περισσότερες πληροφορίες.
+# LOCALIZATION NOTE: This error is reported when push message decryption fails
+# and no specific error info is available. Do not translate "ServiceWorker".
+# %1$S is the ServiceWorker scope URL.
+PushMessageBadCryptoError=Το ServiceWorker για το πεδίο ‘%1$S’ απέτυχε να αποκρυπτογραφήσει ένα μήνυμα push. Για βοήθεια με την κρυπτογράφηση, παρακαλώ δείτε το https://developer.mozilla.org/docs/Web/API/Push_API/Using_the_Push_API#Encryption
+# LOCALIZATION NOTE: %1$S is the type of a DOM event. 'passive' is a literal parameter from the DOM spec.
+PreventDefaultFromPassiveListenerWarning=Παράβλεψη κλήσης ‘preventDefault()’ σε περίπτωση τύπου ‘%1$S’ από ακροατή, που έχει εγγραφεί ως ‘passive’.
+# LOCALIZATION NOTE: 'ImageBitmapRenderingContext.transferImageBitmap' and 'ImageBitmapRenderingContext.transferFromImageBitmap' should not be translated
+ImageBitmapRenderingContext_TransferImageBitmapWarning=Το ImageBitmapRenderingContext.transferImageBitmap είναι παρωχημένο και θα αφαιρεθεί σύντομα. Χρησιμοποιήστε το ImageBitmapRenderingContext.transferFromImageBitmap.
+IIRFilterChannelCountChangeWarning=Οι αλλαγές αριθμού καναλιών IIRFilterNode ενδέχεται να προκαλέσει δυσλειτουργίες ήχου.
+BiquadFilterChannelCountChangeWarning=Οι αλλαγές αριθμού καναλιών BiquadFilterNode ενδέχεται να προκαλέσει δυσλειτουργίες ήχου.
+# LOCALIZATION NOTE: Do not translate ".png"
+GenericImageNamePNG=εικόνα.png
+GenericFileName=αρχείο
+# LOCALIZATION NOTE: Do not translate "Large-Allocation", as it is a literal header name
+LargeAllocationSuccess=Αυτή η σελίδα φορτώθηκε σε μια νέα διαδικασία λόγω επικεφαλίδας Large-Allocation.
+# LOCALIZATION NOTE: Do not translate "Large-Allocation", as it is a literal header name. Do not translate GET.
+LargeAllocationNonGetRequest=Μια επικεφαλίδα Large-Allocation αγνοήθηκε λόγω της φόρτωσης που ενεργοποιήθηκε από ένα μη-GET αίτημα.
+# LOCALIZATION NOTE: Do not translate "Large-Allocation", as it is a literal header name. Do not translate `window.opener`.
+LargeAllocationNotOnlyToplevelInTabGroup=Μια επικεφαλίδα Large-Allocation αγνοήθηκε λόγω της παρουσίας παραθύρων, που έχουν μια αναφορά σε αυτό το περιβάλλον περιήγησης μέσα από την ιεραρχία πλαισίων ή το window.opener.
+# LOCALIZATION NOTE: Do not translate "Large-Allocation", as it is a literal header name
+LargeAllocationNonE10S=Μια επικεφαλίδα Large-Allocation αγνοήθηκε λόγω της μη φόρτωσης του εγγράφου από μια διεργασία.
+GeolocationInsecureRequestIsForbidden=Μια αίτηση εντοπισμού γεωγραφικής θέσης μπορεί να ικανοποιηθεί μόνο σε ένα ασφαλές περιβάλλον.
+NotificationsInsecureRequestIsForbidden=Το δικαίωμα ειδοποιήσεων μπορεί να ζητηθεί μόνο σε ασφαλές περιβάλλον.
+NotificationsCrossOriginIframeRequestIsForbidden=Το δικαίωμα ειδοποιήσεων μπορεί να ζητηθεί μόνο σε έγγραφο υψηλού επιπέδου ή iframe ίδιας προέλευσης.
+NotificationsRequireUserGesture=Το δικαίωμα ειδοποιήσεων μπορεί να ζητηθεί μόνο μέσα από ένα σύντομο χειριστή συμβάντων που έχει δημιουργηθεί από το χρήστη.
+NotificationsRequireUserGestureDeprecationWarning=Η αίτηση για δικαίωμα ειδοποιήσεων έξω από ένα χειριστή συμβάντων μικρής διαρκείας, που έχει δημιουργηθεί από το χρήστη, είναι παρωχημένη και δεν θα υποστηρίζεται στο μέλλον.
+# LOCALIZATION NOTE: Do not translate "Large-Allocation", as it is a literal header name.
+LargeAllocationNonWin32=Αυτή η σελίδα θα είχε φορτωθεί σε μια νέα διεργασία λόγω επικεφαλίδας Large-Allocation, ωστόσο η δημιουργία διεργασίας Large-Allocation είναι απενεργοποιημένη σε μη-Win32 πλατφόρμες.
+# LOCALIZATION NOTE: Do not translate "content", "Window", and "window.top"
+WindowContentUntrustedWarning=Η ιδιότητα ‘content’ των αντικειμένων Window έχει καταργηθεί. Παρακαλούμε χρησιμοποιήστε τη 'window.top’.
+# LOCALIZATION NOTE: The first %S is the tag name of the element that starts the loop, the second %S is the element's ID.
+SVGRefLoopWarning=Το SVG <%S> με ID “%S” έχει βρόγχο αναφοράς.
+# LOCALIZATION NOTE: The first %S is the tag name of the element in the chain where the chain was broken, the second %S is the element's ID.
+SVGRefChainLengthExceededWarning=Μια αλυσίδα αναφοράς SVG <%S>, που είναι πολύ μεγάλη, εγκαταλείφθηκε στο στοιχείο με ID “%S”.
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceEmpty=Η ιδιότητα ‘%S’ του στοιχείου <script> είναι κενή.
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceInvalidUri=Η ιδιότητα ‘%S’ του στοιχείου <script> δεν είναι έγκυρο URI: “%S”
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceLoadFailed=Η φόρτωση απέτυχε για το <script> με την πηγή “%S”.
+ModuleSourceLoadFailed=Αποτυχία φόρτωσης της μονάδας με πηγή “%S”.
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceMalformed=Το URI της πηγής του <script> έχει καταστραφεί: “%S”.
+ModuleSourceMalformed=Το URI της πηγής της μονάδας είναι δύσμορφο: “%S”.
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceNotAllowed=Το URI της πηγής του <script> δεν επιτρέπεται σε αυτό το έγγραφο: “%S”.
+ModuleSourceNotAllowed=Το URI της πηγής της μονάδας δεν επιτρέπεται σε αυτό το έγγραφο: “%S”.
+ModuleResolveFailure=Σφάλμα επίλυσης προσδιοριστή μονάδας “%S”. Οι σχετικοί προσδιοριστές μονάδας πρέπει να ξεκινούν με “./”, “../” ή “/”.
+# LOCALIZATION NOTE: %1$S is the invalid property value and %2$S is the property name.
+InvalidKeyframePropertyValue=Η τιμή ιδιότητας keyframe “%1$S” είναι άκυρη σύμφωνα με τη σύνταξη για “%2$S”.
+# LOCALIZATION NOTE: Do not translate "ReadableStream".
+ReadableStreamReadingFailed=Αποτυχία ανάγνωσης δεδομένων από το ReadableStream: “%S”.
+# LOCALIZATION NOTE: Do not translate "registerProtocolHandler"
+RegisterProtocolHandlerPrivateBrowsingWarning=Αδυναμία χρήσης του registerProtocolHandler μέσα στη λειτουργία ιδιωτικής περιήγησης.
+MotionEventWarning=Η χρήση του αισθητήρα κίνησης έχει καταργηθεί.
+OrientationEventWarning=Η χρήση του αισθητήρα προσανατολισμού έχει καταργηθεί.
+ProximityEventWarning=Η χρήση του αισθητήρα εγγύτητας έχει καταργηθεί.
+AmbientLightEventWarning=Η χρήση του αισθητήρα περιβάλλοντος φωτισμού έχει καταργηθεί.
+# LOCALIZATION NOTE: Do not translate "storage", "indexedDB.open" and "navigator.storage.persist()".
+IDBOpenDBOptions_StorageTypeWarning=Η ιδιότητα ‘storage’ στις επιλογές που μεταφέρονται στο indexedDB.open έχει καταργηθεί και σύντομα θα αφαιρεθεί. Για να αποκτήσετε μόνιμη αποθήκευση, χρησιμοποιήστε το navigator.storage.persist().
+UnsupportedEntryTypesIgnored=Παράβλεψη μη υποστηριζόμενου entryTypes: %S.
+AllEntryTypesIgnored=Κανένα έγκυρο entryTypes· ακύρωση εγγραφής.
+# LOCALIZATION NOTE: do not localize key=“%S” modifiers=“%S” id=“%S”
+GTK2Conflict2=Συμβάν πλήκτρου μη διαθέσιμο στο GTK2: key=“%S” modifiers=“%S” id=“%S”
+WinConflict2=Συμβάν πλήκτρου μη διαθέσιμο σε μερικές διατάξεις πληκτρολογίου: key=“%S” modifiers=“%S” id=“%S”
+# LOCALIZATION NOTE: do not trnaslated "document.domain"
+DocumentSetDomainNotAllowedWarning=Δεν επιτρέπεται ο ορισμός του document.domain σε απομονωμένο περιβάλλον πολλαπλών προελεύσεων.
+
+#LOCALIZATION NOTE(DeprecatedTestingInterfaceWarning): Do not translate this message. It's just testing only.
+DeprecatedTestingInterfaceWarning=Το TestingDeprecatedInterface είναι μια διεπαφή μόνο για δοκιμή και αυτό είναι το δοκιμαστικό μήνυμα κατάργησης.
+#LOCALIZATION NOTE(DeprecatedTestingMethodWarning): Do not translate this message. It's just testing only.
+DeprecatedTestingMethodWarning=Το TestingDeprecatedInterface.deprecatedMethod() είναι μια μέθοδος μόνο για δοκιμή και αυτό είναι το δοκιμαστικό μήνυμα κατάργησης.
+#LOCALIZATION NOTE(DeprecatedTestingAttributeWarning): Do not translate this message. It's just testing only.
+DeprecatedTestingAttributeWarning=Το TestingDeprecatedInterface.deprecatedAttribute είναι μια ιδιότητα μόνο για δοκιμή και αυτό είναι το δοκιμαστικό μήνυμα κατάργησης.
+# LOCALIZATION NOTE (CreateImageBitmapCanvasRenderingContext2DWarning): Do not translate CanvasRenderingContext2D and createImageBitmap.
+CreateImageBitmapCanvasRenderingContext2DWarning=Η χρήση του CanvasRenderingContext2D στο createImageBitmap έχει καταργηθεί.
+# LOCALIZATION NOTE (MozRequestFullScreenDeprecatedPrefixWarning): Do not translate mozRequestFullScreen.
+MozRequestFullScreenDeprecatedPrefixWarning=Το mozRequestFullScreen() έχει καταργηθεί.
+# LOCALIZATION NOTE (MozfullscreenchangeDeprecatedPrefixWarning): Do not translate onmozfullscreenchange.
+MozfullscreenchangeDeprecatedPrefixWarning=Το onmozfullscreenchange έχει καταργηθεί.
+# LOCALIZATION NOTE (MozfullscreenerrorDeprecatedPrefixWarning): Do not translate onmozfullscreenerror.
+MozfullscreenerrorDeprecatedPrefixWarning=Το onmozfullscreenerror έχει καταργηθεί.
+# LOCALIZATION NOTE(External_AddSearchProviderWarning): Do not translate AddSearchProvider.
+External_AddSearchProviderWarning=Το AddSearchProvider έχει καταργηθεί.
+# LOCALIZATION NOTE: Do not translate "MouseEvent.mozPressure" and "PointerEvent.pressure".
+MouseEvent_MozPressureWarning=Το MouseEvent.mozPressure είναι παρωχημένο. Χρησιμοποιήστε το PointerEvent.pressure.
+# LOCALIZATION NOTE: Do not translate MathML, align, numalign and denomalign.
+MathML_DeprecatedAlignmentAttributesWarning=Οι ιδιότητες MathML “align”, “numalign” και “denomalign” είναι παρωχημένες και θα αφαιρεθούν στο μέλλον.
+# LOCALIZATION NOTE: Do not translate MathML and bevelled.
+MathML_DeprecatedBevelledAttribute=Η ιδιότητα MathML “bevelled” είναι παρωχημένη και θα αφαιρεθεί σε μελλοντική ημερομηνία.
+# LOCALIZATION NOTE: Do not translate thin, medium, thick and linethickness.
+MathML_DeprecatedLineThicknessValueWarning=Τα “thin”, “medium” and “thick” είναι παρωχημένες τιμές για την ιδιότητα linethickness και θα αφαιρεθούν σε μελλοντική ημερομηνία.
+# LOCALIZATION NOTE: Do not translate small, normal, big and mathsize.
+MathML_DeprecatedMathSizeValueWarning=Τα “small”, “normal” και “big” είναι παρωχημένες τιμές για την ιδιότητα mathsize και θα αφαιρεθούν σε μελλοντική ημερομηνία.
+# LOCALIZATION NOTE: Do not translate veryverythinmathspace, verythinmathspace,
+# thinmathspace, mediummathspace, thickmathspace, verythickmathspace, veryverythickmathspace and MathML.
+MathML_DeprecatedMathSpaceValueWarning=Τα “veryverythinmathspace”, “verythinmathspace”, “thinmathspace”, “mediummathspace”, “thickmathspace”, “verythickmathspace” και “veryverythickmathspace” είναι παρωχημένες τιμές για τα μήκη MathML και θα αφαιρεθούν σε μελλοντική ημερομηνία.
+# LOCALIZATION NOTE: Do not translate radical, notation and menclose.
+MathML_DeprecatedMencloseNotationRadical=Η τιμή “radical” είναι παρωχημένη για την ιδιότητα “notation” του στοιχείου <menclose> και θα αφαιρεθεί σε μελλοντική ημερομηνία.
+# LOCALIZATION NOTE: Do not translate MathML or mfenced.
+MathML_DeprecatedMfencedElement=Το στοιχείο MathML mfenced είναι παρωχημένο και θα αφαιρεθεί σε μελλοντική ημερομηνία.
+# LOCALIZATION NOTE: Do not translate MathML, subscriptshift and superscriptshift.
+MathML_DeprecatedScriptShiftAttributes=Οι ιδιότητες MathML “subscriptshift” και “superscriptshift” είναι παρωχημένες και θα αφαιρεθούν στο μέλλον.
+# LOCALIZATION NOTE: Do not translate MathML, background, color, fontfamily, fontsize, fontstyle and fontweight.
+MathML_DeprecatedStyleAttributeWarning=Οι ιδιότητες MathML “background”, “color”, “fontfamily”, “fontsize”, “fontstyle” και “fontweight” είναι παρωχημένες και θα αφαιρεθούν στο μέλλον.
+# LOCALIZATION NOTE: Do not translate MathML and XLink.
+MathML_DeprecatedXLinkAttributeWarning=Οι ιδιότητες XLink “href”, “type”, “show” και “actuate” είναι παρωχημένες σε στοιχεία MathML και θα αφαιρεθούν σε μελλοντική ημερομηνία.
+# LOCALIZATION NOTE: Do not translate MathML and STIXGeneral. %S is a documentation URL.
+MathML_DeprecatedStixgeneralOperatorStretchingWarning=Η υποστήριξη για την απόδοση τεντωμένων τελεστών MathML με γραμματοσειρές STIXGeneral είναι παρωχημένη και ίσως καταργηθεί μελλοντικά. Για λεπτομέρειες σχετικά με νεότερες γραμματοσειρές που θα συνεχίσουν να υποστηρίζονται, δείτε το %S
+# LOCALIZATION NOTE: Do not translate MathML and scriptminsize.
+MathML_DeprecatedScriptminsizeAttributeWarning=Η ιδιότητα MathML “scriptminsize” είναι παρωχημένη και θα αφαιρεθεί σε μελλοντική ημερομηνία.
+# LOCALIZATION NOTE: Do not translate MathML and scriptsizemultiplier.
+MathML_DeprecatedScriptsizemultiplierAttributeWarning=Η ιδιότητα MathML “scriptsizemultiplier” είναι παρωχημένη και θα αφαιρεθεί σε μελλοντική ημερομηνία.
+WebShareAPI_Failed=Αποτυχία λειτουργίας κοινής χρήσης.
+WebShareAPI_Aborted=Η λειτουργία κοινής χρήσης ακυρώθηκε.
+# LOCALIZATION NOTE (UnknownProtocolNavigationPrevented): %1$S is the destination URL.
+UnknownProtocolNavigationPrevented=Απετράπη η πλοήγηση στο “%1$S” λόγω άγνωστου πρωτοκόλλου.
+PostMessageSharedMemoryObjectToCrossOriginWarning=Δεν είναι δυνατή η δημοσίευση μηνύματος που περιέχει κοινόχρηστο αντικείμενο μνήμης σε παράθυρο πολλαπλών προελεύσεων.
+# LOCALIZATION NOTE: %S is the URL of the resource in question
+UnusedLinkPreloadPending=Ο πόρος στο “%S”, προφορτωμένος με προφόρτωση συνδέσμων, δεν χρησιμοποιήθηκε μέσα σε λίγα δευτερόλεπτα. Βεβαιωθείτε ότι όλες οι ιδιότητες της ετικέτας προφόρτωσης έχουν ρυθμιστεί σωστά.
+
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(), iframe, allow-same-origin and sandbox (though you may translate "sandboxed").
+RequestStorageAccessNullPrincipal=Το document.requestStorageAccess() δεν μπορεί να κληθεί σε έγγραφο με αδιαφανή προέλευση, όπως ένα iframe σε sandbox, χωρίς allow-same-origin στην ιδιότητα sandbox του.
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(), iframe, allow-storage-access-by-user-activation and sandbox (though you may translate "sandboxed").
+RequestStorageAccessSandboxed=Το document.requestStorageAccess() δεν μπορεί να κληθεί σε iframe με sandbox χωρίς allow-storage-access-by-user-activation στην ιδιότητα "sandbox".
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess() and iframe.
+RequestStorageAccessNested=Το document.requestStorageAccess() δεν μπορεί να κληθεί σε ένθετο iframe.
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(). In some locales it may be preferable to not translate "event handler", either.
+RequestStorageAccessUserGesture=Το document.requestStorageAccess() μπορεί να ζητηθεί μόνο μέσα από ένα σύντομο χειριστή συμβάντων που έχει δημιουργηθεί από το χρήστη.
+# LOCALIZATION NOTE: Do not translate "Location" and "History".
+LocChangeFloodingPrevented=Πάρα πολλές κλήσεις προς Location ή History APIs μέσα σε σύντομο χρονικό διάστημα.
+FolderUploadPrompt.title = Επιβεβαίωση μεταφόρτωσης
+# LOCALIZATION NOTE: %S is the name of the folder the user selected in the file picker.
+FolderUploadPrompt.message = Θέλετε σίγουρα να μεταφορτώσετε όλα τα αρχεία από το “%S”; Προχωρήστε μόνο αν εμπιστεύεστε την ιστοσελίδα.
+FolderUploadPrompt.acceptButtonLabel = Μεταφόρτωση
+InputPickerBlockedNoUserActivation=Το εργαλείο επιλογής <input> αποκλείστηκε λόγω έλλειψης ενεργοποίησης χρήστη.
+ExternalProtocolFrameBlockedNoUserActivation=Το iframe με εξωτερικό πρωτόκολλο αποκλείστηκε λόγω έλλειψης ενεργοποίησης χρήστη, ή επειδή δεν έχει περάσει αρκετός χρόνος από τότε που φορτώθηκε τέτοιο iframe.
+MultiplePopupsBlockedNoUserActivation=Το άνοιγμα πολλαπλών αναδυόμενων αποκλείστηκε λόγω έλλειψης ενεργοποίησης χρήστη.
+# LOCALIZATION NOTE: %S is the URL of the preload that was ignored.
+PreloadIgnoredInvalidAttr=Η προφόρτωση του %S αγνοήθηκε λόγω άγνωστων τιμών “as” ή “type”, ή λόγω μη αντιστοιχίας της ιδιότητας “media”.
diff --git a/l10n-el/dom/chrome/global-strres.properties b/l10n-el/dom/chrome/global-strres.properties
new file mode 100644
index 0000000000..6805018f71
--- /dev/null
+++ b/l10n-el/dom/chrome/global-strres.properties
@@ -0,0 +1,5 @@
+# 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/.
+
+16389=Προέκυψε ένα άγνωστο σφάλμα (%1$S)
diff --git a/l10n-el/dom/chrome/global.dtd b/l10n-el/dom/chrome/global.dtd
new file mode 100644
index 0000000000..661fb351f4
--- /dev/null
+++ b/l10n-el/dom/chrome/global.dtd
@@ -0,0 +1,5 @@
+<!-- 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 locale.dir "ltr">
diff --git a/l10n-el/dom/chrome/layout/HtmlForm.properties b/l10n-el/dom/chrome/layout/HtmlForm.properties
new file mode 100644
index 0000000000..7bd38c7919
--- /dev/null
+++ b/l10n-el/dom/chrome/layout/HtmlForm.properties
@@ -0,0 +1,43 @@
+# 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/.
+
+Reset=Επαναφορά
+Submit=Υποβολή ερωτήματος
+Browse=Περιήγηση…
+FileUpload=Φόρτωση αρχείου
+DirectoryUpload=Επιλέξτε φάκελο για μεταφόρτωση
+DirectoryPickerOkButtonLabel=Μεταφόρτωση
+ForgotPostWarning=Η φόρμα περιέχει enctype=%S, αλλά δεν περιέχει method=post. Κανονική υποβολή με method=GET και χωρίς enctype.
+ForgotFileEnctypeWarning=Η φόρμα περιέχει μια είσοδο αρχείου, αλλά τα method=POST και enctype=multipart/form-data λείπουν από τη φόρμα. Το αρχείο δεν θα αποσταλεί.
+# LOCALIZATION NOTE (DefaultFormSubject): %S will be replaced with brandShortName
+DefaultFormSubject=Αποστολή φόρμας από %S
+CannotEncodeAllUnicode=Υποβλήθηκε μια φόρμα με κωδικοποίηση %S η οποία δεν έχει όλους τους χαρακτήρες Unicode, και έτσι αυτά που εισήχθησαν μπορεί να είναι κατεστραμμένα. Για να αποφευχθεί αυτό το πρόβλημα, η σελίδα θα πρέπει να αλλαχθεί έτσι ώστε η φόρμα να υποβάλλεται σε κωδικοποίηση UTF-8. Η αλλαγή της κωδικοποίησης της σελίδας σε UTF-8 ή ο καθορισμός στο στοιχείο φόρμας του accept-charset=utf-8 λύνει το πρόβλημα.
+AllSupportedTypes=Όλοι οι υποστηριζόμενοι τύποι
+# LOCALIZATION NOTE (NoFileSelected): this string is shown on a
+# <input type='file'> when there is no file selected yet.
+NoFileSelected=Δεν επιλέχθηκε αρχείο.
+# LOCALIZATION NOTE (NoFilesSelected): this string is shown on a
+# <input type='file' multiple> when there is no file selected yet.
+NoFilesSelected=Δεν επιλέχθηκαν αρχεία.
+# LOCALIZATION NOTE (NoDirSelected): this string is shown on a
+# <input type='file' directory/webkitdirectory> when there is no directory
+# selected yet.
+NoDirSelected=Κανένας επιλεγμένος κατάλογος.
+# LOCALIZATION NOTE (XFilesSelected): this string is shown on a
+# <input type='file' multiple> when there are more than one selected file.
+# %S will be a number greater or equal to 2.
+XFilesSelected=Επιλέχθηκαν %S αρχεία.
+ColorPicker=Επιλέξτε ένα χρώμα
+# LOCALIZATION NOTE (AndNMoreFiles): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This string is shown at the end of the tooltip text for <input type='file'
+# multiple> when there are more than 21 files selected (when we will only list
+# the first 20, plus an "and X more" line). #1 represents the number of files
+# minus 20 and will always be a number equal to or greater than 2. So the
+# singular case will never be used.
+AndNMoreFiles=και ένα ακόμα;και #1 ακόμα
+# LOCALIZATION NOTE (DefaultSummary): this string is shown on a <details> when
+# it has no direct <summary> child. Google Chrome should already have this
+# string translated.
+DefaultSummary=Λεπτομέρειες
diff --git a/l10n-el/dom/chrome/layout/MediaDocument.properties b/l10n-el/dom/chrome/layout/MediaDocument.properties
new file mode 100644
index 0000000000..10f69f35c6
--- /dev/null
+++ b/l10n-el/dom/chrome/layout/MediaDocument.properties
@@ -0,0 +1,21 @@
+# 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 (ImageTitleWithDimensions2AndFile): first %S is filename, second %S is type, third %S is width and fourth %S is height
+#LOCALIZATION NOTE (ImageTitleWithoutDimensions): first %S is filename, second %S is type
+#LOCALIZATION NOTE (ImageTitleWithDimensions2): first %S is type, second %S is width and third %S is height
+#LOCALIZATION NOTE (ImageTitleWithNeitherDimensionsNorFile): first %S is type
+#LOCALIZATION NOTE (MediaTitleWithFile): first %S is filename, second %S is type
+#LOCALIZATION NOTE (MediaTitleWithNoInfo): first %S is type
+ImageTitleWithDimensions2AndFile=%S (%S εικόνα, %S\u00A0\u00D7\u00A0%S εικονοστοιχεία)
+ImageTitleWithoutDimensions=%S (%S Εικόνα)
+ImageTitleWithDimensions2=(%S εικόνα, %S\u00A0\u00D7\u00A0%S εικονοστοιχεία)
+ImageTitleWithNeitherDimensionsNorFile=(%S Εικόνα)
+MediaTitleWithFile=%S (%S Αντικείμενο)
+MediaTitleWithNoInfo=(%S αντικείμενο)
+
+InvalidImage=Η εικόνα “%S” δεν μπορεί να προβληθεί επειδή περιέχει σφάλματα.
+ScaledImage=Σε κλίμακα (%S%%)
+
+TitleWithStatus=%S - %S
diff --git a/l10n-el/dom/chrome/layout/css.properties b/l10n-el/dom/chrome/layout/css.properties
new file mode 100644
index 0000000000..17a33e2a2c
--- /dev/null
+++ b/l10n-el/dom/chrome/layout/css.properties
@@ -0,0 +1,46 @@
+# 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/.
+
+MimeNotCss=Το φύλλο στυλ %1$S δεν φορτώθηκε επειδή ο τύπος MIME, «%2$S», δεν είναι αρχείο «text/css».
+MimeNotCssWarn=Το φύλλο στυλ %1$S φορτώθηκε ως CSS αν και ο τύπος MIME, «%2$S», δεν είναι «text/css».
+
+PEDeclDropped=Η δήλωση ακυρώθηκε.
+PEDeclSkipped=Έγινε μετάβαση στην επόμενη δήλωση.
+PEUnknownProperty=Άγνωστη ιδιότητα ‘%1$S’.
+PEValueParsingError=Σφάλμα στην ανάλυση της αξίας για ‘%1$S’.
+PEUnknownAtRule=Μη αναγνωρίσιμο "at-rule" ή σφάλμα ανάλυσης "at-rule" ‘%1$S’.
+PEMQUnexpectedOperator=Μη αναμενόμενος λειτουργός στη λίστα πολυμέσων.
+PEMQUnexpectedToken=Μη αναμενόμενο σύμβολο ‘%1$S’ στη λίστα πολυμέσων.
+PEAtNSUnexpected=Μη αναμενόμενο διακριτικό εντός του @namespace: ‘%1$S’.
+PEKeyframeBadName=Αναμενόταν αναγνωριστικό για το όνομα του κανόνα @keyframes.
+PEBadSelectorRSIgnored=Η ομάδα κανόνων αγνοήθηκε λόγω κακής επιλογής.
+PEBadSelectorKeyframeRuleIgnored=Ο κανόνας keyframe αγνοήθηκε λόγω κακής επιλογής.
+PESelectorGroupNoSelector=Αναμένεται διαλογέας.
+PESelectorGroupExtraCombinator=Αμφιταλαντευόμενος συνδυασμός.
+PEClassSelNotIdent=Αναμενόταν αναγνωριστικό για τον επιλογέα τάξης, αλλά βρέθηκε ‘%1$S’.
+PETypeSelNotType=Αναμενόταν όνομα στοιχείου ή ‘*’, αλλά βρέθηκε ‘%1$S’.
+PEUnknownNamespacePrefix=Άγνωστο πρόθεμα χώρου ονομάτων ‘%1$S’.
+PEAttributeNameExpected=Αναμενόταν αναγνωριστικό για το όνομα ιδιότητας, αλλά βρέθηκε ‘%1$S’.
+PEAttributeNameOrNamespaceExpected=Αναμενόταν όνομα ιδιότητας ή χώρος ονομάτων, αλλά βρέθηκε ‘%1$S’.
+PEAttSelNoBar=Αναμενόταν ‘|’ αλλά βρέθηκε ‘%1$S’.
+PEAttSelUnexpected=Δεν αναμενόταν διακριτικό στον επιλογέα ιδιότητας: ‘%1$S’.
+PEAttSelBadValue=Αναμενόταν αναγνωριστικό ή συμβολοσειρά για τιμή στον επιλογέα ιδιοτήτων, αλλά βρέθηκε ‘%1$S’.
+PEPseudoSelBadName=Αναμενόταν αναγνωριστικό για ψευδο-τάξη ή ψευδο-στοιχείο, αλλά βρέθηκε ‘%1$S’.
+PEPseudoSelEndOrUserActionPC=Αναμενόταν τέλος επιλογέα ή ψευδο-τάξη ενέργειας χρήστη μετά το ψευδο-στοιχείο, αλλά βρέθηκε ‘%1$S’.
+PEPseudoSelUnknown=Άγνωστη ψευδο-τάξη ή ψευδο-στοιχείο ‘%1$S’.
+PENegationBadArg=Λείπει το όρισμα σε ψευδο-τάξη ακύρωσης ‘%1$S’.
+PEPseudoClassArgNotIdent=Αναμενόταν αναγνωριστικό για παράμετρο ψευδο-τάξης, αλλά βρέθηκε ‘%1$S’.
+PEColorNotColor=Αναμενόταν χρώμα αλλά βρέθηκε ‘%1$S’.
+PEParseDeclarationDeclExpected=Αναμενόταν δήλωση, αλλά βρέθηκε ‘%1$S’.
+PEUnknownFontDesc=Άγνωστος περιγραφέας ‘%1$S’ στον κανόνα @font-face.
+PEMQExpectedFeatureName=Αναμενόταν όνομα λειτουργίας μέσων, αλλά βρέθηκε ‘%1$S’.
+PEMQNoMinMaxWithoutValue=Οι λειτουργίες μέσων με min- ή max- πρέπει να έχουν τιμή.
+PEMQExpectedFeatureValue=Βρέθηκε μη έγκυρη τιμή για την λειτουργία μέσων.
+PEExpectedNoneOrURL=Αναμενόταν ‘none’ ή URL, αλλά βρέθηκε ‘%1$S’.
+PEExpectedNoneOrURLOrFilterFunction=Αναμενόταν ‘none’, URL ή λειτουργία φίλτρου, αλλά βρέθηκε ‘%1$S’.
+
+PEDisallowedImportRule=Οι κανόνες @import δεν είναι ακόμη έγκυροι σε κατασκευασμένα φύλλα στυλ.
+
+TooLargeDashedRadius=Η ακτίνα των ορίων είναι πολύ μεγάλη για το στυλ ‘dashed’ (το όριο είναι 100000px). Απόδοση ως στερεό.
+TooLargeDottedRadius=Η ακτίνα των ορίων είναι πολύ μεγάλη για το στυλ ‘dotted’ (το όριο είναι 100000px). Απόδοση ως στερεά.
diff --git a/l10n-el/dom/chrome/layout/htmlparser.properties b/l10n-el/dom/chrome/layout/htmlparser.properties
new file mode 100644
index 0000000000..ef8780d3e2
--- /dev/null
+++ b/l10n-el/dom/chrome/layout/htmlparser.properties
@@ -0,0 +1,134 @@
+# 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/.
+
+# Encoding warnings and errors
+EncNoDeclarationFrame=Δεν δηλώθηκε η κωδικοποίηση χαρακτήρων του ένθετου εγγράφου. Το έγγραφο ενδέχεται να έχει διαφορετική εμφάνιση εκτός του εγγράφου που το πλαισιώνει.
+EncNoDeclarationPlain=Δεν δηλώθηκε η κωδικοποίηση χαρακτήρων του εγγράφου απλού κειμένου. Το έγγραφο θα αποδοθεί με αλλοιωμένο κείμενο σε ορισμένες διαμορφώσεις περιηγητών, εάν περιέχει χαρακτήρες εκτός της περιοχής US-ASCII. Η κωδικοποίηση χαρακτήρων του αρχείου πρέπει να δηλώνεται στο πρωτόκολλο μεταφοράς ή το αρχείο πρέπει να χρησιμοποιεί μια σήμανση σειράς byte (ΒΟΜ) ως υπογραφή κωδικοποίησης.
+EncNoDeclaration=Δεν δηλώθηκε η κωδικοποίηση χαρακτήρων του εγγράφου HTML. Το έγγραφο θα αποδοθεί με αλλοιωμένο κείμενο σε ορισμένες διαμορφώσεις περιηγητών, εάν περιέχει χαρακτήρες εκτός της περιοχής US-ASCII. Η κωδικοποίηση χαρακτήρων του αρχείου πρέπει να δηλώνεται στο έγγραφο ή στο πρωτόκολλο μεταφοράς.
+EncLateMetaFrame=Δεν βρέθηκε η δήλωση κωδικοποίησης χαρακτήρων του ένθετου εγγράφου HTML κατά την ανίχνευση των πρώτων 1024 bytes του αρχείου. Όταν προβάλλεται χωρίς το έγγραφο που το πλαισιώνει, η σελίδα θα φορτώνεται εκ νέου αυτόματα. Η δήλωση της κωδικοποίησης πρέπει να μετακινηθεί μέσα στα πρώτα 1024 bytes του αρχείου.
+EncLateMeta=Δεν βρέθηκε η δήλωση κωδικοποίησης χαρακτήρων του εγγράφου HTML κατά την ανίχνευση των πρώτων 1024 bytes του αρχείου. Όταν προβάλλεται σε ένα περιηγητή που έχει ρυθμιστεί διαφορετικά, αυτή η σελίδα θα φορτώνεται εκ νέου αυτόματα. Η δήλωση της κωδικοποίησης πρέπει να μετακινηθεί μέσα τα πρώτα 1024 bytes του αρχείου.
+EncLateMetaReload=Η σελίδα φορτώθηκε εκ νέου, επειδή η δήλωση κωδικοποίησης χαρακτήρων του εγγράφου HTML δεν βρέθηκε κατά την ανίχνευση των πρώτων 1024 bytes του αρχείου. Η δήλωση κωδικοποίησης πρέπει να μετακινηθεί μέσα στα πρώτα 1024 bytes του αρχείου.
+EncLateMetaTooLate=Η δήλωση κωδικοποίησης χαρακτήρων του εγγράφου βρέθηκε πάρα πολύ αργά για να τεθεί σε ισχύ. Η δήλωση της κωδικοποίησης πρέπει να μετακινηθεί μέσα τα πρώτα 1024 bytes του αρχείου.
+EncMetaUnsupported=Μια μη υποστηριζόμενη κωδικοποίηση χαρακτήρων δηλώθηκε για το έγγραφο HTML μέσω μιας μετα-ετικέτας. Η δήλωση αγνοήθηκε.
+EncProtocolUnsupported=Μια μη υποστηριζόμενη κωδικοποίηση χαρακτήρων δηλώθηκε στο επίπεδο πρωτοκόλλου μεταφοράς. Η δήλωση αγνοήθηκε.
+EncBomlessUtf16=Εντοπίστηκε κείμενο σε κωδικοποίηση UTF-16 Basic Latin-only χωρίς σήμανση σειράς byte (BOM) και χωρίς δήλωση στο επιπέδου πρωτοκόλλου μεταφοράς. Η κωδικοποίηση αυτού του περιεχομένου σε UTF-16 είναι ανεπαρκής και η κωδικοποίηση χαρακτήρων θα έπρεπε να είχε δηλωθεί σε κάθε περίπτωση.
+EncMetaUtf16=Χρησιμοποιήθηκε μια μετα-ετικέτα για να δηλώσει κωδικοποίηση χαρακτήρων UTF-16 . Αυτό όμως ερμηνεύθηκε ως δήλωση UTF-8.
+EncMetaUserDefined=Χρησιμοποιήθηκε μια μετα-ετικέτα για να δηλώσει κωδικοποίηση χαρακτήρων ορισμένη από τον χρήστη (x-user-defined). Αυτό όμως ερμηνεύθηκε ως δήλωση windows-1252 για συμβατότητα με τις σκόπιμα κακο-κωδικοποιημένες γραμματοσειρές παλαιού τύπου. Αυτή η ιστοσελίδα θα πρέπει να μετατραπεί σε Unicode.
+
+# The bulk of the messages below are derived from
+# https://hg.mozilla.org/projects/htmlparser/file/1f633cef7de7/src/nu/validator/htmlparser/impl/ErrorReportingTokenizer.java
+# which is available under the MIT license.
+
+# Tokenizer errors
+errGarbageAfterLtSlash=Απορρίμματα μετά το “</”.
+errLtSlashGt=Βρέθηκε «</>». Πιθανές αιτίες: το «<» χωρίς διαφυγή (η διαφυγή γίνεται με χρήση του «&lt;») ή κακογραμμένη ετικέτα τέλους.
+errCharRefLacksSemicolon=Η αναφορά χαρακτήρα δεν τερματίστηκε με ερωτηματικό.
+errNoDigitsInNCR=Κανένα ψηφίο στην αναφορά του αριθμητικού χαρακτήρα.
+errGtInSystemId=Το «>» στο αναγνωριστικό του συστήματος.
+errGtInPublicId=Το «>» στο δημόσιο αναγνωριστικό.
+errNamelessDoctype=Ανώνυμη δήλωση doctype.
+errConsecutiveHyphens=Συνεχόμενες παύλες που δεν τερματίζουν σχόλιο. Δεν επιτρέπεται το «--» μέσα σε σχόλιο, αλλά π.χ. το "- -" επιτρέπεται.
+errPrematureEndOfComment=Πρόωρο τέλος σχολίου. Χρησιμοποιήστε το “-->” για να τερματίσετε σωστά ένα σχόλιο.
+errBogusComment=Ψευδές σχόλιο.
+errUnquotedAttributeLt=“<” σε τιμή ιδιότητας χωρίς εισαγωγικά. Πιθανή αιτία: Λείπει το “>“ αμέσως πριν.
+errUnquotedAttributeGrave=“`” σε τιμή ιδιότητας χωρίς εισαγωγικά. Πιθανή αιτία: Χρήση λάθος χαρακτήρα ως εισαγωγικού.
+errUnquotedAttributeQuote=Εισαγωγικό σε τιμή ιδιότητας χωρίς εισαγωγικά. Πιθανές αιτίες: Οι ιδιότητες εκτελούνται μαζί ή υπάρχει μια συμβολοσειρά ερωτήματος URL σε τιμή ιδιότητας χωρίς εισαγωγικά.
+errUnquotedAttributeEquals=“=” σε τιμή ιδιότητας χωρίς εισαγωγικά. Πιθανές αιτίες: Οι ιδιότητες εκτελούνται μαζί ή υπάρχει μια συμβολοσειρά ερωτήματος URL σε τιμή ιδιότητας χωρίς εισαγωγικά.
+errSlashNotFollowedByGt=Μια κάθετη δεν ακολουθήθηκε αμέσως από “>”.
+errNoSpaceBetweenAttributes=Κανένα κενό ανάμεσα στις ιδιότητες.
+errUnquotedAttributeStartLt=“<” στην αρχή μιας τιμής ιδιότητας χωρίς εισαγωγικά. Πιθανή αιτία: Απουσία “>” αμέσως πριν.
+errUnquotedAttributeStartGrave=“`” στην αρχή μιας τιμής ιδιότητας χωρίς εισαγωγικά. Πιθανή αιτία: Χρήση εσφαλμένου χαρακτήρα ως εισαγωγικά.
+errUnquotedAttributeStartEquals=“=” στην αρχή μιας τιμής ιδιότητας χωρίς εισαγωγικά. Πιθανή αιτία: Απομονωμένο διπλό ίσον.
+errAttributeValueMissing=Η τιμή της ιδιότητας λείπει.
+errBadCharBeforeAttributeNameLt=Βρέθηκε “<”, ενώ αναμενόταν όνομα ιδιότητας. Πιθανή αιτία: Απουσία “>” αμέσως πριν.
+errEqualsSignBeforeAttributeName=Βρέθηκε “=”, ενώ αναμενόταν όνομα ιδιότητας. Πιθανή αιτία: Απουσία ονόματος ιδιότητας.
+errBadCharAfterLt=Κακός χαρακτήρας μετά το “<”. Πιθανή αιτία: “<” χωρίς διαφυγή. Δοκιμάστε το εξής: “&lt;”.
+errLtGt=Βρέθηκε “<>”. Πιθανές αιτίες: “<” χωρίς διαφυγή (διαφυγή ως “&lt;”) ή κακογραμμένη ετικέτα έναρξης.
+errProcessingInstruction=Βρέθηκε “<?”. Πιθανή αιτία: Απόπειρα χρήσης μιας οδηγίας επεξεργασίας XML σε HTML. (Οι οδηγίες επεξεργασίας XML δεν υποστηρίζονται σε HTML.)
+errUnescapedAmpersandInterpretedAsCharacterReference=Η συμβολοσειρά μετά το “&” ερμηνεύθηκε ως αναφορά χαρακτήρα. (Το “&” ίσως έπρεπε να έχει γραφεί ως “&amp;”.)
+errNotSemicolonTerminated=Η αναφορά χαρακτήρα με όνομα δεν τερματίστηκε με ερωτηματικό. (Ή το “&” έπρεπε να έχει γραφεί ως “&amp;”.)
+errNoNamedCharacterMatch=Το “&” δεν ξεκίνησε μια αναφορά χαρακτήρα. (Το “&” ίσως έπρεπε να έχει γραφεί ως “&amp;”.)
+errQuoteBeforeAttributeName=Βρέθηκαν εισαγωγικά, ενώ αναμενόταν όνομα ιδιότητας. Πιθανή αιτία: Λείπει το “=” αμέσως πριν.
+errLtInAttributeName=“<” σε όνομα ιδιότητας. Πιθανή αιτία: απουσία “>” αμέσως πριν.
+errQuoteInAttributeName=Εισαγωγικά σε όνομα ιδιότητας. Πιθανή αιτία: Λείπει κλείσιμο εισαγωγικών λίγο πιο πριν.
+errExpectedPublicId=Αναμενόταν δημόσιο αναγνωριστικό, αλλά η δήλωση doctype έληξε.
+errBogusDoctype=Ψευδής δήλωση doctype.
+maybeErrAttributesOnEndTag=Η ετικέτα τέλους είχε ιδιότητες.
+maybeErrSlashInEndTag=Απομονωμένο “/” στο τέλος της ετικέτας λήξης.
+errNcrNonCharacter=Η αναφορά χαρακτήρα αναπτύσσεται σε μη-χαρακτήρα.
+errNcrSurrogate=Η αναφορά χαρακτήρα αναπτύσσεται σε υποκατάστατο.
+errNcrControlChar=Η αναφορά χαρακτήρα αναπτύσσεται σε χαρακτήρα ελέγχου.
+errNcrCr=Η αναφορά χαρακτήρα αναπτύχθηκε σε αλλαγή γραμμής.
+errNcrInC1Range=Η αριθμητική αναφορά χαρακτήρα αναπτύχθηκε στην περιοχή ελέγχων C1.
+errEofInPublicId=Τέλος αρχείου μέσα σε δημόσιο αναγνωριστικό.
+errEofInComment=Τέλος αρχείου μέσα σε σχόλιο.
+errEofInDoctype=Τέλος αρχείου μέσα στην δήλωση doctype.
+errEofInAttributeValue=Βρέθηκε το τέλος του αρχείου μέσα σε τιμή ιδιότητας. Παράβλεψη ετικέτας.
+errEofInAttributeName=Συναντήθηκε το τέλος του αρχείου μέσα σε όνομα ιδιότητας. Παράβλεψη ετικέτας.
+errEofWithoutGt=Βρέθηκε το τέλος του αρχείου χωρίς η προηγούμενη ετικέτα να τελειώνει σε “>”. Παράβλεψη ετικέτας.
+errEofInTagName=Βρέθηκε το τέλος του αρχείου κατά την αναζήτηση ονόματος της ετικέτας. Παράβλεψη ετικέτας.
+errEofInEndTag=Τέλος αρχείου μέσα σε ετικέτα λήξης. Παράβλεψη ετικέτας.
+errEofAfterLt=Τέλος αρχείου μετά το “<”.
+errNcrOutOfRange=Η αναφορά χαρακτήρα είναι εκτός του επιτρεπτού εύρους Unicode.
+errNcrUnassigned=Η αναφορά χαρακτήρα αναπτύσσεται σε σημείο μόνιμα απροσδιόριστου κώδικα.
+errDuplicateAttribute=Διπλότυπη ιδιότητα.
+errEofInSystemId=Τέλος αρχείου μέσα σε αναγνωριστικό συστήματος.
+errExpectedSystemId=Αναμενόταν αναγνωριστικό συστήματος, αλλά η δήλωση doctype τελείωσε.
+errMissingSpaceBeforeDoctypeName=Λείπει κενό πριν από το όνομα της δήλωσης doctype.
+errHyphenHyphenBang=Βρέθηκε “--!” μέσα σε σχόλιο.
+errNcrZero=Η αναφορά χαρακτήρα αναπτύσσεται σε μηδέν.
+errNoSpaceBetweenDoctypeSystemKeywordAndQuote=Κανένα κενό ανάμεσα στη λέξη-κλειδί “SYSTEM” της δήλωσης doctype και στα εισαγωγικά.
+errNoSpaceBetweenPublicAndSystemIds=Κανένα κενό ανάμεσα στα δημόσια αναγνωριστικά και στα αναγνωριστικά συστήματος της δήλωσης doctype.
+errNoSpaceBetweenDoctypePublicKeywordAndQuote=Κανένα κενό ανάμεσα στη λέξη-κλειδί “PUBLIC” της δήλωσης doctype και στα εισαγωγικά.
+
+# Tree builder errors
+errDeepTree=Το δένδρο εγγράφων είναι πολύ βαθύ. Το δένδρο θα πεπλατυσθεί για να είναι βαθύ κατά 513 στοιχεία.
+errStrayStartTag2=Απομονωμένη ετικέτα έναρξης “%1$S”.
+errStrayEndTag=Απομονωμένο ετικέτα λήξης “%1$S”.
+errUnclosedElements=Βρέθηκε ετικέτα λήξης “%1$S”, αλλά υπήρχαν ανοιχτά στοιχεία.
+errUnclosedElementsImplied=Υπονοήθηκε ετικέτα λήξης “%1$S”, αλλά υπήρχαν ανοιχτά στοιχεία.
+errUnclosedElementsCell=Ένα κελί πίνακα έκλεισε έμμεσα, αλλά υπήρχαν ανοιχτά στοιχεία.
+errStrayDoctype=Απομονωμένη δήλωση doctype.
+errAlmostStandardsDoctype=Σχεδόν υποδειγματική δήλωση doctype. Αναμενόταν “<!DOCTYPE html>”.
+errQuirkyDoctype=Ιδιόμορφη δήλωση doctype. Αναμενόταν “<!DOCTYPE html>”.
+errNonSpaceInTrailer=Μη-κενός χαρακτήρας προς το τέλος της σελίδας.
+errNonSpaceAfterFrameset=Μη-κενό μετά το “frameset”.
+errNonSpaceInFrameset=Μη-κενό στο “frameset”.
+errNonSpaceAfterBody=Μη-κενός χαρακτήρας μετά το κυρίως μέρος.
+errNonSpaceInColgroupInFragment=Μη-κενό στο “colgroup” κατά την ανάλυση του τμήματος.
+errNonSpaceInNoscriptInHead=Μη-κενός χαρακτήρας μέσα στο “noscript” μέσα στο “head”.
+errFooBetweenHeadAndBody=Στοιχείο “%1$S” ανάμεσα στο “head” και στο “body”.
+errStartTagWithoutDoctype=Βρέθηκε ετικέτα έναρξης χωρίς να προηγείται δήλωση doctype. Αναμενόταν “<!DOCTYPE html>”.
+errNoSelectInTableScope=Κανένα “select” στην εμβέλεια του πίνακα.
+errStartSelectWhereEndSelectExpected=Ετικέτα έναρξης “select” εκεί όπου αναμενόταν ετικέτα λήξης.
+errStartTagWithSelectOpen=Ετικέτα έναρξης “%1$S” με ανοιχτό “select”.
+errBadStartTagInHead2=Κακή ετικέτα έναρξης “%1$S” στο “head”.
+errBadStartTagInNoscriptInHead=Κακή ετικέτα έναρξης “%1$S” στο “noscript” στο “head”.
+errImage=Βρέθηκε ετικέτα έναρξης “image”.
+errFooSeenWhenFooOpen=Βρέθηκε μια ετικέτα έναρξης “%1$S”, αλλά ένα στοιχείο ίδιου τύπου ήταν ήδη ανοιχτό.
+errFooSeenWhenFooOpen2=Προβλήθηκε ετικέτα έναρξης “%1$S”, αλλά ήταν ήδη ανοικτό κάποιο στοιχείου του ίδιου τύπου.
+errHeadingWhenHeadingOpen=Μια επικεφαλίδα δεν μπορεί να είναι τέκνο άλλης επικεφαλίδας.
+errFramesetStart=Βρέθηκε ετικέτα έναρξης “frameset”.
+errNoCellToClose=Κανένα κελί για κλείσιμο.
+errStartTagInTable=Βρέθηκε ετικέτα έναρξης “%1$S” σε “table”.
+errFormWhenFormOpen=Βρέθηκε μια ετικέτα έναρξης “form”, αλλά υπήρχε ήδη ένα ενεργό στοιχείο “form”. Δεν επιτρέπονται ένθετες φόρμες. Παράβλεψη ετικέτας.
+errTableSeenWhileTableOpen=Βρέθηκε ετικέτα έναρξης για το “table”, αλλά το προηγούμενο “table” είναι ακόμη ανοικτό.
+errStartTagInTableBody=Ετικέτα έναρξης “%1$S” μέσα στο κυρίως μέρος του πίνακα.
+errEndTagSeenWithoutDoctype=Βρέθηκε ετικέτα λήξης χωρίς να προηγείται δήλωση doctype. Αναμενόταν “<!DOCTYPE html>”.
+errEndTagAfterBody=Βρέθηκε ετικέτα λήξης μετά το κλείσιμο του “body”.
+errEndTagSeenWithSelectOpen=Ετικέτα λήξης “%1$S” με ανοικτό “select”.
+errGarbageInColgroup=Απορρίμματα στο τμήμα “colgroup”.
+errEndTagBr=Ετικέτα τέλους “br”.
+errNoElementToCloseButEndTagSeen=Κανένα στοιχείο “%1$S” στο εύρος, αλλά βρέθηκε μια ετικέτα λήξης “%1$S”.
+errHtmlStartTagInForeignContext=Ετικέτα έναρξης HTML “%1$S” σε περιβάλλον ξένου χώρου ονομάτων.
+errTableClosedWhileCaptionOpen=Το “table” έκλεισε, αλλά το “caption” ήταν ακόμα ανοιχτό.
+errNoTableRowToClose=Καμία γραμμή πίνακα για κλείσιμο.
+errNonSpaceInTable=Μη-κενοί χαρακτήρες σε λάθος θέση μέσα σε πίνακα.
+errUnclosedChildrenInRuby=Άκλειστα τέκνα στο “ruby”.
+errStartTagSeenWithoutRuby=Βρέθηκε ετικέτα έναρξης “%1$S” χωρίς να είναι ανοικτό ένα στοιχείο “ruby”.
+errSelfClosing=Χρησιμοποιήθηκε σύνταξη αυτόματου κλεισίματος (“/>”) σε ένα μη-κενό στοιχείο HTML. Παράβλεψη της καθέτου και μεταχείριση ως ετικέτα έναρξης.
+errNoCheckUnclosedElementsOnStack=Άκλειστα στοιχεία στη στοίβα.
+errEndTagDidNotMatchCurrentOpenElement=Η ετικέτα λήξης “%1$S” δεν ταιριάζει με το όνομα του τρέχοντος ανοικτού στοιχείου (“%2$S”).
+errEndTagViolatesNestingRules=Η ετικέτα λήξης “%1$S” παραβιάζει τους κανόνες ένθεσης.
+errEndWithUnclosedElements=Βρέθηκε ετικέτα τέλους για το “%1$S”, αλλά υπήρχαν άκλειστα στοιχεία.
diff --git a/l10n-el/dom/chrome/layout/layout_errors.properties b/l10n-el/dom/chrome/layout/layout_errors.properties
new file mode 100644
index 0000000000..958f57576b
--- /dev/null
+++ b/l10n-el/dom/chrome/layout/layout_errors.properties
@@ -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/.
+
+ImageMapRectBoundsError=Η ιδιότητα “coords” της ετικέτας <area shape="rect"> δεν είναι στη μορφή “left,top,right,bottom”.
+ImageMapCircleWrongNumberOfCoords=Η ιδιότητα “coords” της ετικέτας <area shape="circle"> δεν είναι στη μορφή “center-x,center-y,radius”.
+ImageMapCircleNegativeRadius=Η ιδιότητα “coords” της ετικέτας <area shape="circle"> έχει αρνητική ακτίνα.
+ImageMapPolyWrongNumberOfCoords=Η ιδιότητα “coords” της ετικέτας <area shape="poly"> δεν είναι στη μορφή “x1,y1,x2,y2 …”.
+ImageMapPolyOddNumberOfCoords=Η ιδιότητα “coords” της ετικέτας <area shape="poly"> δεν έχει την τελευταία συντεταγμένη “y” (η σωστή μορφή είναι “x1,y1,x2,y2 …”).
+
+TablePartRelPosWarning=Υποστηρίζεται πλέον η σχετική τοποθέτηση σειρών πίνακα και ομάδων σειρών. Αυτή η ιστοσελίδα ενδέχεται να χρειάζεται να ενημερωθεί επειδή ίσως να βασίζεται σε αυτή τη λειτουργία, μη έχοντας καμία επίδραση.
+ScrollLinkedEffectFound2=Αυτή η ιστοσελίδα φαίνεται να χρησιμοποιεί ένα εφέ τοποθέτησης συνδεδεμένο με κύλιση. Αυτό ενδέχεται να μην λειτουργήσει καλά με ασύγχρονο panning· δείτε το https://developer.mozilla.org/docs/Mozilla/Performance/ScrollLinkedEffects για περισσότερες λεπτομέρειες και για να συμμετάσχετε στη συζήτηση για σχετικά εργαλεία και λειτουργίες!
+
+## LOCALIZATION NOTE(CompositorAnimationWarningContentTooLargeArea):
+## %1$S is an integer value of the area of the frame
+## %2$S is an integer value of the area of a limit based on the viewport size
+CompositorAnimationWarningContentTooLargeArea=Το εφέ κίνησης δεν μπορεί να εκτελεστεί στο συνθέτη επειδή η περιοχή του κάδρου (%1$S) είναι πολύ μεγάλη σχετικά με το πεδίο προβολής (μεγαλύτερη από %2$S)
+## LOCALIZATION NOTE(CompositorAnimationWarningContentTooLarge2):
+## (%1$S, %2$S) is a pair of integer values of the frame size
+## (%3$S, %4$S) is a pair of integer values of a limit based on the viewport size
+## (%5$S, %6$S) is a pair of integer values of an absolute limit
+CompositorAnimationWarningContentTooLarge2=Το εφέ κίνησης δεν μπορεί να εκτελεστεί στο συνθέτη επειδή το μέγεθος κάδρου (%1$S, %2$S) είναι πολύ μεγάλο σε σχέση με το παράθυρο προβολής (μεγαλύτερο από (%3$S, %4$S)) ή μεγαλύτερο από τη μέγιστη επιτρεπτή τιμή (%5$S, %6$S)
+## LOCALIZATION NOTE(CompositorAnimationWarningTransformBackfaceVisibilityHidden):
+## 'backface-visibility: hidden' is a CSS property, don't translate it.
+CompositorAnimationWarningTransformBackfaceVisibilityHidden=Τα εφέ κίνησης των μεταμορφώσεων ‘backface-visibility: hidden’ δεν μπορούν να εκτελεστούν στο συνθέτη
+## LOCALIZATION NOTE(CompositorAnimationWarningTransformSVG,
+## CompositorAnimationWarningTransformWithGeometricProperties,
+## CompositorAnimationWarningTransformWithSyncGeometricAnimations,
+## CompositorAnimationWarningTransformFrameInactive,
+## CompositorAnimationWarningOpacityFrameInactive):
+## 'transform' and 'opacity' mean CSS property names, don't translate it.
+CompositorAnimationWarningTransformSVG=Τα εφέ κίνησης του ‘transform’ στα στοιχεία με μεταμορφώσεις SVG δεν μπορούν να εκτελεστούν στο συνθέτη
+CompositorAnimationWarningTransformWithGeometricProperties=Τα εφέ κίνησης του ‘transform’ δεν μπορούν να εκτελεστούν στο συνθέτη όταν οι γεωμετρικές ιδιότητες εκτελούνται στο ίδιο στοιχείο ταυτόχρονα
+CompositorAnimationWarningTransformWithSyncGeometricAnimations=Το εφέ κίνησης του ‘transform’ δεν μπορεί να εκτελεστεί στο συνθέτη επειδή πρέπει να συγχρονιστεί με εφέ κίνησης των γεωμετρικών ιδιοτήτων που ξεκίνησαν ταυτόχρονα
+CompositorAnimationWarningTransformFrameInactive=Το εφέ κίνησης δεν μπορεί να εκτελεστεί στο συνθέτη επειδή το κάδρο δεν επισημάνθηκε ως ενεργό για το εφέ κίνησης ‘transform’
+CompositorAnimationWarningTransformIsBlockedByImportantRules=Το εφέ κίνησης "transform" δεν μπορεί να εκτελεστεί στο πρόγραμμα σύνθεσης, επειδή οι ιδιότητες σχετικά με το "transform" παρακάμπτονται από κανόνες !important
+CompositorAnimationWarningOpacityFrameInactive=Το εφέ κίνησης δεν μπορεί να εκτελεστεί στο συνθέτη επειδή το κάδρο δεν επισημάνθηκε ως ενεργό για το εφέ κίνησης ‘opacity’
+CompositorAnimationWarningHasRenderingObserver=Το εφέ κίνησης δεν μπορεί να εκτελεστεί στο συνθέτη επειδή το στοιχείο έχει παρατηρητές απόδοσης (-moz-element ή απόκομμα/μεταμφίεση SVG)
+CompositorAnimationWarningHasCurrentColor=Τα εφέ κίνησης του ‘background-color’ δεν μπορούν να εκτελεστούν στο πρόγραμμα σύνθεσης με το βασικό καρέ ‘current-color’.
+
+## LOCALIZATION NOTE: Do not translate zoom, calc(), "transform", "transform-origin: 0 0"
+ZoomPropertyWarning=Αυτή η σελίδα χρησιμοποιεί τη μη τυπική ιδιότητα “zoom”. Εξετάστε το ενδεχόμενο να χρησιμοποιήσετε την calc() στις τιμές της σχετικής ιδιότητας, ή να χρησιμοποιήσετε το “transform” μαζί με το “transform-origin: 0 0”.
+
+## LOCALIZATION NOTE(PrincipalWritingModePropagationWarning):
+## Do not translate <html>, <body>, CSS, "writing-mode", "direction", "text-orientation", :root, and "The Principal Writing Mode" because they are technical terms.
+PrincipalWritingModePropagationWarning=Κατά την απεικόνιση του στοιχείου <html>, οι χρησιμοποιούμενες τιμές των ιδιοτήτων CSS “writing-mode”, “direction” και “text-orientation” στο στοιχείο <html> λαμβάνονται από τις υπολογισμένες τιμές του στοιχείου <body>, όχι από τις ίδιες τις τιμές του στοιχείου <html>. Σκεφτείτε το ενδεχόμενο να ορίσετε αυτές τις ιδιότητες στην ψευδοκλάση :root CSS. Για περισσότερες πληροφορίες, δείτε το “The Principal Writing Mode” στο https://www.w3.org/TR/css-writing-modes-3/#principal-flow
+
+## LOCALIZATION NOTE(ScrollAnchoringDisabledInContainer):
+## %1$S is an integer value with the total number of adjustments
+## %2$S is a floating point value with the average distance adjusted
+## %3$S is a floating point value with the total adjusted distance
+ScrollAnchoringDisabledInContainer=Η αγκύρωση κύλισης απενεργοποιήθηκε σε ένα πλαίσιο κύλισης εξαιτίας υπερβολικά πολλών διαδοχικών προσαρμογών (%1$S) με πολύ λίγη συνολική απόσταση (μέσος όρος: %2$S px, σύνολο: %3$S px).
+
+ForcedLayoutStart=Η διάταξη επιβλήθηκε πριν την πλήρη φόρτωση της σελίδας. Αν τα φύλλα στυλ δεν έχουν φορτωθεί ακόμα, μπορεί να προκληθεί μια αναλαμπή περιεχομένου χωρίς στυλ.
diff --git a/l10n-el/dom/chrome/layout/printing.properties b/l10n-el/dom/chrome/layout/printing.properties
new file mode 100644
index 0000000000..c9db616cb3
--- /dev/null
+++ b/l10n-el/dom/chrome/layout/printing.properties
@@ -0,0 +1,56 @@
+# 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/.
+
+# Page number formatting
+## @page_number The current page number
+#LOCALIZATION NOTE (pageofpages): Do not translate %ld in the following line.
+# Place the word %ld where the page number and number of pages should be
+# The first %ld will receive the the page number
+pagenumber=%1$d
+
+# Page number formatting
+## @page_number The current page number
+## @page_total The total number of pages
+#LOCALIZATION NOTE (pageofpages): Do not translate %ld in the following line.
+# Place the word %ld where the page number and number of pages should be
+# The first %ld will receive the the page number
+# the second %ld will receive the total number of pages
+pageofpages=%1$d από %2$d
+
+PrintToFile=Εκτύπωση σε αρχείο
+print_error_dialog_title=Σφάλμα εκτύπωσης
+printpreview_error_dialog_title=Σφάλμα προεπισκόπησης εκτύπωσης
+
+# Printing error messages.
+#LOCALIZATION NOTE: Some of these messages come in pairs, one
+# for printing and one for print previewing. You can remove that
+# distinction in your language by removing the entity with the _PP
+# suffix; then the entity without a suffix will be used for both.
+# You can also add that distinction to any of the messages that don't
+# already have it by adding a new entity with a _PP suffix.
+#
+# For instance, if you delete PERR_GFX_PRINTER_DOC_IS_BUSY_PP, then
+# the PERR_GFX_PRINTER_DOC_IS_BUSY message will be used for that error
+# condition when print previewing as well as when printing. If you
+# add PERR_FAILURE_PP, then PERR_FAILURE will only be used when
+# printing, and PERR_FAILURE_PP will be used under the same conditions
+# when print previewing.
+#
+PERR_FAILURE=Σφάλμα κατά την εκτύπωση.
+
+PERR_ABORT=Η εργασία εκτύπωσης εγκαταλείφθηκε ή ακυρώθηκε.
+PERR_NOT_AVAILABLE=Κάποιες από τις λειτουργίες εκτύπωσης δεν είναι διαθέσιμες.
+PERR_NOT_IMPLEMENTED=Κάποιες από τις λειτουργίες εκτύπωσης δεν έχουν ακόμα εφαρμοσθεί.
+PERR_OUT_OF_MEMORY=Δεν υπάρχει αρκετή ελεύθερη μνήμη για εκτύπωση.
+PERR_UNEXPECTED=Υπήρξε ένα απρόσμενο σφάλμα κατά την εκτύπωση.
+
+PERR_GFX_PRINTER_NO_PRINTER_AVAILABLE=Κανένας διαθέσιμος εκτυπωτής.
+PERR_GFX_PRINTER_NO_PRINTER_AVAILABLE_PP=Κανένας διαθέσιμος εκτυπωτής, αδυναμία προεπισκόπησης εκτύπωσης.
+PERR_GFX_PRINTER_NAME_NOT_FOUND=Αδυναμία εύρεσης του επιλεγμένου εκτυπωτή.
+PERR_GFX_PRINTER_COULD_NOT_OPEN_FILE=Αποτυχία ανοίγματος αρχείου εξόδου για εκτύπωση σε αρχείο.
+PERR_GFX_PRINTER_STARTDOC=Αποτυχία εκτύπωσης κατά την εκκίνηση της εργασίας εκτύπωσης.
+PERR_GFX_PRINTER_ENDDOC=Αποτυχία εκτύπωσης κατά την ολοκλήρωση της εργασίας εκτύπωσης
+PERR_GFX_PRINTER_STARTPAGE=Αποτυχία εκτύπωσης κατά την εκκίνηση μιας νέας σελίδας.
+PERR_GFX_PRINTER_DOC_IS_BUSY=Δεν είναι ακόμα δυνατή η εκτύπωση αυτού του εγγράφου μιας και ακόμα φορτώνεται.
+PERR_GFX_PRINTER_DOC_IS_BUSY_PP=Δεν είναι ακόμα δυνατή η προεπισκόπηση εκτύπωσης αυτού του εγγράφου μιας και ακόμα φορτώνεται.
diff --git a/l10n-el/dom/chrome/layout/xmlparser.properties b/l10n-el/dom/chrome/layout/xmlparser.properties
new file mode 100644
index 0000000000..0a58226df3
--- /dev/null
+++ b/l10n-el/dom/chrome/layout/xmlparser.properties
@@ -0,0 +1,48 @@
+# 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/.
+
+# Map Expat error codes to error strings
+1 = ανεπάρκεια μνήμης
+2 = σφάλμα σύνταξης
+3 = δεν βρέθηκε στοιχείο
+4 = όχι καλοδιατυπωμένο
+5 = μη κλειστό σύμβολο
+6 = μερικός χαρακτήρας
+7 = αταίριαστη ετικέτα
+8 = διπλή ιδιότητα
+9 = ανεπιθύμητα μετά από στοιχείο εγγράφου
+10 = Μή έγκυρη παράμετρος στην αναφορά οντότητας
+11 = αόριστη οντότητα
+12 = αναδρομική αναφορά οντότητας
+13 = ασύγχρονη οντότητα
+14 = αναφορά σε μη έγκυρο αριθμό χαρακτήρα
+15 = αναφορά σε δυαδική οντότητα
+16 = αναφορά σε εξωτερική οντότητα σε γνώρισμα
+17 = xml processing instruction not at start of external entity
+18 = άγνωστη κωδικοποίηση
+19 = Η κωδικοποίηση στη δήλωση XML είναι εσφαλμένη
+20 = μη κλειστή ενότητα CDATA
+21 = σφάλμα στη διεργασία αναφοράς εξωτερικής οντότητας
+22 = το έγγραφο δεν είναι μόνο του
+23 = μη αναμενόμενη κατάσταση αναλυτή
+24 = δηλώθηκε οντότητα στην οντότητα παραμέτρων
+27 = το πρόθεμα δεν δεσμεύεται σε χώρο ονομάτων
+28 = δεν πρέπει να ανακληθεί η ανακοίνωση προθέματος
+29 = reserved prefix (xml) must not be undeclared or bound to another namespace URI
+30 = reserved prefix (xmlns) must not be declared or undeclared
+31 = prefix must not be bound to one of the reserved namespace URIs
+32 = παράνομος(οι) χαρακτήρας(ες) σε δημόσιο id
+38 = το αποκλειστικό πρόθεμα (xmlns) δεν πρέπει να είναι αδήλωτο ή δεσμευμένο σε ένα άλλο όνομα χώρου ονομάτων
+39 = το αποκλειστικό πρόθεμα (xmlns) δεν πρέπει να είναι δηλωμένο ή αδήλωτο
+40 = το πρόθεμα δεν πρέπει να είναι δεσμευμένο σε ένα από τα κρατημένα ονόματα χώρου ονομάτων
+
+# %1$S is replaced by the Expat error string, may be followed by Expected (see below)
+# %2$S is replaced by URL
+# %3$u is replaced by line number
+# %4$u is replaced by column number
+XMLParsingError = Σφάλμα ανάλυσης XML: %1$S\nΤοποθεσία: %2$S\nΑριθμός γραμμής %3$u, Στήλη %4$u:
+
+# %S is replaced by a tag name.
+# This gets appended to the error string if the error is mismatched tag.
+Expected = . Αναμένεται: </%S>.
diff --git a/l10n-el/dom/chrome/layout/xul.properties b/l10n-el/dom/chrome/layout/xul.properties
new file mode 100644
index 0000000000..510c881c46
--- /dev/null
+++ b/l10n-el/dom/chrome/layout/xul.properties
@@ -0,0 +1,5 @@
+# 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/.
+
+PINotInProlog=<?%1$S?> η οδηγία επεξεργασίας δεν έχει πλέον καμία επίδραση εκτός του prolog (βλ. σφάλμα 360119).
diff --git a/l10n-el/dom/chrome/mathml/mathml.properties b/l10n-el/dom/chrome/mathml/mathml.properties
new file mode 100644
index 0000000000..08ac37de99
--- /dev/null
+++ b/l10n-el/dom/chrome/mathml/mathml.properties
@@ -0,0 +1,16 @@
+# 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/.
+
+InvalidChild=Μη έγκυρη σήμανση: το <%1$S> δεν επιτρέπεται ως παιδί του <%2$S>.
+ChildCountIncorrect=Μη έγκυρη σήμανση: εσφαλμένος αριθμός παιδιών για την ετικέτα <%1$S/>.
+DuplicateMprescripts=Μη έγκυρη σήμανση: περισσότερα από ένα <mprescripts/> στο <mmultiscripts/>.
+# LOCALIZATION NOTE: The first child of <mmultiscript/> is the base, that is the element to which scripts are attached.
+NoBase=Μη έγκυρη σήμανση: αναμενόταν ακριβώς ένα στοιχείο ως Βάση στην <mmultiscripts/>.  Δεν βρέθηκε κανένα.
+SubSupMismatch=Μη έγκυρη σήμανση: ελλιπές ζεύγος δείκτη/εκθέτη στο <mmultiscripts/>.
+
+# LOCALIZATION NOTE: When localizing the single quotes ('), follow the conventions in css.properties for your target locale.
+AttributeParsingError=Σφάλμα κατά την ανάλυση της τιμής «%1$S» της ιδιότητας «%2$S» στην <%3$S/>.  Η ιδιότητα αγνοήθηκε.
+AttributeParsingErrorNoTag=Σφάλμα κατά την ανάλυση της τιμής «%1$S» της ιδιότητας «%2$S».  Η ιδιότητα αγνοήθηκε.
+LengthParsingError=Σφάλμα κατά την ανάλυση της τιμής «%1$S» ως μήκος της ιδιότητας MathML. Η ιδιότητα αγνοήθηκε.
+UnitlessValuesAreDeprecated=Οι αδιάστατες τιμές έχουν καταργηθεί στην MathML 3.
diff --git a/l10n-el/dom/chrome/netError.dtd b/l10n-el/dom/chrome/netError.dtd
new file mode 100644
index 0000000000..db56be7721
--- /dev/null
+++ b/l10n-el/dom/chrome/netError.dtd
@@ -0,0 +1,104 @@
+<!-- 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 loadError.label "Σφάλμα φόρτωσης σελίδας">
+<!ENTITY retry.label "Δοκιμή ξανά">
+
+<!-- Specific error messages -->
+
+<!ENTITY connectionFailure.title "Σφάλμα αποτυχίας σύνδεσης">
+<!ENTITY connectionFailure.longDesc "Η εφαρμογή απέτυχε να συνδεθεί στην καθορισμένη σελίδα, αν και αυτή η σελίδα υπάρχει. Αυτό μπορεί να οφείλεται στο ότι η σελίδα δεν δέχεται επισκέψεις, ο εξυπηρετητής να έχει πρόβλημα, ή να μην υποστηρίζει την υπηρεσία ή τη θύρα στην οποία προσπαθείτε να συνδεθείτε.">
+
+<!ENTITY deniedPortAccess.title "Περιορισμός θύρας για λόγους ασφαλείας">
+<!ENTITY deniedPortAccess.longDesc "<p>Η ζητούμενη διεύθυνση καθορίζει μια θύρα (π.χ.. <q>mozilla.org:80</q> για την θύρα 80 στο mozilla.org) που συνήθως χρησιμοποιείται για <em>άλλους σκοπούς</em> από την περιήγηση στο διαδίκτυο. Η εφαρμογή ακύρωσε την αίτηση για να προστατεύσει την ασφάλεια και το απόρρητο σας.</p>">
+
+<!ENTITY dnsNotFound.title "Σφάλμα εύρεσης διεύθυνσης">
+<!ENTITY dnsNotFound.longDesc " Η διεύθυνση (URL) δεν αντιστοιχεί σε κάποια γνωστή σελίδα και δεν μπορεί να φορτωθεί.">
+
+<!ENTITY fileNotFound.title "Το αρχείο δεν βρέθηκε">
+<!ENTITY fileNotFound.longDesc "Το αρχείο που καθορίζεται από τη διεύθυνση (URL) δεν βρέθηκε. Ελέγξτε ότι το αρχείο υπάρχει και ότι έχετε τα απαραίτητα δικαιώματα να το εμφανίσετε.">
+
+<!ENTITY fileAccessDenied.title "Άρνηση πρόσβασης στο αρχείο">
+<!ENTITY fileAccessDenied.longDesc "<ul><li>Μπορεί να διαγράφηκε, μετακινήθηκε ή τα δικαιώματα του αρχείου να εμποδίζουν την πρόσβαση.</li></ul>">
+
+<!ENTITY generic.title "Αδυναμία ολοκλήρωσης αίτησης">
+<!ENTITY generic.longDesc "Η σελίδα δεν μπορεί να φορτωθεί επειδή πιθανόν δεν υπάρχει, ή η τοποθεσία της είναι εσφαλμένη. <br/>Ελέγξτε αν η τοποθεσία της είναι σωστή.">
+
+<!ENTITY malformedURI.title "Σφάλμα μη έγκυρης διεύθυνσης">
+<!ENTITY malformedURI.longDesc "<p> Αυτή η διεύθυνση (URL) δεν είναι έγκυρη και δεν μπορεί να φορτωθεί. Ελέγξτε τη διεύθυνση για σφάλματα και προσπαθήστε ξανά</p> ">
+
+<!ENTITY netInterrupt.title "Διακοπή μεταφοράς δεδομένων">
+<!ENTITY netInterrupt.longDesc "<p>Η εφαρμογή συνδέθηκε επιτυχώς, αλλά η σύνδεση διακόπηκε κατά την μεταφορά πληροφοριών. Παρακαλώ προσπαθήστε ξανά.</p><ul><li>Μπορείτε να συνδεθείτε με άλλες σελίδες; Ελέγξτε τη σύνδεση του δικτύου σας.</li><li>Ακόμα έχετε πρόβλημα; Συμβουλευτείτε το διαχειριστή του συστήματος ή τον πάροχο σας.</li></ul>">
+
+<!ENTITY notCached.title "Το έγγραφο έληξε">
+<!ENTITY notCached.longDesc "<p>Το έγγραφο που ζητήσατε δεν είναι πια διαθέσιμο στην μνήμη του περιηγητή.</p><ul><li>Ως μέτρο ασφαλείας ο περιηγητής δεν ζητά ξανά να ανασύρει ευαίσθητα έγγραφα.</li><li>Πατήστε Προσπάθεια ξανά για να γίνει αίτηση ξανά στη σελίδα.</li></ul>">
+
+<!ENTITY netOffline.title "Σφάλμα εργασίας χωρίς σύνδεση">
+<!ENTITY netOffline.longDesc2 "<p>Ο περιηγητής είναι χωρίς σύνδεση και δεν μπορεί να συνδεθεί με τη σελίδα.</p><ul><li>Είναι ο υπολογιστής σας συνδεδεμένος σε ένα ενεργό δίκτυο;</li><li>Πατήστε&quot;Προσπάθεια ξανά&quot; για να μεταβείτε σε εργασία μέ σύνδεση και να ξαναφορτώσετε την σελίδα.</li></ul>">
+
+<!ENTITY contentEncodingError.title "Σφάλμα κωδικοποίησης περιεχομένου">
+<!ENTITY contentEncodingError.longDesc "<p>Η σελίδα που προσπαθείτε να δείτε δεν μπορεί να εμφανιστεί επειδή χρησιμοποιεί μια μη έγκυρη ή μη υποστηριζόμενη μορφή συμπίεσης.</p><ul><li>Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους πληροφορήσετε για το πρόβλημα.</li></ul>">
+
+<!ENTITY unsafeContentType.title "Μη ασφαλής τύπος αρχείου">
+<!ENTITY unsafeContentType.longDesc "
+<ul>
+ <li>Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε για το πρόβλημα.</li>
+</ul>
+">
+
+<!ENTITY netReset.title "Σφάλμα επαναφοράς δικτύου">
+<!ENTITY netReset.longDesc "<p>Η σύνδεση δικτύου διεκόπη κατά τη διαπραγμάτευση σύνδεσης. Παρακαλώ δοκιμάστε ξανά.</p>">
+
+<!ENTITY netTimeout.title "Σφάλμα ορίου χρόνου">
+<!ENTITY netTimeout.longDesc "Ο περιηγητής δεν συνδέθηκε με την ιστοσελίδα λόγω υπέρβασης του χρονικού ορίου. Πιθανόν να υπάρχουν προβλήματα κίνησης στο δίκτυο. Περιμένετε λίγο και προσπαθήστε ξανά.">
+
+<!ENTITY unknownProtocolFound.title "Άγνωστο Πρωτόκολλο">
+<!ENTITY unknownProtocolFound.longDesc "<p>Η διεύθυνση καθορίζει ένα πρωτόκολλο (π.χ. <q>wxyz://</q>) που δεν αναγνωρίζεται από το πρόγραμμα περιήγησης, οπότε δεν μπορεί να γίνει σωστή σύνδεση στην ιστοσελίδα.</p><ul><li>Προσπαθείτε να αποκτήσετε πρόσβαση σε πολυμέσα ή άλλες υπηρεσίες χωρίς κείμενο; Ελέγξτε την ιστοσελίδα για επιπρόσθετες απαιτήσεις.</li><li>Μερικά πρωτόκολλα ενδέχεται να απαιτούν λογισμικό ή αρθρώματα τρίτων, προτού μπορέσει να τα αναγνωρίσει το πρόγραμμα περιήγησης.</li></ul>">
+
+<!ENTITY proxyConnectFailure.title "Άρνηση σύνδεσης διαμεσολαβητή">
+<!ENTITY proxyConnectFailure.longDesc "<p>Η εφαρμογή είναι ρυθμισμένη να χρησιμοποιεί ένα διαμεσολαβητή, αλλά ο διαμεσολαβητής αρνήθηκε τη σύνδεση.</p><ul><li>Είναι σωστή η ρύθμιση του διαμεσολαβητή; Ελέγξτε τις ρυθμίσεις και προσπαθήστε ξανά.</li><li>Επιτρέπει ο διαμεσολαβητής συνδέσεις από αυτό το δίκτυο;</li><li>Ακόμα έχετε πρόβλημα; Συμβουλευτείτε το διαχειριστή του συστήματος ή τον πάροχο σας.</li></ul>">
+
+<!ENTITY proxyResolveFailure.title "Δεν βρέθηκε διαμεσολαβητής">
+<!ENTITY proxyResolveFailure.longDesc "<p>Η εφαρμογή είναι ρυθμισμένη να χρησιμοποιεί ένα διαμεσολαβητή, αλλά ο διαμεσολαβητής δεν βρέθηκε.</p><ul><li>Είναι σωστή η ρύθμιση του διαμεσολαβητή; Ελέγξτε τις ρυθμίσεις και προσπαθήστε ξανά.</li><li>Είναι ο υπολογιστής συνδεδεμένος σε ενεργό δίκτυο;</li><li>Ακόμα έχετε πρόβλημα; Συμβουλευτείτε το διαχειριστή του συστήματος ή τον πάροχο σας.</li></ul>">
+
+<!ENTITY redirectLoop.title "Σφάλμα Redirect Loop">
+<!ENTITY redirectLoop.longDesc "Ο περιηγητής διέκοψε τη σύνδεση επειδή η σελίδα ανακατευθύνει στον εαυτό της με τέτοιο τρόπο που δεν επιτρέπει τη φόρτωση της σελίδας.">
+
+<!ENTITY unknownSocketType.title "Σφάλμα άγνωστου Socket">
+<!ENTITY unknownSocketType.longDesc "Η σελίδα απάντησε στην αίτηση σύνδεσης με απρόσμενο τρόπο. Αυτό μπορεί να οφείλεται σε εσφαλμένη χρήση πρωτοκόλλου από το URL για τη συγκεκριμένη θύρα. ">
+
+<!ENTITY nssFailure2.title "Αποτυχία ασφαλούς σύνδεσης">
+<!ENTITY nssFailure2.longDesc2 "<p>Η σελίδα που προσπαθείτε να δείτε δεν μπορεί να εμφανιστεί επειδή δεν είναι δυνατή η πιστοποίηση της αυθεντικότητας των ληφθέντων δεδομένων.</p><ul><li>Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους πληροφορήσετε για το πρόβλημα.</li></ul>">
+
+<!ENTITY nssBadCert.title "Αποτυχία ασφαλούς σύνδεσης">
+<!ENTITY nssBadCert.longDesc2 "<ul>
+<li>Μπορεί να υπάρχει πρόβλημα με τις ρυθμίσεις του εξυπηρετητή, ή κάποιος προσπαθεί να μιμηθεί κακόβουλα τον εξυπηρετητή.</li>
+<li>Aν έχετε συνδεθεί ξανά στο παρελθόν με αυτόν τον εξυπηρετητή, το σφάλμα μπορεί να είναι προσωρινό, και μπορείτε να προσπαθήσετε ξανά.</li>
+</ul>
+">
+
+<!ENTITY securityOverride.linkText "Ή μπορείτε να προσθέσετε μια εξαίρεση…">
+<!ENTITY securityOverride.warningContent "<p>Δεν πρέπει να προσθέσετε εξαίρεση αν χρησιμοποιείτε σύνδεση διαδικτύου που δεν εμπιστεύεστε απόλυτα ή αν δεν είστε συνηθισμένοι να βλέπετε προειδοποιήσεις για αυτόν τον διακομιστή.</p><p>Αν επιθυμείτε ακόμη να προσθέσετε εξαίρεση για τον ιστοτόπο, μπορείτε να το κάνετε στις ρυθμίσεις κρυπτογράφησης για προχωρημένους.</p>">
+
+<!ENTITY cspBlocked.title "Αποκλεισμένο από την Πολιτική Ασφαλείας Περιεχομένου">
+<!ENTITY cspBlocked.longDesc "<p>Ο περιηγητής απέτρεψε την φόρτωση της σελίδας με αυτό τον τρόπο επειδή αυτή περιέχει μια πολιτική ασφαλείας περιεχομένου που δεν το επιτρέπει.</p>">
+
+<!ENTITY xfoBlocked.title "Αποκλείστηκε από την πολιτική X-Frame-Options">
+<!ENTITY xfoBlocked.longDesc "<p>Το πρόγραμμα περιήγησης απέτρεψε τη φόρτωση της σελίδας σε αυτό το πλαίσιο, επειδή η σελίδα έχει πολιτική X-Frame-Options που δεν το επιτρέπει.</p>">
+
+<!ENTITY corruptedContentErrorv2.title "Σφάλμα κατεστραμμένου περιεχομένου">
+<!ENTITY corruptedContentErrorv2.longDesc "<p>Η σελίδα που προσπαθείτε να δείτε δεν μπορεί να προβληθεί επειδή εντοπίστηκε σφάλμα στην μετάδοση των δεδομένων.</p><ul><li>Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε για αυτό το πρόβλημα.</li></ul>">
+
+<!ENTITY remoteXUL.title "Απομακρυσμένο XUL">
+<!ENTITY remoteXUL.longDesc "<p><ul><li>Παρακαλούμε επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους πληροφορήσετε για το πρόβλημα.</li></ul></p>">
+
+<!ENTITY inadequateSecurityError.title "Η σύνδεσή σας δεν είναι ασφαλής">
+<!-- LOCALIZATION NOTE (inadequateSecurityError.longDesc) - Do not translate
+ "NS_ERROR_NET_INADEQUATE_SECURITY". -->
+<!ENTITY inadequateSecurityError.longDesc "<p>Το <span class='hostname'></span> χρησιμοποιεί παρωχημένες τεχνολογίες ασφαλείας που είναι ευάλωτες σε επίθεση. Ένας επιτιθέμενος μπορεί εύκολα να αποκαλύψει πληροφορίες που πιστεύατε ότι είναι ασφαλείς. Ο διαχειριστής του ιστοτόπου θα πρέπει να διορθώσει τον διακομιστή προτού επισκεφθείτε τον ιστοτόπο.</p><p>Κωδικός σφάλματος: NS_ERROR_NET_INADEQUATE_SECURITY</p>">
+
+<!ENTITY blockedByPolicy.title "Αποκλεισμένη σελίδα">
+
+<!ENTITY networkProtocolError.title "Σφάλμα πρωτοκόλλου δικτύου">
+<!ENTITY networkProtocolError.longDesc "<p>Δεν είναι δυνατή η εμφάνιση αυτής της σελίδας, επειδή υπήρξε ένα σφάλμα στο πρωτόκολλο δικτύου.</p><ul><li>Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε σχετικά με το πρόβλημα.</li></ul>">
diff --git a/l10n-el/dom/chrome/netErrorApp.dtd b/l10n-el/dom/chrome/netErrorApp.dtd
new file mode 100644
index 0000000000..f827469e35
--- /dev/null
+++ b/l10n-el/dom/chrome/netErrorApp.dtd
@@ -0,0 +1,34 @@
+<!-- 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 messages that are likely to be overridden by applications go in this
+ file, all messages that likely don't need to tie into app-specific UI
+ should go into netError.dtd
+
+<!ENTITY securityOverride.linkText "Ή μπορείτε να προσθέσετε μια εξαίρεση…">
+<!ENTITY securityOverride.warningContent "
+<p>Δεν πρέπει να προσθέσετε μια εξαίρεση αν χρησιμοποιείτε μια σύνδεση στο διαδίκτυο που δεν εμπιστεύεστε πλήρως, ή αν δεν έχετε ξαναδεί προειδοποίηση για αυτόν τον εξυπηρετητή.</p>
+<p>Αν ακόμα επιμένετε να προσθέσετε μια εξαίρεση για αυτή τη σελίδα, μπορείτε να το κάνετε στις προχωρημένες ρυθμίσεις κρυπτογράφησης.</p>
+">
+-->
+
+<!-- This file exists to allow applications to override one or more messages
+ from netError.dtd; Applications which want to do this should override
+ this file with their own version of netErrorApp.dtd -->
+
+<!-- An example (from Firefox):
+
+<!ENTITY securityOverride.linkText "Or you can add an exception…">
+<!ENTITY securityOverride.getMeOutOfHereButton "Get me out of here!">
+<!ENTITY securityOverride.exceptionButtonLabel "Add Exception…">
+
+<!ENTITY securityOverride.warningContent "
+<p>You should not add an exception if you are using an internet connection that you do not trust completely or if you are not used to seeing a warning for this server.</p>
+<p>If you still wish to add an exception for this site, you can do so in your advanced encryption settings.</p>
+
+<button id='getMeOutOfHereButton'>&securityOverride.getMeOutOfHereButton;</button>
+<button id='exceptionDialogButton'>&securityOverride.exceptionButtonLabel;</button>
+">
+
+-->
diff --git a/l10n-el/dom/chrome/nsWebBrowserPersist.properties b/l10n-el/dom/chrome/nsWebBrowserPersist.properties
new file mode 100644
index 0000000000..3aea331b3b
--- /dev/null
+++ b/l10n-el/dom/chrome/nsWebBrowserPersist.properties
@@ -0,0 +1,17 @@
+# 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/.
+
+readError=Το %S δεν μπορεί να αποθηκευτεί, επειδή δεν είναι δυνατή η ανάγνωση του πηγαίου αρχείου. \n\nΠροσπαθήστε ξανά αργότερα ή επικοινωνήστε με το διαχειριστή του συστήματος σας.
+writeError=Το %S δεν μπορεί να αποθηκευτεί, επειδή προέκυψε ένα άγνωστο σφάλμα.\n\nΠροσπαθήστε να το αποθηκεύσετε σε διαφορετική τοποθεσία.
+launchError=Το %S δεν μπορεί να ανοιχθεί, επειδή προέκυψε ένα άγνωστο σφάλμα.\n\nΠροσπαθήστε να το αποθηκεύσετε πρώτα στο δίσκο και μετά να ανοίξετε το αρχείο.
+diskFull=Δεν υπάρχει αρκετός ελεύθερος χώρος στο δίσκο για την αποθήκευση του %S.\n\n Διαγράψτε τυχόν άχρηστα αρχεία και προσπαθήστε ξανά, ή αποθηκεύστε το σε διαφορετική τοποθεσία.
+readOnly=Δεν είναι δυνατή η αποθήκευση του %S, επειδή ο δίσκος, φάκελος ή αρχείο είναι μόνο για ανάγνωση.\n\nΕνεργοποιήστε την εγγραφή στο δίσκο και προσπαθήστε ξανά ή αποθηκεύστε το σε διαφορετική τοποθεσία.
+accessError=Δεν είναι δυνατή η αποθήκευση του %S, επειδή δεν μπορείτε να αλλάξετε τα περιεχόμενου αυτού του φακέλου.\n\nΑλλάξτε τα δικαιώματα του φακέλου και προσπαθήστε ξανά, ή αποθηκεύστε το σε διαφορετική τοποθεσία.
+SDAccessErrorCardReadOnly=Δεν ήταν δυνατή η λήψη του αρχείου επειδή η κάρτα SD είναι σε χρήση.
+SDAccessErrorCardMissing=Δεν ήταν δυνατή η λήψη του αρχείου επειδή λείπει η κάρτα SD.
+helperAppNotFound=Δεν είναι δυνατό το άνοιγμα του %S, επειδή δεν υπάρχει η σχετική βοηθητική εφαρμογή. Αλλάξτε το συσχετισμό στις προτιμήσεις σας.
+noMemory=Δεν υπάρχει επαρκής μνήμη για την ολοκλήρωση της αιτούμενης ενέργειας.\n\nΚλείστε μερικές εφαρμογές και προσπαθήστε ξανά.
+title=Λήψη %S
+fileAlreadyExistsError=Το %S δεν μπορεί να αποθηκευτεί, επειδή ένα αρχείο με το ίδιο όνομα υπάρχει ήδη όπως και ο κατάλογος '_files' .\n\nΠροσπαθήστε να το αποθηκεύσετε σε διαφορετική τοποθεσία.
+fileNameTooLongError=Το %S δεν μπορεί να αποθηκευτεί, επειδή το όνομα αρχείου είναι πολύ μεγάλο.\n\n Προσπαθήστε να το αποθηκεύσετε με ένα πιο σύντομο όνομα.
diff --git a/l10n-el/dom/chrome/plugins.properties b/l10n-el/dom/chrome/plugins.properties
new file mode 100644
index 0000000000..c0c986aff0
--- /dev/null
+++ b/l10n-el/dom/chrome/plugins.properties
@@ -0,0 +1,18 @@
+# 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:
+# Those strings are inserted into an HTML page, so all HTML characters
+# have to be escaped in a way that they show up correctly in HTML!
+
+# GMP Plugins
+gmp_license_info=Πληροφορίες άδειας
+gmp_privacy_info=Πληροφορίες απορρήτου
+
+openH264_name=Κωδικοποιητής βίντεο OpenH264 από την Cisco Systems, Inc.
+openH264_description2=Αυτό το άρθρωμα εγκαθίσταται αυτόματα από τη Mozilla για τη συμμόρφωση με τις προδιαγραφές WebRTC και την ενεργοποίηση κλήσεων WebRTC με συσκευές που απαιτούν την κωδικοποίηση βίντεο H.264. Επισκεφθείτε το http://www.openh264.org/ για να δείτε τον πηγαίο κώδικα του κωδικοποιητή και για να μάθετε περισσότερα σχετικά με την υλοποίηση.
+
+cdm_description2=Αυτό το άρθρωμα ενεργοποιεί την αναπαραγωγή κρυπτογραφημένων πολυμέσων σύμφωνα με τις προδιαγραφές Encrypted Media Extensions. Τα κρυπτογραφημένα πολυμέσα χρησιμοποιούνται συνήθως από ιστοσελίδες για προστασία ενάντια στην αντιγραφή προνομιακού περιεχομένου πολυμέσων. Επισκεφθείτε το https://www.w3.org/TR/encrypted-media/ για περισσότερες πληροφορίες σχετικά με το Encrypted Media Extensions.
+
+widevine_description=Πρόσθετο αποκρυπτογράφησης περιεχομένου Widevine από την Google Inc.
diff --git a/l10n-el/dom/chrome/security/caps.properties b/l10n-el/dom/chrome/security/caps.properties
new file mode 100644
index 0000000000..a97950373a
--- /dev/null
+++ b/l10n-el/dom/chrome/security/caps.properties
@@ -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/.
+CheckLoadURIError = Σφάλμα ασφαλείας: Το περιεχόμενο στο %S μπορεί να μη φορτώσει ή να μη συνδέει στο %S.
+CheckSameOriginError = Σφάλμα ασφαλείας: Το περιεχόμενο στο %S μπορεί να μη φορτώσει δεδομένα από %S.
+ExternalDataError = Σφάλμα ασφαλείας: Το περιεχόμενο στο %S προσπάθησε να φορτώσει το %S, αλλά ενδέχεται να μην είναι δυνατή η φόρτωση εξωτερικών δεδομένων όταν χρησιμοποιούνται ως εικόνα.
+
+CreateWrapperDenied = Άρνηση πρόσβασης για τη δημιουργία wrapper for object of class %S
+CreateWrapperDeniedForOrigin = Άρνηση δικαιώματος στο <%2$S> για δημιουργία wrapper για το αντικείμενο της κλάσης %1$S
diff --git a/l10n-el/dom/chrome/security/csp.properties b/l10n-el/dom/chrome/security/csp.properties
new file mode 100644
index 0000000000..0a5e194a7d
--- /dev/null
+++ b/l10n-el/dom/chrome/security/csp.properties
@@ -0,0 +1,107 @@
+# 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/.
+
+# CSP Warnings:
+# LOCALIZATION NOTE (CSPViolation):
+# %1$S is the reason why the resource has not been loaded.
+CSPViolation = Οι ρυθμίσεις της σελίδας απέτρεψαν την φόρτωση ενός πόρου: %1$S
+# LOCALIZATION NOTE (CSPViolationWithURI):
+# %1$S is the directive that has been violated.
+# %2$S is the URI of the resource which violated the directive.
+CSPViolationWithURI = Οι ρυθμίσεις της σελίδας απέκλεισαν τη φόρτωση ενός πόρου στο %2$S (“%1$S”).
+# LOCALIZATION NOTE (CSPROViolation):
+# %1$S is the reason why the resource has not been loaded.
+CSPROViolation = Παρουσιάστηκε μια παραβίαση πολιτικής CSP σε λειτουργία απλής αναφοράς (“%1$S”). Η συμπεριφορά επετράπη και εστάλη μια αναφορά CSP.
+# LOCALIZATION NOTE (CSPROViolationWithURI):
+# %1$S is the directive that has been violated.
+# %2$S is the URI of the resource which violated the directive.
+CSPROViolationWithURI = Οι ρυθμίσεις της σελίδας διαπίστωσαν την φόρτωση ενός πόρου στο %2$S (“%1$S”). Αποστέλλεται μια αναφορά CSP.
+# LOCALIZATION NOTE (triedToSendReport):
+# %1$S is the URI we attempted to send a report to.
+triedToSendReport = Έγινε απόπειρα αποστολής της αναφοράς σε μη έγκυρο URI: “%1$S”
+# LOCALIZATION NOTE (couldNotParseReportURI):
+# %1$S is the report URI that could not be parsed
+couldNotParseReportURI = αδυναμία ανάλυσης URI αναφοράς: %1$S
+# LOCALIZATION NOTE (couldNotProcessUnknownDirective):
+# %1$S is the unknown directive
+couldNotProcessUnknownDirective = Αδυναμία επεξεργασίας άγνωστης οδηγίας ‘%1$S’
+# LOCALIZATION NOTE (ignoringUnknownOption):
+# %1$S is the option that could not be understood
+ignoringUnknownOption = Παράβλεψη άγνωστης επιλογής %1$S
+# LOCALIZATION NOTE (ignoringDuplicateSrc):
+# %1$S defines the duplicate src
+ignoringDuplicateSrc = Παράβλεψη διπλής πηγής %1$S
+# LOCALIZATION NOTE (ignoringSrcFromMetaCSP):
+# %1$S defines the ignored src
+ignoringSrcFromMetaCSP = Παράβλεψη πηγής ‘%1$S’ (Δεν υποστηρίζεται όταν παραδίδεται μέσω μεταστοιχείου).
+# LOCALIZATION NOTE (ignoringSrcWithinScriptStyleSrc):
+# %1$S is the ignored src
+# script-src and style-src are directive names and should not be localized
+ignoringSrcWithinScriptStyleSrc = Παράβλεψη του “%1$S” μέσα στο script-src ή το style-src: ορίστηκε nonce-source ή hash-source
+# LOCALIZATION NOTE (ignoringSrcForStrictDynamic):
+# %1$S is the ignored src
+# script-src, as well as 'strict-dynamic' should not be localized
+ignoringSrcForStrictDynamic = Παράβλεψη “%1$S” μέσα στο script-src: καθορίστηκε ‘strict-dynamic’
+# LOCALIZATION NOTE (ignoringStrictDynamic):
+# %1$S is the ignored src
+ignoringStrictDynamic = Παράβλεψη πηγής “%1$S” (Υποστηρίζεται μόνο μέσα στο script-src).
+# LOCALIZATION NOTE (strictDynamicButNoHashOrNonce):
+# %1$S is the csp directive that contains 'strict-dynamic'
+# 'strict-dynamic' should not be localized
+strictDynamicButNoHashOrNonce = Η λέξη-κλειδί ‘strict-dynamic’ μέσα στο “%1$S” χωρίς έγκυρη nonce ή hash ενδέχεται να αποκλείσει τη φόρτωση όλων των σεναρίων
+# LOCALIZATION NOTE (reportURInotHttpsOrHttp2):
+# %1$S is the ETLD of the report URI that is not HTTP or HTTPS
+reportURInotHttpsOrHttp2 = Η αναφορά URI (%1$S) θα έπρεπε να είναι ένα HTTP ή HTTPS URI.
+# LOCALIZATION NOTE (reportURInotInReportOnlyHeader):
+# %1$S is the ETLD of the page with the policy
+reportURInotInReportOnlyHeader = Αυτή η ιστοσελίδα (%1$S) έχει μια πολιτική Report-Only χωρίς αναφορά URI. Το CSP δεν αποκλείει και δεν μπορεί να αναφέρει παραβιάσεις αυτής της πολιτικής.
+# LOCALIZATION NOTE (failedToParseUnrecognizedSource):
+# %1$S is the CSP Source that could not be parsed
+failedToParseUnrecognizedSource = Αποτυχία ανάλυσης μη αναγνωριζόμενης πηγής %1$S
+# LOCALIZATION NOTE (upgradeInsecureRequest):
+# %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+upgradeInsecureRequest = Αναβάθμιση επισφαλούς αιτήματος ‘%1$S’ για χρήση ‘%2$S’
+# LOCALIZATION NOTE (ignoreSrcForDirective):
+ignoreSrcForDirective = Παράβλεψη πηγών για οδηγία ‘%1$S’
+# LOCALIZATION NOTE (hostNameMightBeKeyword):
+# %1$S is the hostname in question and %2$S is the keyword
+hostNameMightBeKeyword = Γίνεται διερμηνεία του %1$S ως ονόματος κεντρικού υπολογιστή, όχι ως λέξης-κλειδιού. Αν σκοπεύατε να είναι μια λέξη-κλειδί, χρησιμοποιήστε το ‘%2$S’ (μέσα σε μονά εισαγωγικά).
+# LOCALIZATION NOTE (notSupportingDirective):
+# directive is not supported (e.g. 'reflected-xss')
+notSupportingDirective = Δεν υποστηρίζεται η οδηγία ‘%1$S’. Η οδηγία και οι τιμές θα αγνοηθούν.
+# LOCALIZATION NOTE (blockAllMixedContent):
+# %1$S is the URL of the blocked resource load.
+blockAllMixedContent = Αποκλεισμός επισφαλούς αιτήματος ‘%1$S’.
+# LOCALIZATION NOTE (ignoringDirectiveWithNoValues):
+# %1$S is the name of a CSP directive that requires additional values
+ignoringDirectiveWithNoValues = Παράβλεψη του ‘%1$S’ αφού δεν περιέχει παραμέτρους.
+# LOCALIZATION NOTE (ignoringReportOnlyDirective):
+# %1$S is the directive that is ignored in report-only mode.
+ignoringReportOnlyDirective = Παράβλεψη οδηγίας sandbox όταν διανέμεται σε μια πολιτική "μόνο για αναφορά" ‘%1$S’
+# LOCALIZATION NOTE (IgnoringSrcBecauseOfDirective):
+# %1$S is the name of the src that is ignored.
+# %2$S is the name of the directive that causes the src to be ignored.
+IgnoringSrcBecauseOfDirective=Παράβλεψη του ‘%1$S’ λόγω της οδηγίας ‘%2$S’.
+
+# LOCALIZATION NOTE (IgnoringSourceWithinDirective):
+# %1$S is the ignored src
+# %2$S is the directive which supports src
+IgnoringSourceWithinDirective = Παράβλεψη πηγής “%1$S” (Δεν υποστηρίζεται στο ‘%2$S’).
+
+# CSP Errors:
+# LOCALIZATION NOTE (couldntParseInvalidSource):
+# %1$S is the source that could not be parsed
+couldntParseInvalidSource = Δεν ήταν δυνατή η λήψη μη έγκυρης πηγής %1$S
+# LOCALIZATION NOTE (couldntParseInvalidHost):
+# %1$S is the host that's invalid
+couldntParseInvalidHost = Δεν ήταν δυνατή η λήψη μη έγκυρου host %1$S
+# LOCALIZATION NOTE (couldntParsePort):
+# %1$S is the string source
+couldntParsePort = Δεν ήταν δυνατή η λήψη θύρας στο %1$S
+# LOCALIZATION NOTE (duplicateDirective):
+# %1$S is the name of the duplicate directive
+duplicateDirective = Ανιχνεύθηκαν διπλοί κατάλογοι %1$S. Θα αγνοηθούν όλοι εκτός από τον πρώτο.
+# LOCALIZATION NOTE (couldntParseInvalidSandboxFlag):
+# %1$S is the option that could not be understood
+couldntParseInvalidSandboxFlag = Δεν ήταν δυνατή η λήψη μη έγκυρης σημαίας sandbox ‘%1$S’
diff --git a/l10n-el/dom/chrome/security/security.properties b/l10n-el/dom/chrome/security/security.properties
new file mode 100644
index 0000000000..a42b29d49f
--- /dev/null
+++ b/l10n-el/dom/chrome/security/security.properties
@@ -0,0 +1,154 @@
+# 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/.
+
+# Mixed Content Blocker
+# LOCALIZATION NOTE: "%1$S" is the URI of the blocked mixed content resource
+BlockMixedDisplayContent = Αποκλεισμένη φόρτωση μικτού παθητικού περιεχομένου «%1$S»
+BlockMixedActiveContent = Αποκλεισμένη φόρτωση μικτού ενεργού περιεχομένου «%1$S»
+
+# CORS
+# LOCALIZATION NOTE: Do not translate "Access-Control-Allow-Origin", Access-Control-Allow-Credentials, Access-Control-Allow-Methods, Access-Control-Allow-Headers
+CORSDisabled=Αποκλείστηκε αίτημα πολλαπλών προελεύσεων: Η πολιτική ίδιας προέλευσης δεν επιτρέπει την ανάγνωση του απομακρυσμένου πόρου στο %1$S. (Αιτία: το CORS απενεργοποιήθηκε).
+CORSDidNotSucceed=Αποκλείστηκε αίτημα πολλαπλών προελεύσεων: Η πολιτική ίδιας προέλευσης δεν επιτρέπει την ανάγνωση του απομακρυσμένου πόρου στο %1$S. (Αιτία: Το αίτημα CORS δεν ήταν επιτυχές).
+CORSOriginHeaderNotAdded=Αποκλείστηκε αίτημα πολλαπλών προελεύσεων: Η πολιτική ίδιας προέλευσης δεν επιτρέπει την ανάγνωση του απομακρυσμένου πόρου στο %1$S. (Αιτία: Η κεφαλίδα ‘Origin’ του CORS δεν μπορεί να προστεθεί).
+CORSExternalRedirectNotAllowed=Αποκλείστηκε αίτημα πολλαπλών προελεύσεων: Η πολιτική ίδιας προέλευσης δεν επιτρέπει την ανάγνωση του απομακρυσμένου πόρου στο %1$S. (Αιτία: Δεν επιτρέπεται η εξωτερική ανακατεύθυνση του αιτήματος CORS).
+CORSRequestNotHttp=Αποκλείστηκε αίτημα πολλαπλών προελεύσεων: Η πολιτική ίδιας προέλευσης δεν επιτρέπει την ανάγνωση του απομακρυσμένου πόρου στο %1$S. (Αιτία: το αίτημα CORS δεν έχει http).
+CORSMissingAllowOrigin=Αποκλείστηκε αίτημα πολλαπλών προελεύσεων: Η πολιτική ίδιας προέλευσης δεν επιτρέπει την ανάγνωση του απομακρυσμένου πόρου στο %1$S. (Αιτία: η κεφαλίδα ‘Access-Control-Allow-Origin’ του CORS απουσιάζει).
+CORSMultipleAllowOriginNotAllowed=Αποκλείστηκε αίτημα πολλαπλών προελεύσεων: Η πολιτική ίδιας προέλευσης δεν επιτρέπει την ανάγνωση του απομακρυσμένου πόρου στο %1$S. (Αιτία: η κεφαλίδα ‘Access-Control-Allow-Origin’ του πολλαπλού CORS δεν επιτρέπεται).
+CORSAllowOriginNotMatchingOrigin=Αποκλείστηκε αίτημα πολλαπλών προελεύσεων: Η πολιτική ίδιας προέλευσης δεν επιτρέπει την ανάγνωση του απομακρυσμένου πόρου στο %1$S. (Αιτία: η κεφαλίδα ‘Access-Control-Allow-Origin’ του CORS δεν ταιριάζει με το ‘%2$S’).
+CORSNotSupportingCredentials=Αποκλείστηκε αίτημα πολλαπλών προελεύσεων: Η πολιτική ίδιας προέλευσης δεν επιτρέπει την ανάγνωση του απομακρυσμένου πόρου στο %1$S. (Αιτία: Το διαπιστευτήριο δεν υποστηρίζεται αν η κεφαλίδα ‘Access-Control-Allow-Origin’ του CORS είναι ‘*’).
+CORSMethodNotFound=Αποκλείστηκε αίτημα πολλαπλών προελεύσεων: Η πολιτική ίδιας προέλευσης δεν επιτρέπει την ανάγνωση του απομακρυσμένου πόρου στο %1$S. (Αιτία: Δεν βρέθηκε μέθοδος στην κεφαλίδα ‘Access-Control-Allow-Methods’ του CORS).
+CORSMissingAllowCredentials=Αποκλείστηκε αίτημα πολλαπλών προελεύσεων: Η πολιτική ίδιας προέλευσης δεν επιτρέπει την ανάγνωση του απομακρυσμένου πόρου στο %1$S. (Αιτία: Αναμενόταν η τιμή ‘true’ στην κεφαλίδα ‘Access-Control-Allow-Credentials’ του CORS).
+CORSPreflightDidNotSucceed2=Αποκλείστηκε αίτημα πολλαπλών προελεύσεων: Η πολιτική ίδιας προέλευσης δεν επιτρέπει την ανάγνωση του απομακρυσμένου πόρου στο %1$S. (Αιτία: η απόκριση του προκαταρκτικού ελέγχου CORS δεν πέτυχε).
+CORSInvalidAllowMethod=Αποκλείστηκε αίτημα πολλαπλών προελεύσεων: Η πολιτική ίδιας προέλευσης δεν επιτρέπει την ανάγνωση του απομακρυσμένου πόρου στο %1$S. (Αιτία: μη έγκυρο σύμβολο ‘%2$S’ στην κεφαλίδα ‘Access-Control-Allow-Methods’ του CORS).
+CORSInvalidAllowHeader=Αποκλείστηκε αίτημα πολλαπλών προελεύσεων: Η πολιτική ίδιας προέλευσης δεν επιτρέπει την ανάγνωση του απομακρυσμένου πόρου στο %1$S. (Αιτία: μη έγκυρο σύμβολο ‘%2$S’ στην κεφαλίδα ‘Access-Control-Allow-Headers’ του CORS).
+CORSMissingAllowHeaderFromPreflight2=Αποκλείστηκε αίτημα πολλαπλών προελεύσεων: Η πολιτική ίδιας προέλευσης δεν επιτρέπει την ανάγνωση του απομακρυσμένου πόρου στο %1$S. (Αιτία: η κεφαλίδα ‘%2$S’ δεν επιτρέπεται σύμφωνα με την κεφαλίδα ‘Access-Control-Allow-Headers’ από την απόκριση προκαταρκτικού ελέγχου του CORS).
+
+# LOCALIZATION NOTE: Do not translate "Strict-Transport-Security", "HSTS", "max-age" or "includeSubDomains"
+STSUnknownError=Strict-Transport-Security: Προέκυψε άγνωστο σφάλμα κατά την επεξεργασία της καθορισμένης κεφαλίδας της ιστοσελίδας.
+STSUntrustworthyConnection=Strict-Transport-Security: Η σύνδεση στην ιστοσελίδα δεν είναι αξιόπιστη, επομένως παραβλέφθηκε η καθορισμένη κεφαλίδα.
+STSCouldNotParseHeader=Strict-Transport-Security: Η ιστοσελίδα καθόρισε μια κεφαλίδα, της οποίας η λήψη δεν ήταν επιτυχής.
+STSNoMaxAge=Strict-Transport-Security: Η ιστοσελίδα καθόρισε μια κεφαλίδα χωρίς την οδηγία ‘max-age’.
+STSMultipleMaxAges=Strict-Transport-Security: Η ιστοσελίδα καθόρισε μια κεφαλίδα με πολλαπλές οδηγίες ‘max-age’.
+STSInvalidMaxAge=Strict-Transport-Security: Η ιστοσελίδα καθόρισε μια κεφαλίδα με μη έγκυρη οδηγία ‘max-age’.
+STSMultipleIncludeSubdomains=Strict-Transport-Security: Η ιστοσελίδα καθόρισε μια κεφαλίδα με πολλαπλές οδηγίες ‘includeSubDomains’.
+STSInvalidIncludeSubdomains=Strict-Transport-Security: Η ιστοσελίδα καθόρισε μια κεφαλίδα με μη έγκυρη οδηγία ‘includeSubDomains’.
+STSCouldNotSaveState=Strict-Transport-Security: Προέκυψε σφάλμα κατά την επισήμανση της ιστοσελίδας ως διακομιστή Strict-Transport-Security.
+
+# LOCALIZATION NOTE: Do not translate "SHA-1"
+SHA1Sig=Αυτή η ιστοσελίδα χρησιμοποιεί ένα πιστοποιητικό SHA-1· προτείνεται να χρησιμοποιείτε πιστοποιητικά με αλγορίθμους υπογραφής που χρησιμοποιούν λειτουργίες hash ισχυρότερες από το SHA-1.
+InsecurePasswordsPresentOnPage=Εμφάνιση πεδίων κωδικού σε μία μη ασφαλή σελίδα (http://). Αυτό συνιστά ρίσκο ασφαλείας καθώς επιτρέπει τα στοιχεία σύνδεσης του χρήστη να υποκλαπούν.
+InsecureFormActionPasswordsPresent=Εμφάνιση πεδίων κωδικού σε μία φόρμα με μη ασφαλή ενέργεια φόρμας (http://). Αυτό συνιστά ρίσκο ασφαλείας καθώς επιτρέπει τα στοιχεία σύνδεσης του χρήστη να υποκλαπούν.
+InsecurePasswordsPresentOnIframe=Εμφάνιση πεδίων κωδικού σε μία ένα μη ασφαλές iframe (http://). Αυτό συνιστά ρίσκο ασφαλείας καθώς επιτρέπει τα στοιχεία σύνδεσης του χρήστη να υποκλαπούν.
+# LOCALIZATION NOTE: "%1$S" is the URI of the insecure mixed content resource
+LoadingMixedActiveContent2=Γίνεται φόρτωση μικτού (επισφαλούς) ενεργού περιεχομένου “%1$S” σε μια ασφαλή σελίδα
+LoadingMixedDisplayContent2=Γίνεται φόρτωση μικτού (επισφαλούς) περιεχομένου προβολής “%1$S” σε μια ασφαλή σελίδα
+LoadingMixedDisplayObjectSubrequestDeprecation=Η φόρτωση μεικτού (μη ασφαλούς) περιεχομένου “%1$S” εντός αρθρώματος σε μια ασφαλή σελίδα δεν προτείνεται και θα αποκλειστεί σύντομα.
+# LOCALIZATION NOTE: "%S" is the URI of the insecure mixed content download
+MixedContentBlockedDownload = Αποκλείστηκε η λήψη επισφαλούς περιεχομένου “%S”.
+
+# LOCALIZATION NOTE: Do not translate "allow-scripts", "allow-same-origin", "sandbox" or "iframe"
+BothAllowScriptsAndSameOriginPresent=Ένα iframe που έχει και allow-scripts και allow-same-origin ως ιδιότητες του sandbox του μπορεί να αφαιρέσει το «sandboxing» του.
+
+# LOCALIZATION NOTE: Do not translate "allow-top-navigation-by-user-activation", "allow-top-navigation", "sandbox" or "iframe"
+BothAllowTopNavigationAndUserActivationPresent=Ένα iframe που έχει και allow-top-navigation και allow-top-navigation-by-user-activation για την ιδιότητα sandbox θα επιτρέψει κορυφαίες πλοηγήσεις.
+
+# Sub-Resource Integrity
+# LOCALIZATION NOTE: Do not translate "script" or "integrity". "%1$S" is the invalid token found in the attribute.
+MalformedIntegrityHash=Το στοιχείο script έχει έναν παραμορφωμένο κατακερματισμό στην ιδιότητα integrity: “%1$S”. Η σωστή μορφή είναι “<hash algorithm>-<hash value>”.
+# LOCALIZATION NOTE: Do not translate "integrity"
+InvalidIntegrityLength=Το hash της ιδιότητας integrity έχει λάθος μήκος.
+# LOCALIZATION NOTE: Do not translate "integrity"
+InvalidIntegrityBase64=Το hash της ιδιότητας integrity δεν ήταν δυνατό να αποκωδικοποιηθεί.
+# LOCALIZATION NOTE: Do not translate "integrity". "%1$S" is the type of hash algorithm in use (e.g. "sha256").
+IntegrityMismatch=Κανένα από τα “%1$S” hashes στην ιδιότητα integrity δεν ταιριάζει με το περιεχόμενο του subresource.
+# LOCALIZATION NOTE: "%1$S" is the URI of the sub-resource that cannot be protected using SRI.
+IneligibleResource=Δεν μπορεί να ελεγχθεί η ακεραιότητα της διεύθυνσης «%1$S», καθώς δεν είναι ενεργή μέσω CORS και ούτε ίδιας προέλευσης.
+# LOCALIZATION NOTE: Do not translate "integrity". "%1$S" is the invalid hash algorithm found in the attribute.
+UnsupportedHashAlg=Μη υποστηριζόμενος αλγόριθμος hash στην ιδιότητα integrity: “%1$S”
+# LOCALIZATION NOTE: Do not translate "integrity"
+NoValidMetadata=Η ιδιότητα integrity δεν περιέχει έγκυρα μεταδεδομένα.
+
+# LOCALIZATION NOTE: Do not translate "RC4".
+WeakCipherSuiteWarning=Αυτή η ιστοσελίδα χρησιμοποιεί το κρυπτογράφημα RC4 για κρυπτογράφηση, που είναι παρωχημένο και επισφαλές.
+
+DeprecatedTLSVersion2=Αυτή η ιστοσελίδα χρησιμοποιεί μια παρωχημένη έκδοση του TLS. Παρακαλούμε αναβαθμίστε στο TLS 1.2 ή το 1.3.
+
+#XCTO: nosniff
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options: nosniff".
+MimeTypeMismatch2=Ο πόρος από το “%1$S” αποκλείστηκε λόγω μη αντιστοιχίας του τύπου MIME (“%2$S”) (X-Content-Type-Options: nosniff).
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options" and also do not translate "nosniff".
+XCTOHeaderValueMissing=Προειδοποίηση κεφαλίδας X-Content-Type-Options: η τιμή ήταν “%1$S”· μήπως θέλετε να στείλετε “nosniff”;
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options" and also do not translate "nosniff".
+XTCOWithMIMEValueMissing=Ο πόρος από το “%1$S” δεν αποδόθηκε λόγω ενός άγνωστου, λάθους ή μη ύπαρξης τύπου MIME (X-Content-Type-Options: nosniff).
+
+BlockScriptWithWrongMimeType2=Το σενάριο από το “%1$S” αποκλείστηκε εξαιτίας ενός μη επιτρεπτού τύπου MIME (“%2$S”).
+WarnScriptWithWrongMimeType=Το σενάριο από το “%1$S” φορτώθηκε παρ' όλο που ο τύπος MIME του (“%2$S”) δεν είναι έγκυρος τύπος JavaScript MIME.
+# LOCALIZATION NOTE: Do not translate "importScripts()"
+BlockImportScriptsWithWrongMimeType=Αποκλείστηκε η φόρτωση σεναρίου από το “%1$S” με το importScripts() εξαιτίας ενός ανεπίτρεπτου τύπου MIME (“%2$S”).
+BlockWorkerWithWrongMimeType=Η φόρτωση του worker από το “%1$S” αποκλείστηκε εξαιτίας ενός ανεπίτρεπτου τύπου MIME (“%2$S”).
+BlockModuleWithWrongMimeType=Αποκλείστηκε η φόρτωση προσθέτου από το “%1$S” εξαιτίας ενός ανεπίτρεπτου τύπου MIME (“%2$S”).
+
+# LOCALIZATION NOTE: Do not translate "data: URI".
+BlockTopLevelDataURINavigation=Η πλοήγηση στο data: URI ανωτάτου επιπέδου δεν επιτρέπεται (Μπλοκαρίστηκε το φόρτωμα του: “%1$S”)
+BlockSubresourceRedirectToData=Ανακατεύθυνση σε μη ασφαλή δεδομένα: το URI δεν επιτρέπεται (Αποκλείστηκε η φόρτωση του: “%1$S”)
+
+BlockSubresourceFTP=Δεν επιτρέπεται η φόρτωση του FTP υπό-πόρου μέσα σε σελίδα http(s) (Αποκλείστηκε η φόρτωση του: “%1$S”)
+
+RestrictBrowserEvalUsage=Η χρήση της eval() και άλλων παρόμοιων δεν επιτρέπεται στη γονική διεργασία ή στα πλαίσια συστήματος (Αποκλεισμένη χρήση στο “%1$S”)
+
+# LOCALIZATION NOTE (BrowserUpgradeInsecureDisplayRequest):
+# %1$S is the browser name "brandShortName"; %2$S is the URL of the upgraded request; %1$S is the upgraded scheme.
+BrowserUpgradeInsecureDisplayRequest = Το %1$S αναβαθμίζει ένα μη ασφαλές αίτημα εμφάνισης ‘%2$S’ για χρήση ‘%3$S’
+
+# LOCALIZATION NOTE (MixedContentAutoUpgrade):
+# %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+MixedContentAutoUpgrade=Αναβάθμιση επισφαλούς αιτήματος προβολής ‘%1$S’ για χρήση ‘%2$S’
+# LOCALIZATION NOTE (RunningClearSiteDataValue):
+# %S is the URI of the resource whose data was cleaned up
+RunningClearSiteDataValue=Η κεφαλίδα Clear-Site-Data εξανάγκασε την εκκαθάριση των δεδομένων “%S”.
+UnknownClearSiteDataValue=Βρέθηκε κεφαλίδα Clear-Site-Data. Άγνωστη τιμή “%S”.
+
+# Reporting API
+ReportingHeaderInvalidJSON=Αναφορά επικεφαλίδας: ελήφθη άκυρη τιμή JSON.
+ReportingHeaderInvalidNameItem=Αναφορά επικεφαλίδας: άκυρο όνομα για ομάδα.
+ReportingHeaderDuplicateGroup=Αναφορά επικεφαλίδας: παράβλεψη διπλότυπης ομάδας με όνομα “%S”.
+ReportingHeaderInvalidItem=Αναφορά επικεφαλίδας: παράβλεψη άκυρου στοιχείου με όνομα “%S”.
+ReportingHeaderInvalidEndpoint=Αναφορά επικεφαλίδας: παράβλεψη άκυρου τελικού σημείου για το στοιχείο με όνομα “%S”.
+# LOCALIZATION NOTE(ReportingHeaderInvalidURLEndpoint): %1$S is the invalid URL, %2$S is the group name
+ReportingHeaderInvalidURLEndpoint=Αναφορά επικεφαλίδας: παράβλεψη άκυρου τελικού σημείου URL“%1$S” για το στοιχείο με όνομα “%2$S”.
+
+FeaturePolicyUnsupportedFeatureName=Πολιτική χαρακτηριστικού: Παράβλεψη μη υποστηριζόμενου ονόματος χαρακτηριστικού “%S”.
+# TODO: would be nice to add a link to the Feature-Policy MDN documentation here. See bug 1449501
+FeaturePolicyInvalidEmptyAllowValue= Πολιτική χαρακτηριστικού: Παράβλεψη κενής λίστας αποδοχής για το χαρακτηριστικό: “%S”.
+# TODO: would be nice to add a link to the Feature-Policy MDN documentation here. See bug 1449501
+FeaturePolicyInvalidAllowValue=Πολιτική χαρακτηριστικού: Παράβλεψη μη υποστηριζόμενης τιμής αποδοχής “%S”.
+
+# LOCALIZATION NOTE: "%1$S" is the limitation length (bytes) of referrer URI, "%2$S" is the origin of the referrer URI.
+ReferrerLengthOverLimitation=Κεφαλίδα αναφοράς HTTP: Το μήκος είναι πάνω από το όριο των “%1$S” bytes - μείωση της κεφαλίδας αναφοράς στην προέλευση: “%2$S”
+# LOCALIZATION NOTE: "%1$S" is the limitation length (bytes) of referrer URI, "%2$S" is the origin of the referrer URI.
+ReferrerOriginLengthOverLimitation=Κεφαλίδα αναφοράς HTTP: Το μήκος της προέλευσης μέσω της αναφοράς είναι πάνω από το όριο των “%1$S” bytes - αφαίρεση αναφοράς με προέλευση “%2$S”.
+
+# X-Frame-Options
+# LOCALIZATION NOTE(XFrameOptionsInvalid): %1$S is the header value, %2$S is frame URI. Do not translate "X-Frame-Options".
+XFrameOptionsInvalid = Βρέθηκε μη έγκυρη κεφαλίδα X-Frame-Options κατά τη φόρτωση “%2$S”: το “%1$S” δεν είναι έγκυρη οδηγία.
+# LOCALIZATION NOTE(XFrameOptionsDeny): %1$S is the header value, %2$S is frame URI and %3$S is the parent document URI. Do not translate "X-Frame-Options".
+XFrameOptionsDeny=Η φόρτωση του “%2$S” σε ένα πλαίσιο απορρίπτεται από την οδηγία “X-Frame-Options“ που έχει οριστεί σε “%1$S“.
+
+# HTTPS-Only Mode
+# LOCALIZATION NOTE: %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+HTTPSOnlyUpgradeRequest = Αναβάθμιση επισφαλούς αιτήματος “%1$S” για χρήση του “%2$S”.
+# LOCALIZATION NOTE: %1$S is the URL of request.
+HTTPSOnlyNoUpgradeException = Δεν γίνεται αναβάθμιση του επισφαλούς αιτήματος “%1$S” επειδή έχει εξαιρεθεί.
+# LOCALIZATION NOTE: %1$S is the URL of the failed request; %2$S is an error-code.
+HTTPSOnlyFailedRequest = Αποτυχία αναβάθμισης επισφαλούς αιτήματος “%1$S”. (%2$S)
+
+# LOCALIZATION NOTE: %S is the URL of the blocked request;
+IframeSandboxBlockedDownload = Η λήψη του “%S” αποκλείστηκε επειδή το iframe ενεργοποίησης έχει ρυθμισμένη την ετικέτα “sandbox”.
+
+# Sanitizer API
+# LOCALIZATION NOTE: Please do not localize "DocumentFragment". It's the name of an API.
+SanitizerRcvdNoInput = Ελήφθη κενή ή καμία είσοδος. Επιστροφή κενού DocumentFragment.
+# LOCALIZATION NOTE: "Sanitizer" is the name of the API. Please do not localize.
+SanitizerOptionsDiscarded = Οι επιλογές για τον κατασκευαστή Sanitizer δεν υποστηρίζονται ακόμα. Παρακαλούμε σημειώστε ότι πρόκειται για πειραματική συμπεριφορά.
diff --git a/l10n-el/dom/chrome/svg/svg.properties b/l10n-el/dom/chrome/svg/svg.properties
new file mode 100644
index 0000000000..19a6cff814
--- /dev/null
+++ b/l10n-el/dom/chrome/svg/svg.properties
@@ -0,0 +1,5 @@
+# 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/.
+
+AttributeParseWarning=Απρόσμενη τιμή "%2$S" κατά την ανάλυση της ιδιότητας "%1$S".
diff --git a/l10n-el/dom/chrome/xml/prettyprint.dtd b/l10n-el/dom/chrome/xml/prettyprint.dtd
new file mode 100644
index 0000000000..ce131d835a
--- /dev/null
+++ b/l10n-el/dom/chrome/xml/prettyprint.dtd
@@ -0,0 +1,5 @@
+<!-- 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 xml.nostylesheet "Αυτό το αρχείο XML δεν φαίνεται να έχει συσχετισμένες πληροφορίες στυλ. Το δένδρο εγγράφου εμφανίζεται παρακάτω.">
diff --git a/l10n-el/dom/chrome/xslt/xslt.properties b/l10n-el/dom/chrome/xslt/xslt.properties
new file mode 100644
index 0000000000..09cff03a10
--- /dev/null
+++ b/l10n-el/dom/chrome/xslt/xslt.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/.
+
+1 = Αποτυχία ανάλυσης XSLT stylesheet
+2 = Αποτυχία ανάλυσης έκφρασης XPath
+3 =
+4 = Αποτυχία μετατροπής XSLT
+5 = XSLT/XPath προσπάθησε να καλέσει μια άγνωστη λειτουργία.
+6 = XSLT Stylesheet (πιθανώς) να περιέχει μια αναδρομή.
+7 = Η τιμή γνωρίσματος δεν είναι έγκυρη στο XSLT 1.0.
+8 = Αναμενόταν μια έκφραση XPath για επιστροφή ενός NodeSet.
+9 = Η μετατροπή XSLT τερματίστηκε από <xsl:message>.
+10 = Σφάλμα δικτύου κατά τη φόρτωση ενός XSLT stylesheet
+11 = Ένα XSLT stylesheet δεν έχει ένα τύπο mime XML:
+12 = Ένα XSLT stylesheet έμμεσα ή άμεσα περιλαμβάνει τον εαυτό του:
+13 = Μια λειτουργία XPath κλήθηκε με εσφαλμένο αριθμό παραμέτρων
+14 = Κλήθηκε μια άγνωστη λειτουργία επέκτασης XPath.
+15 = Αποτυχία λήψης XPath: ‘)’ αναμενόμενο:
+16 = Αποτυχία ανάλυσης XPath: μη έγκυρος άξονας:
+17 = Αποτυχία ανάλυσης XPath: αναμενόταν Name ή Nodetype έλεγχος:
+18 = Αποτυχία λήψης XPath: ‘]’ αναμενόμενο:
+19 = Αποτυχία ανάλυσης XPath: μη έγκυρο όνομα μεταβλητής:
+20 = Αποτυχία λήψης XPath: μη αναμενόμενη λήξη έκφρασης:
+21 = Αποτυχία ανάλυσης XPath: αναμενόταν τελεστής:
+22 = Αποτυχία ανάλυσης XPath: μη κλεισμένη τιμή:
+23 = Αποτυχία λήψης XPath: ‘:’ μη αναμενόμενο:
+24 = Αποτυχία ανάλυσης XPath: μη αναμενόμενο «!», η άρνηση είναι το not():
+25 = Αποτυχία λήψης XPath: βρέθηκε μη αποδεκτός χαρακτήρας:
+26 = Αποτυχία ανάλυσης XPath: αναμενόταν δυαδικός τελεστής:
+27 = Η φόρτωση ενός XSLT stylesheet μπλοκαρίστηκε για λόγους ασφαλείας.
+28 = Αξιολόγηση μη έγκυρης έκφρασης.
+29 = Μη ταιριαστό άγκιστρο.
+30 = Δημιουργία στοιχείου με μη έγκυρο QName.
+31 = Μια δέσμευση μεταβλητής υπερκαλύπτει μιαν άλλη εντός του ιδίου προτύπου.
+32 = Δεν επιτρέπεται κλήση στη βασική λειτουργία.
+
+LoadingError = Σφάλμα φόρτωσης stylesheet: %S
+TransformError = Σφάλμα κατά τη μεταμόρφωση του XSLT: %S
diff --git a/l10n-el/dom/dom/media.ftl b/l10n-el/dom/dom/media.ftl
new file mode 100644
index 0000000000..0172cb54f4
--- /dev/null
+++ b/l10n-el/dom/dom/media.ftl
@@ -0,0 +1,5 @@
+# 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/.
+
+mediastatus-fallback-title = Το { -brand-short-name } αναπαράγει πολυμέσα
diff --git a/l10n-el/editor/ui/chrome/composer/editingOverlay.dtd b/l10n-el/editor/ui/chrome/composer/editingOverlay.dtd
new file mode 100644
index 0000000000..8812845e77
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/composer/editingOverlay.dtd
@@ -0,0 +1,40 @@
+<!-- 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/. -->
+
+<!-- File menu items -->
+<!ENTITY openFileCmd.label "Άνοιγμα αρχείου…">
+<!ENTITY openFileCmd.accesskey "Ά">
+<!ENTITY openFileCmd.key "O">
+<!ENTITY openRemoteCmd.label "Άνοιγμα διεύθυνσης ιστού…">
+<!ENTITY openRemoteCmd.accesskey "θ">
+<!ENTITY openRemoteCmd.key "L">
+<!ENTITY fileRecentMenu.label "Πρόσφατες σελίδες">
+<!ENTITY fileRecentMenu.accesskey "φ">
+<!ENTITY saveCmd.label "Αποθήκευση">
+<!ENTITY saveCmd.accesskey "σ">
+<!ENTITY saveAsCmd.label "Αποθήκευση ως…">
+<!ENTITY saveAsCmd.accesskey "ω">
+<!ENTITY saveAsChangeEncodingCmd2.label "Αποθήκευση και αλλαγή κωδικοποίησης κειμένου">
+<!ENTITY saveAsChangeEncodingCmd2.accesskey "λ">
+<!ENTITY publishCmd.label "Δημοσίευση">
+<!ENTITY publishCmd.accesskey "μ">
+<!ENTITY publishCmd.key "S">
+<!ENTITY publishAsCmd.label "Δημοσίευση ως…">
+<!ENTITY publishAsCmd.accesskey "ς">
+<!ENTITY fileRevert.label "Επαναφορά">
+<!ENTITY fileRevert.accesskey "φ">
+
+<!-- Edit menu items -->
+<!ENTITY publishSettings.label "Ρυθμίσεις ιστοσελίδας δημοσίευσης…">
+<!ENTITY publishSettings.accesskey "θ">
+
+<!-- Toolbar buttons/items -->
+<!ENTITY newToolbarCmd.label "Νέα">
+<!ENTITY newToolbarCmd.tooltip "Δημιουργία νέας σελίδας σύνταξης">
+<!ENTITY openToolbarCmd.label "Άνοιγμα">
+<!ENTITY openToolbarCmd.tooltip "Άνοιγμα τοπικού αρχείου">
+<!ENTITY saveToolbarCmd.tooltip "Αποθήκευση αρχείου σε τοπική τοποθεσία">
+<!ENTITY publishToolbarCmd.tooltip "Μεταφόρτωση αρχείου σε απομακρυσμένη τοποθεσία">
+<!ENTITY printToolbarCmd.label "Εκτύπωση">
+<!ENTITY printToolbarCmd.tooltip "Εκτύπωση σελίδας">
diff --git a/l10n-el/editor/ui/chrome/composer/editor.dtd b/l10n-el/editor/ui/chrome/composer/editor.dtd
new file mode 100644
index 0000000000..0d3b255a55
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/composer/editor.dtd
@@ -0,0 +1,67 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!-- LOCALIZATION NOTE (editorWindow.titlemodifier): DONT_TRANSLATE -->
+<!ENTITY editorWindow.titlemodifier "Σύνθεση">
+<!ENTITY editorWindow.titlemodifiermenuseparator " - ">
+
+<!-- Menu items: the . means that the menu item isn't implemented yet -->
+
+<!-- Toolbar-only items -->
+<!ENTITY compositionToolbar.tooltip "Γραμμή εργαλείων σύνθεσης">
+<!ENTITY previewToolbarCmd.label "Περιήγηση">
+<!ENTITY previewToolbarCmd.tooltip "Φόρτωση σελίδας στο πρόγραμμα περιήγησης">
+
+<!-- File menu items -->
+<!ENTITY exportToTextCmd.label "Εξαγωγή σε κείμενο…">
+<!ENTITY exportToTextCmd.accesskey "μ">
+<!ENTITY previewCmd.label "Περιήγηση στη σελίδα">
+<!ENTITY previewCmd.accesskey "γ">
+<!ENTITY sendPageCmd.label "Αποστολή σελίδας…">
+<!ENTITY sendPageCmd.accesskey "τ">
+
+<!-- View menu items -->
+<!ENTITY compositionToolbarCmd.label "Γραμμή εργαλείων σύνταξης">
+<!ENTITY compositionToolbarCmd.accesskey "γ">
+<!ENTITY formattingToolbarCmd.label "Γραμμή εργαλείων μορφής">
+<!ENTITY formattingToolbarCmd.accesskey "μ">
+<!ENTITY editmodeToolbarCmd.label "Γραμμή εργαλείων λειτουργίας επεξεργασίας">
+<!ENTITY editmodeToolbarCmd.accesskey "Ε">
+
+<!-- Format menu items -->
+<!ENTITY formatMenu.label "Μορφή">
+<!ENTITY formatMenu.accesskey "φ">
+<!ENTITY grid.label "Πλέγμα τοποθέτησης">
+<!ENTITY grid.accesskey "τ">
+<!ENTITY pageProperties.label "Τίτλος και ιδιότητες σελίδας…">
+<!ENTITY pageProperties.accesskey "λ">
+
+<!-- Tools menu items -->
+<!ENTITY validateCmd.label "Επικύρωση HTML">
+<!ENTITY validateCmd.accesskey "ω">
+
+<!-- Display Mode toolbar and View menu items -->
+<!ENTITY NormalModeTab.label "Κανονική">
+<!ENTITY NormalMode.label "Κανονική λειτουργία επεξεργασίας">
+<!ENTITY NormalMode.accesskey "υ">
+<!ENTITY NormalMode.tooltip "Προβολή περιγραμμάτων πινάκων και αγκυρών">
+<!ENTITY AllTagsModeTab.label "Ετικέτες HTML">
+<!ENTITY AllTagsMode.label "Ετικέτες HTML">
+<!ENTITY AllTagsMode.accesskey "ι">
+<!ENTITY AllTagsMode.tooltip "Προβολή εικονιδίων για όλες τις ετικέτες HTML">
+<!-- LOCALIZATION NOTE: (HTMLSourceModeTab.dir, HTMLSourceModeTab.label)
+ Do NOT translate text for 'HTMLSourceModeTab.dir', use latin "ltr" if
+ you want the <html> image to left of the 'HTMLSourceModeTab.label' text,
+ or use latin "rtl" if you want this image to the right of text. You do
+ not need to include HTML in the label 'HTMLSourceModeTab.label' -->
+<!ENTITY HTMLSourceModeTab.dir "ltr">
+<!ENTITY HTMLSourceModeTab.label "Κώδικας">
+<!ENTITY HTMLSourceMode.label "Κώδικας HTML">
+<!ENTITY HTMLSourceMode.accesskey "δ">
+<!ENTITY HTMLSourceMode.tooltip "Επεξεργασία κώδικα HTML">
+<!ENTITY PreviewModeTab.label "Προεπισκόπηση">
+<!ENTITY PreviewMode.label "Προεπισκόπηση">
+<!ENTITY PreviewMode.accesskey "Π">
+<!ENTITY PreviewMode.tooltip "Προβολή ως WYSIWYG (όπως στο πρόγρ. περιήγησης)">
diff --git a/l10n-el/editor/ui/chrome/composer/editor.properties b/l10n-el/editor/ui/chrome/composer/editor.properties
new file mode 100644
index 0000000000..ec89a68d13
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/composer/editor.properties
@@ -0,0 +1,208 @@
+# 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 FILE: embedded "\n" represent HTML breaks (<br>)
+# Don't translate embedded "\n".
+# Don't translate strings like this: %variable%
+# as they will be replaced using JavaScript
+#
+No=Όχι
+Save=Αποθήκευση
+More=Περισσότερα
+Less=Λιγότερα
+MoreProperties=Περισσότερα γνωρίσματα
+FewerProperties=Λιγότερες ιδιότητες
+PropertiesAccessKey=γ
+None=Κανένα
+none=Κανένα
+OpenHTMLFile=Άνοιγμα αρχείου HTML
+OpenTextFile=Άνοιγμα αρχείου κειμένου
+SelectImageFile=Επιλογή αρχείου εικόνας
+SaveDocument=Αποθήκευση σελίδας
+SaveDocumentAs=Αποθήκευση σελίδας ως
+SaveTextAs=Αποθήκευση κειμένου ως
+EditMode=Λειτουργία επεξεργασίας
+Preview=Προεπισκόπηση
+Publish=Δημοσίευση
+PublishPage=Δημοσίευση σελίδας
+DontPublish=Να μη δημοσιευθεί
+SavePassword=Χρήση διαχείρισης κωδικών για την αποθήκευση του κωδικού
+CorrectSpelling=(σωστή ορθογραφία)
+NoSuggestedWords=(καμία προτεινόμενη λέξη)
+NoMisspelledWord=Κανένα ορθογραφικό λάθος
+CheckSpellingDone=Ο ορθογραφικός έλεγχος ολοκληρώθηκε.
+CheckSpelling=Ορθογραφικός έλεγχος
+InputError=Σφάλμα
+Alert=Προειδοποίηση
+CantEditFramesetMsg=Αυτό το πρόγραμμα δε μπορεί να επεξεργαστεί HTML framesets ή εσωτερικά πλαίσια. Προσπαθήστε να επεξεργαστείτε το κάθε πλαίσιο ξεχωριστά. Για σελίδες με iframes αποθηκεύστε ένα αντίγραφο της σελίδας και αφαιρέστε το <iframe> tag.
+CantEditMimeTypeMsg=Δεν είναι δυνατή η επεξεργασία αυτού του τύπου σελίδας.
+CantEditDocumentMsg=Δεν είναι δυνατή η επεξεργασία αυτού του τύπου σελίδας.
+BeforeClosing=πριν από το κλείσιμο
+BeforePreview=πριν την επισκόπηση στο Navigator
+BeforeValidate=πρίν την επικύρωση του εγγράφου
+# LOCALIZATION NOTE (SaveFilePrompt, PublishPrompt): Don't translate %title% and %reason% (this is the reason for asking user to close, such as "before closing")
+SaveFilePrompt=Να αποθηκευτούν οι αλλαγές στο "%title%" %reason%;
+PublishPrompt=Αποθήκευση αλλαγών στο "%title%" %reason%;
+SaveFileFailed=Η αποθήκευση αρχείου απέτυχε!
+
+# Publishing error strings:
+# LOCALIZATION NOTE Don't translate %dir% or %file% in the Publishing error strings:
+FileNotFound=Το %file% δεν βρέθηκε.
+SubdirDoesNotExist=Ο υποκατάλογος"%dir%" δεν υπάρχει σε αυτήν τη διεύθυνση ή το όνομα αρχείου "%file%" χρησιμοποιείται ήδη από άλλο υποκατάλογο.
+FilenameIsSubdir=ο όνομα αρχείου "%file%." χρησιμοποιείται ήδη από άλλο υποκατάλογο.
+ServerNotAvailable=Ο διακομιστής δεν είναι διαθέσιμος. Ελέγξτε τη σύνδεσή σας και προσπαθήστε αργότερα.
+Offline=Είστε εκτός σύνδεσης. Κάντε κλικ στο εικονίδιο στην κάτω δεξιά γωνία οποιουδήποτε παραθύρου για σύνδεση.
+DiskFull=Δεν υπάρχει αρκετός διαθέσιμος ελεύθερος χώρος για την αποθήκευση του αρχείου "%file%."
+NameTooLong=Το όνομα αρχείου ή του υποκαταλόγου είναι πολύ μεγάλο.
+AccessDenied=Δεν έχετε δικαίωμα δημοσίευσης σε αυτήν την τοποθεσία.
+UnknownPublishError=Παρουσιάστηκε ένα άγνωστο σφάλμα δημοσίευσης.
+PublishFailed=Αποτυχία δημοσίευσης.
+PublishCompleted=Η δημοσίευση ολοκληρώθηκε.
+AllFilesPublished='Ολα τα αρχεία δημοσιεύθηκαν
+# LOCALIZATION NOTE Don't translate %x% or %total%
+FailedFileMsg=Αποτυχία δημοσίευσης %x% από %total% αρχείων
+# End-Publishing error strings
+Prompt=Ειδοποίηση
+# LOCALIZATION NOTE (PromptFTPUsernamePassword): Don't translate %host%
+PromptFTPUsernamePassword=Εισάγετε χρήστη και κωδικό για τον διακομιστή FTP σε %host%
+RevertCaption=Επαναφορά στην τελευταία αποθήκευση
+Revert=Επαναφορά
+SendPageReason=πριν την αποστολή της σελίδας
+Send=Αποστολή
+## LOCALIZATION NOTE (PublishProgressCaption, PublishToSite, AbandonChanges): Don't translate %title%
+PublishProgressCaption=Δημοσίευση: %title%
+PublishToSite=Δημοσίευση σε ιστοδιεύθυνση: %title%
+AbandonChanges=Θέλετε να εγκαταλείψετε τις μη αποθηκευμένες αλλαγές στο %title% και να επαναφορτώσετε τη σελίδα;
+DocumentTitle=Τίτλος σελίδας
+NeedDocTitle=Εισάγετε έναν τίτλο για την τρέχουσα σελίδα
+DocTitleHelp=Αυτό προσδιορίζει τη σελίδα στον τίτλο του παραθύρου και τους σελιδοδείκτες.
+CancelPublishTitle=Ακύρωση δημοσίευσης;
+## LOCALIZATION NOTE: "Continue" in this sentence must match the text for
+## the CancelPublishContinue key below
+CancelPublishMessage=Η ακύρωση κατά τη διάρκεια δημοσίευσης μπορεί να έχει σαν αποτέλεσμα τη μη ολοκληρωμένη μεταφορά των αρχείων σας. Θέλετε να συνεχίσετε ή να ακυρώσετε;
+CancelPublishContinue=Συνέχεια
+MissingImageError=Εισάγετε ή επιλέξτε ένα όνομα για την εικόνα τύπου gif, jpg, ή png.
+EmptyHREFError=Παρακαλώ επιλέξτε μια διεύθυνση για δημιουργία νέου συνδέσμου.
+LinkText=Κείμενο συνδέσμου
+LinkImage=Εικόνα συνδέσμου
+MixedSelection=[Μικτή επιλογή]
+Mixed=(μικτό)
+# LOCALIZATION NOTE (NotInstalled): %S is the name of the font
+NotInstalled=%S (δεν έχει εγκατασταθεί)
+EnterLinkText=Εισάγετε το εμφανιζόμενο κείμενο για τον σύνδεσμο:
+EnterLinkTextAccessKey=κ
+EmptyLinkTextError=Παρακαλώ εισάγετε κείμενο για αυτό τον σύνδεσμο.
+EditTextWarning=Αυτό θα αντικαταστήσει το υπάρχον περιεχόμενο
+#LOCALIZATION NOTE (ValidateNumber):Don't translate: %n% %min% %max%
+ValidateRangeMsg=Ο αριθμός που καταχωρίσατε (%n%) είναι έξω από την επιτρεπόμενη κλίμακα.
+ValidateNumberMsg=Καταχωρίστε έναν αριθμό μεταξύ %min% και %max%.
+MissingAnchorNameError=Εισάγετε ένα όνομα για αυτήν την άγκυρα
+#LOCALIZATION NOTE (DuplicateAnchorNameError): Don't translate %name%
+DuplicateAnchorNameError="%name%" υπάρχει. Επιλέξτε ένα άλλο όνομα.
+BulletStyle=Μορφή κουκίδων
+SolidCircle=Συμπαγής κύκλος
+OpenCircle=Ανοιχτός κύκλος
+SolidSquare=Συμπαγές τετράγωνο
+NumberStyle=Τρόπος αρίθμησης:
+Automatic=Αυτόματο
+Style_1=1, 2, 3…
+Style_I=I, II, III…
+Style_i=i, ii, iii…
+Style_A=A, B, C…
+Style_a=a, b, c…
+Pixels=εικονοστοιχεία
+Percent=ποσοστό
+PercentOfCell=% του κελιού
+PercentOfWindow=% του παραθύρου
+PercentOfTable=% του πίνακα
+#LOCALIZATION NOTE (untitledTitle): %S is the window #. No plural handling needed.
+untitledTitle=χωρίς τίτλο-%S
+untitledDefaultFilename=χωρίς τίτλο
+ShowToolbar=Εμφάνιση γραμμής εργαλείων
+HideToolbar=Απόκρυψη γραμμής εργαλείων
+ImapError=Δεν είναι δυνατό το φόρτωμα της εικόνας
+ImapCheck=\nΕπιλέξτε μια καινούργια τοποθεσία (URL) και προσπαθήστε ξανά.
+SaveToUseRelativeUrl=Τα σχετικά URLs μπορούν μόνο να χρησιμοποιηθούν για τις σελίδες για τις οποίες αποθηκεύτηκαν
+NoNamedAnchorsOrHeadings=(δεν υπάρχουν άγκυρες με όνομα ή κεφαλίδες στη σελίδα)
+TextColor=Χρώμα κειμένου
+HighlightColor=Χρώμα επισήμανσης
+PageColor=Χρώμα φόντου σελίδας
+BlockColor=Μπλοκάρισμα χρώματος φόντου
+TableColor=Χρώμα φόντου πίνακα
+CellColor=Χρώμα φόντου κελιού
+TableOrCellColor=Χρώμα Πίνακα ή Κελιού
+LinkColor=Χρώμα κειμένου συνδέσμου
+ActiveLinkColor=Χρώμα ενεργού συνδέσμου
+VisitedLinkColor=Χρώμα ανοιγμένου συνδέσμου
+NoColorError=Επιλέξτε ένα χρώμα ή εισάγετε ένα έγκυρο HTML color string.
+Table=Πίνακας
+TableCell=Κελί Πίνακα
+NestedTable=Ενσωματωμένος Πίνακας
+HLine=Οριζόντια γραμμή
+Link=Σύνδεσμος
+Image=Εικόνα
+ImageAndLink=Εικόνα και σύνδεσμος
+NamedAnchor=Επώνυμη Άγκυρα
+List=Λίστα
+ListItem=Στοιχείο λίστας
+Form=Φόρμα
+InputTag=Πεδίο φόρμας
+InputImage=Εικόνα Φόρμας
+TextArea=Πεδίο κειμένου
+Select=Λίστα επιλογής
+Button=Κουμπί
+Label=Ετικέτα
+FieldSet=Ορισμός πεδίου
+Tag=Ετικέτα
+MissingSiteNameError=Καταχωρίστε ένα όνομα για την υπό δημοσίευση σελίδα
+MissingPublishUrlError=Καταχωρίστε μια τοποθεσία για τη δημοσίευση αυτής της σελίδας.
+MissingPublishFilename=Καταχωρίστε ένα όνομα αρχείου για την τρέχουσα σελίδα.
+#LOCALIZATION NOTE (DuplicateSiteNameError): Don't translate %name%
+DuplicateSiteNameError="%name%" υπάρχει ήδη. Εισάγετε ένα διαφορετικό όνομα σελίδας
+AdvancedProperties=Προηγμένες ιδιότητες…
+AdvancedEditForCellMsg=Η προηγμένη επεξεργασία δεν είναι διαθέσιμη όταν είναι επιλεγμένα πολλαπλά κελιά
+# LOCALIZATION NOTE (ObjectProperties):Don't translate "%obj%" it will be replaced with one of above object nouns
+ObjectProperties=Ιδιότητες %obj%…
+# LOCALIZATION NOTE This character must be in the above string and not conflict with other accesskeys in Format menu
+ObjectPropertiesAccessKey=ο
+# LOCALIZATION NOTE (JoinSelectedCells): This variable should contain the "tableJoinCells.accesskey"
+# letter as defined in editorOverlay.dtd
+JoinSelectedCells=Συγχώνευση επιλεγμένων κελιών
+# LOCALIZATION NOTE (JoinCellToRight): This variable should contain the "tableJoinCells.accesskey"
+# letter as defined in editorOverlay.dtd
+JoinCellToRight=Συγχώνευση με κελί στα δεξιά
+JoinCellAccesskey=χ
+# LOCALIZATION NOTE (TableSelectKey): Ctrl key on a keyboard
+TableSelectKey=Ctrl+
+# LOCALIZATION NOTE (XulKeyMac): Command key on a Mac keyboard
+XulKeyMac=Cmd+
+# LOCALIZATION NOTE (Del): Del key on a keyboard
+Del=Del
+Delete=Διαγραφή
+DeleteCells=Διαγραφή κελιών
+DeleteTableTitle=Διαγραφή σειρών ή στηλών
+DeleteTableMsg=Η μείωση του αριθμού σειρών θα επιφέρει διαγραφή των κελιών και των περιεχομένων τους. Είστε σίγουροι για αυτό;
+Clear=Εκκαθάριση
+#Mouse actions
+Click=Κλικ
+Drag=Σύρετε
+Unknown=Άγνωστο
+#
+# LOCALIZATION NOTE "RemoveTextStylesAccesskey" is used for both
+# menu items: "RemoveTextStyles" and "StopTextStyles"
+RemoveTextStylesAccesskey=ρ
+RemoveTextStyles=Αφαίρεση όλων των μορφοποιήσεων κειμένου
+StopTextStyles=Διακοπή διαμόρφωσης κειμένου
+#
+# LOCALIZATION NOTE "RemoveLinksAccesskey" is used for both
+# menu items: "RemoveLinks" and "StopLinks"
+RemoveLinksAccesskey=δ
+RemoveLinks=Αφαίρεση συνδέσμων
+StopLinks=Διακοπή συνδέσμων
+#
+NoFormAction=Προτείνεται να εισάγετε μια ενέργεια για αυτήν τη φόρμα. Οι αυτό-αναφερόμενες φόρμες δεν λειτουργούν σε όλους τους περιηγητές.
+NoAltText=Αν η εικόνα είναι σχετική με το έγγραφο θα πρέπει να εισάγετε ένα εναλλακτικό κείμενο το οποίο θα εμφανίζεται σε περιηγητές που βλέπουν μόνο κείμενο (η έχουν απενεργοποιημένη τη φόρτωση εικόνων) και κατά τη φόρτωση της εικόνας.
+#
+Malformed=Δεν είναι δυνατή η μετατροπή του πηγαίου κώδικα πίσω στο έγγραφο επειδή το XΗML δεν είναι έγκυρο.
+NoLinksToCheck=Δεν υπάρχουν στοιχεία με συνδέσμους προς έλεγχο
diff --git a/l10n-el/editor/ui/chrome/composer/editorOverlay.dtd b/l10n-el/editor/ui/chrome/composer/editorOverlay.dtd
new file mode 100644
index 0000000000..ac9d989525
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/composer/editorOverlay.dtd
@@ -0,0 +1,365 @@
+<!-- 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/. -->
+
+<!-- Attn: Localization - some of the menus in this dialog directly affect mail also. -->
+
+<!-- File menu items -->
+<!ENTITY saveCmd.key "S">
+
+<!-- Edit menu items -->
+<!ENTITY pasteNoFormatting.label "Επικόλληση χωρίς μορφοποίηση">
+<!ENTITY pasteNoFormatting.accesskey "κ">
+<!ENTITY pasteNoFormatting.key "V">
+<!ENTITY pasteAsQuotationCmd.label "Επικόλληση ως παράθεση">
+<!ENTITY pasteAsQuotationCmd.accesskey "ρ">
+<!ENTITY pasteAsQuotationCmd.key "o">
+<!ENTITY findBarCmd.label "Εύρεση…">
+<!ENTITY findReplaceCmd.label "Εύρεση και αντικατάσταση…">
+<!ENTITY enableInlineSpellChecker.label "Ορθογραφικός έλεγχος κατά την πληκτρολόγηση">
+<!ENTITY enableInlineSpellChecker.accesskey "θ">
+<!ENTITY checkSpellingCmd2.label "Ορθογραφικός έλεγχος…">
+<!ENTITY checkSpellingCmd2.accesskey "χ">
+<!ENTITY checkSpellingCmd2.key "p">
+
+<!-- Insert menu items -->
+<!ENTITY insertMenu.label "Εισαγωγή">
+<!ENTITY insertMenu.accesskey "ι">
+<!ENTITY insertLinkCmd2.label "Σύνδεσμος…">
+<!ENTITY insertLinkCmd2.accesskey "Σ">
+<!ENTITY insertLinkCmd2.key "K">
+<!ENTITY insertAnchorCmd.label "Άγκυρα με όνομα…">
+<!ENTITY insertAnchorCmd.accesskey "α">
+<!ENTITY insertImageCmd.label "Εικόνα…">
+<!ENTITY insertImageCmd.accesskey "Ε">
+<!ENTITY insertHLineCmd.label "Οριζόντια γραμμή">
+<!ENTITY insertHLineCmd.accesskey "ζ">
+<!ENTITY insertTableCmd.label "Πίνακας…">
+<!ENTITY insertTableCmd.accesskey "κ">
+<!ENTITY insertHTMLCmd.label "HTML…">
+<!ENTITY insertHTMLCmd.accesskey "H">
+<!ENTITY insertMathCmd.label "Μαθηματικά…">
+<!ENTITY insertMathCmd.accesskey "Μ">
+<!ENTITY insertCharsCmd.label "Χαρακτήρες και σύμβολα…">
+<!ENTITY insertCharsCmd.accesskey "Χ">
+<!ENTITY insertBreakAllCmd.label "Αλλαγή γραμμής κάτω από εικόνα(ες)">
+<!ENTITY insertBreakAllCmd.accesskey "κ">
+
+<!-- Used just in context popup. -->
+<!ENTITY createLinkCmd.label "Δημιουργία συνδέσμου…">
+<!ENTITY createLinkCmd.accesskey "Δ">
+<!ENTITY editLinkCmd.label "Επεξεργασία συνδέσμου σε νέα σύνταξη">
+<!ENTITY editLinkCmd.accesskey "μ">
+
+<!-- Font Face SubMenu -->
+<!ENTITY FontFaceSelect.title "Γραμματοσειρά">
+<!ENTITY FontFaceSelect.tooltip "Επιλογή γραμματοσειράς">
+<!ENTITY fontfaceMenu.label "Γραμματοσειρά">
+<!ENTITY fontfaceMenu.accesskey "Γ">
+<!ENTITY fontVarWidth.label "Μεταβλητού πλάτους">
+<!ENTITY fontVarWidth.accesskey "β">
+<!ENTITY fontFixedWidth.label "Σταθερού πλάτους">
+<!ENTITY fontFixedWidth.accesskey "θ">
+<!ENTITY fontFixedWidth.key "T">
+<!ENTITY fontHelvetica.label "Helvetica, Arial">
+<!ENTITY fontHelvetica.accesskey "l">
+<!ENTITY fontTimes.label "Times">
+<!ENTITY fontTimes.accesskey "T">
+<!ENTITY fontCourier.label "Courier">
+<!ENTITY fontCourier.accesskey "C">
+
+<!-- Font Size SubMenu -->
+<!ENTITY FontSizeSelect.title "Μέγεθος γραμματοσειράς">
+<!ENTITY FontSizeSelect.tooltip "Επιλογή μεγέθους γραμματοσειράς">
+<!ENTITY decreaseFontSize.label "Μικρότερα">
+<!ENTITY decreaseFontSize.accesskey "ρ">
+<!ENTITY decrementFontSize.key "&lt;">
+<!ENTITY decrementFontSize.key2 ","> <!-- < is above this key on many keyboards -->
+<!ENTITY increaseFontSize.label "Μεγαλύτερα">
+<!ENTITY increaseFontSize.accesskey "γ">
+<!ENTITY incrementFontSize.key "&gt;">
+<!ENTITY incrementFontSize.key2 "."> <!-- > is above this key on many keyboards -->
+
+<!ENTITY fontSizeMenu.label "Μέγεθος">
+<!ENTITY fontSizeMenu.accesskey "θ">
+<!ENTITY size-tinyCmd.label "Μικροσκοπικά">
+<!ENTITY size-tinyCmd.accesskey "ι">
+<!ENTITY size-smallCmd.label "Μικρά">
+<!ENTITY size-smallCmd.accesskey "μ">
+<!ENTITY size-mediumCmd.label "Μεσαία">
+<!ENTITY size-mediumCmd.accesskey "σ">
+<!ENTITY size-largeCmd.label "Μεγάλα">
+<!ENTITY size-largeCmd.accesskey "λ">
+<!ENTITY size-extraLargeCmd.label "Πολύ μεγάλα">
+<!ENTITY size-extraLargeCmd.accesskey "π">
+<!ENTITY size-hugeCmd.label "Τεράστια">
+<!ENTITY size-hugeCmd.accesskey "ρ">
+
+<!-- Font Style SubMenu -->
+<!ENTITY fontStyleMenu.label "Στυλ κειμένου">
+<!ENTITY fontStyleMenu.accesskey "Σ">
+<!ENTITY styleBoldCmd.label "Έντονα">
+<!ENTITY styleBoldCmd.accesskey "ν">
+<!ENTITY styleBoldCmd.key "B">
+<!ENTITY styleItalicCmd.label "Πλάγια">
+<!ENTITY styleItalicCmd.accesskey "λ">
+<!ENTITY styleItalicCmd.key "I">
+<!ENTITY styleUnderlineCmd.label "Υπογράμμιση">
+<!ENTITY styleUnderlineCmd.accesskey "Υ">
+<!ENTITY styleUnderlineCmd.key "U">
+<!ENTITY styleStrikeThruCmd.label "Διαγράμμιση">
+<!ENTITY styleStrikeThruCmd.accesskey "Δ">
+<!ENTITY styleSuperscriptCmd.label "Εκθέτης">
+<!ENTITY styleSuperscriptCmd.accesskey "θ">
+<!ENTITY styleSubscriptCmd.label "Δείκτης">
+<!ENTITY styleSubscriptCmd.accesskey "κ">
+<!ENTITY styleNonbreakingCmd.label "Χωρίς αλλαγή">
+<!ENTITY styleNonbreakingCmd.accesskey "λ">
+<!ENTITY styleEm.label "Έμφαση">
+<!ENTITY styleEm.accesskey "φ">
+<!ENTITY styleStrong.label "Ισχυρότερη έμφαση">
+<!ENTITY styleStrong.accesskey "χ">
+<!ENTITY styleCite.label "Παράθεση">
+<!ENTITY styleCite.accesskey "θ">
+<!ENTITY styleAbbr.label "Σύντμηση">
+<!ENTITY styleAbbr.accesskey "ν">
+<!ENTITY styleAcronym.label "Ακρωνύμιο">
+<!ENTITY styleAcronym.accesskey "ω">
+<!ENTITY styleCode.label "Κώδικας">
+<!ENTITY styleCode.accesskey "δ">
+<!ENTITY styleSamp.label "Δείγμα αποτελέσματος">
+<!ENTITY styleSamp.accesskey "μ">
+<!ENTITY styleVar.label "Μεταβλητό">
+<!ENTITY styleVar.accesskey "β">
+
+<!ENTITY formatFontColor.label "Χρώμα κειμένου…">
+<!ENTITY formatFontColor.accesskey "Χ">
+<!ENTITY tableOrCellColor.label "Χρώμα παρασκηνίου πίνακα ή κελιού…">
+<!ENTITY tableOrCellColor.accesskey "κ">
+
+<!ENTITY formatRemoveStyles.key "Y">
+<!ENTITY formatRemoveLinks.key "K">
+<!ENTITY formatRemoveNamedAnchors.label "Αφαίρεση αγκυρών με όνομα">
+<!ENTITY formatRemoveNamedAnchors.accesskey "ρ">
+<!ENTITY formatRemoveNamedAnchors2.key "R">
+
+<!ENTITY paragraphMenu.label "Παράγραφος">
+<!ENTITY paragraphMenu.accesskey "γ">
+<!ENTITY paragraphParagraphCmd.label "Παράγραφος">
+<!ENTITY paragraphParagraphCmd.accesskey "φ">
+<!ENTITY heading1Cmd.label "Κεφαλίδα 1">
+<!ENTITY heading1Cmd.accesskey "1">
+<!ENTITY heading2Cmd.label "Κεφαλίδα 2">
+<!ENTITY heading2Cmd.accesskey "2">
+<!ENTITY heading3Cmd.label "Κεφαλίδα 3">
+<!ENTITY heading3Cmd.accesskey "3">
+<!ENTITY heading4Cmd.label "Κεφαλίδα 4">
+<!ENTITY heading4Cmd.accesskey "4">
+<!ENTITY heading5Cmd.label "Κεφαλίδα 5">
+<!ENTITY heading5Cmd.accesskey "5">
+<!ENTITY heading6Cmd.label "Κεφαλίδα 6">
+<!ENTITY heading6Cmd.accesskey "6">
+<!ENTITY paragraphAddressCmd.label "Διεύθυνση">
+<!ENTITY paragraphAddressCmd.accesskey "θ">
+<!ENTITY paragraphPreformatCmd.label "Προ-μορφοποίηση">
+<!ENTITY paragraphPreformatCmd.accesskey "ρ">
+
+<!-- List menu items -->
+<!ENTITY formatlistMenu.label "Λίστα">
+<!ENTITY formatlistMenu.accesskey "Λ">
+<!ENTITY noneCmd.label "Κανένα">
+<!ENTITY noneCmd.accesskey "ν">
+<!ENTITY listBulletCmd.label "Κουκίδες">
+<!ENTITY listBulletCmd.accesskey "Κ">
+<!ENTITY listNumberedCmd.label "Αριθμημένη">
+<!ENTITY listNumberedCmd.accesskey "μ">
+<!ENTITY listTermCmd.label "Όρος">
+<!ENTITY listTermCmd.accesskey "ρ">
+<!ENTITY listDefinitionCmd.label "Ορισμός">
+<!ENTITY listDefinitionCmd.accesskey "μ">
+<!ENTITY listPropsCmd.label "Ιδιότητες λίστας…">
+<!ENTITY listPropsCmd.accesskey "δ">
+
+<!ENTITY ParagraphSelect.title "Παράγραφος">
+<!ENTITY ParagraphSelect.tooltip "Επιλέξτε μια μορφή λίστας">
+<!-- Shared in Paragraph, and Toolbar menulist -->
+<!ENTITY bodyTextCmd.label "Κύριος μέρος κειμένου">
+<!ENTITY bodyTextCmd.accesskey "μ">
+<!-- isn't used in menu now, but may be added in future -->
+<!ENTITY advancedPropertiesCmd.label "Προηγμένες ιδιότητες">
+<!ENTITY advancedPropertiesCmd.accesskey "γ">
+
+<!-- Align menu items -->
+<!ENTITY alignMenu.label "Στοίχιση">
+<!ENTITY alignMenu.accesskey "Σ">
+<!ENTITY alignLeft.label "Αριστερά">
+<!ENTITY alignLeft.accesskey "Α">
+<!ENTITY alignLeft.tooltip "Στοίχιση αριστερά">
+<!ENTITY alignCenter.label "Κέντρο">
+<!ENTITY alignCenter.accesskey "Κ">
+<!ENTITY alignCenter.tooltip "Στοίχιση στο κέντρο">
+<!ENTITY alignRight.label "Δεξιά">
+<!ENTITY alignRight.accesskey "Δ">
+<!ENTITY alignRight.tooltip "Στοίχιση δεξιά">
+<!ENTITY alignJustify.label "Πλήρης στοίχιση">
+<!ENTITY alignJustify.accesskey "Π">
+<!ENTITY alignJustify.tooltip "Πλήρης στοίχιση">
+
+<!-- Layer toolbar items -->
+<!ENTITY absolutePosition.label "Τοποθέτηση">
+<!ENTITY layer.tooltip "Επίπεδο">
+<!ENTITY decreaseZIndex.label "Μεταφορά πίσω">
+<!ENTITY layerSendToBack.tooltip "Μεταφορά πίσω">
+<!ENTITY increaseZIndex.label "Μεταφορά μπροστά">
+<!ENTITY layerBringToFront.tooltip "Μεταφορά μπροστά">
+
+<!ENTITY increaseIndent.label "Αύξηση εσοχής">
+<!ENTITY increaseIndent.accesskey "Α">
+<!ENTITY increaseIndent.key "]">
+<!ENTITY decreaseIndent.label "Μείωση εσοχής">
+<!ENTITY decreaseIndent.accesskey "Μ">
+<!ENTITY decreaseIndent.key "[">
+
+<!ENTITY colorsAndBackground.label "Χρώματα και παρασκήνιο σελίδας…">
+<!ENTITY colorsAndBackground.accesskey "ρ">
+
+<!-- Table Menu -->
+<!ENTITY tableMenu.label "Πίνακας">
+<!ENTITY tableMenu.accesskey "ν">
+
+<!-- Select Submenu -->
+<!ENTITY tableSelectMenu.label "Επιλογή">
+<!ENTITY tableSelectMenu.accesskey "Ε">
+
+<!ENTITY tableSelectMenu2.label "Επιλογή πίνακα">
+<!ENTITY tableSelectMenu2.accesskey "Ε">
+<!ENTITY tableInsertMenu2.label "Εισαγωγή πίνακα">
+<!ENTITY tableInsertMenu2.accesskey "ι">
+<!ENTITY tableDeleteMenu2.label "Διαγραφή πίνακα">
+<!ENTITY tableDeleteMenu2.accesskey "Δ">
+
+<!-- Insert SubMenu -->
+<!ENTITY tableInsertMenu.label "Εισαγωγή">
+<!ENTITY tableInsertMenu.accesskey "ι">
+<!ENTITY tableTable.label "Πίνακας">
+<!ENTITY tableTable.accesskey "Π">
+<!ENTITY tableRow.label "Γραμμή">
+<!ENTITY tableRows.label "Γραμμές">
+<!ENTITY tableRow.accesskey "Γ">
+<!ENTITY tableRowAbove.label "Γραμμή πάνω">
+<!ENTITY tableRowAbove.accesskey "Γ">
+<!ENTITY tableRowBelow.label "Γραμμή κάτω">
+<!ENTITY tableRowBelow.accesskey "κ">
+<!ENTITY tableColumn.label "Στήλη">
+<!ENTITY tableColumns.label "Στήλες">
+<!ENTITY tableColumn.accesskey "Σ">
+<!ENTITY tableColumnBefore.label "Στήλη πριν">
+<!ENTITY tableColumnBefore.accesskey "τ">
+<!ENTITY tableColumnAfter.label "Στήλη μετά">
+<!ENTITY tableColumnAfter.accesskey "μ">
+<!ENTITY tableCell.label "Κελί">
+<!ENTITY tableCells.label "Κελιά">
+<!ENTITY tableCell.accesskey "Κ">
+<!ENTITY tableCellContents.label "Περιεχόμενα κελιού">
+<!ENTITY tableCellContents.accesskey "χ">
+<!ENTITY tableAllCells.label "Όλα τα κελιά">
+<!ENTITY tableAllCells.accesskey "λ">
+<!ENTITY tableCellBefore.label "Κελί πριν">
+<!ENTITY tableCellBefore.accesskey "Κ">
+<!ENTITY tableCellAfter.label "Κελί μετά">
+<!ENTITY tableCellAfter.accesskey "τ">
+<!-- Delete SubMenu -->
+<!ENTITY tableDeleteMenu.label "Διαγραφή">
+<!ENTITY tableDeleteMenu.accesskey "Δ">
+
+<!-- text for "Join Cells" is in editor.properties
+ ("JoinSelectedCells" and "JoinCellToRight")
+ the access key must exist in both of those strings
+ But value must be set here for accesskey to draw properly
+-->
+<!ENTITY tableJoinCells.label "σ">
+<!ENTITY tableJoinCells.accesskey "σ">
+<!ENTITY tableSplitCell.label "Διαίρεση κελιού">
+<!ENTITY tableSplitCell.accesskey "κ">
+<!ENTITY convertToTable.label "Δημιουργία πίνακα από επιλογή">
+<!ENTITY convertToTable.accesskey "Δ">
+<!ENTITY tableProperties.label "Ιδιότητες πίνακα…">
+<!ENTITY tableProperties.accesskey "δ">
+
+<!-- Toolbar-only items -->
+<!ENTITY menuBar.tooltip "Γραμμή μενού">
+<!ENTITY formatToolbar.tooltip "Γραμμή εργαλείων μορφοποίησης">
+<!ENTITY cutToolbarCmd.tooltip "Αποκοπή">
+<!ENTITY copyToolbarCmd.tooltip "Αντιγραφή">
+<!ENTITY pasteToolbarCmd.tooltip "Επικόλληση">
+<!ENTITY findToolbarCmd.label "Εύρεση">
+<!ENTITY findToolbarCmd.tooltip "Εύρεση κειμένου στη σελίδα">
+<!ENTITY spellToolbarCmd.label "Ορθογραφικός έλεγχος">
+<!ENTITY spellToolbarCmd.tooltip "Ορθογραφικός έλεγχος στην επιλογή ή σε όλη τη σελίδα">
+<!ENTITY imageToolbarCmd.label "Εικόνα">
+<!ENTITY imageToolbarCmd.tooltip "Εισαγωγή νέας εικόνας ή επεξεργασία ιδιοτήτων επιλεγμένης εικόνας">
+<!ENTITY hruleToolbarCmd.label "Οριζ. γραμμή">
+<!ENTITY hruleToolbarCmd.tooltip "Εισαγωγή νέας οριζόντιας γραμμής ή επεξεργασία ιδιοτήτων επιλεγμένης γραμμής">
+<!ENTITY tableToolbarCmd.label "Πίνακας">
+<!ENTITY tableToolbarCmd.tooltip "Εισαγωγή νέου πίνακα ή επεξεργασία ιδιοτήτων επιλεγμένου πίνακα">
+<!ENTITY linkToolbarCmd.label "Σύνδεσμος">
+<!ENTITY linkToolbarCmd.tooltip "Εισαγωγή νέου ή επεξεργασία ιδιοτήτων επιλεγμένου δεσμού">
+<!ENTITY anchorToolbarCmd.label "Άγκυρα">
+<!ENTITY anchorToolbarCmd.tooltip "Εισαγωγή νέας άγκυρας ή επεξεργασία ιδιοτήτων επιλεγμένης άγκυρας">
+<!ENTITY colorButtons.title "Χρώματα">
+<!ENTITY TextColorButton.tooltip "Επιλογή χρώματος κειμένου">
+<!ENTITY BackgroundColorButton.tooltip "Επιλογή χρώματος παρασκηνίου">
+<!ENTITY HighlightColorButton.label "Επισήμαναση">
+<!ENTITY HighlightColorButton.tooltip "Επιλογή χρώματος επισήμανσης κειμένου">
+
+<!-- Editor toolbar -->
+<!ENTITY absoluteFontSize.label "Μέγεθος γραμματοσειράς">
+<!ENTITY absoluteFontSizeToolbarCmd.tooltip "Ορισμός μεγέθους γραμματοσειράς">
+<!ENTITY smaller.label "Μικρότερο">
+<!ENTITY decreaseFontSizeToolbarCmd.tooltip "Μικρότερο μέγεθος γραμματοσειράς">
+<!ENTITY larger.label "Μεγαλύτερο">
+<!ENTITY increaseFontSizeToolbarCmd.tooltip "Μεγαλύτερο μέγεθος γραμματοσειράς">
+<!ENTITY bold.label "Έντονα">
+<!ENTITY boldToolbarCmd.tooltip "Έντονα">
+<!ENTITY italic.label "Πλάγια">
+<!ENTITY italicToolbarCmd.tooltip "Πλάγια">
+<!ENTITY underline.label "Υπογράμμιση">
+<!ENTITY underlineToolbarCmd.tooltip "Υπογράμμιση">
+<!ENTITY bullets.label "Κουκκίδες">
+<!ENTITY bulletListToolbarCmd.tooltip "Εφαρμογή ή αφαίρεση λίστας με κουκίδες">
+<!ENTITY numbers.label "Αριθμοί">
+<!ENTITY numberListToolbarCmd.tooltip "Εφαρμογή ή αφαίρεση αριθμημένης λίστας">
+<!ENTITY outdent.label "Εξοχή">
+<!ENTITY outdentToolbarCmd.tooltip "Εξοχή κειμένου (μετακίνηση αριστερά)">
+<!ENTITY indent.label "Εσοχή">
+<!ENTITY indentToolbarCmd.tooltip "Εσοχή κειμένου (μετακίνηση δεξιά)">
+<!ENTITY AlignPopupButton.label "Στοίχιση">
+<!ENTITY AlignPopupButton.tooltip "Επιλογή στοίχισης κειμένου">
+<!ENTITY InsertPopupButton.label "Εισαγωγή">
+<!ENTITY InsertPopupButton.tooltip "Εισαγωγή συνδέσμου, άγκυρας, εικόνας, οριζόντιας γραμμής ή πίνακα">
+<!ENTITY alignLeftButton.label "Στοίχιση αριστερά">
+<!ENTITY alignLeftButton.tooltip "Στοίχιση κειμένου μαζί με αριστερό περιθώριο">
+<!ENTITY alignCenterButton.label "Στοίχιση στο κέντρο">
+<!ENTITY alignCenterButton.tooltip "Στοίχιση κειμένου στο κέντρο">
+<!ENTITY alignRightButton.label "Στοίχιση δεξιά">
+<!ENTITY alignRightButton.tooltip "Στοίχιση κειμένου μαζί με δεξιό περιθώριο">
+<!ENTITY alignJustifyButton.label "Πλήρης στοίχιση">
+<!ENTITY alignJustifyButton.tooltip "Στοίχιση κειμένου μαζί με δεξιό και αριστερό περιθώριο">
+
+<!-- Structure Toolbar Context Menu items -->
+<!ENTITY structSelect.label "Επιλογή">
+<!ENTITY structSelect.accesskey "λ">
+<!ENTITY structRemoveTag.label "Αφαίρεση ετικέτας">
+<!ENTITY structRemoveTag.accesskey "ρ">
+<!ENTITY structChangeTag.label "Αλλαγή ετικέτας">
+<!ENTITY structChangeTag.accesskey "κ">
+
+<!-- TOC manipulation -->
+<!ENTITY insertTOC.label "Εισαγωγή">
+<!ENTITY insertTOC.accesskey "ι">
+<!ENTITY updateTOC.label "Ενημέρωση">
+<!ENTITY updateTOC.accesskey "ν">
+<!ENTITY removeTOC.label "Αφαίρεση">
+<!ENTITY removeTOC.accesskey "ρ">
+<!ENTITY tocMenu.label "Πίνακας περιεχομένων…">
+<!ENTITY tocMenu.accesskey "Π">
diff --git a/l10n-el/editor/ui/chrome/composer/editorPrefsOverlay.dtd b/l10n-el/editor/ui/chrome/composer/editorPrefsOverlay.dtd
new file mode 100644
index 0000000000..fd222fcad8
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/composer/editorPrefsOverlay.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/. -->
+
+
+<!--LOCALIZATION NOTE (editorCheck.label): DONT_TRANSLATE -->
+<!ENTITY editorCheck.label "Συντάκτης">
+<!ENTITY editorCheck.accesskey "Σ">
+
+<!ENTITY compose.label "Συντάκτης">
+<!ENTITY editing.label "Ρυθμίσεις νέας σελίδας">
+<!ENTITY publish.label "Δημοσίευση">
diff --git a/l10n-el/editor/ui/chrome/composer/editorSmileyOverlay.dtd b/l10n-el/editor/ui/chrome/composer/editorSmileyOverlay.dtd
new file mode 100644
index 0000000000..2bdd93e5ff
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/composer/editorSmileyOverlay.dtd
@@ -0,0 +1,58 @@
+<!-- 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/. -->
+
+<!-- Smiley Menu items -->
+<!ENTITY insertSmiley.label "Φατσούλα">
+<!ENTITY insertSmiley.accesskey "Φ">
+
+<!ENTITY smiley1Cmd.label "Χαμόγελο">
+<!ENTITY smiley1Cmd.accesskey "Χ">
+<!ENTITY smiley1Cmd.tooltip "Εισαγωγή μιας χαρούμενης φατσούλας">
+<!ENTITY smiley2Cmd.label "Κατσουφιασμένος">
+<!ENTITY smiley2Cmd.accesskey "σ">
+<!ENTITY smiley2Cmd.tooltip "Εισαγωγή κατσουφιασμένου προσώπου">
+<!ENTITY smiley3Cmd.label "Κλείσιμο ματιού">
+<!ENTITY smiley3Cmd.accesskey "Κ">
+<!ENTITY smiley3Cmd.tooltip "Εισαγωγή προσώπου που κλείνει το μάτι">
+<!ENTITY smiley4Cmd.label "Γλώσσα έξω">
+<!ENTITY smiley4Cmd.accesskey "Γ">
+<!ENTITY smiley4Cmd.tooltip "Εισαγωγή προσώπου με τη γλώσσα έξω">
+<!ENTITY smiley5Cmd.label "Γέλιο">
+<!ENTITY smiley5Cmd.accesskey "Γ">
+<!ENTITY smiley5Cmd.tooltip "Εισαγωγή γελαστού προσώπου">
+<!ENTITY smiley6Cmd.label "Ντροπιασμένος">
+<!ENTITY smiley6Cmd.accesskey "Ν">
+<!ENTITY smiley6Cmd.tooltip "Εισαγωγή ντροπιασμένου προσώπου">
+<!ENTITY smiley7Cmd.label "Αναποφάσιστος">
+<!ENTITY smiley7Cmd.accesskey "Α">
+<!ENTITY smiley7Cmd.tooltip "Εισαγωγή αναποφάσιστου προσώπου">
+<!ENTITY smiley8Cmd.label "Έκπληξη">
+<!ENTITY smiley8Cmd.accesskey "ξ">
+<!ENTITY smiley8Cmd.tooltip "Εισαγωγή έκπληκτου προσώπου">
+<!ENTITY smiley9Cmd.label "Φιλί">
+<!ENTITY smiley9Cmd.accesskey "Φ">
+<!ENTITY smiley9Cmd.tooltip "Εισαγωγή προσώπου με φιλί">
+<!ENTITY smiley10Cmd.label "Κραυγή">
+<!ENTITY smiley10Cmd.accesskey "ή">
+<!ENTITY smiley10Cmd.tooltip "Εισαγωγή προσώπου που φωνάζει">
+<!ENTITY smiley11Cmd.label "Κουλ">
+<!ENTITY smiley11Cmd.accesskey "υ">
+<!ENTITY smiley11Cmd.tooltip "Εισαγωγή κουλ προσώπου">
+<!ENTITY smiley12Cmd.label "Χρήματα-στόμα">
+<!ENTITY smiley12Cmd.accesskey "ρ">
+<!ENTITY smiley12Cmd.tooltip "Εισαγωγή προσώπου με στόμα-χρήμα">
+<!ENTITY smiley13Cmd.label "Πόδι-στο-στόμα">
+<!ENTITY smiley13Cmd.accesskey "ο">
+<!ENTITY smiley13Cmd.tooltip "Εισαγωγή προσώπου με πόδι στο στόμα">
+<!ENTITY smiley14Cmd.label "Αθώος">
+<!ENTITY smiley14Cmd.accesskey "θ">
+<!ENTITY smiley14Cmd.tooltip "Εισαγωγή αθώου προσώπου">
+<!ENTITY smiley15Cmd.label "Κλάμα">
+<!ENTITY smiley15Cmd.accesskey "λ">
+<!ENTITY smiley15Cmd.tooltip "Εισαγωγή προσώπου που κλαίει">
+<!ENTITY smiley16Cmd.label "Σφραγισμένα-χείλη">
+<!ENTITY smiley16Cmd.accesskey "ί">
+<!ENTITY smiley16Cmd.tooltip "Εισαγωγή προσώπου με σφραγισμένα χείλη">
+<!ENTITY SmileButton.label "Εισαγωγή Smiley">
+<!ENTITY SmileButton.tooltip "Εισαγωγή χαμογελαστού προσώπου">
diff --git a/l10n-el/editor/ui/chrome/composer/pref-composer.dtd b/l10n-el/editor/ui/chrome/composer/pref-composer.dtd
new file mode 100644
index 0000000000..e4aab5a655
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/composer/pref-composer.dtd
@@ -0,0 +1,29 @@
+<!-- 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/. -->
+
+<!-- extracted from content/pref-composer.xul -->
+
+<!--LOCALIZATION NOTE : FILE 'Composer' prefs dialog. Similar to Communcator 4.x Document Properties/Colors and Background -->
+
+<!--LOCALIZATION NOTE (pref.composer.title): DONT_TRANSLATE -->
+<!ENTITY pref.composer.title "Σύνταξη μηνυμάτων">
+<!ENTITY recentFiles.title "Μενού πρόσφατων σελίδων">
+<!ENTITY documentsInMenu.label "Μέγιστος αριθμός ιστορικού σελίδων:">
+<!ENTITY documentsInMenu.accesskey "γ">
+<!ENTITY savingFiles.title "Κατά την αποθήκευση ή δημοσίευση σελίδων">
+<!ENTITY preserveExisting.label "Διατήρηση μορφοποίησης αρχικού κώδικα">
+<!ENTITY preserveExisting.accesskey "τ">
+<!ENTITY preserveExisting.tooltip "Διατηρεί τις αλλαγές γραμμών και την αρχική μορφοποίηση της σελίδας">
+<!ENTITY saveAssociatedFiles.label "Να αποθηκεύονται εικόνες και άλλα σχετικά αρχεία κατά την αποθήκευση σελίδων">
+<!ENTITY saveAssociatedFiles.accesskey "θ">
+<!ENTITY showPublishDialog.label "Να εμφανίζεται πάντα ο διάλογος δημοσίευσης κατά τη δημοσίευση σελίδων">
+<!ENTITY showPublishDialog.accesskey "φ">
+<!ENTITY composerEditing.label "Επεξεργασία">
+<!ENTITY maintainStructure.label "Διατήρηση διάταξης πίνακα κατά την εισαγωγή ή διαγραφή κελιών">
+<!ENTITY maintainStructure.tooltip "Διατηρεί τη μορφοποίηση του πίνακα με το να εισάγει αυτόματα κελιά κατά την εισαγωγή ή διαγραφή κελιών">
+<!ENTITY maintainStructure.accesskey "Δ">
+<!ENTITY useCSS.label "Χρήση CSS styles αντί για γνωρίσματα HTML">
+<!ENTITY useCSS.accesskey "Χ">
+<!ENTITY crInPCreatesNewP.label "Το πλήκτρο Return σε μια παράγραφο να δημιουργεί πάντα νέα παράγραφο">
+<!ENTITY crInPCreatesNewP.accesskey "ρ">
diff --git a/l10n-el/editor/ui/chrome/composer/pref-editing.dtd b/l10n-el/editor/ui/chrome/composer/pref-editing.dtd
new file mode 100644
index 0000000000..10e881764f
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/composer/pref-editing.dtd
@@ -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/. -->
+
+<!ENTITY pref.editing.title "Ρυθμίσεις νέας σελίδας">
+
+<!ENTITY authorName.label "Συγγραφέας">
+<!ENTITY authorName.accesskey "υ">
+<!ENTITY pageColorHeader "Εμφάνιση προεπιλεγμένης σελίδας">
+
+<!ENTITY defaultColors.label "Προεπιλεγμένα χρώματα παραλήπτη (Δεν ορίζονται χρώματα στη σελίδα)">
+<!ENTITY defaultColors.accesskey "γ">
+<!ENTITY customColors.label "Χρήση προσαρμοσμένων χρωμάτων:">
+<!ENTITY customColors.accesskey "σ">
+
+<!ENTITY normalText.label "Κανονικό κείμενο">
+<!ENTITY normalText.accesskey "ν">
+<!ENTITY linkText.label "Κείμενο διασύνδεσης">
+<!ENTITY linkText.accesskey "μ">
+<!ENTITY activeLinkText.label "Χρώμα ενεργής διασύνδεσης">
+<!ENTITY activeLinkText.accesskey "ν">
+<!ENTITY visitedLinkText.label "Χρώμα αναγνωσμένης διασύνδεσης">
+<!ENTITY visitedLinkText.accesskey "γ">
+<!ENTITY background.label "Φόντο:">
+<!ENTITY background.accesskey "Φ">
+<!ENTITY colon.character ":">
+
+<!ENTITY backgroundImage.label "Εικόνα φόντου:">
+<!ENTITY backgroundImage.accesskey "κ">
+<!ENTITY chooseFile.label "Επιλογή αρχείου…">
+<!ENTITY chooseFile.accesskey "λ">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EdAdvancedEdit.dtd b/l10n-el/editor/ui/chrome/dialogs/EdAdvancedEdit.dtd
new file mode 100644
index 0000000000..2ad524fd77
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EdAdvancedEdit.dtd
@@ -0,0 +1,18 @@
+<!-- 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 WindowTitle.label "Επεξεργασία σύνθετων ιδιοτήτων">
+<!ENTITY AttName.label "Όνομα: ">
+<!ENTITY AttValue.label "Τιμή: ">
+<!ENTITY PropertyName.label "Ιδιότητα:">
+<!ENTITY currentattributesfor.label "Τρέχουσες ιδιότητες για:">
+<!ENTITY tree.attributeHeader.label "Ιδιότητα">
+<!ENTITY tree.propertyHeader.label "Ιδιότητα">
+<!ENTITY tree.valueHeader.label "Τιμή">
+<!ENTITY tabHTML.label "Ιδιότητες HTML">
+<!ENTITY tabCSS.label "Ενσωματωμένο στυλ">
+<!ENTITY tabJSE.label "Γεγονότα JavaScript">
+
+<!ENTITY editAttribute.label "Κάντε κλικ σε ένα στοιχείο από τα παραπάνω για να επεξεργαστείτε την τιμή του">
+<!ENTITY removeAttribute.label "Αφαίρεση">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EdColorPicker.dtd b/l10n-el/editor/ui/chrome/dialogs/EdColorPicker.dtd
new file mode 100644
index 0000000000..674ecfdf46
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EdColorPicker.dtd
@@ -0,0 +1,22 @@
+<!-- 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 windowTitle.label "Χρώμα">
+<!ENTITY lastPickedColor.label "Τελευταίο επιλεγμένο χρώμα">
+<!ENTITY lastPickedColor.accessKey "λ">
+<!ENTITY chooseColor1.label "Επιλέξτε χρώμα:">
+<!ENTITY chooseColor2.label "Εισάγετε μια συμβολοσειρά χρώματος HTML">
+<!ENTITY chooseColor2.accessKey "H">
+<!ENTITY setColorExample.label "(π.χ.: &quot;#0000ff&quot; ή &quot;blue&quot;):">
+<!ENTITY default.label "Προεπιλογή">
+<!ENTITY default.accessKey "λ">
+<!ENTITY palette.label "Παλέτα:">
+<!ENTITY standardPalette.label "Κανονική">
+<!ENTITY webPalette.label "Όλα τα χρώματα web">
+<!ENTITY background.label "Φόντο για:">
+<!ENTITY background.accessKey "Φ">
+<!ENTITY table.label "Πίνακας">
+<!ENTITY table.accessKey "π">
+<!ENTITY cell.label "Κελί(α)">
+<!ENTITY cell.accessKey "Κ">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EdConvertToTable.dtd b/l10n-el/editor/ui/chrome/dialogs/EdConvertToTable.dtd
new file mode 100644
index 0000000000..08c5b4d5fe
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EdConvertToTable.dtd
@@ -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/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Μετατροπή σε πίνακα">
+<!ENTITY instructions1.label "O composer θα δημιουργεί μια νέα γραμμή πίνακα για κάθε παράγραφο στην επιλογή.">
+<!ENTITY instructions2.label "Επιλέξτε το χαρακτήρα που θα χωρίζει την επιλογή σε στήλες:">
+<!ENTITY commaRadio.label "Κόμμα">
+<!ENTITY spaceRadio.label "Διάστημα">
+<!ENTITY otherRadio.label "Άλλος χαρακτήρας:">
+<!ENTITY deleteCharCheck.label "Διαγραφή διαχωριστικού χαρακτήρα">
+<!ENTITY collapseSpaces.label "Παράβλεψη επιπλέον κενών">
+<!ENTITY collapseSpaces.tooltip "Μετατροπή συνεχόμενων κενών σε ένα διαχωριστικό">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EdDialogOverlay.dtd b/l10n-el/editor/ui/chrome/dialogs/EdDialogOverlay.dtd
new file mode 100644
index 0000000000..27c28fcb40
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EdDialogOverlay.dtd
@@ -0,0 +1,18 @@
+<!-- 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 AdvancedEditButton.label "Σύνθετη επεξεργασία…">
+<!ENTITY AdvancedEditButton.accessKey "π">
+<!ENTITY AdvancedEditButton.tooltip "Προσθήκη ή μετατροπή HTML attributes, style attributes, και JavaScript">
+<!ENTITY chooseFileButton.label "Επιλογή αρχείου...">
+<!ENTITY chooseFileButton.accessKey "χ">
+<!ENTITY chooseFileLinkButton.label "Επιλογή αρχείου...">
+<!ENTITY chooseFileLinkButton.accessKey "λ">
+<!ENTITY makeUrlRelative.label "Το URL είναι σχετικό με την τοποθεσία της σελίδας">
+<!ENTITY makeUrlRelative.accessKey "χ">
+<!ENTITY makeUrlRelative.tooltip "Αλλαγή μεταξύ σχετικού και απόλυτου URL. Πρέπει να αποθηκεύσετε πρώτα τη σελίδα για να γίνουν οι αλλαγές.">
+
+<!-- Shared by Link and Image dialogs -->
+<!ENTITY LinkURLEditField2.label "Εισάγετε μια ιστοσελίδα, ένα τοπικό αρχείο, ή επιλέξτε μια επώνυμη άγκυρα ή επικεφαλίδα από το μενού επιλογών του πεδίου:">
+<!ENTITY LinkURLEditField2.accessKey "ι">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EdNamedAnchorProperties.dtd b/l10n-el/editor/ui/chrome/dialogs/EdNamedAnchorProperties.dtd
new file mode 100644
index 0000000000..bc784717b8
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EdNamedAnchorProperties.dtd
@@ -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/. -->
+
+<!ENTITY windowTitle.label "Ιδιότητες επώνυμης άγκυρας">
+<!ENTITY anchorNameEditField.label "Όνομα άγκυρας:">
+<!ENTITY anchorNameEditField.accessKey "μ">
+<!ENTITY nameInput.tooltip "Καταχωρίστε ένα μοναδικό όνομα για αυτόν το named anchor (προορισμό)">
+
+
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditConflict.dtd b/l10n-el/editor/ui/chrome/dialogs/EditConflict.dtd
new file mode 100644
index 0000000000..21b73f866b
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditConflict.dtd
@@ -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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Επιλογή επεξεργασίας αλλαγών">
+<!ENTITY conflictWarning.label "Η σελίδα έχει τροποποιηθεί από κάποιο άλλο πρόγραμμα, αλλά υπάρχουν και μη αποθηκευμένες αλλαγές που έγιναν με τον Composer">
+<!ENTITY conflictResolve.label "Επιλέξτε ποια έκδοση θέλετε να κρατήσετε: ">
+<!ENTITY keepCurrentPageButton.label "Διατήρηση των αλλαγών που πραγματοποιήθηκαν">
+<!ENTITY useOtherPageButton.label "Αντικατάσταση τρέχουσας σελίδας με άλλες αλλαγές">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorButtonProperties.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorButtonProperties.dtd
new file mode 100644
index 0000000000..0806fd8718
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorButtonProperties.dtd
@@ -0,0 +1,27 @@
+<!-- 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 windowTitle.label "Ιδιότητες κουμπιού">
+
+<!ENTITY Settings.label "Ρυθμίσεις">
+
+<!ENTITY ButtonType.label "Τύπος">
+<!ENTITY ButtonType.accesskey "Τ">
+<!ENTITY submit.value "Υποβολή">
+<!ENTITY reset.value "Επαναφορά">
+<!ENTITY button.value "Κουμπί">
+
+<!ENTITY ButtonName.label "Όνομα:">
+<!ENTITY ButtonName.accesskey "ν">
+<!ENTITY ButtonValue.label "Τιμή:">
+<!ENTITY ButtonValue.accesskey "μ">
+<!ENTITY tabIndex.label "Ευρετήριο καρτέλας:">
+<!ENTITY tabIndex.accesskey "λ">
+<!ENTITY ButtonDisabled.label "Απενεργοποιημένο">
+<!ENTITY ButtonDisabled.accesskey "ν">
+<!ENTITY AccessKey.label "Πλήκτρο συντόμευσης:">
+<!ENTITY AccessKey.accesskey "σ">
+
+<!ENTITY RemoveButton.label "Απομάκρυνση κουμπιού">
+<!ENTITY RemoveButton.accesskey "π">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorColorProperties.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorColorProperties.dtd
new file mode 100644
index 0000000000..7e16fb7423
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorColorProperties.dtd
@@ -0,0 +1,29 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Χρώματα και φόντο σελίδας">
+<!ENTITY pageColors.label "Χρώματα σελίδας">
+<!ENTITY defaultColorsRadio.label "Προεπιλεγμένα χρώματα">
+<!ENTITY defaultColorsRadio.accessKey "γ">
+<!ENTITY defaultColorsRadio.tooltip "Χρήση των ρυθμίσεων χρώματος από το περιηγητή του αναγνώστη μόνο">
+<!ENTITY customColorsRadio.label "Χρήση προσαρμοσμένων χρωμάτων:">
+<!ENTITY customColorsRadio.accessKey "π">
+<!ENTITY customColorsRadio.tooltip "Αυτές οι ρυθμίσεις χρωμάτων υποκαθιστούν τις ρυθμίσεις του περιηγητή">
+
+<!ENTITY normalText.label "Κανονικό κείμενο">
+<!ENTITY normalText.accessKey "ν">
+<!ENTITY linkText.label "Κείμενο διασύνδεσης">
+<!ENTITY linkText.accessKey "δ">
+<!ENTITY activeLinkText.label "Χρώμα ενεργής διασύνδεσης">
+<!ENTITY activeLinkText.accessKey "ε">
+<!ENTITY visitedLinkText.label "Χρώμα αναγνωσμένης διασύνδεσης">
+<!ENTITY visitedLinkText.accessKey "σ">
+<!ENTITY background.label "Φόντο:">
+<!ENTITY background.accessKey "Φ">
+<!ENTITY colon.character ":">
+<!ENTITY backgroundImage.label "Εικόνα φόντου:">
+<!ENTITY backgroundImage.accessKey "κ">
+<!ENTITY backgroundImage.tooltip "Χρήση αρχείου εικόνας ως φόντο για τη σελίδα">
+<!ENTITY backgroundImage.shortenedDataURI "Σύντομα δεδομένα URI (η αντιγραφή θα τοποθετήσει το πλήρες URI στο πρόχειρο)">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorFieldSetProperties.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorFieldSetProperties.dtd
new file mode 100644
index 0000000000..05e538fd2d
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorFieldSetProperties.dtd
@@ -0,0 +1,20 @@
+<!-- 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 windowTitle.label "Ιδιότητες ορισμού πεδίου">
+
+<!ENTITY Legend.label "Λεζάντα">
+<!ENTITY Legend.accesskey "ζ">
+
+<!ENTITY EditLegendText.label "Επεξεργασία λεζάντας:">
+<!ENTITY EditLegendText.accesskey "ξ">
+<!ENTITY LegendAlign.label "Στοίχιση λεζάντας:">
+<!ENTITY LegendAlign.accesskey "τ">
+<!ENTITY AlignDefault.label "Προεπιλογή">
+<!ENTITY AlignLeft.label "Αριστερά">
+<!ENTITY AlignCenter.label "Μέσο">
+<!ENTITY AlignRight.label "Δεξιά">
+
+<!ENTITY RemoveFieldSet.label "Απομάκρυνση ορισμού πεδίου">
+<!ENTITY RemoveFieldSet.accesskey "ρ">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorFormProperties.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorFormProperties.dtd
new file mode 100644
index 0000000000..dab07c89e2
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorFormProperties.dtd
@@ -0,0 +1,21 @@
+<!-- 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 windowTitle.label "Ιδιότητες φόρμας">
+
+<!ENTITY Settings.label "Ρυθμίσεις">
+
+<!ENTITY FormName.label "Όνομα φόρμας:">
+<!ENTITY FormName.accesskey "ν">
+<!ENTITY FormAction.label "URL ενέργειας:">
+<!ENTITY FormAction.accesskey "Ε">
+<!ENTITY FormMethod.label "Μέθοδος:">
+<!ENTITY FormMethod.accesskey "θ">
+<!ENTITY FormEncType.label "Κωδικοποίηση:">
+<!ENTITY FormEncType.accesskey "ω">
+<!ENTITY FormTarget.label "Πλαίσιο στόχου:">
+<!ENTITY FormTarget.accesskey "χ">
+
+<!ENTITY RemoveForm.label "Αφαίρεση φόρμας">
+<!ENTITY RemoveForm.accesskey "Α">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorHLineProperties.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorHLineProperties.dtd
new file mode 100644
index 0000000000..cf655093a9
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorHLineProperties.dtd
@@ -0,0 +1,27 @@
+<!-- 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/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Ιδιότητες οριζόντιας γραμμής">
+
+<!ENTITY dimensionsBox.label "Διαστάσεις">
+<!ENTITY heightEditField.label "Ύψος:">
+<!ENTITY heightEditField.accessKey "ψ">
+<!ENTITY widthEditField.label "Πλάτος:">
+<!ENTITY widthEditField.accessKey "Π">
+<!ENTITY pixelsPopup.value "εικονοστοιχεία">
+<!ENTITY alignmentBox.label "Στοίχιση">
+<!ENTITY leftRadio.label "Αριστερά">
+<!ENTITY leftRadio.accessKey "ρ">
+<!ENTITY centerRadio.label "Κέντρο">
+<!ENTITY centerRadio.accessKey "Κ">
+<!ENTITY rightRadio.label "Δεξιά">
+<!ENTITY rightRadio.accessKey "Δ">
+
+<!ENTITY threeDShading.label "Σκίαση 3-D">
+<!ENTITY threeDShading.accessKey "Σ">
+<!ENTITY saveSettings.label "Χρήση ως προεπιλεγμένων">
+<!ENTITY saveSettings.accessKey "ρ">
+<!ENTITY saveSettings.tooltip "Αποθήκευση αυτών των ρυθμίσεων προς χρήση όταν γίνεται εισαγωγή νέων οριζοντίων γραμμών">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorImageProperties.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorImageProperties.dtd
new file mode 100644
index 0000000000..5058ed2c67
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorImageProperties.dtd
@@ -0,0 +1,79 @@
+<!-- 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/. -->
+
+<!-- These strings are for use specifically in the editor's image and form image dialogs. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Ιδιότητες εικόνας">
+
+<!ENTITY pixelsPopup.value "εικονοστοιχεία">
+
+<!-- These are in the Location tab panel -->
+<!ENTITY locationEditField.label "Τοποθεσία εικόνας:">
+<!ENTITY locationEditField.accessKey "Τ">
+<!ENTITY locationEditField.tooltip "Πληκτρολογήστε το όνομα αρχείου ή την τοποθεσία εικόνας">
+<!ENTITY locationEditField.shortenedDataURI "Τα δεδομένα URI περικόπηκαν (η αντιγραφή θα αντιγράψει το πλήρες URI στο Πρόχειρο)">
+<!ENTITY title.label "Υπόδειξη:">
+<!ENTITY title.accessKey "Υ">
+<!ENTITY title.tooltip "Η html ιδιότητα 'title' που προβάλλεται ως υπόδειξη">
+<!ENTITY altText.label "Εναλλακτικό κείμενο:">
+<!ENTITY altText.accessKey "Ε">
+<!ENTITY altTextEditField.tooltip "Πληκτρολογήστε το κείμενο που θα εμφανίζεται αντί της εικόνας">
+<!ENTITY noAltText.label "Να μην γίνεται χρήση εναλλακτικού κειμένου">
+<!ENTITY noAltText.accessKey "Ν">
+
+<!ENTITY previewBox.label "Προεπισκόπηση εικόνας">
+
+<!-- These controls are in the Dimensions tab panel -->
+<!-- actualSize.label should be same as actualSizeRadio.label + ":" -->
+<!ENTITY actualSize.label "Πραγματικό μέγεθος:">
+<!ENTITY actualSizeRadio.label "Πραγματικό μέγεθος">
+<!ENTITY actualSizeRadio.accessKey "Π">
+<!ENTITY actualSizeRadio.tooltip "Επιστροφή στο πραγματικό μέγεθος της εικόνας.">
+<!ENTITY customSizeRadio.label "Προσαρμοσμένο μέγεθος">
+<!ENTITY customSizeRadio.accessKey "Μ">
+<!ENTITY customSizeRadio.tooltip "Αλλαγή του μεγέθους της εικόνας όπως φαίνεται στη σελίδα">
+<!ENTITY heightEditField.label "Ύψος:">
+<!ENTITY heightEditField.accessKey "ψ">
+<!ENTITY widthEditField.label "Πλάτος:">
+<!ENTITY widthEditField.accessKey "λ">
+<!ENTITY constrainCheckbox.label "Περιορισμός">
+<!ENTITY constrainCheckbox.accessKey "ε">
+<!ENTITY constrainCheckbox.tooltip "Διατήρηση των αναλογιών της εικόνας">
+
+<!-- These controls are in the Image Map box of the expanded area -->
+<!ENTITY imagemapBox.label "Χάρτης εικόνας">
+<!ENTITY removeImageMapButton.label "Αφαίρεση">
+<!ENTITY removeImageMapButton.accessKey "φ">
+
+<!-- These are the options for image alignment -->
+<!ENTITY alignment.label "Στοίχιση κειμένου ως προς την εικόνα">
+<!ENTITY bottomPopup.value "Στο κάτω μέρος">
+<!ENTITY topPopup.value "Στο πάνω μέρος">
+<!ENTITY centerPopup.value "Στο μέσο">
+<!ENTITY wrapRightPopup.value "Αναδίπλωση στα δεξιά">
+<!ENTITY wrapLeftPopup.value "Αναδίπλωση στα αριστερά">
+
+<!-- These controls are in the Spacing Box -->
+<!ENTITY spacingBox.label "Διάταξη">
+<!ENTITY leftRightEditField.label "Αριστερά και δεξιά:">
+<!ENTITY leftRightEditField.accessKey "ρ">
+<!ENTITY topBottomEditField.label "Πάνω και κάτω:">
+<!ENTITY topBottomEditField.accessKey "ω">
+<!ENTITY borderEditField.label "Μαύρο πλαίσιο:">
+<!ENTITY borderEditField.accessKey "Μ">
+
+<!-- These controls are in the Link Box -->
+<!ENTITY showImageLinkBorder.label "Εμφάνιση πλαισίου γύρω από εικόνα με σύνδεσμο">
+<!ENTITY showImageLinkBorder.accessKey "β">
+<!ENTITY LinkAdvancedEditButton.label "Προηγμένη επεξεργασία συνδέσμου…">
+<!ENTITY LinkAdvancedEditButton.accessKey "δ">
+<!ENTITY LinkAdvancedEditButton.tooltip "Προσθήκη ή τροποποίηση ιδιοτήτων HTML, στυλ και JavaScript">
+
+<!-- These tabs are currently used in the image input dialog -->
+<!ENTITY imageInputTab.label "Φόρμα">
+<!ENTITY imageLocationTab.label "Τοποθεσία">
+<!ENTITY imageDimensionsTab.label "Διαστάσεις">
+<!ENTITY imageAppearanceTab.label "Εμφάνιση">
+<!ENTITY imageLinkTab.label "Σύνδεσμος">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorInputProperties.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorInputProperties.dtd
new file mode 100644
index 0000000000..46f4eff3a1
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorInputProperties.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/. -->
+
+<!ENTITY windowTitle.label "Ιδιότητες πεδίου φόρμας">
+<!ENTITY windowTitleImage.label "Ιδιότητες εικόνας φόρμας">
+
+<!ENTITY InputType.label "Τύπος πεδίου">
+<!ENTITY InputType.accesskey "Τ">
+<!ENTITY text.value "Κείμενο">
+<!ENTITY password.value "Κωδικός">
+<!ENTITY checkbox.value "Πλαίσιο ελέγχου">
+<!ENTITY radio.value "Κουμπί Radio">
+<!ENTITY submit.value "Κουμπί υποβολής">
+<!ENTITY reset.value "Κουμπί επαναφοράς">
+<!ENTITY file.value "Αρχείο">
+<!ENTITY hidden.value "Κρυφό">
+<!ENTITY image.value "Εικόνα">
+<!ENTITY button.value "Κουμπί">
+
+<!ENTITY InputSettings.label "Ρυθμίσεις Πεδίου">
+<!ENTITY InputName.label "Όνομα πεδίου:">
+<!ENTITY InputName.accesskey "δ">
+<!ENTITY GroupName.label "Όνομα ομάδας:">
+<!ENTITY GroupName.accesskey "ν">
+<!ENTITY InputValue.label "Τιμή πεδίου:">
+<!ENTITY InputValue.accesskey "μ">
+<!ENTITY InitialValue.label "Αρχική τιμή:">
+<!ENTITY InitialValue.accesskey "χ">
+<!ENTITY InputChecked.label "Αρχικά τσεκαρισμένο">
+<!ENTITY InputChecked.accesskey "τ">
+<!ENTITY InputSelected.label "Αρχικά επιλεγμένο">
+<!ENTITY InputSelected.accesskey "χ">
+<!ENTITY InputReadOnly.label "Μόνο για ανάγνωση">
+<!ENTITY InputReadOnly.accesskey "ν">
+<!ENTITY InputDisabled.label "Απενεργοποιημένο">
+<!ENTITY InputDisabled.accesskey "π">
+<!ENTITY tabIndex.label "Ευρετήριο καρτέλας:">
+<!ENTITY tabIndex.accesskey "σ">
+<!ENTITY TextSize.label "Μέγεθος πεδίου:">
+<!ENTITY TextSize.accesskey "θ">
+<!ENTITY TextLength.label "Μέγιστο μήκος:">
+<!ENTITY TextLength.accesskey "Μ">
+<!ENTITY AccessKey.label "Πλήκτρο συντόμευσης:">
+<!ENTITY AccessKey.accesskey "Κ">
+<!ENTITY Accept.label "Αποδεκτοί τύποι:">
+<!ENTITY Accept.accesskey "Α">
+
+<!ENTITY ImageProperties.label "Ιδιότητες εικόνας…">
+<!ENTITY ImageProperties.accesskey "τ">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorInsertChars.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorInsertChars.dtd
new file mode 100644
index 0000000000..94f3ed3f81
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorInsertChars.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/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Εισαγωγή χαρακτήρα">
+<!ENTITY category.label "Κατηγορία">
+<!ENTITY letter.label "Γράμμα:">
+<!ENTITY letter.accessKey "Γ">
+<!ENTITY character.label "Χαρακτήρας:">
+<!ENTITY character.accessKey "Χ">
+<!ENTITY accentUpper.label "Κεφαλαία με τόνο">
+<!ENTITY accentLower.label "Πεζά με τόνο">
+<!ENTITY otherUpper.label "Άλλα κεφαλαία">
+<!ENTITY otherLower.label "Άλλα πεζά">
+<!ENTITY commonSymbols.label "Κοινά σύμβολα">
+<!ENTITY insertButton.label "Εισαγωγή">
+<!ENTITY closeButton.label "Κλείσιμο">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorInsertMath.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorInsertMath.dtd
new file mode 100644
index 0000000000..4ef81cb468
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorInsertMath.dtd
@@ -0,0 +1,21 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Εισαγωγή μαθηματικού τύπου">
+
+<!ENTITY sourceEditField.label "Εισάγετε πηγαίο κώδικα LaTeX:">
+
+<!ENTITY options.label "Επιλογές">
+<!ENTITY optionInline.label "Λειτουργία εντός γραμμής">
+<!ENTITY optionInline.accesskey "ν">
+<!ENTITY optionDisplay.label "Λειτουργία προβολής">
+<!ENTITY optionDisplay.accesskey "Λ">
+<!ENTITY optionLTR.label "Κατεύθυνση αριστερά προς δεξιά">
+<!ENTITY optionLTR.accesskey "α">
+<!ENTITY optionRTL.label "Κατεύθυνση δεξιά προς αριστερά">
+<!ENTITY optionRTL.accesskey "δ">
+
+<!ENTITY insertButton.label "Εισαγωγή">
+<!ENTITY insertButton.accesskey "Ε">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorInsertSource.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorInsertSource.dtd
new file mode 100644
index 0000000000..567a53756a
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorInsertSource.dtd
@@ -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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Εισαγωγή HTML">
+<!ENTITY sourceEditField.label "Εισάγετε ετικέτες HTML και κείμενο:">
+<!ENTITY example.label "Παράδειγμα: ">
+<!-- LOCALIZATION NOTE (exampleOpenTag.label): DONT_TRANSLATE: they are text for HTML tagnames: "<i>" and "</i>" -->
+<!ENTITY exampleOpenTag.label "&lt;i&gt;">
+<!-- LOCALIZATION NOTE (exampleCloseTag.label): DONT_TRANSLATE: they are text for HTML tagnames: "<i>" and "</i>" -->
+<!ENTITY exampleCloseTag.label "&lt;/i&gt;">
+<!ENTITY exampleText.label "Γεια σου, κόσμε!">
+<!ENTITY insertButton.label "Εισαγωγή">
+<!ENTITY insertButton.accesskey "σ">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorInsertTOC.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorInsertTOC.dtd
new file mode 100644
index 0000000000..b59764e457
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorInsertTOC.dtd
@@ -0,0 +1,16 @@
+<!-- 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 Window.title "Πίνακας περιεχομένων">
+<!ENTITY buildToc.label "Δημιουργία πίνακα περιεχομένων από:">
+<!ENTITY tag.label "Ετικέτα:">
+<!ENTITY class.label "Κλάση:">
+<!ENTITY header1.label "Επίπεδο 1">
+<!ENTITY header2.label "Επίπεδο 2">
+<!ENTITY header3.label "Επίπεδο 3">
+<!ENTITY header4.label "Επίπεδο 4">
+<!ENTITY header5.label "Επίπεδο 5">
+<!ENTITY header6.label "Επίπεδο 6">
+<!ENTITY makeReadOnly.label "Δημιουργία πίνακα περιεχομένων μόνο για ανάγνωση">
+<!ENTITY orderedList.label "Αρίθμηση όλων των καταχωρήσεων στον πίνακα περιεχομένων">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorInsertTable.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorInsertTable.dtd
new file mode 100644
index 0000000000..2a1654e83f
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorInsertTable.dtd
@@ -0,0 +1,18 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Εισαγωγή πίνακα">
+
+<!ENTITY size.label "Μέγεθος">
+<!ENTITY numRowsEditField.label "Σειρές:">
+<!ENTITY numRowsEditField.accessKey "ρ">
+<!ENTITY numColumnsEditField.label "Στήλες:">
+<!ENTITY numColumnsEditField.accessKey "τ">
+<!ENTITY widthEditField.label "Πλάτος:">
+<!ENTITY widthEditField.accessKey "Π">
+<!ENTITY borderEditField.label "Πλαίσιο:">
+<!ENTITY borderEditField.accessKey "λ">
+<!ENTITY borderEditField.tooltip "Εισάγετε ένα μέγεθος για το πλαίσιο πίνακα, ή εισάγετε μηδέν (0) για χωρίς πλαίσιο">
+<!ENTITY pixels.label "εικονοστοιχεία">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorLabelProperties.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorLabelProperties.dtd
new file mode 100644
index 0000000000..da9c77951d
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorLabelProperties.dtd
@@ -0,0 +1,18 @@
+<!-- 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 windowTitle.label "Ιδιότητες ετικέτας">
+
+<!ENTITY Settings.label "Ρυθμίσεις">
+<!ENTITY Settings.accesskey "θ">
+
+<!ENTITY EditLabelText.label "Επεξεργασία κειμένου:">
+<!ENTITY EditLabelText.accesskey "ξ">
+<!ENTITY LabelFor.label "Για έλεγχο:">
+<!ENTITY LabelFor.accesskey "λ">
+<!ENTITY AccessKey.label "Πλήκτρο συντόμευσης:">
+<!ENTITY AccessKey.accesskey "Π">
+
+<!ENTITY RemoveLabel.label "Αφαίρεση ετικέτας">
+<!ENTITY RemoveLabel.accesskey "ρ">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorLinkProperties.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorLinkProperties.dtd
new file mode 100644
index 0000000000..70efd874c2
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorLinkProperties.dtd
@@ -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/. -->
+
+<!ENTITY windowTitle.label "Ιδιότητες συνδέσμου">
+<!ENTITY LinkURLBox.label "Τοποθεσία συνδέσμου">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorListProperties.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorListProperties.dtd
new file mode 100644
index 0000000000..b9bf9b6f4c
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorListProperties.dtd
@@ -0,0 +1,20 @@
+<!-- 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/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Ιδιότητες λίστας">
+
+<!ENTITY ListType.label "Είδος λίστας">
+<!ENTITY bulletStyle.label "Μορφή κουκίδων:">
+<!ENTITY startingNumber.label "Έναρξη σε:">
+<!ENTITY startingNumber.accessKey "ξ">
+<!ENTITY none.value "Κανένα">
+<!ENTITY bulletList.value "Μη αριθμημένη λίστα (με κουκίδες)">
+<!ENTITY numberList.value "Αριθμημένη λίστα">
+<!ENTITY definitionList.value "Λίστα ορισμών">
+<!ENTITY changeEntireListRadio.label "Αλλαγή όλης της λίστας">
+<!ENTITY changeEntireListRadio.accessKey "λ">
+<!ENTITY changeSelectedRadio.label "Αλλαγή μόνο των επιλεγμένων αντικειμένων">
+<!ENTITY changeSelectedRadio.accessKey "π">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorPageProperties.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorPageProperties.dtd
new file mode 100644
index 0000000000..f412b950df
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorPageProperties.dtd
@@ -0,0 +1,17 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Ιδιότητες σελίδας">
+<!ENTITY location.label "Τοποθεσία:">
+<!ENTITY lastModified.label "Τελευταία τροποποίηση:">
+<!ENTITY titleInput.label "Τίτλος:">
+<!ENTITY titleInput.accessKey "Τ">
+<!ENTITY authorInput.label "Συγγραφέας:">
+<!ENTITY authorInput.accessKey "Σ">
+<!ENTITY descriptionInput.label "Περιγραφή:">
+<!ENTITY descriptionInput.accessKey "Π">
+<!ENTITY locationNewPage.label "[Νέα σελίδα, μη αποθηκευμένη ακόμα]">
+<!ENTITY EditHEADSource1.label "Προχωρημένοι χρήστες:">
+<!ENTITY EditHEADSource2.label "Για να επεξεργαστείτε τα άλλα περιεχόμενα της περιοχής &lt;head&gt;, χρησιμοποιείστε την επιλογή Kώδικας από το μενού προβολής ή επεξεργασίας. ">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorPersonalDictionary.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorPersonalDictionary.dtd
new file mode 100644
index 0000000000..c6fc0c9b4a
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorPersonalDictionary.dtd
@@ -0,0 +1,20 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Προσωπικό λεξικό">
+
+<!ENTITY wordEditField.label "Νέα λέξη:">
+<!ENTITY wordEditField.accessKey "Ν">
+<!ENTITY AddButton.label "Προσθήκη">
+<!ENTITY AddButton.accessKey "θ">
+<!ENTITY DictionaryList.label "Λέξεις στο λεξικό:">
+<!ENTITY DictionaryList.accessKey "Λ">
+<!ENTITY ReplaceButton.label "Αντικατάσταση">
+<!ENTITY ReplaceButton.accessKey "κ">
+<!ENTITY RemoveButton.label "Αφαίρεση">
+<!ENTITY RemoveButton.accessKey "φ">
+
+<!ENTITY CloseButton.label "Κλείσιμο">
+<!ENTITY CloseButton.accessKey "Κ">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorPublish.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorPublish.dtd
new file mode 100644
index 0000000000..1944189f11
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorPublish.dtd
@@ -0,0 +1,65 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Δημοσίευση σελίδας">
+<!ENTITY windowTitleSettings.label "Ρυθμίσεις δημοσίευσης">
+<!ENTITY publishTab.label "Δημοσίευση">
+<!ENTITY settingsTab.label "Ρυθμίσεις">
+<!ENTITY publishButton.label "Δημοσίευση">
+
+<!-- Publish Tab Panel -->
+<!ENTITY siteList.label "Όνομα ιστοσελίδας:">
+<!ENTITY siteList.accesskey "σ">
+<!ENTITY siteList.tooltip "Επιλέξτε τη σελίδα που θέλετε να δημοσιεύσετε">
+<!ENTITY newSiteButton.label "Νέα διεύθυνση">
+<!ENTITY newSiteButton.accesskey "Ν">
+<!ENTITY docDirList.label "Υποκατάλογος σελίδας για την ιστοσελίδα:">
+<!ENTITY docDirList.accesskey "π">
+<!ENTITY docDirList.tooltip "Επιλέξτε ή εισάγετε το όνομα για τον απομακρυσμένο υποκατάλογο για αυτή τη σελίδα">
+<!ENTITY publishImgCheckbox.label "Να περιέχονται εικόνες και άλλα αρχεία">
+<!ENTITY publishImgCheckbox.accesskey "χ">
+<!ENTITY publishImgCheckbox.tooltip "Δημοσίευση εικόνων ή άλλων αρχείων που συνδέονται με τη σελίδα.">
+<!ENTITY sameLocationRadio.label "Να χρησιμοποιηθεί η ίδια τοποθεσία σαν σελίδα">
+<!ENTITY sameLocationRadio.accesskey "θ">
+<!ENTITY sameLocationRadio.tooltip "Δημοσίευση αρχείων στην ίδια τοποθεσία με τη σελίδα.">
+<!ENTITY useSubdirRadio.label "Χρήση του υποκαταλόγου αυτής της ιστοδιεύθυνσης:">
+<!ENTITY useSubdirRadio.accesskey "κ">
+<!ENTITY useSubdirRadio.tooltip "Δημοσίευση αρχείων στον επιλεγμένο απομακρυσμένο υποκατάλογο">
+<!ENTITY otherDirList.tooltip "Επιλέξτε ή εισάγετε το όνομα για τον απομακρυσμένο υποκατάλογο όπου θα δημοσιευθούν τα αρχεία">
+<!ENTITY pageTitle.label "Όνομα σελίδας:">
+<!ENTITY pageTitle.accesskey "μ">
+<!ENTITY pageTitle.tooltip "Εισάγετε ένα τίτλο για να ονομάσετε τη σελίδα στο παράθυρο και τους σελιδοδείκτες.">
+<!ENTITY pageTitleExample.label "π.χ.: &quot;Η σελίδα μου&quot;">
+<!ENTITY filename.label "Όνομα αρχείου:">
+<!ENTITY filename.accesskey "χ">
+<!ENTITY filename.tooltip "Εισάγετε ένα όνομα για αυτό το αρχείο συμπεριλαμβάνοντας και το '.html' για την ιστοσελίδα">
+<!ENTITY filenameExample.label "π.χ.: &quot;ησελίδαμου.html&quot;">
+<!ENTITY setDefaultButton.label "Ορισμός ως προεπιλογή">
+<!ENTITY setDefaultButton.accesskey "π">
+<!ENTITY removeButton.label "Αφαίρεση ιστοσελίδας">
+<!ENTITY removeButton.accesskey "Α">
+
+<!-- Settings Tab Panel -->
+<!ENTITY publishSites.label "Ιστοδιευθύνσεις δημοσίευσης">
+<!ENTITY serverInfo.label "Πληροφορίες διακομιστή ">
+<!ENTITY loginInfo.label "Πληροφορίες διαπίστευσης">
+<!ENTITY siteName.label "Όνομα ιστοσελίδας:">
+<!ENTITY siteName.accesskey "ε">
+<!ENTITY siteName.tooltip "Ένα όνομα που γνωστοποιεί την προς δημοσίευση σελίδα (e.g.: 'MySite')">
+<!ENTITY siteUrl.label "Τοποθεσία δημοσίευσης (π.χ.: 'ftp://ftp.myisp.com/myusername'):">
+<!ENTITY siteUrl.accesskey "δ">
+<!ENTITY siteUrl.tooltip "Η διεύθυνση FTP:// ή HTTP:// που παρέχεται από τον ISP σας ή την υπηρεσία φιλοξενίας σελίδων.">
+<!ENTITY browseUrl.label "Διεύθυνση HTTP της αρχικής σας σελίδας (π.χ.: 'http://www.myisp.com/myusername'):">
+<!ENTITY browseUrl.accesskey "χ">
+<!ENTITY browseUrl.tooltip "Η διεύθυνση HTTP:// του αρχικού καταλόγου (μην συμπεριλάβετε το όνομα αρχείου)">
+<!ENTITY username.label "Όνομα χρήστη:">
+<!ENTITY username.accesskey "μ">
+<!ENTITY username.tooltip "Το όνομα χρήστη με το οποίο συνδέεστε με τον ISP σας ή την υπηρεσία φιλοξενίας ιστοσελίδων">
+<!ENTITY password.label "Κωδικός πρόσβασης:">
+<!ENTITY password.accesskey "δ">
+<!ENTITY password.tooltip "Τον κωδικό που σχετίζεται με το όνομα χρήστη">
+<!ENTITY savePassword.label "Αποθήκευση κωδικού πρόσβασης">
+<!ENTITY savePassword.accesskey "σ">
+<!ENTITY savePassword.tooltip "Επιλέξτε αυτό για την ασφαλή αποθήκευση του κωδικού σας με τη χρήση της διαχείρισης κωδικών.">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorPublishProgress.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorPublishProgress.dtd
new file mode 100644
index 0000000000..8581ddb538
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorPublishProgress.dtd
@@ -0,0 +1,16 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY siteUrl.label " URL ιστοσελίδας:">
+<!ENTITY docSubdir.label "Υποκατάλογος σελίδας...">
+<!ENTITY otherSubdir.label "Υποκατάλογος εικόνας...">
+
+<!ENTITY status.label "Δημοσίευση…">
+<!ENTITY fileList.label "Κατάσταση δημοσίευσης">
+<!ENTITY succeeded.label "Επιτυχία">
+<!ENTITY failed.label "Αποτυχία">
+
+<!ENTITY keepOpen "Διατήρηση του παρόντος παραθύρου μετά την ολοκλήρωση της δημοσίευσης.">
+<!ENTITY closeButton.label "Κλείσιμο">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorReplace.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorReplace.dtd
new file mode 100644
index 0000000000..8bcbe125ba
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorReplace.dtd
@@ -0,0 +1,27 @@
+<!-- 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/. -->
+
+<!-- extracted from EdReplace.xul -->
+
+<!ENTITY replaceDialog.title "Εύρεση και αντικατάσταση">
+<!ENTITY findField.label "Εύρεση του κειμένου:">
+<!ENTITY findField.accesskey "κ">
+<!ENTITY replaceField.label "Αντικατάσταση με:">
+<!ENTITY replaceField.accesskey "κ">
+<!ENTITY caseSensitiveCheckbox.label "Ταίριασμα πεζών/κεφαλαίων">
+<!ENTITY caseSensitiveCheckbox.accesskey "Τ">
+<!ENTITY wrapCheckbox.label "Αναδίπλωση γύρω">
+<!ENTITY wrapCheckbox.accesskey "δ">
+<!ENTITY backwardsCheckbox.label "Αναζήτηση προς τα πίσω">
+<!ENTITY backwardsCheckbox.accesskey "π">
+<!ENTITY findNextButton.label "Εύρεση επόμενου">
+<!ENTITY findNextButton.accesskey "π">
+<!ENTITY replaceButton.label "Αντικατάσταση">
+<!ENTITY replaceButton.accesskey "Α">
+<!ENTITY replaceAndFindButton.label "Εύρεση και αντικατάσταση">
+<!ENTITY replaceAndFindButton.accesskey "κ">
+<!ENTITY replaceAllButton.label "Αντικατάσταση όλων">
+<!ENTITY replaceAllButton.accesskey "λ">
+<!ENTITY closeButton.label "Κλείσιμο">
+<!ENTITY closeButton.accesskey "Κ">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorSaveAsCharset.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorSaveAsCharset.dtd
new file mode 100644
index 0000000000..49fd5a2f2c
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorSaveAsCharset.dtd
@@ -0,0 +1,17 @@
+<!-- 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/. -->
+
+<!-- These strings are generic to all or most of the editor's dialogs. -->
+
+<!-- This button is for the progressive disclosure of additional editing functionality -->
+
+<!-- These strings are for use specifically in the editor's link dialog. -->
+<!ENTITY windowTitle2.label "Αποθήκευση και αλλαγή κωδικοποίησης κειμένου">
+<!ENTITY documentTitleTitle.label "Τίτλος σελίδας">
+<!ENTITY documentCharsetTitle2.label "Κωδικοποίηση κειμένου">
+<!ENTITY documentCharsetDesc2.label "Επιλέξτε την κωδικοποίηση κειμένου που θέλετε να αποθηκεύσετε το έγγραφο:">
+<!ENTITY documentExportToText.label "Εξαγωγή σε κείμενο">
+
+
+
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorSelectProperties.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorSelectProperties.dtd
new file mode 100644
index 0000000000..e809564c27
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorSelectProperties.dtd
@@ -0,0 +1,48 @@
+<!-- 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 windowTitle.label "Ιδιότητες λίστας επιλογής">
+
+<!ENTITY Select.label "Λίστα επιλογής">
+<!ENTITY SelectName.label "Όνομα λίστας:">
+<!ENTITY SelectName.accesskey "λ">
+<!ENTITY SelectSize.label "Ύψος:">
+<!ENTITY SelectSize.accesskey "ψ">
+<!ENTITY SelectMultiple.label "Πολλαπλή επιλογή">
+<!ENTITY SelectMultiple.accesskey "λ">
+<!ENTITY SelectDisabled.label "Απενεργοποιημένο">
+<!ENTITY SelectDisabled.accesskey "ε">
+<!ENTITY SelectTabIndex.label "Ευρετήριο καρτέλας:">
+<!ENTITY SelectTabIndex.accesskey "σ">
+
+<!ENTITY OptGroup.label "Ομάδα επιλογής">
+<!ENTITY OptGroupLabel.label "Ετικέτα:">
+<!ENTITY OptGroupLabel.accesskey "τ">
+<!ENTITY OptGroupDisabled.label "Απενεργοποιημένο">
+<!ENTITY OptGroupDisabled.accesskey "π">
+
+<!ENTITY Option.label "Επιλογή">
+<!ENTITY OptionText.label "Κείμενο:">
+<!ENTITY OptionText.accesskey "μ">
+<!ENTITY OptionValue.label "Τιμή:">
+<!ENTITY OptionValue.accesskey "Τ">
+<!ENTITY OptionSelected.label "Αρχικά επιλεγμένο">
+<!ENTITY OptionSelected.accesskey "λ">
+<!ENTITY OptionDisabled.label "Απενεργοποιημένο">
+<!ENTITY OptionDisabled.accesskey "γ">
+
+<!ENTITY TextHeader.label "Κείμενο">
+<!ENTITY ValueHeader.label "Τιμή">
+<!ENTITY SelectedHeader.label "Επιλεγμένο">
+
+<!ENTITY AddOption.label "Προσθήκη επιλογής">
+<!ENTITY AddOption.accesskey "θ">
+<!ENTITY AddOptGroup.label "Προσθήκη ομάδας">
+<!ENTITY AddOptGroup.accesskey "μ">
+<!ENTITY RemoveElement.label "Αφαίρεση">
+<!ENTITY RemoveElement.accesskey "ρ">
+<!ENTITY MoveElementUp.label "Μετακίνηση πάνω">
+<!ENTITY MoveElementUp.accesskey "π">
+<!ENTITY MoveElementDown.label "Μετακίνηση κάτω">
+<!ENTITY MoveElementDown.accesskey "κ">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorSnapToGrid.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorSnapToGrid.dtd
new file mode 100644
index 0000000000..9856b5b062
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorSnapToGrid.dtd
@@ -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/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Προσκόλληση στο πλέγμα">
+
+<!ENTITY enableSnapToGrid.label "ενεργοποίηση προσκόλλησης στο πλέγμα">
+<!ENTITY enableSnapToGrid.accessKey "ε">
+
+<!ENTITY sizeEditField.label "Μέγεθος:">
+<!ENTITY sizeEditField.accessKey "θ">
+
+<!ENTITY pixelsLabel.value "εικονοστοιχεία">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorSpellCheck.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorSpellCheck.dtd
new file mode 100644
index 0000000000..b9b059218e
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorSpellCheck.dtd
@@ -0,0 +1,38 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Ορθογραφικός έλεγχος">
+
+<!ENTITY misspelledWord.label "Λάθος λέξη:">
+<!ENTITY wordEditField.label "Αντικατάσταση με:">
+<!ENTITY wordEditField.accessKey "κ">
+<!ENTITY checkwordButton.label "Έλεγχος λέξης">
+<!ENTITY checkwordButton.accessKey "γ">
+<!ENTITY suggestions.label "Προτάσεις:">
+<!ENTITY suggestions.accessKey "τ">
+<!ENTITY ignoreButton.label "Παράβλεψη">
+<!ENTITY ignoreButton.accessKey "β">
+<!ENTITY ignoreAllButton.label "Παράβλεψη όλων">
+<!ENTITY ignoreAllButton.accessKey "λ">
+<!ENTITY replaceButton.label "Αντικατάσταση">
+<!ENTITY replaceButton.accessKey "Α">
+<!ENTITY replaceAllButton.label "Αντικατάσταση όλων">
+<!ENTITY replaceAllButton.accessKey "ω">
+<!ENTITY stopButton.label "Διακοπή">
+<!ENTITY stopButton.accessKey "κ">
+<!ENTITY userDictionary.label "Προσωπικό λεξικό:">
+<!ENTITY moreDictionaries.label "Λήψη περισσότερων λεξικών…">
+<!ENTITY addToUserDictionaryButton.label "Προσθήκη λέξης">
+<!ENTITY addToUserDictionaryButton.accessKey "θ">
+<!ENTITY editUserDictionaryButton.label "Επεξεργασία…">
+<!ENTITY editUserDictionaryButton.accessKey "ξ">
+<!ENTITY recheckButton2.label "Επανέλεγχος κειμένου">
+<!ENTITY recheckButton2.accessKey "Ν">
+<!ENTITY closeButton.label "Κλείσιμο">
+<!ENTITY closeButton.accessKey "μ">
+<!ENTITY sendButton.label "Αποστολή">
+<!ENTITY sendButton.accessKey "σ">
+<!ENTITY languagePopup.label "Γλώσσα:">
+<!ENTITY languagePopup.accessKey "Γ">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorTableProperties.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorTableProperties.dtd
new file mode 100644
index 0000000000..ca66b86092
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorTableProperties.dtd
@@ -0,0 +1,75 @@
+<!-- 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 tableWindow.title "Ιδιότητες πίνακα">
+<!ENTITY applyButton.label "Εφαρμογή">
+<!ENTITY applyButton.accesskey "Ε">
+<!ENTITY closeButton.label "Κλείσιμο">
+<!ENTITY tableTab.label "Πίνακας">
+<!ENTITY cellTab.label "Κελιά">
+<!ENTITY tableRows.label "Σειρές:">
+<!ENTITY tableRows.accessKey "Σ">
+<!ENTITY tableColumns.label "Στήλες:">
+<!ENTITY tableColumns.accessKey "Τ">
+<!ENTITY tableHeight.label "Ύψος:">
+<!ENTITY tableHeight.accessKey "Ψ">
+<!ENTITY tableWidth.label "Πλάτος:">
+<!ENTITY tableWidth.accessKey "Π">
+<!ENTITY tableBorderSpacing.label "Πλαίσια και διάστιχο">
+<!ENTITY tableBorderWidth.label "Πλαίσιο:">
+<!ENTITY tableBorderWidth.accessKey "Λ">
+<!ENTITY tableSpacing.label "Διάστιχο:">
+<!ENTITY tableSpacing.accessKey "Δ">
+<!ENTITY tablePadding.label "Γέμισμα:">
+<!ENTITY tablePadding.accessKey "Γ">
+<!ENTITY tablePxBetwCells.label "εικονοστοιχεία μεταξύ κελιών">
+<!ENTITY tablePxBetwBrdrCellContent.label "εικονοστοιχεία μεταξύ πλαισίου κελιών και περιεχομένου">
+<!ENTITY tableAlignment.label "Στοίχιση πίνακα:">
+<!ENTITY tableAlignment.accessKey "Χ">
+<!ENTITY tableCaption.label "Λεζάντα:">
+<!ENTITY tableCaption.accessKey "Ζ">
+<!ENTITY tableCaptionAbove.label "Πάνω από τον πίνακα">
+<!ENTITY tableCaptionBelow.label "Κάτω από τον πίνακα">
+<!ENTITY tableCaptionLeft.label "Αριστερά του πίνακα">
+<!ENTITY tableCaptionRight.label "Δεξιά του πίνακα">
+<!ENTITY tableCaptionNone.label "Κανένα">
+<!ENTITY tableInheritColor.label "(Εμφάνιση χρώματος σελίδας)">
+
+<!ENTITY cellSelection.label "Επιλογή">
+<!ENTITY cellSelectCell.label "Κελί">
+<!ENTITY cellSelectRow.label "Γραμμή">
+<!ENTITY cellSelectColumn.label "Στήλη">
+<!ENTITY cellSelectNext.label "Επόμενο">
+<!ENTITY cellSelectNext.accessKey "Ν">
+<!ENTITY cellSelectPrevious.label "Προηγούμενο">
+<!ENTITY cellSelectPrevious.accessKey "Μ">
+<!ENTITY applyBeforeChange.label "Οι τρέχουσες αλλαγές θα εφαρμοστούν πριν την αλλαγή επιλογής.">
+<!ENTITY cellContentAlignment.label "Στοίχιση περιεχομένου">
+<!ENTITY cellHorizontal.label "Οριζόντια:">
+<!ENTITY cellHorizontal.accessKey "Ο">
+<!ENTITY cellVertical.label "Κάθετη:">
+<!ENTITY cellVertical.accessKey "Θ">
+<!ENTITY cellStyle.label "Στυλ κελιού:">
+<!ENTITY cellStyle.accessKey "Υ">
+<!ENTITY cellNormal.label "Κανονικό">
+<!ENTITY cellHeader.label "Κεφαλίδα">
+<!ENTITY cellTextWrap.label "Αναδίπλωση κειμένου:">
+<!ENTITY cellTextWrap.accessKey "Δ">
+<!ENTITY cellWrap.label "Αναδίπλωση">
+<!ENTITY cellNoWrap.label "Χωρίς αναδίπλωση">
+<!ENTITY cellAlignTop.label "Πάνω">
+<!ENTITY cellAlignMiddle.label "Μέση">
+<!ENTITY cellAlignBottom.label "Κάτω">
+<!ENTITY cellAlignJustify.label "Στοίχιση">
+<!ENTITY cellInheritColor.label "(Να φαίνεται το χρώμα του πίνακα)">
+<!ENTITY cellUseCheckboxHelp.label "Xρήση κουμπιών επιλογής για να ρυθμίσετε ποιες ιδιότητες θα εφαρμοστούν σε όλα τα επιλεγμένα κελιά">
+
+<!-- Used in both Table and Cell panels -->
+<!ENTITY size.label "Μέγεθος">
+<!ENTITY pixels.label "εικονοστοιχεία">
+<!ENTITY backgroundColor.label "Χρώμα παρασκηνίου:">
+<!ENTITY backgroundColor.accessKey "Χ">
+<!ENTITY AlignLeft.label "Αριστερά">
+<!ENTITY AlignCenter.label "Κέντρο">
+<!ENTITY AlignRight.label "Δεξιά">
diff --git a/l10n-el/editor/ui/chrome/dialogs/EditorTextAreaProperties.dtd b/l10n-el/editor/ui/chrome/dialogs/EditorTextAreaProperties.dtd
new file mode 100644
index 0000000000..e049ecda57
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/dialogs/EditorTextAreaProperties.dtd
@@ -0,0 +1,33 @@
+<!-- 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 windowTitle.label "Ιδιότητες πεδίου κειμένου">
+
+<!ENTITY Settings.label "Ρυθμίσεις">
+
+<!ENTITY TextAreaName.label "Όνομα πεδίου:">
+<!ENTITY TextAreaName.accessKey "δ">
+<!ENTITY TextAreaRows.label "Γραμμές:">
+<!ENTITY TextAreaRows.accessKey "μ">
+<!ENTITY TextAreaCols.label "Στήλες:">
+<!ENTITY TextAreaCols.accessKey "τ">
+<!ENTITY TextAreaReadOnly.label "Μόνο για ανάγνωση">
+<!ENTITY TextAreaReadOnly.accessKey "ν">
+<!ENTITY TextAreaDisabled.label "Απενεργοποιημένο">
+<!ENTITY TextAreaDisabled.accessKey "π">
+<!ENTITY TextAreaTabIndex.label "Ευρετήριο καρτέλας:">
+<!ENTITY TextAreaTabIndex.accessKey "λ">
+<!ENTITY TextAreaAccessKey.label "Πλήκτρο συντόμευσης:">
+<!ENTITY TextAreaAccessKey.accessKey "β">
+<!ENTITY InitialText.label "Αρχικό κείμενο:">
+<!ENTITY InitialText.accessKey "χ">
+
+<!ENTITY TextAreaWrap.label "Κατάσταση αναδίπλωσης:">
+<!ENTITY TextAreaWrap.accessKey "δ">
+<!ENTITY WrapDefault.value "Προεπιλογή">
+<!ENTITY WrapOff.value "Ανενεργό">
+<!ENTITY WrapHard.value "Σκληρό">
+<!ENTITY WrapSoft.value "Μαλακό">
+<!ENTITY WrapPhysical.value "Φυσικό">
+<!ENTITY WrapVirtual.value "Εικονικό">
diff --git a/l10n-el/editor/ui/chrome/region/region.properties b/l10n-el/editor/ui/chrome/region/region.properties
new file mode 100644
index 0000000000..fb6fac676e
--- /dev/null
+++ b/l10n-el/editor/ui/chrome/region/region.properties
@@ -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/.
+
+#
+# editor.js
+# editor.properties
+editor.throbber.url=http://www.seamonkey-project.org/
diff --git a/l10n-el/extensions/spellcheck/hunspell/README.txt b/l10n-el/extensions/spellcheck/hunspell/README.txt
new file mode 100644
index 0000000000..cc7d5341bf
--- /dev/null
+++ b/l10n-el/extensions/spellcheck/hunspell/README.txt
@@ -0,0 +1,59 @@
+Αυτό το λεξικό διανέμεται μe την τριπλή αδεια χρήσης MPL 1.1/GPL 2.0/LGPL 2.1.
+
+***** BEGIN LICENSE BLOCK *****
+Version: MPL 1.1/GPL 2.0/LGPL 2.1
+
+The contents of this file are subject to the Mozilla Public License Version
+1.1 (the "License"); you may not use this file except in compliance with
+the License. You may obtain a copy of the License at
+http://www.mozilla.org/MPL/
+
+Software distributed under the License is distributed on an "AS IS" basis,
+WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+for the specific language governing rights and limitations under the
+License.
+
+The Original Code is http://ispell.source.gr , http://elspell.math.upatras.gr/
+The Initial Developer of the Original Code is
+Evripidis Papakostas, Steve Stavropulos
+Portions created by the Initial Developer are Copyright (C) 2007
+the Initial Developer. All Rights Reserved.
+
+Contributor(s):
+
+Alternatively, the contents of this file may be used under the terms of
+either the GNU General Public License Version 2 or later (the "GPL"), or
+the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+in which case the provisions of the GPL or the LGPL are applicable instead
+of those above. If you wish to allow use of your version of this file only
+under the terms of either the GPL or the LGPL, and not to allow others to
+use your version of this file under the terms of the MPL, indicate your
+decision by deleting the provisions above and replace them with the notice
+and other provisions required by the GPL or the LGPL. If you do not delete
+the provisions above, a recipient may use your version of this file under
+the terms of any one of the MPL, the GPL or the LGPL.
+
+***** END LICENSE BLOCK *****
+
+
+Ευχαριστίες:
+Ευχαριστώ τους (steve):
+
+ * Τον Ευριπίδη Παπακώστα που ξεκίνησε το project και το έφερε σε ένα απίστευτα καλό σημείο. Θερμές ευχαριστίες!
+ * Το εργαστήριο ηλεκτρονικών υπολογιστών του Μαθηματικού τμήματος του Πανεπιστημίου της Πάτρας που τώρα πια στεγάζει το project.
+
+Ευχαριστώ τους (evris (o steve προσυπογράφει)):
+
+ * Σερασκέρη και Μήταλα καθώς και στον κ. Διομήδη Σπινέλη (επίβλεψη της εργασίας τους, αποστολή λέξεων για εμπλουτισμό του λεξιλογίου), που ξεκίνησαν την προσπάθεια του ispell, και που στο δικό τους affix και dictionary βασιστήκαμε.
+ * Παναγιώτη Τσακίρη, που εμπλούτισε το λεξικό και μας βοήθησε/ξεσήκωσε στο να πάρουμε μπροστά.
+ * Παναγιώτη Λουρίδα που έστειλε λέξεις.
+ * Παναγιώτη Βρυώνη (EEEA vrypan) και Βούλα Σανιδά (EEEA voulariba) για την βοήθεια τους στην αλλαγή των affix files κλπ από ispell σε OpenOffice format.
+ * Τον Kevin Hendricks (ο υπεύθυνος για τα του MySpell, OpenOffice spellchecker) για την συνεργασία και το χρόνο του.
+ * Τον Γιώργο Ευσταθίου για την συνεισφορά του σε νέες λέξεις για το λεξικό.
+ * Τον Γιώργο Ζαφόλια (EEEA mpoulis) για το internetικό μάζεμα λιστών λέξεων από sites.
+ * Τον xxx (πολλαπλές ευχαριστίες) για τις συνεισφορές του τόσο σε λέξεις, ορθογραφικές διορθώσεις, όσο και στα της αυτόματης παραγωγής κλίσεων επιθέτων και ουσιαστικών για τον εμπλουτισμό των λεξικών και (πάλι και πάλι και πάλι) την voulariba που τα τσέκαρε και τα ενσωμάτωσε.
+ * Τον Μιχάλη Καμπριάνη (EEEA mkab) για το ξελάσπωμα στο (άγνωστο για μας) θέμα της perl.
+ * Τον Παναγιώτη Πάκο για τα κλιτικά παραδείγματα, τα γκρουπαρίσματα ομοειδών ουσιαστικών, ρημάτων κλπ, για τις οδηγίες του για να φτιάξουμε αυτόματα scripts που να κλίνουν λέξεις, για τα χειροκίνητα ξεσκαρταρίσματά του (μια που τα scripts δεν είναι πάντα τέλεια)
+ * Τον steve για το src.rpm του, που λύνει προβλήματα εγκατάστασής του σε συστήματα διαφορετικά από το δικό μου, για τον καθαρισμό του Makefile, του SPEC κλπ. Επίσης ο steve είναι ο άνθρωπος που κρύβεται πίσω από την ιδέα και υλοποίηση του greeklish spellchecker module και της greeklish2gr spellchecking διαδικασίας καθώς και αυτός που έφτιαξε το greek.kbd για τον εντοπισμό των συχνότερων λαθών που οφείλονται σε αναγραμματισμούς.
+ * Τέλος την WISE (EEEA papas) που μας έδινε χώρο, ετοίμαζε τις σελίδες, διέθετε το bandwidth κλπ κλπ για να στεγάζεται αυτή εδώ η προσπάθεια.
+
diff --git a/l10n-el/extensions/spellcheck/hunspell/el.aff b/l10n-el/extensions/spellcheck/hunspell/el.aff
new file mode 100644
index 0000000000..42d9c630c6
--- /dev/null
+++ b/l10n-el/extensions/spellcheck/hunspell/el.aff
@@ -0,0 +1,820 @@
+# el_GR.aff
+# greek affix file
+# for MySpell (pspell)
+# GPL
+#
+#
+# LOG etc:
+# --------
+# Minor errors detected by Kevin Hendricks <kevin.hendricks@sympatico.ca>
+# and corrected by me 08/06/02 (evris)
+#
+# Fix the TRY order to be more useful. Added character mappings so the vowels
+# that have the same pronunciation be closely related to each other. Added a
+# replacement table to better describe the phonetic rules. 13/05/2004 (steve)
+#
+# Added 59 REP rules and one more letter for the TRY (patch by Nick Demou)
+#
+# Steve Stavropoulos <steve@math.upatras.gr> 01/05/2004
+#
+# Based on an older job :
+# Papakostas Evripidis evris@source.gr ep@rocketmail.com 27/01/02
+# Vryonis Panayotis vrypan@yassou.net 27/01/02
+#
+# Based on an older job :
+# greek.aff file
+# for ispell
+# Papakostas Evripidis evris@source.gr ep@rocketmail.com 1999
+#
+# Based on an older job :
+# ellhnika.aff for Greek language by and
+# , ,24-9-97
+
+SET ISO8859-7
+# You are likely to forget the accent, so accented characters come first. If
+# you don't forget the accent, this order won't do any harm because it is higly
+# unlikely for a word that differs in one accented char plus some other mistake
+# to pop up in the possible suggestions (there has to be a closer match granted
+# that the word you are looking for exists).
+TRY
+
+MAP 5
+MAP
+MAP
+MAP
+MAP
+MAP
+
+# Do we have to put the accented characters in here or the MAP above is enough?
+# ANSWER: Looks like it is not! Maybe the map is only useful for the
+# suggestion order...
+#
+# Because of the automatic generation of the following REP there are some
+# combinations of letters that the greek language never uses, but I don't
+# think they will do any harm.
+REP 523
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+REP
+
+
+# prefix rules
+
+
+PFX A Y 1
+PFX A 0 . # >
+
+PFX B Y 1
+PFX B 0 . # >
+
+PFX C Y 1
+PFX C 0 . # >
+
+PFX D Y 1
+PFX D 0 . # >
+
+PFX E Y 1
+PFX E 0 . # >
+
+
+# suffix rules
+
+SFX F Y 4
+SFX F . # >
+SFX F . # >
+SFX F . # >
+SFX F . # >
+
+SFX G Y 7
+SFX G . # >
+SFX G 0 # >
+SFX G . # >
+SFX G . # >
+SFX G . # >
+SFX G . # >
+SFX G . # >
+
+SFX H Y 3
+SFX H 0 [] # > >
+SFX H . # >
+SFX H . # # >
+
+SFX I Y 5
+SFX I . # >
+SFX I . # >
+SFX I . # >
+SFX I . # >
+SFX I . # >
+
+SFX J Y 5
+SFX J . # >
+SFX J . # >
+SFX J . # >
+SFX J . # >
+SFX J . # >
+
+SFX K Y 4
+SFX K . # >
+SFX K . # >
+SFX K . # >
+SFX K 0 # >
+
+SFX L Y 5
+SFX L . # >
+SFX L . # >
+SFX L . # >
+SFX L . # >
+SFX L . # >
+
+SFX M Y 4
+SFX M . # >
+SFX M . # >
+SFX M . # >
+SFX M . # >
+
+SFX N Y 5
+SFX N . # >
+SFX N . # >
+SFX N . # >
+SFX N . # >
+SFX N . # >
+
+SFX O Y 5
+SFX O . # >
+SFX O . # >
+SFX O . # >
+SFX O . # >
+SFX O . # >
+
+SFX P Y 4
+SFX P . # >
+SFX P . # >
+SFX P . # >
+SFX P . # >
+
+SFX Q Y 5
+SFX Q . # >
+SFX Q . # >
+SFX Q . # >
+SFX Q . # >
+SFX Q . # >
+
+
+SFX R Y 4
+SFX R . # >
+SFX R . # >
+SFX R . # >
+SFX R . # >
+
+
+SFX S Y 4
+SFX S . # >
+SFX S . # >
+SFX S . # >
+SFX S . # >
+
+SFX T Y 4
+SFX T . # >
+SFX T . # >
+SFX T . # >
+SFX T . # >
+
+
+SFX U Y 4
+SFX U . # >
+SFX U . # >
+SFX U . # >
+SFX U . # >
+
+
+SFX V Y 5
+SFX V . # >
+SFX V . # >
+SFX V . # >
+SFX V . # >
+SFX V 0 # >
+
+SFX W Y 5
+SFX W . # >
+SFX W . # >
+SFX W . # >
+SFX W 0 # >
+SFX W 0 # >
+
+SFX X Y 5
+SFX X . # >
+SFX X . # >
+SFX X . # >
+SFX X . # >
+SFX X . # >
+
+SFX Y Y 4
+SFX Y . # >
+SFX Y . # >
+SFX Y . # >
+SFX Y . # >
+
+
+SFX Z Y 3
+SFX Z . # >
+SFX Z # >
+SFX Z # >
+
+SFX a Y 4
+SFX a . # >
+SFX a . # >
+SFX a . # >
+SFX a 0 # >
+
+
+SFX b Y 4
+SFX b . # >
+SFX b . # >
+SFX b # >
+SFX b 0 # >
+
+SFX c Y 3
+SFX c . # >
+SFX c . # >
+SFX c . # >
+
+SFX d Y 4
+SFX d . # >
+SFX d . # >
+SFX d 0 # >
+SFX d # >
+
+SFX e Y 4
+SFX e . # >
+SFX e . # >
+SFX e . # >
+SFX e . # >
+
+SFX f Y 3
+SFX f . # >
+SFX f . # >
+SFX f # >
+
+SFX g Y 4
+SFX g . # >
+SFX g . #
+SFX g . # >
+SFX g . # >
+
+SFX h Y 4
+SFX h . # >
+SFX h . # >
+SFX h . # >
+SFX h . # >
+
+SFX i Y 4
+SFX i . # >
+SFX i . # >
+SFX i . # >
+SFX i . # >
+
+SFX j Y 3
+SFX j . # >
+SFX j . # >
+SFX j . # >
+
+SFX k Y 3
+SFX k . # >
+SFX k . # >
+SFX k . # >
+
+SFX l Y 4
+SFX l . # >
+SFX l . # >
+SFX l . # >
+SFX l . # >
+
+SFX m Y 3
+SFX m . # >
+SFX m . # >
+SFX m . # >
+
+SFX n Y 3
+SFX n . # >
+SFX n . # >
+SFX n . # >
diff --git a/l10n-el/extensions/spellcheck/hunspell/el.dic b/l10n-el/extensions/spellcheck/hunspell/el.dic
new file mode 100644
index 0000000000..01d91f7f30
--- /dev/null
+++ b/l10n-el/extensions/spellcheck/hunspell/el.dic
@@ -0,0 +1,588558 @@
+588557
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/l10n-el/mail/all-l10n.js b/l10n-el/mail/all-l10n.js
new file mode 100644
index 0000000000..6e0520e894
--- /dev/null
+++ b/l10n-el/mail/all-l10n.js
@@ -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/.
+
+#filter substitution
+
+pref("general.useragent.locale", "@AB_CD@");
+pref("spellchecker.dictionary", "@AB_CD@");
diff --git a/l10n-el/mail/branding/thunderbird/brand.dtd b/l10n-el/mail/branding/thunderbird/brand.dtd
new file mode 100644
index 0000000000..7887a8a567
--- /dev/null
+++ b/l10n-el/mail/branding/thunderbird/brand.dtd
@@ -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/. -->
+<!ENTITY brandShortName "Thunderbird">
+<!ENTITY brandShorterName "Thunderbird">
+<!ENTITY brandFullName "Mozilla Thunderbird">
+<!-- LOCALIZATION NOTE (brandProductName):
+ This brand name can be used in messages where the product name needs to
+ remain unchanged across different versions (Daily, Beta, etc.). -->
+<!ENTITY brandProductName "Thunderbird">
+<!ENTITY vendorShortName "Mozilla">
+<!ENTITY trademarkInfo.part1 "Τα λογότυπα Mozilla Thunderbird και Thunderbird
+ είναι εμπορικά σήματα του Ιδρύματος Mozilla.">
diff --git a/l10n-el/mail/branding/thunderbird/brand.ftl b/l10n-el/mail/branding/thunderbird/brand.ftl
new file mode 100644
index 0000000000..52f2d38d59
--- /dev/null
+++ b/l10n-el/mail/branding/thunderbird/brand.ftl
@@ -0,0 +1,21 @@
+# 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/.
+
+
+## Thunderbird Brand
+##
+## Thunderbird must be treated as a brand, and kept in English.
+## It cannot be:
+## - Transliterated.
+## - Translated.
+##
+## Reference: https://www.mozilla.org/styleguide/communications/translation/
+
+-brand-shorter-name = Thunderbird
+-brand-short-name = Thunderbird
+-brand-full-name = Mozilla Thunderbird
+# This brand name can be used in messages where the product name needs to
+# remain unchanged across different versions (Daily, Beta, etc.).
+-brand-product-name = Thunderbird
+-vendor-short-name = Mozilla
diff --git a/l10n-el/mail/branding/thunderbird/brand.properties b/l10n-el/mail/branding/thunderbird/brand.properties
new file mode 100644
index 0000000000..9dd5011219
--- /dev/null
+++ b/l10n-el/mail/branding/thunderbird/brand.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/.
+brandShortName=Thunderbird
+brandShorterName=Thunderbird
+brandFullName=Mozilla Thunderbird
+vendorShortName=Mozilla
diff --git a/l10n-el/mail/chrome/communicator/utilityOverlay.dtd b/l10n-el/mail/chrome/communicator/utilityOverlay.dtd
new file mode 100644
index 0000000000..bcf6e325d9
--- /dev/null
+++ b/l10n-el/mail/chrome/communicator/utilityOverlay.dtd
@@ -0,0 +1,46 @@
+<!-- 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 : FILE This file contains the global menu items -->
+
+<!ENTITY fileMenu.label "Αρχείο">
+<!ENTITY fileMenu.accesskey "Α">
+<!ENTITY newMenu.label "Νέο">
+<!ENTITY newMenu.accesskey "Ν">
+
+<!ENTITY editMenu.label "Επεξεργασία">
+<!ENTITY editMenu.accesskey "Ε">
+<!ENTITY undoCmd.label "Αναίρεση">
+<!ENTITY undoCmd.accesskey "ρ">
+<!ENTITY redoCmd.label "Επανάληψη">
+<!ENTITY redoCmd.accesskey "Ε">
+<!ENTITY deleteCmd.label "Διαγραφή">
+<!ENTITY deleteCmd.accesskey "Δ">
+<!ENTITY preferencesCmd2.label "Επιλογές">
+<!ENTITY preferencesCmd2.accesskey "ο">
+<!ENTITY preferencesCmdUnix.label "Προτιμήσεις">
+<!ENTITY preferencesCmdUnix.accesskey "ρ">
+<!ENTITY customizeCmd.label "Προσαρμογή">
+<!ENTITY customizeCmd.accesskey "σ">
+
+<!ENTITY viewMenu.label "Προβολή">
+<!ENTITY viewMenu.accesskey "ρ">
+<!ENTITY viewToolbarsMenu.label "Γραμμές εργαλείων">
+<!ENTITY viewToolbarsMenu.accesskey "γ">
+<!ENTITY showTaskbarCmd.label "Γραμμή κατάστασης">
+<!ENTITY showTaskbarCmd.accesskey "σ">
+
+<!ENTITY closeCmd.label "Κλείσιμο">
+<!ENTITY closeCmd.key "W">
+<!ENTITY closeCmd.accesskey "Κ">
+
+<!ENTITY quitApplicationCmd.label "Έξοδος">
+<!ENTITY quitApplicationCmd.key "Q">
+<!ENTITY quitApplicationCmd.accesskey "ξ">
+
+<!ENTITY quitApplicationCmdUnix.label "Έξοδος">
+<!ENTITY quitApplicationCmdUnix.accesskey "Έ">
+
+<!ENTITY quitApplicationCmdMac.label "Κλείσιμο &brandShortName;">
+<!ENTITY quitApplicationCmdMac.accesskey "λ">
diff --git a/l10n-el/mail/chrome/messenger-mapi/mapi.properties b/l10n-el/mail/chrome/messenger-mapi/mapi.properties
new file mode 100644
index 0000000000..7b134487b3
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger-mapi/mapi.properties
@@ -0,0 +1,35 @@
+# 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/.
+
+# Mail Integration Dialog
+dialogTitle=%S
+dialogText=Θέλετε να χρησιμοποιήσετε το %S ως την προεπιλεγμένη εφαρμογή αλληλογραφίας;
+newsDialogText=Θέλετε να χρησιμοποιήσετε το %S ως την προεπιλεγμένη εφαρμογή συζητήσεων;
+feedDialogText=Θέλετε να χρησιμοποιήσετε το %S ως την προεπιλεγμένη εφαρμογή συλλογής αρχείων ροής (feeds);
+checkboxText=Να μην εμφανιστεί αυτός ο διάλογος ξανά
+setDefaultMail=Ο %S δεν είναι η προεπιλεγμένη εφαρμογή αλληλογραφίας. Θέλετε να τον ορίσετε ως τη προεπιλεγμένη εφαρμογή αλληλογραφίας;
+setDefaultNews=Ο %S δεν είναι η προεπιλεγμένη εφαρμογή συζητήσεων. Θέλετε να τον ορίσετε ως τη προεπιλεγμένη εφαρμογή συζητήσεων;
+setDefaultFeed=Ο %S δεν είναι η προεπιλεγμένη εφαρμογή συλλογής αρχείων ροής (feeds). Θέλετε να τον ορίσετε ως τη προεπιλεγμένη εφαρμογή συλλογής αρχείων ροής (feeds);
+alreadyDefaultMail=Ο %S είναι ήδη η προεπιλεγμένη εφαρμογή αλληλογραφίας.
+alreadyDefaultNews=Ο %S είναι ήδη η προεπιλεγμένη εφαρμογή συζητήσεων.
+alreadyDefaultFeed=Ο %S είναι ήδη η προεπιλεγμένη εφαρμογή συλλογής αρχείων ροής (feeds).
+
+# MAPI Messages
+loginText=Παρακαλώ εισάγετε το κωδικό σας για %S:
+loginTextwithName=Παρακαλώ εισάγετε το όνομα χρήστη και το κωδικό σας
+loginTitle=%S
+PasswordTitle=%S
+
+# MAPI Error Messages
+errorMessage=Ο %S δεν μπορεί να ορισθεί ως η προεπιλεγμένη εφαρμογή αλληλογραφίας επειδή δεν είναι δυνατή η ενημέρωση ενός κλειδιού στο μητρώο. Βεβαιωθείτε ότι έχετε δικαιώματα εγγραφής στο μητρώο και προσπαθήστε ξανά.
+errorMessageNews=%S δεν μπορεί να ορισθεί ως η προεπιλεγμένη εφαρμογή συζητήσεων επειδή δεν είναι δυνατή η ενημέρωση ενός κλειδιού στο μητρώο. Βεβαιωθείτε ότι έχετε δικαιώματα εγγραφής στο μητρώο και προσπαθήστε ξανά.
+errorMessageTitle=%S
+
+# MAPI Security Messages
+mapiBlindSendWarning=Κάποια άλλη εφαρμογή προσπαθεί να στείλει email μέσω του προφίλ σας. Θέλετε σίγουρα να στείλετε το email;
+mapiBlindSendDontShowAgain=Προειδοποποίηση κάθε φορά που άλλες εφαρμογές προσπαθούν να στείλουν μήνυμα από το προφίλ μου
+
+#Default Mail Display String
+# localization note, %S is the vendor name
+defaultMailDisplayTitle=%S
diff --git a/l10n-el/mail/chrome/messenger-newsblog/am-newsblog.dtd b/l10n-el/mail/chrome/messenger-newsblog/am-newsblog.dtd
new file mode 100644
index 0000000000..42429811ff
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger-newsblog/am-newsblog.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/. -->
+
+<!ENTITY biffAll.label "Ενεργοποίηση ενημερώσεων για όλες τις ροές">
+<!ENTITY biffAll.accesskey "Ε">
+
+<!ENTITY newFeedSettings.label "Προεπιλεγμένες ρυθμίσεις για ροές ειδήσεων">
+
+<!ENTITY manageSubscriptions.label "Διαχείριση συνδρομών…">
+<!ENTITY manageSubscriptions.accesskey "Δ">
+
+<!ENTITY feedWindowTitle.label "Βοηθός λογαριασμών ροής">
+<!ENTITY feeds.accountName "Blog &amp; ροές ειδήσεων">
diff --git a/l10n-el/mail/chrome/messenger-newsblog/feed-subscriptions.dtd b/l10n-el/mail/chrome/messenger-newsblog/feed-subscriptions.dtd
new file mode 100644
index 0000000000..53905b1372
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger-newsblog/feed-subscriptions.dtd
@@ -0,0 +1,55 @@
+<!-- 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/. -->
+
+<!-- Subscription Dialog -->
+<!ENTITY feedSubscriptions.label "Συνδρομές ροών">
+<!ENTITY learnMore.label "Μάθετε περισσότερα για τις ροές">
+
+<!ENTITY feedTitle.label "Τίτλος:">
+<!ENTITY feedTitle.accesskey "Τ">
+
+<!ENTITY feedLocation.label "URL ροής:">
+<!ENTITY feedLocation.accesskey "U">
+<!ENTITY feedLocation2.placeholder "Εισάγετε ένα έγκυρο URL ροής">
+<!ENTITY locationValidate.label "Επικύρωση">
+<!ENTITY validateText.label "Έλεγχος επαλήθευσης και ανάκτηση έγκυρου url.">
+
+<!ENTITY feedFolder.label "Αποθήκευση άρθρων σε:">
+<!ENTITY feedFolder.accesskey "Α">
+
+<!-- Account Settings and Subscription Dialog -->
+<!ENTITY biffStart.label "Έλεγχος για νέα άρθρα κάθε ">
+<!ENTITY biffStart.accesskey "χ">
+<!ENTITY biffMinutes.label "λεπτά">
+<!ENTITY biffMinutes.accesskey "λ">
+<!ENTITY biffDays.label "ημέρες">
+<!ENTITY biffDays.accesskey "η">
+<!ENTITY recommendedUnits.label "Ο εκδότης προτείνει:">
+
+<!ENTITY quickMode.label "Εμφάνιση σύνοψης άρθρου αντί για φόρτωση της ιστοσελίδας">
+<!ENTITY quickMode.accesskey "φ">
+
+<!ENTITY autotagEnable.label "Αυτόματη δημιουργία ετικετών από ονόματα &lt;κατηγοριών&gt; ροής">
+<!ENTITY autotagEnable.accesskey "τ">
+<!ENTITY autotagUsePrefix.label "Προσθήκη προθέματος στις ετικέτες:">
+<!ENTITY autotagUsePrefix.accesskey "π">
+<!ENTITY autoTagPrefix.placeholder "Εισάγετε πρόθεμα">
+
+<!-- Subscription Dialog -->
+<!ENTITY button.addFeed.label "Προσθήκη">
+<!ENTITY button.addFeed.accesskey "θ">
+<!ENTITY button.verifyFeed.label "Επαλήθευση">
+<!ENTITY button.verifyFeed.accesskey "Ε">
+<!ENTITY button.updateFeed.label "Ενημέρωση">
+<!ENTITY button.updateFeed.accesskey "Ε">
+<!ENTITY button.removeFeed.label "Αφαίρεση">
+<!ENTITY button.removeFeed.accesskey "ρ">
+<!ENTITY button.importOPML.label "Εισαγωγή">
+<!ENTITY button.importOPML.accesskey "ι">
+<!ENTITY button.exportOPML.label "Εξαγωγή">
+<!ENTITY button.exportOPML.accesskey "ξ">
+<!ENTITY button.exportOPML.tooltip "Εξαγωγή ροών με δομή φακέλου; κάντε ctrl κλικ ή ctrl enter για εξαγωγή ροών σε λίστα">
+
+<!ENTITY cmd.close.commandKey "w">
+<!ENTITY button.close.label "Κλείσιμο">
diff --git a/l10n-el/mail/chrome/messenger-newsblog/newsblog.properties b/l10n-el/mail/chrome/messenger-newsblog/newsblog.properties
new file mode 100644
index 0000000000..8931d05e00
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger-newsblog/newsblog.properties
@@ -0,0 +1,93 @@
+# 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/.
+
+subscribe-validating-feed=Επαλήθευση ροής…
+subscribe-cancelSubscription=Θέλετε σίγουρα να ακυρώσετε τη συνδρομή σας στην τρέχουσα ροή;
+subscribe-cancelSubscriptionTitle=Συνδρομή σε ροή…
+subscribe-feedAlreadySubscribed=Είστε ήδη συνδρομητές σε αυτό το αρχείο ροής.
+subscribe-errorOpeningFile=Αδυναμία ανοίγματος αρχείου.
+subscribe-feedAdded=Η ροή προστέθηκε.
+subscribe-feedUpdated=Η ροή ενημερώθηκε.
+subscribe-feedMoved=Η συνδρομή ροής μετακινήθηκε.
+subscribe-feedCopied=Η συνδρομή ροής αντιγράφηκε.
+subscribe-feedRemoved=Η συνδρομή στη ροή καταργήθηκε.
+subscribe-feedNotValid=Το URL ροής δεν είναι έγκυρη ροή.
+subscribe-feedVerified=Το URL ροής επαληθεύτηκε.
+subscribe-networkError=Το URL ροής δεν βρέθηκε. Παρακαλώ ελέγξτε το όνομα και δοκιμάστε ξανά.
+subscribe-noAuthError=Το URL ροής δεν είναι πιστοποιημένο.
+subscribe-loading=Φόρτωση, παρακαλώ περιμένετε…
+
+subscribe-OPMLImportTitle=Επιλογή αρχείου OPML για εισαγωγή
+## LOCALIZATION NOTE(subscribe-OPMLExportTitleList):
+## %S is the name of the feed account folder name.
+subscribe-OPMLExportTitleList=Εξαγωγή %S ως αρχείο OPML - Λίστα ροών
+## LOCALIZATION NOTE(subscribe-OPMLExportTitleStruct):
+## %S is the name of the feed account folder name.
+subscribe-OPMLExportTitleStruct=Εξαγωγή %S ως αρχείο OPML - Ροές με δομή φακέλου
+## LOCALIZATION NOTE(subscribe-OPMLExportFileDialogTitle):
+## %1$S is the brandShortName, %2$S is the name of the feed account folder name.
+subscribe-OPMLExportFileDialogTitle=Εξαγωγή %1$S OPML - %2$S
+## LOCALIZATION NOTE(subscribe-OPMLExportDefaultFileName):
+## %1$S is the brandShortName (Thunderbird for example), %2$S is the account name.
+## The default extension (.opml) is added here as it is not automatically appended in the file picker on MacOS.
+subscribe-OPMLExportDefaultFileName=Οι ροές%1$Sμου-%2$S.opml
+## LOCALIZATION NOTE(subscribe-OPMLImportInvalidFile): %S is the name of the OPML file the user tried to import.
+subscribe-OPMLImportInvalidFile=Το αρχείο %S δεν φαίνεται να είναι ένα έγκυρο αρχείο OPML.
+## LOCALIZATION NOTE(subscribe-OPMLImportFeedCount): Semi-colon list of plural forms.
+## See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+## #1 is the count of new imported entries.
+subscribe-OPMLImportFeedCount=Εισήχθη #1 νέα ροή.; Εισήχθησαν #1 νέες ροές.
+## LOCALIZATION NOTE(subscribe-OPMLImportUniqueFeeds): Semi-colon list of plural forms.
+## #1 is the count of new imported entries
+subscribe-OPMLImportUniqueFeeds=Εισήχθη #1 νέα ροή στην οποία δεν έχετε ήδη εγγραφεί;Εισήχθησαν #1 νέες ροές στις οποίες δεν έχετε ήδη εγγραφεί
+## LOCALIZATION NOTE(subscribe-OPMLImportFoundFeeds):
+## #1 is total number of elements found in the file
+subscribe-OPMLImportFoundFeeds=(από #1 καταχώρηση βρέθηκε);(από #1 συνολικές καταχωρήσεις βρέθηκαν)
+## LOCALIZATION NOTE(subscribe-OPMLImportStatus):
+## This is the concatenation of the two strings defined above to compose 1 sentence.
+## %1$S = subscribe-OPMLImportUniqueFeeds
+## %2$S = subscribe-OPMLImportFoundFeeds
+subscribe-OPMLImportStatus=%1$S %2$S.
+
+subscribe-OPMLExportOPMLFilesFilterText=Αρχεία OPML
+## LOCALIZATION NOTE(subscribe-OPMLExportDone): %S is the export file name.
+subscribe-OPMLExportDone=Οι ροές σε αυτό το λογαριασμό έχουν εξαχθεί στο %S.
+
+subscribe-confirmFeedDeletionTitle=Αφαίρεση ροής
+## LOCALIZATION NOTE(subscribe-confirmFeedDeletion): %S is the name of the feed the user wants to unsubscribe from.
+subscribe-confirmFeedDeletion=Θέλετε σίγουρα να ακυρώσετε τη συνδρομή σας στη ροή: \n %S;
+
+## LOCALIZATION NOTE(subscribe-gettingFeedItems):
+## - The first %S is the number of articles processed so far;
+## - The second %S is the total number of items
+subscribe-gettingFeedItems=Λήψη άρθρων ροής (%S από %S)…
+
+newsblog-noNewArticlesForFeed=Δεν υπάρχουν νέα άρθρα για αυτό το αρχείο ροής.
+## LOCALIZATION NOTE(newsblog-networkError): %S is the feed URL
+newsblog-networkError=Δεν είναι δυνατή η εύρεση του %S. Ελέγξτε το όνομα και προσπαθήστε ξανά.
+## LOCALIZATION NOTE(newsblog-feedNotValid): %S is the feed URL
+newsblog-feedNotValid=Το %S δεν είναι έγκυρο αρχείο ροής.
+## LOCALIZATION NOTE(newsblog-badCertError): %S is the feed URL host
+newsblog-badCertError=Το %S χρησιμοποιεί ένα μη έγκυρο ασφαλές πιστοποιητικό.
+## LOCALIZATION NOTE(newsblog-noAuthError): %S is the feed URL
+newsblog-noAuthError=Το %S δεν είναι πιστοποιημένο.
+newsblog-getNewMsgsCheck=Έλεγχος ροών για νέα στοιχεία…
+
+## LOCALIZATION NOTE(feeds-accountname): This string should be the same as feeds.accountName in am-newsblog.dtd
+feeds-accountname=Blog & ροές ειδήσεων
+
+## LOCALIZATION NOTE(externalAttachmentMsg): Content in the MIME part for external link attachments.
+externalAttachmentMsg=Αυτό το MIME συνημμένο είναι αποθηκευμένο ξεχωριστά από το μήνυμα.
+
+## Import wizard.
+ImportFeedsCreateNewListItem=* Νέος λογαριασμός *
+ImportFeedsNewAccount=Δημιουργία και εισαγωγή σε νέο λογαριασμό Ροών
+ImportFeedsExistingAccount=Εισαγωγή σε υπάρχον λογαριασμό Ροών
+## LOCALIZATION NOTE(ImportFeedsDone):
+## - The first %S is the import file name;
+## - The second %S is the value of either ImportFeedsNew or ImportFeedsExisting;
+## - The third %S is the feed account name.
+ImportFeedsNew=νέο
+ImportFeedsExisting=υπάρχον
+ImportFeedsDone=Η εισαγωγή συνδρομών ροών από το αρχείο %1$S στο λογαριασμό %2$S '%3$S' έχει ολοκληρωθεί.
diff --git a/l10n-el/mail/chrome/messenger-region/region.properties b/l10n-el/mail/chrome/messenger-region/region.properties
new file mode 100644
index 0000000000..6722955db4
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger-region/region.properties
@@ -0,0 +1,34 @@
+# 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/.
+
+# Search engine order (order displayed in the search bar dropdown)s
+browser.search.order.1=Bing
+browser.search.order.2=Yahoo
+browser.search.order.3=
+
+# To make mapit buttons to disappear in the addressbook, specify empty string. For example:
+# mail.addr_book.mapit_url.format=
+# The mail.addr_book.mapit_url.format should start with the URL of the mapping
+# service and then the query part with placeholders to be subsituted from values
+# from the addressbook contact's address.
+# Available placeholders are:
+# @A1 == address, part 1
+# @A2 == address, part 2
+# @CI == city
+# @ST == state
+# @ZI == zip code
+# @CO == country
+# Default map service:
+mail.addr_book.mapit_url.format=https://maps.google.com/maps?q=@A1%20@A2%20@CI%20@ST%20@ZI%20@CO
+# List of available map services (up to 5 can be defined here):
+mail.addr_book.mapit_url.1.name=Χάρτες Google
+mail.addr_book.mapit_url.1.format=https://maps.google.com/maps?q=@A1%20@A2%20@CI%20@ST%20@ZI%20@CO
+mail.addr_book.mapit_url.2.name=OpenStreetMap
+mail.addr_book.mapit_url.2.format=https://nominatim.openstreetmap.org/search.php?polygon=1&q=@A1%2C@A2%2C@CI%2C@ST%2C@ZI%2C@CO
+
+mailnews.messageid_browser.url=http://groups.google.com/search?as_umsgid=%mid
+
+# Recognize non-standard versions of "Re:" in subjects from localized versions of MS Outlook et al.
+# Specify a comma-separated list without spaces. For example: mailnews.localizedRe=AW,SV
+mailnews.localizedRe=
diff --git a/l10n-el/mail/chrome/messenger-smime/certFetchingStatus.dtd b/l10n-el/mail/chrome/messenger-smime/certFetchingStatus.dtd
new file mode 100644
index 0000000000..3075dfddfd
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger-smime/certFetchingStatus.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/. -->
+
+<!--LOCALIZATION NOTE shown while obtaining certificates from a directory -->
+
+<!ENTITY title.label "Λήψη πιστοποιητικών">
+<!ENTITY info.message "Αναζήτηση του καταλόγου για πιστοποιητικά παραληπτών. Μπορεί να διαρκέσει λίγα λεπτά.">
+<!ENTITY stop.label "Διακοπή αναζήτησης">
diff --git a/l10n-el/mail/chrome/messenger-smime/msgCompSMIMEOverlay.dtd b/l10n-el/mail/chrome/messenger-smime/msgCompSMIMEOverlay.dtd
new file mode 100644
index 0000000000..907fa9611f
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger-smime/msgCompSMIMEOverlay.dtd
@@ -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 msgCompSMIMEOverlay.dtd UI for s/mime hooks in message composition -->
+
+<!ENTITY menu_securityDoNotEncrypt.label "Χωρίς κρυπτογράφηση">
+<!ENTITY menu_securityDoNotEncrypt.accesskey "ω">
+
+<!-- not yet used
+<!ENTITY menu_securityEncryptOptional.label "Allow Encryption">
+<!ENTITY menu_securityEncryptOptional.accesskey "w">
+-->
+
+<!ENTITY menu_securityEncryptRequire2.label "Απαίτηση κρυπτογράφησης">
+<!ENTITY menu_securityEncryptRequire.accesskey "γ">
+
+<!ENTITY menu_securitySign.label "Ψηφιακή υπογραφή μηνύματος">
+<!ENTITY menu_securitySign.accesskey "Ψ">
+
+<!ENTITY menu_securityAttachMyKey.label "Επισύναψη δημόσιου κλειδιού">
+<!ENTITY menu_securityAttachMyKey.accesskey "Ε">
+
+<!ENTITY menu_securityTech.label "Τεχνολογία κρυπτογράφησης">
+<!ENTITY menu_securityTech.accesskey "Τ">
+
+<!ENTITY menu_techPGP.label "OpenPGP">
+<!ENTITY menu_techPGP.accesskey "O">
+<!ENTITY menu_techSMIME.label "S/MIME">
+<!ENTITY menu_techSMIME.accesskey "S">
+
+<!ENTITY menu_securityStatus.label "Προβολή πληροφοριών ασφάλειας">
+<!ENTITY menu_securityStatus.accesskey "λ">
+
+<!ENTITY securityButton.label "Ασφάλεια">
+<!ENTITY securityButton.tooltip "Προβολή ή αλλαγή ρυθμίσεων ασφαλείας.">
+
+<!ENTITY menu_viewSecurityStatus.label "Πληροφορίες ασφάλειας μηνύματος">
+<!ENTITY menu_viewSecurityStatus.accesskey "φ">
diff --git a/l10n-el/mail/chrome/messenger-smime/msgCompSecurityInfo.dtd b/l10n-el/mail/chrome/messenger-smime/msgCompSecurityInfo.dtd
new file mode 100644
index 0000000000..8a2b8e4368
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger-smime/msgCompSecurityInfo.dtd
@@ -0,0 +1,18 @@
+<!-- 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 msgCompSecurityInfo.dtd UI for viewing security status when composing a message -->
+
+<!ENTITY title.label "Ασφάλεια μηνύματος">
+<!ENTITY subject.plaintextWarning "Σημείωση: οι γραμμές θέματος των μηνυμάτων email δεν κρυπτογραφούνται ποτέ.">
+<!ENTITY status.heading "Το περιεχόμενο του μηνύματός σας θα αποσταλεί ως εξής:">
+<!ENTITY status.signed "Με ψηφιακή υπογραφή:">
+<!ENTITY status.encrypted "Κρυπτογραφημένο:">
+<!ENTITY status.certificates "Πιστοποιητικά:">
+<!ENTITY view.label "Προβολή">
+<!ENTITY view.accesskey "β">
+<!ENTITY tree.recipient "Παραλήπτης">
+<!ENTITY tree.status "Κατάσταση">
+<!ENTITY tree.issuedDate "Έκδοση">
+<!ENTITY tree.expiresDate "Λήξη">
diff --git a/l10n-el/mail/chrome/messenger-smime/msgCompSecurityInfo.properties b/l10n-el/mail/chrome/messenger-smime/msgCompSecurityInfo.properties
new file mode 100644
index 0000000000..91acaafea8
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger-smime/msgCompSecurityInfo.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/.
+
+StatusNotFound=Δεν βρέθηκε
+StatusValid=Έγκυρο
+StatusExpired=Έληξε
+StatusUntrusted=Μη έμπιστο
+StatusRevoked=Ανακλήθηκε
+StatusInvalid=Άκυρο
+StatusYes=Ναι
+StatusNo=Όχι
+StatusNotPossible=Μη δυνατό
diff --git a/l10n-el/mail/chrome/messenger-smime/msgReadSMIMEOverlay.dtd b/l10n-el/mail/chrome/messenger-smime/msgReadSMIMEOverlay.dtd
new file mode 100644
index 0000000000..3aec0e16f9
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger-smime/msgReadSMIMEOverlay.dtd
@@ -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/. -->
+
+<!--LOCALIZATION NOTE msgReadSMIMEOverlay.dtd UI for s/mime hooks in message reading -->
+
+<!ENTITY menu_securityStatus.label "Πληροφορίες ασφάλειας μηνύματος">
+<!ENTITY menu_securityStatus.accesskey "η">
diff --git a/l10n-el/mail/chrome/messenger-smime/msgReadSMIMEOverlay.properties b/l10n-el/mail/chrome/messenger-smime/msgReadSMIMEOverlay.properties
new file mode 100644
index 0000000000..757f161b43
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger-smime/msgReadSMIMEOverlay.properties
@@ -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/.
+
+ImapOnDemand=Το παρόν μήνυμα έχει υπογραφεί ψηφιακά αλλά δεν έχουν ληφθεί ακόμα όλα τα συνημμένα. Αυτό έχει σαν αποτέλεσμα να μην είναι δυνατή η επιβεβαίωση της υπογραφής. Πατήστε ΟΚ για να γίνει πλήρης λήψη του μηνύματος.
+#
+#NOTE To translater, anything between %..% and <..> should not be translated.
+# the former will be replaced by java script, and the latter is HTML formatting.
+#
+CantDecryptTitle=Ο %brand% δεν μπορεί να αποκωδικοποιήσει αυτό το μήνυμα
+CantDecryptBody=Ο αποστολέας κρυπτογράφησε το μήνυμα με την χρήση ενός από τα ψηφιακά πιστοποιητικά σας. Όμως ο %brand% δεν μπόρεσε να βρει αυτό το πιστοποιητικό και το αντίστοιχο ιδιωτικό κλειδί. <br> Πιθανές λύσεις: <br><ul><li>Αν έχετε μια smartcard, εισάγετε την τώρα. <li>Αν βρίσκεστε σε νέο μηχάνημα, ή αν χρησιμοποιείτε ένα νέο προφίλ του %brand%, θα χρειαστεί να ανακτήσετε το πιστοποιητικό και το ιδιωτικό κλειδί σας από ένα αντίγραφο ασφαλείας. Τα αντίγραφα ασφαλείας πιστοποιητικών συνήθως τελειώνουν σε ".p12".</ul>
diff --git a/l10n-el/mail/chrome/messenger-smime/msgReadSecurityInfo.dtd b/l10n-el/mail/chrome/messenger-smime/msgReadSecurityInfo.dtd
new file mode 100644
index 0000000000..64d070164a
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger-smime/msgReadSecurityInfo.dtd
@@ -0,0 +1,17 @@
+<!-- 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 msgReadSecurityInfo.dtd UI for viewing security status when reading a received message -->
+
+<!ENTITY status.label "Ασφάλεια μηνύματος">
+<!ENTITY signatureCert.label "Προβολή πιστοποιητικού υπογραφής">
+<!ENTITY encryptionCert.label "Προβολή πιστοποιητικού κρυπτογράφησης">
+
+<!ENTITY signer.name "Υπογράφηκε από:">
+<!ENTITY recipient.name "Κρυπτογραφήθηκε για:">
+<!ENTITY email.address "Διεύθυνση email:">
+<!ENTITY issuer.name "Πιστοποιητικό εκδόθηκε από:">
+
+<!-- LOCALIZATION NOTE(SMIME.label): This a name for a technical standard. You should not translate it, but if applicable, you may write it using localized characters. -->
+<!ENTITY SMIME.label "S/MIME">
diff --git a/l10n-el/mail/chrome/messenger-smime/msgSecurityInfo.properties b/l10n-el/mail/chrome/messenger-smime/msgSecurityInfo.properties
new file mode 100644
index 0000000000..15c97e873a
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger-smime/msgSecurityInfo.properties
@@ -0,0 +1,36 @@
+# 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/.
+
+## Signature Information strings
+SINoneLabel=Το μήνυμα δεν έχει καμία ψηφιακή υπογραφή.
+SINone=Αυτό το μήνυμα δεν περιέχει την ψηφιακή υπογραφή του αποστολέα. Η απουσία ψηφιακής υπογραφής σημαίνει ότι το μήνυμα μπορεί να έχει σταλεί από κάποιον που προσποιείται ότι έχει αυτή τη διεύθυνση e-mail. Επίσης, ενδέχεται να έχει αλλοιωθεί το μήνυμα κατά την μεταβίβαση στο δίκτυο. Ωστόσο, είναι μάλλον απίθανο να έχει συμβεί κάτι από αυτά τα δύο.
+SIValidLabel=Το μήνυμα είναι υπογεγραμμένο
+SIValid=Το μήνυμα περιέχει μια έγκυρη ψηφιακή υπογραφή. Το μήνυμα δεν έχει αλλοιωθεί μετά την αποστολή του.
+SIInvalidLabel=Η ψηφιακή υπογραφή δεν είναι έγκυρη
+SIInvalidHeader=Το μήνυμα περιέχει μια ψηφιακή υπογραφή αλλά η υπογραφή είναι άκυρη.
+SIContentAltered=Η υπογραφή δεν ταιριάζει με τα περιεχόμενα του μηνύματος. Φαίνεται ότι το μήνυμα έχει αλλοιωθεί μετά την υπογραφή του από τον αποστολέα. Δεν θα πρέπει να εμπιστευθείτε τα περιεχόμενα του μηνύματος μέχρι να επιβεβαιώσετε το περιεχόμενο του με τον αποστολέα.
+SIExpired=Το πιστοποιητικό που χρησιμοποιήθηκε για την κρυπτογράφηση του μηνύματος φαίνεται να έχει λήξει. Βεβαιωθείτε ότι η ώρα του υπολογιστή σας είναι ρυθμισμένη σωστά.
+SIRevoked=Η πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος έχει ανακληθεί. Δεν θα πρέπει να εμπιστευθείτε τα περιεχόμενα του μηνύματος μέχρι να επιβεβαιώσετε το περιεχόμενο του με τον αποστολέα.
+SINotYetValid=Το πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος δεν είναι ακόμα έγκυρο. Βεβαιωθείτε ότι το ρολόι του υπολογιστή σας είναι σωστά ρυθμισμένο.
+SIUnknownCA=Το πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος έχει εκδοθεί από μια άγνωστη αρχή πιστοποίησης.
+SIUntrustedCA=Το πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος έχει εκδοθεί από μια αρχή πιστοποίησης που δεν εμπιστεύεστε για την έκδοση τέτοιων πιστοποιητικών.
+SIExpiredCA=Το πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος έχει εκδοθεί από μια αρχή της οποίας έχει λήξει το πιστοποιητικό. Βεβαιωθείτε ότι το ρολόι του υπολογιστή σας είναι σωστά ρυθμισμένο.
+SIRevokedCA=Το πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος έχει εκδοθεί από μια αρχή της οποίας το πιστοποιητικό έχει ανακληθεί. Δεν θα πρέπει να εμπιστευθείτε τα περιεχόμενα του μηνύματος μέχρι να επιβεβαιώσετε το περιεχόμενο του με τον αποστολέα.
+SINotYetValidCA=Το πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος έχει εκδοθεί από μια αρχή της οποίας το πιστοποιητικό δεν είναι ακόμα έγκυρο. Βεβαιωθείτε ότι το ρολόι του υπολογιστή σας είναι σωστά ρυθμισμένο.
+SIInvalidCipher=Το μήνυμα έχει υπογραφεί με κρυπτογράφηση που δεν υποστηρίζεται από την παρούσα έκδοση του λογισμικού σας.
+SIClueless=Υπάρχουν άγνωστα προβλήματα με αυτήν την ψηφιακή υπογραφή. Δεν θα πρέπει να εμπιστευθείτε την εγκυρότητα του μηνύματος μέχρι να επιβεβαιώσετε τα περιεχόμενα του με τον αποστολέα.
+SIPartiallyValidLabel=Το μήνυμα είναι υπογεγραμμένο
+SIPartiallyValidHeader=Αν και η ψηφιακή υπογραφή είναι έγκυρη, δεν είναι σίγουρο αν ο αποστολέας και ο υπογράφων είναι το ίδιο πρόσωπο.
+SIHeaderMismatch=Η διεύθυνση e-mail στο πιστοποιητικό του υπογράφοντα είναι διαφορετική από τη διεύθυνση e-mail απ' όπου στάλθηκε το μήνυμα. Παρακαλώ κοιτάξτε τις λεπτομέρειες του πιστοποιητικού υπογραφής για να μάθετε ποιος υπέγραψε το μήνυμα.
+SICertWithoutAddress=Το πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος δεν περιέχει διεύθυνση email. Κοιτάξτε τις λεπτομέρειες του πιστοποιητικού για να μάθετε ποιος υπέγραψε το πιστοποιητικό.
+
+## Encryption Information strings
+EINoneLabel2=Το μήνυμα δεν είναι κρυπτογραφημένο
+EINone=Το μήνυμα δεν έχει κρυπτογραφηθεί πριν να σας σταλεί. Οι πληροφορίες που στέλνονται μέσω διαδικτύου χωρίς κρυπτογράφηση είναι απροστάτευτες στα αδιάκριτα μάτια τρίτων κατά τη μεταφορά.
+EIValidLabel=Κρυπτογραφημένο μήνυμα
+EIValid=Το μήνυμα έχει κρυπτογραφηθεί πριν να σας σταλεί. Η κρυπτογράφηση κάνει δύσκολη την ανάγνωση των πληροφοριών από αδιάκριτα μάτια τρίτων καθώς ταξιδεύουν στο διαδίκτυο.
+EIInvalidLabel=Το μήνυμα δεν μπορεί να αποκρυπτογραφηθεί
+EIInvalidHeader=Αυτό το μήνυμα κρυπτογραφήθηκε πριν να σταλεί σε σας, αλλά δεν μπορεί να αποκρυπτογραφηθεί.
+EIContentAltered=Το περιεχόμενο του μηνύματος φαίνεται να έχει αλλοιωθεί κατά τη μετάδοση.
+EIClueless=Υπάρχουν άγνωστα προβλήματα με αυτό το κρυπτογραφημένο μήνυμα.
diff --git a/l10n-el/mail/chrome/messenger/AccountManager.dtd b/l10n-el/mail/chrome/messenger/AccountManager.dtd
new file mode 100644
index 0000000000..815f966c64
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/AccountManager.dtd
@@ -0,0 +1,37 @@
+<!-- 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/. -->
+
+<!-- extracted from AccountManager.xhtml -->
+
+<!ENTITY accountManagerTitle.label "Ρυθμίσεις λογαριασμού">
+<!ENTITY accountManagerCloseButton.label "Κλείσιμο">
+
+<!ENTITY accountActionsButton.label "Ενέργειες λογαριασμού">
+<!ENTITY accountActionsButton.accesskey "ν">
+<!ENTITY addMailAccountButton.label "Προσθήκη λογαριασμού email…">
+<!ENTITY addMailAccountButton.accesskey "α">
+<!ENTITY addIMAccountButton.label "Προσθήκη λογαριασμού συνομιλίας…">
+<!ENTITY addIMAccountButton.accesskey "σ">
+<!ENTITY addFeedAccountButton.label "Προσθήκη λογαριασμού ροής…">
+<!ENTITY addFeedAccountButton.accesskey "ρ">
+<!ENTITY addOtherAccountButton.label "Προσθήκη άλλου λογαριασμού…">
+<!ENTITY addOtherAccountButton.accesskey "λ">
+<!ENTITY setDefaultButton.label "Ορισμός ως προεπιλογή">
+<!ENTITY setDefaultButton.accesskey "π">
+<!ENTITY removeButton.label "Αφαίρεση λογαριασμού">
+<!ENTITY removeButton.accesskey "Α">
+
+<!ENTITY addonsButton.label "Επεκτάσεις &amp; θέματα">
+
+<!-- AccountManager.xhtml -->
+<!-- LOCALIZATION NOTE : this is part of an inline-style attribute on the account
+ setting dialog, which specifies the width and height in em units of the dialog.
+ Localizers ONLY can increase these widths if they are having difficulty getting
+ panel content to fit.
+ 1ch = The width of the "0" (ZERO, U+0030) glyph for the current font.
+ 1em = The height of the font.
+ XUL/FE DEVELOPERS: DO NOT MODIFY THIS VALUE. It represents the correct size of
+ this window for en-US. -->
+<!ENTITY accountManager.size "width: 120ch; height: 55em;">
+<!ENTITY accountTree.width "width: 40ch;">
diff --git a/l10n-el/mail/chrome/messenger/AccountWizard.dtd b/l10n-el/mail/chrome/messenger/AccountWizard.dtd
new file mode 100644
index 0000000000..88b063a270
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/AccountWizard.dtd
@@ -0,0 +1,127 @@
+<!-- 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/. -->
+
+<!-- Entities for AccountWizard -->
+
+<!ENTITY windowTitle.label "Βοηθός λογαριασμών">
+<!ENTITY accountWizard.size "width: 55em; height: 37em;">
+
+<!-- Entities for Account Type page -->
+
+<!ENTITY accountSetupInfo2.label "Για να λαμβάνετε μηνύματα θα πρέπει πρώτα να ρυθμίσετε ένα λογαριασμό.">
+<!ENTITY accountTypeTitle.label "Ρύθμιση νέου λογαριασμού">
+<!ENTITY accountTypeDesc2.label "Αυτός ο βοηθός θα συλλέξει τις απαραίτητες πληροφορίες για τη ρύθμιση ενός λογαριασμού. Αν δεν ξέρετε τις απαιτούμενες πληροφορίες, επικοινωνήστε με το διαχειριστή του συστήματός σας ή με τον πάροχο υπηρεσιών διαδικτύου σας.">
+<!ENTITY accountTypeDirections.label "Επιλέξτε το είδος του λογαριασμού που θέλετε να εγκαταστήσετε:">
+<!ENTITY accountTypeMail.label "Λογαριασμός email">
+<!ENTITY accountTypeMail.accesskey "ρ">
+<!ENTITY accountTypeNews.label "Λογαριασμός ομάδας συζήτησης">
+<!ENTITY accountTypeNews.accesskey "δ">
+<!-- LOCALIZATION NOTE(accountTypeMovemail.label): do not translate 'Movemail' -->
+<!ENTITY accountTypeMovemail.label "Unix Mailspool (Movemail)">
+<!ENTITY accountTypeMovemail.accesskey "U">
+
+<!-- Entities for Identity page -->
+
+<!ENTITY identityTitle.label "Ταυτότητα">
+<!ENTITY identityDesc.label "Κάθε λογαριασμός έχει μια ταυτότητα, η οποία αποτελείται από πληροφορίες που σας ταυτοποιούν στους παραλήπτες των μηνυμάτων σας.">
+
+<!-- LOCALIZATION NOTE (fullnameDesc.label) : do not translate two of "&quot;" in below line -->
+<!ENTITY fullnameDesc.label "Εισάγετε το όνομα που θέλετε να εμφανίζεται στο πεδίο &quot;Από&quot; των εξερχομένων μηνυμάτων σας.">
+<!-- LOCALIZATION NOTE (fullnameExample.label) : use following directions for below line
+ 1, do not translate two of "&quot;"
+ 2, Use localized full name instead of "John Smith"
+-->
+<!ENTITY fullnameExample.label "(για παράδειγμα, &quot;John Smith&quot;).">
+<!ENTITY fullnameLabel.label "Το όνομά σας:">
+<!ENTITY fullnameLabel.accesskey "Τ">
+
+<!ENTITY emailLabel.label "Διεύθυνση email:">
+<!ENTITY emailLabel.accesskey "θ">
+
+<!-- Entities for Incoming Server page -->
+
+<!ENTITY incomingTitle.label "Πληροφορίες διακομιστή εισερχομένων">
+<!ENTITY incomingServerTypeDesc.label "Επιλέξτε τον τύπο του διακομιστή εισερχομένων που χρησιμοποιείτε.">
+<!-- LOCALIZATION NOTE (imapType.label) : Do not translate "IMAP" in below line -->
+<!ENTITY imapType.label "IMAP">
+<!ENTITY imapType.accesskey "I">
+<!-- LOCALIZATION NOTE (popType.label) : Do not translate "POP" in below line -->
+<!ENTITY popType.label "POP">
+<!ENTITY popType.accesskey "P">
+<!ENTITY leaveMsgsOnSrvr.label "Διατήρηση μηνυμάτων στον διακομιστή">
+<!ENTITY leaveMsgsOnSrvr.accesskey "Δ">
+<!ENTITY portNum.label "Θύρα:">
+<!ENTITY portNum.accesskey "Θ">
+<!ENTITY defaultPortLabel.label "Προεπιλογή:">
+<!ENTITY defaultPortValue.label "">
+<!-- LOCALIZATION NOTE (incomingServerNameDesc.label) : Do not translate "&quot;pop.example.net&quot;" in below line -->
+<!ENTITY incomingServer.description "Εισάγετε το όνομα του διακομιστή εισερχομένων (για παράδειγμα, &quot;mail.example.net&quot;).">
+<!ENTITY incomingServer.label "Διακομιστής εισερχομένων:">
+<!ENTITY incomingServer.accesskey "σ">
+<!-- LOCALIZATION NOTE (incomingUsername.description) : do not translate "&quot;jsmith&quot;" in below line -->
+<!ENTITY incomingUsername.description "Εισάγετε το όνομα χρήστη που σας δόθηκε από τον παροχέα email (για παράδειγμα, &quot;jsmith&quot;).">
+<!ENTITY incomingUsername.label "Όνομα χρήστη:">
+<!ENTITY incomingUsername.accesskey "χ">
+<!-- LOCALIZATION NOTE (newsServerNameDesc.label) : Do not translate "NNTP" or the "&quot;" entities in below line -->
+<!ENTITY newsServerNameDesc.label "Εισάγετε το όνομα του διακομιστή συζητήσεων (NNTP) (για παράδειγμα, &quot;news.example.net&quot;).">
+<!ENTITY newsServerLabel.label "Διακομιστής ομάδας συζήτησης:">
+<!ENTITY newsServerLabel.accesskey "σ">
+
+<!-- Entities for Outgoing Server page -->
+
+<!ENTITY outgoingTitle.label "Πληροφορίες διακομιστή εξερχομένων">
+<!-- LOCALIZATION NOTE (outgoingServer.description) : Do not translate "SMTP" and "&quot;smtp.example.net&quot;" in below line -->
+<!ENTITY outgoingServer.description "Εισάγετε το όνομα του διακομιστή εξερχομένων(SMTP) (για παράδειγμα, &quot;smtp.example.net&quot;).">
+<!ENTITY outgoingServer.label "Διακομιστής εξερχομένων:">
+<!ENTITY outgoingServer.accesskey "ξ">
+<!ENTITY outgoingUsername.description "Εισάγετε το όνομα χρήστη εξερχομένων που σας δόθηκε από τον παροχέα email (αυτό συνήθως είναι ίδιο με το όνομα χρήστη εισερχομένων).">
+<!ENTITY outgoingUsername.label "Όνομα χρήστη εξερχομένων:">
+<!ENTITY outgoingUsername.accesskey "χ">
+
+<!-- LOCALIZATION NOTE (modifyOutgoing.suffix) : This string will be appended after each of
+ haveSmtp1.suffix3, haveSmtp2.suffix3, haveSmtp3.suffix3 .
+-->
+<!ENTITY modifyOutgoing.suffix "Μπορείτε να αλλάξετε τους διακομιστές εξερχομένων στις ρυθμίσεις λογαριασμού.">
+<!-- LOCALIZATION NOTE (haveSmtp1.prefix and haveSmtp1.suffix3) : Do not translate "SMTP" and "&quot;" in
+ these variables. Also, translate haveSmtp1.prefix and haveSmtp1.suffix3 as a single sentence, inserting
+ text after the "&quot;" entity in haveSmtp1.suffix3, if required grammatically.
+-->
+<!ENTITY haveSmtp1.prefix "Ο υπάρχων διακομιστής εξερχομένων σας (SMTP), &quot;">
+<!ENTITY haveSmtp1.suffix3 "&quot;, θα χρησιμοποιηθεί.">
+<!-- LOCALIZATION NOTE (haveSmtp2.prefix and haveSmtp2.suffix3) : Do not translate "SMTP" and "&quot;" in
+ these variables. Also, translate haveSmtp2.prefix and haveSmtp2.suffix3 as a single sentence, inserting
+ text after the "&quot;" entity in haveSmtp2.suffix3, if required grammatically.
+-->
+<!ENTITY haveSmtp2.prefix "Το όνομα χρήστη στο διακομιστή εξερχομένων (SMTP), &quot;">
+<!ENTITY haveSmtp2.suffix3 "&quot;, θα χρησιμοποιηθεί.">
+<!-- LOCALIZATION NOTE (haveSmtp3.prefix and haveSmtp3.suffix3) : Do not translate "SMTP" and "&quot;" in
+ these variables. Also, translate haveSmtp3.prefix and haveSmtp3.suffix3 as a single sentence, inserting
+ text after the "&quot;" entity in haveSmtp3.suffix3, if required grammatically.
+-->
+<!ENTITY haveSmtp3.prefix "Ο διακομιστής εξερχομένων σας (SMTP), &quot;">
+<!ENTITY haveSmtp3.suffix3 "Ο &quot;, είναι όμοιος με το διακομιστή εισερχομένων σας, το όνομα χρήστη εισερχομένων θα χρησιμοποιηθεί για την πρόσβαση σε αυτόν.">
+
+<!-- Entities for Account name page -->
+
+<!ENTITY accnameTitle.label "Όνομα λογαριασμού">
+<!-- LOCALIZATION NOTE (accnameDesc.label) : do not translate any "&quot;" in below line -->
+<!ENTITY accnameDesc.label "Εισάγετε το όνομα με το οποίο θα αναγνωρίζετε αυτό το λογαριασμό (για παράδειγμα, &quot;Λογαριασμός εργασίας&quot;, &quot;Λογαριασμός οικίας&quot; ή &quot;Λογαριασμός ειδήσεων&quot;).">
+<!ENTITY accnameLabel.label "Όνομα λογαριασμού:">
+<!ENTITY accnameLabel.accesskey "μ">
+
+<!-- Entities for Done (Congratulations) page -->
+
+<!ENTITY completionTitle.label "Συγχαρητήρια!">
+<!ENTITY completionText.label "Βεβαιωθείτε ότι οι παρακάτω πληροφορίες είναι σωστές.">
+<!ENTITY serverTypePrefix.label "Τύπος διακομιστή εισερχομένων:">
+<!ENTITY serverNamePrefix.label "Όνομα διακομιστή εισερχομένων:">
+<!ENTITY smtpServerNamePrefix.label "Όνομα διακομιστή εξερχόμενων (SMTP):">
+<!ENTITY newsServerNamePrefix.label "Όνομα διακομιστή ομάδων συζήτησης (NNTP):">
+<!ENTITY downloadOnLogin.label "Λήψη μηνυμάτων τώρα">
+<!ENTITY downloadOnLogin.accesskey "ψ">
+<!ENTITY deferStorageDesc.label "Αποεπιλέξτε αυτό το κουτί για να αποθηκεύετε αλληλογραφία για αυτόν το λογαριασμό στο δικό του κατάλογο. Αυτό θα εμφανίζει αυτόν το λογαριασμό στο πρώτο επίπεδο. Σε άλλη περίπτωση, θα είναι μέρος των Τοπικών φακέλων του λογαριασμού Γενικών Εισερχομένων.">
+<!ENTITY deferStorage.label "Χρήση Γενικών Εισερχομένων (αποθήκευση αλληλογραφίας στους Τοπικούς Φακέλους)">
+<!ENTITY deferStorage.accesskey "Γ">
+<!ENTITY clickFinish.label 'Κάντε κλικ στο "Τέλος" για αποθήκευση ρυθμίσεων και κλείσιμο του Βοηθού λογαριασμών.'>
+<!ENTITY clickFinish.labelMac 'Κάντε κλικ στο "Τέλος" για αποθήκευση ρυθμίσεων και κλείσιμο του Βοηθού λογαριασμών.'>
diff --git a/l10n-el/mail/chrome/messenger/CustomHeaders.dtd b/l10n-el/mail/chrome/messenger/CustomHeaders.dtd
new file mode 100644
index 0000000000..96d607683c
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/CustomHeaders.dtd
@@ -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/. -->
+
+<!ENTITY window.title "Προσαρμογή κεφαλίδων">
+<!ENTITY addButton.label "Προσθήκη">
+<!ENTITY addButton.accesskey "θ">
+<!ENTITY removeButton.label "Αφαίρεση">
+<!ENTITY removeButton.accesskey "Α">
+<!ENTITY newMsgHeader.label "Νέα κεφαλίδα μηνύματος:">
+<!ENTITY newMsgHeader.accesskey "Ν">
diff --git a/l10n-el/mail/chrome/messenger/FilterEditor.dtd b/l10n-el/mail/chrome/messenger/FilterEditor.dtd
new file mode 100644
index 0000000000..6e3eb06471
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/FilterEditor.dtd
@@ -0,0 +1,67 @@
+<!-- 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 window.title "Κανόνες φίλτρου">
+<!ENTITY filterEditorDialog.dimensions "width: 100ch;">
+<!ENTITY filterName.label "Όνομα φίλτρου:">
+<!ENTITY filterName.accesskey "ν">
+
+<!ENTITY junk.label "Ανεπιθύμητα">
+<!ENTITY notJunk.label "Επιθυμητή αλληλογραφία">
+
+<!ENTITY lowestPriorityCmd.label "Πολύ χαμηλή">
+<!ENTITY lowPriorityCmd.label "Χαμηλή">
+<!ENTITY normalPriorityCmd.label "Κανονική">
+<!ENTITY highPriorityCmd.label "Υψηλή">
+<!ENTITY highestPriorityCmd.label "Πολύ υψηλή">
+
+<!ENTITY contextDesc.label "Εφαρμογή φίλτρου σε:">
+<!ENTITY contextIncomingMail.label "Κατά τη λήψη νέων email:">
+<!ENTITY contextIncomingMail.accesskey "Λ">
+<!ENTITY contextManual.label "Χειροκίνητη εκτέλεση">
+<!ENTITY contextManual.accesskey "Χ">
+<!ENTITY contextBeforeCls.label "Φιλτράρισμα πριν την ταξινόμηση ανεπιθύμητων">
+<!ENTITY contextAfterCls.label "Φιλτράρισμα μετά την ταξινόμηση ανεπιθύμητων">
+<!ENTITY contextOutgoing.label "Μετά την αποστολή">
+<!ENTITY contextOutgoing.accesskey "Μ">
+<!ENTITY contextArchive.label "Αρχειοθέτηση">
+<!ENTITY contextArchive.accesskey "Α">
+<!ENTITY contextPeriodic.accesskey "ε">
+
+<!ENTITY filterActionDesc.label "Εκτέλεση των ακόλουθων ενεργειών: ">
+<!ENTITY filterActionDesc.accesskey "Ε">
+
+<!ENTITY filterActionOrderWarning.label "Σημείωση: Το φιλτράρισμα ενεργειών θα εκτελεστεί σε διαφορετική σειρά.">
+<!ENTITY filterActionOrder.label "Προβολή σειράς εκτέλεσης">
+
+<!-- New Style Filter Rule Actions -->
+<!ENTITY moveMessage.label "Μετακίνηση μηνύματος σε">
+<!ENTITY copyMessage.label "Αντιγραφή μηνύματος σε">
+<!ENTITY forwardTo.label "Προώθηση σε:">
+<!ENTITY replyWithTemplate.label "Απάντηση με πρότυπο:">
+<!ENTITY markMessageRead.label "Επισήμανση ως αναγνωσμένο">
+<!ENTITY markMessageUnread.label "Επισήμανση ως μη αναγνωσμένο">
+<!ENTITY markMessageStarred.label "Προσθήκη αστεριού">
+<!ENTITY setPriority.label "Ορισμός προτεραιότητας σε">
+<!ENTITY addTag.label "Ετικέτα στο μήνυμα">
+<!ENTITY setJunkScore.label "Ορισμός κατάστασης ανεπιθ. αλληλογραφίας σε:">
+<!ENTITY deleteMessage.label "Διαγραφή μηνύματος">
+<!ENTITY deleteFromPOP.label "Διαγραφή από το διακομιστή POP">
+<!ENTITY fetchFromPOP.label "Λήψη από το διακομιστή POP">
+<!ENTITY ignoreThread.label "Παράβλεψη νήματος">
+<!ENTITY ignoreSubthread.label "Παράβλεψη υπονήματος">
+<!ENTITY watchThread.label "Παρακολούθηση νήματος">
+<!ENTITY stopExecution.label "Διακοπή εκτέλεσης φίλτρου">
+
+<!ENTITY addAction.tooltip "Προσθήκη νέας ενέργειας">
+<!ENTITY removeAction.tooltip "Αφαίρεση ενέργειας">
+
+<!-- LOCALIZATION NOTE
+ The values below are used to control the widths of the filter action widgets.
+ Change the values only when the localized strings in the popup menus
+ are truncated in the widgets.
+ -->
+<!-- Flex Attribute: https://developer.mozilla.org/docs/XUL/Attribute/flex -->
+<!ENTITY filterActionTypeFlexValue "1">
+<!ENTITY filterActionTargetFlexValue "4">
diff --git a/l10n-el/mail/chrome/messenger/FilterListDialog.dtd b/l10n-el/mail/chrome/messenger/FilterListDialog.dtd
new file mode 100644
index 0000000000..661dd2bb9c
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/FilterListDialog.dtd
@@ -0,0 +1,40 @@
+<!-- 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 window.title "Φίλτρα μηνυμάτων">
+<!ENTITY nameColumn.label "Όνομα φίλτρου">
+<!ENTITY activeColumn.label "Ενεργό">
+<!ENTITY newButton.label "Νέο…">
+<!ENTITY newButton.accesskey "Ν">
+<!ENTITY newButton.popupCopy.label "Αντιγραφή…">
+<!ENTITY newButton.popupCopy.accesskey "Α">
+<!ENTITY editButton.label "Επεξεργασία…">
+<!ENTITY editButton.accesskey "Ε">
+<!ENTITY deleteButton.label "Διαγραφή">
+<!ENTITY deleteButton.accesskey "Δ">
+<!ENTITY reorderTopButton "Μετακίνηση στην κορυφή">
+<!ENTITY reorderTopButton.accessKey "ο">
+<!ENTITY reorderTopButton.toolTip "Αναδιατάξτε το φίλτρο ώστε να εκτελείται πριν από τα άλλα">
+<!ENTITY reorderUpButton.label "Μετακίνηση πάνω">
+<!ENTITY reorderUpButton.accesskey "π">
+<!ENTITY reorderDownButton.label "Μετακίνηση κάτω">
+<!ENTITY reorderDownButton.accesskey "κ">
+<!ENTITY reorderBottomButton "Μετακίνηση στο κάτω μέρος">
+<!ENTITY reorderBottomButton.accessKey "μ">
+<!ENTITY reorderBottomButton.toolTip "Επανακατάταξη φίλτρου ώστε να εκτελείται μετά από όλα τα υπόλοιπα">
+<!ENTITY filterHeader.label "Τα ενεργοποιημένα φίλτρα θα εκτελούνται με την παρακάτω σειρά.">
+<!ENTITY filtersForPrefix.label "Φίλτρα για:">
+<!ENTITY filtersForPrefix.accesskey "Φ">
+<!ENTITY viewLogButton.label "Αρχείο καταγραφής φίλτρου">
+<!ENTITY viewLogButton.accesskey "χ">
+<!ENTITY runFilters.label "Εκτέλεση τώρα">
+<!ENTITY runFilters.accesskey "ρ">
+<!ENTITY stopFilters.label "Διακοπή">
+<!ENTITY stopFilters.accesskey "κ">
+<!ENTITY folderPickerPrefix.label "Εκτέλεση επιλεγμένων φίλτρων στο:">
+<!ENTITY folderPickerPrefix.accesskey "λ">
+<!ENTITY helpButton.label "Βοήθεια">
+<!ENTITY helpButton.accesskey "Β">
+<!ENTITY closeCmd.key "W">
+<!ENTITY searchBox.emptyText "Αναζήτηση φίλτρων με όνομα…">
diff --git a/l10n-el/mail/chrome/messenger/SearchDialog.dtd b/l10n-el/mail/chrome/messenger/SearchDialog.dtd
new file mode 100644
index 0000000000..6644e5f6bc
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/SearchDialog.dtd
@@ -0,0 +1,38 @@
+<!-- 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/. -->
+
+<!-- for SearchDialog.xul -->
+<!ENTITY searchHeading.label "Αναζήτηση σε:">
+<!ENTITY searchHeading.accesskey "ζ">
+<!ENTITY searchSubfolders.label "Αναζήτηση σε υποφακέλους">
+<!ENTITY searchSubfolders.accesskey "ν">
+<!ENTITY searchOnServer.label "Εκτέλεση αναζήτησης στο διακομιστή">
+<!ENTITY searchOnServer.accesskey "κ">
+<!ENTITY resetButton.label "Εκκαθάριση">
+<!ENTITY resetButton.accesskey "θ">
+<!ENTITY openButton.label "Άνοιγμα">
+<!ENTITY openButton.accesskey "γ">
+<!ENTITY deleteButton.label "Διαγραφή">
+<!ENTITY deleteButton.accesskey "Δ">
+<!ENTITY searchDialogTitle.label "Αναζήτηση Μηνυμάτων">
+<!ENTITY results.label "Αποτελέσματα">
+<!ENTITY moveButton.label "Μετακίνηση σε">
+<!ENTITY moveButton.accesskey "α">
+<!ENTITY closeCmd.key "W">
+<!ENTITY openInFolder.label "Άνοιγμα σε φάκελο">
+<!ENTITY openInFolder.accesskey "φ">
+<!ENTITY saveAsVFButton.label "Αποθήκευση ως φάκελος αναζήτησης">
+<!ENTITY saveAsVFButton.accesskey "φ">
+
+<!-- for ABSearchDialog.xul -->
+<!ENTITY abSearchHeading.label "Αναζήτηση σε:">
+<!ENTITY abSearchHeading.accesskey "ν">
+<!ENTITY propertiesButton.label "Ιδιότητες">
+<!ENTITY propertiesButton.accesskey "δ">
+<!ENTITY composeButton.label "Σύνταξη">
+<!ENTITY composeButton.accesskey "Σ">
+<!ENTITY deleteCardButton.label "Διαγραφή">
+<!ENTITY deleteCardButton.accesskey "ι">
+<!ENTITY abSearchDialogTitle.label "Προχωρημένη έρευνα Ευρετηρίου διευθύνσεων">
+
diff --git a/l10n-el/mail/chrome/messenger/aboutDialog.dtd b/l10n-el/mail/chrome/messenger/aboutDialog.dtd
new file mode 100644
index 0000000000..bd14e007c6
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/aboutDialog.dtd
@@ -0,0 +1,112 @@
+<!ENTITY aboutDialog.title "Σχετικά με το &brandFullName;">
+
+<!-- LOCALIZATION NOTE (update.*):
+# These strings are also used in the update pane of preferences.
+# See about:preferences#advanced.
+-->
+<!-- LOCALIZATION NOTE (update.checkForUpdatesButton.*, update.updateButton.*):
+# Only one button is present at a time.
+# The button when displayed is located directly under the Thunderbird version in
+# the about dialog.
+-->
+<!ENTITY update.checkForUpdatesButton.label "Έλεγχος για ενημερώσεις">
+<!ENTITY update.checkForUpdatesButton.accesskey "λ">
+<!ENTITY update.updateButton.label3 "Επανεκκίνηση για ενημέρωση του &brandShorterName;">
+<!ENTITY update.updateButton.accesskey "Ε">
+
+
+<!-- LOCALIZATION NOTE (warningDesc.version): This is a warning about the experimental nature of Nightly builds. It is only shown in this version. -->
+<!ENTITY warningDesc.version "Το &brandShortName; είναι πειραματικό και ενδεχομένως ασταθές.">
+<!-- LOCALIZATION NOTE (warningDesc.telemetryDesc): This is a notification that Nightly builds automatically send Telemetry data back to Mozilla. It is only shown in this version. "It" refers to brandShortName. -->
+<!ENTITY warningDesc.telemetryDesc "Στέλνει αυτόματα πληροφορίες σχετικά με επιδόσεις, υλικό, χρήση και προσαρμογές στη &vendorShortName; για τη βελτίωση του &brandShortName;.">
+
+<!-- LOCALIZATION NOTE (community.exp.*) This paragraph is shown in "experimental" builds, i.e. Nightly builds, instead of the other "community.*" strings below. -->
+<!ENTITY community.exp.start "">
+<!-- LOCALIZATION NOTE (community.exp.mozillaLink): This is a link title that links to https://www.mozilla.org/. -->
+<!ENTITY community.exp.mozillaLink "Η &vendorShortName;">
+<!ENTITY community.exp.middle " είναι μια ">
+<!-- LOCALIZATION NOTE (community.exp.creditslink): This is a link title that links to about:credits. -->
+<!ENTITY community.exp.creditsLink "παγκόσμια κοινότητα">
+<!ENTITY community.exp.end " που συνεργάζεται για να διατηρήσει το διαδίκτυο ανοικτό, δημόσιο και προσβάσιμο σε όλους.">
+
+<!ENTITY community.start2 "Το &brandShortName; έχει σχεδιαστεί από τη ">
+<!-- LOCALIZATION NOTE (community.mozillaLink): This is a link title that links to https://www.mozilla.org/. -->
+<!ENTITY community.mozillaLink "&vendorShortName;">
+<!ENTITY community.middle2 ", μία ">
+<!-- LOCALIZATION NOTE (community.creditsLink): This is a link title that links to about:credits. -->
+<!ENTITY community.creditsLink "παγκόσμια κοινότητα">
+<!ENTITY community.end3 " που συνεργάζεται για να διατηρήσει το διαδίκτυο ανοικτό, δημόσιο και προσβάσιμο σε όλους.">
+
+<!ENTITY helpus.start "Θέλετε να βοηθήσετε; ">
+<!-- LOCALIZATION NOTE (helpus.donateLink): This is a link title that links to the thunderbird donation page -->
+<!ENTITY helpus.donateLink "Κάντε μια δωρεά">
+<!ENTITY helpus.middle " ή ">
+<!-- LOCALIZATION NOTE (helpus.getInvolvedLink): This is a link title that links to https://www.thunderbird.net/get-involved/. -->
+<!ENTITY helpus.getInvolvedLink "συνεισφέρετε!">
+<!ENTITY helpus.end "">
+
+<!ENTITY releaseNotes.link "Σημειώσεις έκδοσης">
+
+<!-- LOCALIZATION NOTE (bottomLinks.license): This is a link title that links to about:license. -->
+<!ENTITY bottomLinks.license "Πληροφορίες αδειοδότησης">
+
+<!-- LOCALIZATION NOTE (bottomLinks.rights): This is a link title that links to about:rights. -->
+<!ENTITY bottomLinks.rights "Δικαιώματα τελικού χρήστη">
+
+<!-- LOCALIZATION NOTE (bottomLinks.privacy): This is a link title that links to https://www.mozilla.org/legal/privacy/. -->
+<!ENTITY bottomLinks.privacy "Πολιτική απορρήτου">
+
+<!-- LOCALIZATION NOTE (update.checkingForUpdates): try to make the localized text short (see bug 596813 for screenshots). -->
+<!ENTITY update.checkingForUpdates "Γίνεται έλεγχος για ενημερώσεις…">
+<!-- LOCALIZATION NOTE (update.noUpdatesFound): try to make the localized text short (see bug 596813 for screenshots). -->
+<!ENTITY update.noUpdatesFound "Το &brandShortName; είναι ενημερωμένο">
+<!-- LOCALIZATION NOTE (update.adminDisabled): try to make the localized text short (see bug 596813 for screenshots). -->
+<!ENTITY update.adminDisabled "Οι ενημερώσεις έχουν απενεργοποιηθεί από το διαχειριστή του συστήματός σας">
+<!-- LOCALIZATION NOTE (update.otherInstanceHandlingUpdates): try to make the localized text short -->
+<!ENTITY update.otherInstanceHandlingUpdates "Το &brandShortName; ενημερώνεται μέσω άλλης συνεδρίας">
+
+<!-- LOCALIZATION NOTE (update.failed.start,update.failed.linkText,update.failed.end):
+ update.failed.start, update.failed.linkText, and update.failed.end all go into
+ one line with linkText being wrapped in an anchor that links to a site to download
+ the latest version of Firefox (e.g. https://www.firefox.com). As this is all in
+ one line, try to make the localized text short (see bug 596813 for screenshots). -->
+<!ENTITY update.failed.start "Η ενημέρωση απέτυχε. ">
+<!ENTITY update.failed.linkText "Κάντε λήψη της πιο πρόσφατης έκδοσης">
+<!ENTITY update.failed.end "">
+
+<!-- LOCALIZATION NOTE (update.manual.start,update.manual.end): update.manual.start and update.manual.end
+ all go into one line and have an anchor in between with text that is the same as the link to a site
+ to download the latest version of Firefox (e.g. https://www.firefox.com). As this is all in one line,
+ try to make the localized text short (see bug 596813 for screenshots). -->
+<!ENTITY update.manual.start "Κάντε λήψη της ">
+<!ENTITY update.manual.linkText "πιο πρόσφατης έκδοσης">
+<!ENTITY update.manual.end "">
+
+<!-- LOCALIZATION NOTE (update.unsupported.start,update.unsupported.linkText,update.unsupported.end):
+ update.unsupported.start, update.unsupported.linkText, and
+ update.unsupported.end all go into one line with linkText being wrapped in
+ an anchor that links to a site to provide additional information regarding
+ why the system is no longer supported. As this is all in one line, try to
+ make the localized text short (see bug 843497 for screenshots). -->
+<!ENTITY update.unsupported.start "Δεν μπορείτε να κάνετε περαιτέρω ενημερώσεις σε αυτό το σύστημα. ">
+<!ENTITY update.unsupported.linkText "Μάθετε περισσότερα">
+<!ENTITY update.unsupported.end "">
+
+<!-- LOCALIZATION NOTE (update.downloading.start,update.downloading.end): update.downloading.start and
+ update.downloading.end all go into one line, with the amount downloaded inserted in between. As this
+ is all in one line, try to make the localized text short (see bug 596813 for screenshots). The — is
+ the "em dash" (long dash).
+ example: Downloading update — 111 KB of 13 MB -->
+<!ENTITY update.downloading.start "Γίνεται λήψη της ενημέρωσης — ">
+<!ENTITY update.downloading.end "">
+
+<!ENTITY update.applying "Γίνεται εφαρμογή της ενημέρωσης…">
+<!ENTITY update.restarting "Επανεκκίνηση…">
+
+<!-- LOCALIZATION NOTE (channel.description.start,channel.description.end): channel.description.start and
+ channel.description.end create one sentence, with the current channel label inserted in between.
+ example: You are currently on the _Stable_ update channel. -->
+<!ENTITY channel.description.start "Βρίσκεστε στο κανάλι ενημερώσεων της έκδοσης ">
+<!ENTITY channel.description.end " .">
+
+<!ENTITY cmdCloseMac.commandKey "w">
diff --git a/l10n-el/mail/chrome/messenger/aboutDownloads.dtd b/l10n-el/mail/chrome/messenger/aboutDownloads.dtd
new file mode 100644
index 0000000000..b04a573ecd
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/aboutDownloads.dtd
@@ -0,0 +1,24 @@
+<!-- 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 aboutDownloads.title "Αποθηκευμένα αρχεία">
+<!ENTITY aboutDownloads.empty "Κανένα αποθηκευμένο αρχείο">
+<!-- LOCALIZATION NOTE (cmd.show.label, cmd.show.accesskey, cmd.showMac.label,
+ cmd.showMac.accesskey):
+ The show and showMac commands are never shown together, thus they can share
+ the same access key (though the two access keys can also be different).
+ -->
+<!ENTITY cmd.show.label "Άνοιγμα φακέλου λήψης">
+<!ENTITY cmd.show.accesskey "λ">
+<!ENTITY cmd.showMac.label "Εμφάνιση στο Finder">
+<!ENTITY cmd.showMac.accesskey "F">
+<!ENTITY cmd.open.label "Άνοιγμα">
+<!ENTITY cmd.open.accesskey "Ά">
+<!ENTITY cmd.removeFromHistory.label "Αφαίρεση από το ιστορικό">
+<!ENTITY cmd.removeFromHistory.accesskey "ι">
+<!ENTITY cmd.clearList.label "Απαλοιφή λίστας">
+<!ENTITY cmd.clearList.accesskey "Α">
+<!ENTITY cmd.clearList.tooltip "Αφαίρεση όλων των καταχωρήσεων από τη λίστα αποθηκευμένων αρχείων, εκτός από τις λήψεις σε εξέλιξη.">
+<!ENTITY cmd.searchDownloads.label "Αναζήτηση…">
+<!ENTITY cmd.searchDownloads.key "F">
diff --git a/l10n-el/mail/chrome/messenger/aboutRights.properties b/l10n-el/mail/chrome/messenger/aboutRights.properties
new file mode 100644
index 0000000000..21371e9563
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/aboutRights.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/.
+
+buttonLabel=Μάθετε τα δικαιώματά σας…
+buttonAccessKey=θ
diff --git a/l10n-el/mail/chrome/messenger/aboutSupportMail.properties b/l10n-el/mail/chrome/messenger/aboutSupportMail.properties
new file mode 100644
index 0000000000..b7ce75db66
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/aboutSupportMail.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/.
+
+# LOCALIZATION NOTE (warningLabel): Label for warning text that shows up when private data is included
+warningLabel=ΠΡΟΕΙΔΟΠΟΙΗΣΗ:
+# LOCALIZATION NOTE (warningText): Warning text that shows up when private data is included
+warningText=Αυτό περιέχει ευαίσθητες πληροφορίες που δεν πρέπει να προωθηθούν ή δημοσιευθούν χωρίς προηγούμενη έγκριση.
+
+# LOCALIZATION NOTE (fsType.local): Indicator that the displayed directory is on a local drive
+fsType.local = (Τοπικός δίσκος)
+# LOCALIZATION NOTE (fsType.network): Indicator that the displayed directory is on the network
+fsType.network = (Δίσκος δικτύου)
+# LOCALIZATION NOTE (fsType.unknown): Indicator that we couldn't figure out whether the directory is local or on a network
+fsType.unknown = (Άγνωστη τοποθεσία)
diff --git a/l10n-el/mail/chrome/messenger/accountCreation.dtd b/l10n-el/mail/chrome/messenger/accountCreation.dtd
new file mode 100644
index 0000000000..29514cc982
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/accountCreation.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/. -->
+
+<!ENTITY emailWizard.title "Ρύθμιση υπάρχουσας διεύθυνσης email">
+<!ENTITY emailWizard.caption "Χρήση τρέχουσας διεύθυνσης email">
+<!ENTITY name.label "Το όνομά σας:">
+<!ENTITY name.accesskey "ν">
+<!ENTITY fullname.placeholder "Το πλήρες όνομά σας">
+<!ENTITY name.text "Το όνομά σας, όπως θα εμφανίζεται σε τρίτους">
+<!ENTITY name.error "Παρακαλούμε εισάγετε το όνομά σας">
+<!ENTITY email.label "Διεύθυνση email:">
+<!ENTITY email.accesskey "ε">
+<!ENTITY email3.placeholder "Η διεύθυνση email σας">
+<!ENTITY email.text "Η υπάρχουσα διεύθυνση email σας">
+<!ENTITY email.error "Μη έγκυρη διεύθυνση email">
+<!ENTITY password.label "Κωδικός πρόσβασης:">
+<!ENTITY password.accesskey "δ">
+<!ENTITY password.placeholder "Κωδικός πρόσβασης">
+<!ENTITY password.text "Προαιρετικός, θα χρησιμοποιηθεί μόνο για την επαλήθευση του ονόματος χρήστη">
+<!ENTITY password.toggle "Εμφάνιση/Απόκρυψη κωδικού πρόσβασης">
+<!ENTITY rememberPassword.label "Απομνημόνευση κωδικού πρόσβασης">
+<!ENTITY rememberPassword.accesskey "μ">
+<!ENTITY usernameEx.label "Η σύνδεσή σας:">
+<!ENTITY usernameEx.accesskey "σ">
+<!-- LOCALIZATION NOTE(usernameEx.placeholder): YOURDOMAIN refers to the Windows domain in ActiveDirectory. yourusername refers to the user's account name in Windows. -->
+<!ENTITY usernameEx.placeholder "ΟΤΟΜΕΑΣΣΑΣ\τοόνομαχρήστησας">
+<!-- LOCALIZATION NOTE(usernameEx.text): Domain refers to the Windows domain in ActiveDirectory. We mean the user's login in Windows at the local corporate network. -->
+<!ENTITY usernameEx.text "Σύνδεση τομέα">
+
+<!ENTITY protocol.label "Πρωτόκολλο:">
+<!ENTITY imapLong.label "IMAP (απομακρυσμένοι φάκελοι)">
+<!ENTITY pop3Long.label "POP3 (διατήρηση των email στον υπολογιστή σας)">
+
+<!ENTITY manualConfigTable.summary "Ρυθμίσεις διακομιστή">
+<!ENTITY incoming.label "Εισερχόμενα:">
+<!ENTITY incomingColumn.label "Εισερχόμενα">
+<!ENTITY outgoing.label "Εξερχόμενα:">
+<!ENTITY outgoingColumn.label "Εξερχόμενα">
+<!ENTITY username.label "Όνομα χρήστη:">
+<!ENTITY serverRow.label "Διακομιστής:">
+<!ENTITY portRow.label "Θύρα:">
+<!ENTITY sslRow.label "SSL:">
+<!ENTITY auth.label "Ταυτοποίηση">
+<!ENTITY imap.label "IMAP">
+<!ENTITY pop3.label "POP3">
+<!-- LOCALIZATION NOTE(exchange.label): Do not translate Exchange, it is a product name. -->
+<!ENTITY exchange.label "Exchange">
+<!ENTITY smtp.label "SMTP">
+<!ENTITY autodetect.label "Αυτόματος εντοπισμός">
+<!-- LOCALIZATION NOTE(noEncryption.label): Neither SSL/TLS nor STARTTLS.
+ Transmission of emails in cleartext over the Internet. -->
+<!ENTITY noEncryption.label "Κανένα">
+<!ENTITY starttls.label "STARTTLS">
+<!ENTITY sslTls.label "SSL/TLS">
+
+<!-- LOCALIZATION NOTE(exchange-hostname.label): Do not translate Exchange, it is a product name. -->
+<!ENTITY exchange-hostname.label "Διακομιστής Exchange:">
+
+<!ENTITY advancedSetup.label "Σύνθετες ρυθμίσεις">
+<!ENTITY advancedSetup.accesskey "Σ">
+<!ENTITY cancel.label "Ακύρωση">
+<!ENTITY cancel.accesskey "κ">
+<!ENTITY continue.label "Συνέχεια">
+<!ENTITY continue.accesskey "ν">
+<!ENTITY stop.label "Διακοπή">
+<!ENTITY stop.accesskey "κ">
+<!-- LOCALIZATION NOTE (half-manual-test.label): This is the text that is
+ displayed on the button in manual config mode which will re-guess
+ the account configuration, taking into account the settings that
+ the user has manually changed. -->
+<!ENTITY half-manual-test.label "Δοκιμή ξανά">
+<!ENTITY half-manual-test.accesskey "ξ">
+<!ENTITY manual-config.label "Χειροκίνητη ρύθμιση…">
+<!ENTITY manual-config.accesskey "Χ">
+<!ENTITY open-provisioner.label "Απόκτηση νέας διεύθυνσης email…">
+<!ENTITY open-provisioner.accesskey "α">
+<!ENTITY get-help.label "Λήψη βοήθειας">
+<!ENTITY get-help.accesskey "β">
+
+
+<!ENTITY warning.label "Προειδοποίηση!">
+<!ENTITY incomingSettings.label "Ρυθμίσεις εισερχομένων:">
+<!ENTITY outgoingSettings.label "Ρυθμίσεις εξερχομένων:">
+<!ENTITY technicaldetails.label "Τεχνικές λεπτομέρειες">
+<!-- LOCALIZATION NOTE (confirmWarning.label): If there is a security
+ warning on the outgoing server, then the user will need to check a
+ checkbox beside this text before continuing. -->
+<!ENTITY confirmWarning.label "Κατανοώ τους κινδύνους.">
+<!ENTITY confirmWarning.accesskey "κ">
+<!-- LOCALIZATION NOTE (doneAccount.label): If there is a security warning
+ on the incoming or outgoing servers, then the page that pops up will
+ have this text in a button to continue by creating the account. -->
+<!ENTITY doneAccount.label "Τέλος">
+<!ENTITY doneAccount.accesskey "τ">
+<!-- LOCALIZATION NOTE (changeSettings.label): If there is a security warning on
+ the incoming or outgoing servers, then the page that pops up will have
+ this text in a button to take you back to the previous page to change
+ the settings and try again. -->
+<!ENTITY changeSettings.label "Αλλαγή ρυθμίσεων">
+<!ENTITY changeSettings.accesskey "ρ">
+
+<!ENTITY contactYourProvider.description "Το &brandShortName; μπορεί να σας επιτρέψει να κάνετε λήψη των email σας με τις παρεχόμενες ρυθμίσεις. Ωστόσο, θα πρέπει να επικοινωνήσετε με το διαχειριστή του συστήματος ή τον πάροχο ηλεκτρονικού ταχυδρομείου σας σχετικά με αυτές τις ασυνήθιστες συνδέσεις. Δείτε τις συχνές ερωτήσεις του Thunderbird για περισσότερες πληροφορίες.">
+
+<!ENTITY insecureServer.tooltip.title "Προειδοποίηση! Αυτός δεν είναι ένας ασφαλής διακομιστής.">
+<!ENTITY insecureServer.tooltip.details "Κάντε κλικ στον κύκλο για περισσότερες λεπτομέρειες.">
+
+<!ENTITY insecureUnencrypted.description "Το email και η πιστοποίησή σας αποστέλλονται χωρίς κρυπτογράφηση, επομένως είναι εύκολη η ανάγνωση του κωδικού πρόσβασης (και του μηνύματός σας) από τρίτους. Το &brandShortName; θα σας επιτρέψει να κάνετε λήψη των emails σας, αλλά θα πρέπει να επικοινωνήσετε με τον πάροχο ηλεκτρονικού ταχυδρομείου σας σχετικά με τη ρύθμιση του διακομιστή για ασφαλή σύνδεση.">
+<!ENTITY insecureSelfSigned.description "Ο διακομιστής δεν χρησιμοποιεί ένα αξιόπιστο πιστοποιητικό και έτσι, δεν είναι σίγουρο ότι δεν παρεμβάλλεται κάποιος στην επικοινωνία μεταξύ του &brandShortName; και του διακομιστή σας. Το &brandShortName; θα σας επιτρέψει να δείτε τα email σας, αλλά θα πρέπει οπωσδήποτε να ρυθμίσετε το διακομιστή με ένα έμπιστο πιστοποιητικό.">
+<!ENTITY secureServer.description "Συγχαρητήρια! Αυτός είναι ένας ασφαλής διακομιστής.">
diff --git a/l10n-el/mail/chrome/messenger/accountCreation.properties b/l10n-el/mail/chrome/messenger/accountCreation.properties
new file mode 100644
index 0000000000..f6e0785c7d
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/accountCreation.properties
@@ -0,0 +1,114 @@
+# 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/.
+# accountCreation.properties
+
+# LOCALIZATION NOTE(cleartext_warning): %1$S will be the hostname of the server the user was trying to connect to.
+cleartext_warning=Το %1$S δεν χρησιμοποιεί κρυπτογράφηση.
+# LOCALIZATION NOTE(selfsigned_warning): %1$S will be the hostname of the server the user was trying to connect to.
+selfsigned_warning=Το %1$S δεν χρησιμοποιεί ένα έμπιστο πιστοποιητικό.
+selfsigned_details=Κανονικά, ένας ασφαλής διακομιστής αλληλογραφίας θα πρέπει να παρέχει ένα έμπιστο πιστοποιητικό που να αποδεικνύει την ταυτότητα του. Η σύνδεση με τον διακομιστή αλληλογραφίας θα πρέπει να είναι κρυπτογραφημένη, αλλά δεν είναι δυνατή η πιστοποίηση του διακομιστή ως ο πραγματικός διακομιστής.
+cleartext_details=Η μη-ασφαλείς διακομιστές δεν υποστηρίζουν κρυπτογραφημένες συνδέσεις για την προστασία των κωδικών και των προσωπικών πληροφοριών σας. Αν συνδεθείτε σε αυτόν τον διακομιστή, οι κωδικοί και οι προσωπικές σας πληροφορίες δεν θα προστατεύονται.
+
+# LOCALIZATION NOTE(default_server_tag): Used to indicate the default smtp server in the server dropdown list.
+default_server_tag= (προεπιλογή)
+# LOCALIZATION NOTE(port_auto): It must be short (4-5 characters max.).
+# Content of server port field (usually a number), used when the user didn't
+# enter anything yet and we'll automatically detect it later.
+port_auto=Αυτόματο
+
+# config titles
+looking_up_settings=Αναζήτηση ρυθμίσεων…
+# LOCALIZATION NOTE(looking_up_settings_disk): Referring to Thunderbird installation folder on user's harddisk. %1$S will be the brandShortName.
+looking_up_settings_disk=Αναζήτηση ρυθμίσεων: εγκατάσταση %1$S
+looking_up_settings_isp=Αναζήτηση ρυθμίσεων: πάροχος email
+# LOCALIZATION NOTE(looking_up_settings_db): Do not translate or replace Mozilla. It stands for the public project mozilla.org, not Mozilla Corporation. The database is a generic, public domain facility usable by any client.
+looking_up_settings_db=Αναζήτηση ρυθμίσεων: βάση δεδομένων ISP της Mozilla
+looking_up_settings_mx=Αναζήτηση των ρυθμίσεων: Όνομα τομέα εισερχόμενης αλληλογραφίας
+# LOCALIZATION NOTE(looking_up_settings_exchange): Exchange is a product name
+looking_up_settings_exchange=Αναζήτηση των ρυθμίσεων: διακομιστής Exchange
+# LOCALIZATION NOTE(looking_up_settings_guess): We are checking common server names like pop., pop3., smtp., mail., without knowing whether they exist or really serve this email account. If a server responds, we try to talk to it via POP/IMAP/SMTP protocols and query its capabilities. If that succeeds, we assume we found a configuration. Of course, it may still be wrong, but it often works.
+looking_up_settings_guess=Αναζήτηση ρυθμίσεων: δοκιμή κοινών ονομάτων διακομιστών
+looking_up_settings_halfmanual=Αναζήτηση ρυθμίσεων: Γίνεται αναζήτηση του διακομιστή
+# LOCALIZATION NOTE(found_settings_disk): Referring to Thunderbird installation folder on user's harddisk. %1$S will be the brandShortName.
+found_settings_disk=Βρέθηκαν οι παρακάτω ρυθμίσεις σε: εγκατάσταση %1$S
+found_settings_isp=Βρέθηκαν οι παρακάτω ρυθμίσεις από: Πάροχο Email
+# LOCALIZATION NOTE(found_settings_db): Do not translate or replace Mozilla. It stands for the public project mozilla.org, not Mozilla Corporation. The database is a generic, public domain facility usable by any client.
+found_settings_db=Βρέθηκαν οι παρακάτω ρυθμίσεις σε: Βάση δεδομένων ISP του Mozilla
+# LOCALIZATION NOTE(found_settings_exchange): Microsoft Exchange is a product name.
+found_settings_exchange=Βρέθηκαν οι ρυθμίσεις για διακομιστή Microsoft Exchange
+no-open-protocols=Ο διακομιστής αλληλογραφίας δυστυχώς δεν υποστηρίζει ανοιχτά πρωτόκολλα.
+addon-intro=Ένα πρόσθετο τρίτου μπορεί να σας επιτρέψει την πρόσβαση στον λογαριασμό αλληλογραφίας σας σε αυτό τον διακομιστή:
+# LOCALIZATION NOTE(found_settings_guess): We tried common mail server names and we found a mail server and talked to it and it responded properly, so we think we found a suitable configuration, but we are only about 80% certain that it is the correct setting for this email address. There's a chance that email address may not actually be served by this server and it won't work, or that there is a better server.
+found_settings_guess=Βρέθηκαν οι παρακάτω ρυθμίσεις κατά την προσπάθεια ελέγχου κοινών ονομάτων διακομιστών
+found_settings_halfmanual=Βρέθηκαν οι ακόλουθες ρυθμίσεις ερευνώντας το συγκεκριμένο διακομιστή
+# LOCALIZATION NOTE(failed_to_find_settings): %1$S will be the brandShortName.
+failed_to_find_settings=Το %1$S δεν βρήκε τις ρυθμίσεις για το λογαριασμό email σας.
+manually_edit_config=Επεξεργασία ρυθμίσεων
+# LOCALIZATION NOTE(guessed_settings_offline) User is offline, so we just took a wild guess and the user will have to enter the right settings.
+guessed_settings_offline=Είστε εκτός σύνδεσης. Υποθέσαμε μερικές ρυθμίσεις αλλά θα χρειαστεί να εισαγάγετε τις σωστές.
+
+# config subtitles
+check_preconfig=γίνεται έλεγχος για προ-ρυθμίσεις…
+found_preconfig=βρέθηκαν προ-ρυθμίσεις
+checking_config=γίνεται έλεγχος ρυθμίσεων…
+found_config=Βρέθηκαν ρυθμίσεις για το λογαριασμό σας
+checking_mozilla_config=γίνεται έλεγχος για ρυθμίσεις από την κοινότητα του Mozilla…
+found_isp_config=βρέθηκε μια ρύθμιση
+probing_config=γίνεται δοκιμή ρυθμίσεων…
+guessing_from_email=γίνεται εικασία ρυθμίσεων…
+config_details_found=Οι λεπτομέρειες της ρύθμισης σας βρέθηκαν!
+config_unverifiable=Δεν είναι δυνατή η επιβεβαίωση των ρυθμίσεων — είναι σωστό το όνομα χρήστη ή ο κωδικός σας;
+exchange_config_unverifiable=Δεν ήταν δυνατή η επαλήθευση των ρυθμίσεων παραμέτρων. Αν το όνομα χρήστη και ο κωδικός πρόσβασής σας είναι σωστά, ο διαχειριστής διακομιστή ίσως έχει απενεργοποιήσει τις επιλεγμένες ρυθμίσεις παραμέτρων για το λογαριασμό σας. Δοκιμάστε να επιλέξετε ένα άλλο πρωτόκολλο.
+incoming_found_specify_outgoing=Οι ρυθμίσεις του διακομιστή εισερχομένων σας βρέθηκαν, παρακαλώ καθορίστε το όνομα συστήματος του διακομιστή εξερχομένων.
+outgoing_found_specify_incoming=Οι ρυθμίσεις του διακομιστή εξερχομένων σας βρέθηκαν, παρακαλώ καθορίστε το όνομα συστήματος του διακομιστή εισερχομένων.
+please_enter_missing_hostnames=Αδυναμία εικασίας ρυθμίσεων — παρακαλώ εισάγετε τα συστήματα που λείπουν.
+incoming_failed_trying_outgoing=Αδυναμία αυτόματης ρύθμισης διακομιστή εισερχομένων, ακόμα γίνεται προσπάθεια ρύθμισης διακομιστή εξερχομένων.
+outgoing_failed_trying_incoming=Αδυναμία αυτόματης ρύθμισης διακομιστή εξερχομένων, ακόμα γίνεται προσπάθεια ρύθμισης διακομιστή εισερχομένων.
+checking_password=Έλεγχος κωδικού πρόσβασης…
+password_ok=Κωδικός ΟΚ!
+user_pass_invalid=Μη έγκυρο όνομα χρήστη ή κωδικός πρόσβασης
+check_server_details=Γίνεται έλεγχος ρυθμίσεων διακομιστή
+check_in_server_details=Γίνεται έλεγχος ρυθμίσεων διακομιστή εισερχομένων
+check_out_server_details=Γίνεται έλεγχος ρυθμίσεων διακομιστή εξερχομένων
+
+error_creating_account=Σφάλμα δημιουργίας λογαριασμού
+incoming_server_exists=Ο διακομιστής εισερχομένων υπάρχει ήδη.
+
+please_enter_name=Παρακαλούμε εισάγετε το όνομά σας.
+double_check_email=Ελέγξτε ξανά αυτή τη διεύθυνση email!
+
+# add-on install
+addonInstallStarted=Γίνεται λήψη και εγκατάσταση του προσθέτου…
+addonInstallSuccess=Εγκαταστάθηκε με επιτυχία το πρόσθετο.
+# LOCALIZATION NOTE(addonInstallLabel): %1$S will be the add-on name
+addonInstallShortLabel=Εγκατάσταση
+
+#config result display
+# LOCALIZATION NOTE(resultUnknown): Displayed instead of resultIncoming,
+# resultOutgoing or resultUsername when we don't have a proper value.
+resultUnknown=Άγνωστο
+resultOutgoingExisting=Χρήση υπάρχοντος διακομιστή SMTP εξερχομένων
+resultIMAP=IMAP
+resultPOP3=POP3
+resultSMTP=SMTP
+resultExchange=Exchange
+# LOCALIZATION NOTE(resultNoEncryption): Neither SSL/TLS nor STARTTLS. Transmission of emails in cleartext over the Internet.
+resultNoEncryption=Χωρίς κρυπτογράφηση
+resultSSL=SSL
+resultSTARTTLS=STARTTLS
+resultSSLCertWeak=\u0020(Προειδοποίηση: Αδυναμία επαλήθευσης διακομιστή)
+resultSSLCertOK=
+resultUsernameBoth=%1$S
+resultUsernameDifferent=Εισερχόμενα: %1$S, Εξερχόμενα: %2$S
+
+confirmAdvancedConfigTitle=Επιβεβαίωση σύνθετων ρυθμίσεων
+confirmAdvancedConfigText=Αυτό το παράθυρο διαλόγου θα κλείσει και θα δημιουργηθεί ένας λογαριασμός με τις τρέχουσες ρυθμίσεις, ακόμη και αν η ρύθμιση παραμέτρων είναι εσφαλμένη. Θέλετε να συνεχίσετε;
+
+# LOCALIZATION NOTE(credentials_incomplete): The reference to "janedoe" (Jane Doe) is the name of an example person. You will want to translate it to whatever example persons would be named in your language. In the example, AD is the name of the Windows domain, and this should usually not be translated.
+credentials_incomplete=Η ταυτοποίηση απέτυχε. Είτε τα διαπιστευτήρια που εισαγάγατε είναι λάθος είτε απαιτείται ξεχωριστό όνομα χρήστη για είσοδο. Το όνομα χρήστη συνήθως είναι το όνομα χρήστη για τον τομέα στα Windows, με ή χωρίς το όνομα τομέα (για παράδειγμα janedoe ή AD\\janedoe).
+credentials_wrong=Η ταυτοποίηση απέτυχε. Ελέγξτε το όνομα χρήστη και τον κωδικό πρόσβασης.
+# LOCALIZATION NOTE(otherDomain.label): %1$S will be the brandShortName. %2$S refers to the domain name, e.g. rackspace.com
+otherDomain.label=Το %1$S βρήκε τις πληροφορίες ρύθμισης του λογαριασμού σας στο %2$S. Θέλετε να συνεχίσετε και να υποβάλετε τα διαπιστευτήριά σας;
+otherDomain_ok.label=Σύνδεση
+otherDomain_cancel.label=Ακύρωση
diff --git a/l10n-el/mail/chrome/messenger/accountCreationModel.properties b/l10n-el/mail/chrome/messenger/accountCreationModel.properties
new file mode 100644
index 0000000000..9bd683d96f
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/accountCreationModel.properties
@@ -0,0 +1,20 @@
+# 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 file has the strings, mostly error strings, for the logic / JS backend / model
+# files: fetchConfig.js, readFromXML.js, guessConfig.js, verifyConfig.js, createInBackend.js
+
+
+# readFromXML.js
+no_emailProvider.error=Το αρχείο ρυθμίσεων XML δεν περιέχει ρυθμίσεις λογαριασμού email.
+outgoing_not_smtp.error=Ο διακομιστής εξερχομένων θα πρέπει να είναι SMTP
+
+# verifyConfig.js
+cannot_login.error=Αδυναμία σύνδεσης με τον διακομιστή. Πιθανώς να είναι λάθος η ρύθμιση, το όνομα χρήστη ή ο κωδικός.
+
+# guessConfig.js
+cannot_find_server.error=Αδυναμία εύρεσης διακομιστή
+
+# exchangeAutoDiscover.js
+no_autodiscover.error=Το Exchange AutoDiscover XML δεν είναι έγκυρο.
diff --git a/l10n-el/mail/chrome/messenger/accountCreationUtil.properties b/l10n-el/mail/chrome/messenger/accountCreationUtil.properties
new file mode 100644
index 0000000000..d8d7463806
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/accountCreationUtil.properties
@@ -0,0 +1,34 @@
+# 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 file has the strings, mostly error strings, for the logic / JS backend / model
+# files: sanitizeDatatypes.js, fetchhttp.js, util.js
+
+
+# sanitizeDatatypes.js
+hostname_syntax.error=Το όνομα συστήματος είναι κενό ή περιέχει μη έγκυρους χαρακτήρες. Επιτρέπονται μόνο γράμματα, αριθμοί, και οι πύλες και τελείες.
+alphanumdash.error=Το αλφαριθμητικό περιέχει μη υποστηριζόμενους χαρακτήρες. Επιτρέπονται μόνο γράμματα, αριθμοί, παύλες και το _ .
+allowed_value.error=Η παρεχόμενη τιμή δεν είναι στην επιτρεπόμενη λίστα
+url_scheme.error=Το σχήμα URL δεν επιτρέπεται
+url_parsing.error=Το URL δεν αναγνωρίζεται
+string_empty.error=Θα πρέπει να εισάγετε μια τιμή για αυτό το αλφαριθμητικό
+boolean.error=Δεν είναι boolean
+no_number.error=Δεν είναι αριθμός
+number_too_large.error=Ο αριθμός είναι πολύ μεγάλος
+number_too_small.error=Ο αριθμός είναι πού μικρός
+
+
+# fetchhttp.js
+cannot_contact_server.error=Αδυναμία επικοινωνίας με το διακομιστή
+bad_response_content.error=Εσφαλμένο περιεχόμενο απάντησης
+
+# verifyConfig.js
+# LOCALIZATION NOTE(auth_failed_generic.error): The login failed (server refused to allow the user in), but the server did not give any meaningful error message. This is a common case when the user entered a wrong password or is otherwise not allowed.
+auth_failed_generic.error=Αποτυχία σύνδεσης. Είναι σωστό το όνομα χρήστη/συνθηματικό;
+# LOCALIZATION NOTE(auth_failed_with_reason.error): The login failed (server refused to allow the user in), and the server gave an error message which we can present to the user. This is a common case when the user entered a wrong password or is otherwise not allowed. %1$S will be the IMAP/POP3/SMTP server hostname. %2$S will be the error message from the server (usually in the local language where the server is or in English).
+auth_failed_with_reason.error=Αποτυχία σύνδεσης. Ο διακομιστής %1$S αποκρίθηκε: %2$S
+# LOCALIZATION NOTE(verification_failed.error): We had some other error, not during authentication with the server, but at earlier points, e.g. locally or we entirely failed to contact the given server, and we unfortunately have no detailed error message.
+verification_failed.error=Αποτυχία πιστοποίησης σύνδεσης για άγνωστο λόγο.
+# LOCALIZATION NOTE(verification_failed_with_exception.error): We had some other error, not during authentication with the server, but at earlier points, e.g. locally or we entirely failed to contact the given server, and we have an error message. %1$S will be an error message, possibly in English
+verification_failed_with_exception.error=Αποτυχία πιστοποίησης σύνδεσης με μήνυμα: %1$S
diff --git a/l10n-el/mail/chrome/messenger/activity.dtd b/l10n-el/mail/chrome/messenger/activity.dtd
new file mode 100644
index 0000000000..380677e1c2
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/activity.dtd
@@ -0,0 +1,37 @@
+<!-- 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 (window.width2, window.height): These values should be
+close to the golden ratio (1.618:1) while making sure it's wide enough for long
+file names and tall enough to hint that there are more activities in the list -->
+<!ENTITY window.width2 "500">
+<!ENTITY window.height "310">
+
+<!ENTITY activity.title "Διαχείριση δραστηριότητας">
+
+<!ENTITY cmd.pause.label "Παύση">
+<!ENTITY cmd.pause.accesskey "σ">
+<!ENTITY cmd.resume.label "Συνέχεια">
+<!ENTITY cmd.resume.accesskey "ν">
+<!ENTITY cmd.cancel.label "Ακύρωση">
+<!ENTITY cmd.cancel.accesskey "κ">
+<!ENTITY cmd.undo.label "Αναίρεση">
+<!ENTITY cmd.undo.accesskey "Α">
+<!ENTITY cmd.recover.label "Ανάκτηση">
+<!ENTITY cmd.recover.accesskey "κ">
+<!ENTITY cmd.retry.label "Επανάληψη">
+<!ENTITY cmd.retry.accesskey "Ε">
+<!ENTITY cmd.removeFromList.label "Αφαίρεση από τη λίστα">
+<!ENTITY cmd.removeFromList.accesskey "τ">
+
+<!ENTITY cmd.close.commandkey "w">
+<!ENTITY cmd.close2.commandkey "j">
+<!ENTITY cmd.close2Unix.commandkey "y">
+<!ENTITY cmd.clearList.label "Εκκαθάριση λίστας">
+<!ENTITY cmd.clearList.tooltip "Αφαιρεί ολοκληρωμένα, ακυρωμένα και αποτυχημένα στοιχεία από τη λίστα">
+<!ENTITY cmd.clearList.accesskey "θ">
+<!ENTITY cmd.find.commandkey "f">
+<!ENTITY cmd.search.commandkey "k">
+
+<!ENTITY searchBox.label "Αναζήτηση…">
diff --git a/l10n-el/mail/chrome/messenger/activity.properties b/l10n-el/mail/chrome/messenger/activity.properties
new file mode 100644
index 0000000000..f469a4f715
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/activity.properties
@@ -0,0 +1,99 @@
+# 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/.
+
+# Status Text
+paused2=Σε παύση
+processing=Σε διεργασία
+notStarted=Δεν ξεκίνησε
+failed=Απέτυχε
+waitingForInput=Σε αναμονή για ενέργεια
+waitingForRetry=Σε αναμονή για επαναπροσπάθεια
+completed=Ολοκληρώθηκε
+canceled=Ακυρώθηκε
+
+# LOCALIZATION NOTE (sendingMessages): this is used as a title for grouping processes in the activity manager when sending email.
+sendingMessages=Αποστολή μηνυμάτων
+sendingMessage=Γίνεται αποστολή μηνύματος
+# LOCALIZATION NOTE (sendingMessageWithSubject): %S will be replaced by the subject of the message being sent.
+sendingMessageWithSubject=Γίνεται αποστολή μηνύματος: %S
+copyMessage=Γίνεται αντιγραφή μηνύματος στα απεσταλμένα
+sentMessage=Στάλθηκε μήνυμα
+# LOCALIZATION NOTE (sentMessageWithSubject): %S will be replaced by the subject of the message being sent.
+sentMessageWithSubject=Στάλθηκε μήνυμα σε: %S
+failedToSendMessage=Αποτυχία αποστολής μηνύματος
+failedToCopyMessage=Αποτυχία αντιγραφής μηνύματος
+# LOCALIZATION NOTE (failedToSendMessageWithSubject): %S will be replaced by the subject of the message being sent.
+failedToSendMessageWithSubject=Αποτυχία αποστολής μηνύματος: %S
+# LOCALIZATION NOTE (failedToCopyMessageWithSubject): %S will be replaced by the subject of the message being sent.
+failedToCopyMessageWithSubject=Αποτυχία αντιγραφής μηνύματος: %S
+
+# LOCALIZATION NOTE (autosyncProcessProgress2): Do not translate the words "%1$S", "%2$S", "%3$S" and "%4$S" below.
+# Place the word %1$S in your translation where the number of the message being downloaded should appear.
+# Place the word %2$S in your translation where the total number of messages to be downloaded should appear.
+# Place the word %3$S in your translation where the name of the folder being processed should appear.
+# Place the word %4$S in your translation where the name of account being processed should appear.
+# EXAMPLE: Ted's account: Downloading message 334 of 1008 in Inbox…
+autosyncProcessProgress2=%4$S: Λήψη μηνύματος %1$S από %2$S στο φάκελο %3$S…
+# LOCALIZATION NOTE (autosyncProcessDisplayText): %S will be replaced by the folder name
+autosyncProcessDisplayText=Γίνεται ενημέρωση του φακέλου %S
+# LOCALIZATION NOTE (autosyncEventDisplayText): %S will be replaced by the account name
+autosyncEventDisplayText=Ο λογαριασμός %S είναι ενημερωμένος
+# LOCALIZATION NOTE (autosyncEventStatusText): %S will be replaced by total number of downloaded messages
+autosyncEventStatusText=Σύνολο μηνυμάτων που λήφθηκαν: %S
+autosyncEventStatusTextNoMsgs=Δεν λήφθηκαν μηνύματα
+# LOCALIZATION NOTE (autosyncContextDisplayText): %S will be replaced by the account name
+autosyncContextDisplayText=Γίνεται συγχρονισμός: %S
+
+# LOCALIZATION NOTE (pop3EventStartDisplayText2): Do not translate the words "%1$S" and "%2$S" below.
+# Place the word %1$S in your translation where the name of the account being checked for new messages should appear.
+# Place the word %2$S in your translation where the name of the folder being checked for new messages should appear.
+# EXAMPLE: George's account: Checking Inbox for new messages…
+pop3EventStartDisplayText2=%1$S: Έλεγχος του φακέλου "%2$S" για νέα μηνύματα…
+# LOCALIZATION NOTE (pop3EventDisplayText): %S will be replaced by the account name
+pop3EventDisplayText=Ο λογαριασμός %S είναι ενημερωμένος
+# LOCALIZATION NOTE (pop3EventStatusText): #1 will be replaced by total number of downloaded messages
+pop3EventStatusText=Ελήφθη #1 μήνυμα;Ελήφθησαν #1 μηνύματα
+pop3EventStatusTextNoMsgs=Δεν υπάρχουν μηνύματα για λήψη
+
+# Message actions that show up in activity manager
+# LOCALIZATION NOTE (deletedMessages2): #1 number of messages, #2 folder name
+deletedMessages2=Διαγράφηκε #1 μήνυμα από #2;Διαγράφηκαν #1 μηνύματα από #2
+# LOCALIZATION NOTE (movedMessages): #1 number of messages, #2 and #3: folder names
+movedMessages=Μετακινήθηκε #1 μήνυμα από #2 στο #3;Μετακινήθηκαν #1 μηνύματα από #2 σε #3
+# LOCALIZATION NOTE (copiedMessages): #1 number of messages, #2 and #3: folder names
+copiedMessages=Αντιγράφτηκε #1 μήνυμα από #2 σε #3;Αντιγράφηκαν #1 μηνύματα από #2 σε #3
+# LOCALIZATION NOTE (fromServerToServer): #1 source server, #2 destination server
+fromServerToServer=από #1 σε #2
+# LOCALIZATION NOTE (deletedFolder): #1 folder name
+deletedFolder=Διαγράφηκε φάκελος #1
+emptiedTrash=Ο κάδος απορριμμάτων άδειασε
+# LOCALIZATION NOTE (movedFolder): #1 and #2 are folder names
+movedFolder=Μετακινήθηκε φάκελος #1 σε φάκελο #2
+# LOCALIZATION NOTE (movedFolderToTrash): #1 is the folder name
+movedFolderToTrash=Ο φάκελος #1 μετακινήθηκε στα Απορρίμματα
+# LOCALIZATION NOTE (copiedFolder): #1 and #2 are folder names
+copiedFolder=Αντιγράφτηκε φάκελος #1 σε φάκελο #2
+# LOCALIZATION NOTE (renamedFolder): #1 and #2 are folder names
+renamedFolder=Μετονομάσθηκε φάκελος #1 σε #2
+indexing=Δημιουργία καταλόγου μηνυμάτων
+# LOCALIZATION NOTE (indexingFolder): #1 is a folder name
+indexingFolder=Δημιουργία καταλόγου μηνυμάτων σε #1
+indexingStatusVague=Καθορισμός μηνυμάτων για κατάλογο
+# LOCALIZATION NOTE (indexingFolderStatusVague): #1 is a folder name
+indexingFolderStatusVague=Καθορισμός μηνυμάτων για κατάλογο σε #1
+# LOCALIZATION NOTE (indexingStatusExact):
+# #1 is the number of the message currently being indexed
+# #2 is the total number of messages being indexed
+# #3 is the percentage of indexing that is complete
+indexingStatusExact=Καταλογοποίηση #1 από #2 μήνυμα;Καταλογοποίηση #1 από σύνολο #2 μηνυμάτων (ολοκληρώθηκε το #3%)
+# LOCALIZATION NOTE (indexingFolderStatusExact):
+# #1 is the number of the message currently being indexed
+# #2 is the total number of messages being indexed
+# #3 is the percentage of indexing that is complete
+# #4 is a folder name
+indexingFolderStatusExact=Καταλογοποίηση #1 of #2 μήνυμα σε #4;Καταλογοποίηση #1 από σύνολο #2 μηνυμάτων σε #4 (ολοκληρώθηκε το #3%)
+# LOCALIZATION NOTE (indexedFolder): #1 number of messages; #2 folder name
+indexedFolder=Προστέθηκε στον κατάλογο #1 μήνυμα σε #2;Προστέθηκαν τον κατάλογο #1 μηνύματα σε #2
+# LOCALIZATION NOTE (indexedFolderStatus): #1 number of seconds spent indexing
+indexedFolderStatus=πέρασε #1 δευτερόλεπτο;πέρασαν #1 δευτερόλεπτα
diff --git a/l10n-el/mail/chrome/messenger/addbuddy.dtd b/l10n-el/mail/chrome/messenger/addbuddy.dtd
new file mode 100644
index 0000000000..0ba12f85ef
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/addbuddy.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 addBuddyWindow.title "Προσθήκη επαφής">
+<!ENTITY name.label "Όνομα χρήστη">
+<!ENTITY account.label "Λογαριασμός">
diff --git a/l10n-el/mail/chrome/messenger/addons.properties b/l10n-el/mail/chrome/messenger/addons.properties
new file mode 100644
index 0000000000..93d34d4d54
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/addons.properties
@@ -0,0 +1,251 @@
+# 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/.
+
+xpinstallPromptMessage=Το %S εμπόδισε την ερώτηση αυτής της ιστοσελίδας για εγκατάσταση λογισμικού στον υπολογιστή σας.
+# LOCALIZATION NOTE (xpinstallPromptMessage.header)
+# The string contains the hostname of the site the add-on is being installed from.
+xpinstallPromptMessage.header=Να επιτραπεί στο %S η εγκατάσταση ενός προσθέτου;
+xpinstallPromptMessage.message=Προσπαθείτε να εγκαταστήσετε ένα πρόσθετο από το %S. Βεβαιωθείτε ότι εμπιστεύεστε αυτή την ιστοσελίδα πριν συνεχίσετε.
+xpinstallPromptMessage.header.unknown=Να επιτρέπεται σε μια άγνωστη ιστοσελίδα η εγκατάσταση προσθέτου;
+xpinstallPromptMessage.message.unknown=Προσπαθείτε να εγκαταστήσετε ένα πρόσθετο από μια άγνωστη ιστοσελίδα. Βεβαιωθείτε ότι εμπιστεύεστε αυτή την ιστοσελίδα πριν συνεχίσετε.
+xpinstallPromptMessage.learnMore=Μάθετε περισσότερα σχετικά με την ασφαλή εγκατάσταση πρόσθετων
+xpinstallPromptMessage.dontAllow=Να μην επιτραπεί
+xpinstallPromptMessage.dontAllow.accesskey=Ν
+xpinstallPromptMessage.neverAllow=Να μην επιτρέπεται ποτέ
+xpinstallPromptMessage.neverAllow.accesskey=Ν
+# Accessibility Note:
+# Be sure you do not choose an accesskey that is used elsewhere in the active context (e.g. main menu bar, submenu of the warning popup button)
+# See https://website-archive.mozilla.org/www.mozilla.org/access/access/keyboard/ for details
+xpinstallPromptMessage.install=Συνέχεια εγκατάστασης
+xpinstallPromptMessage.install.accesskey=Σ
+
+# Accessibility Note:
+# Be sure you do not choose an accesskey that is used elsewhere in the active context (e.g. main menu bar, submenu of the warning popup button)
+# See http://www.mozilla.org/access/keyboard/accesskey for details
+xpinstallDisabledMessageLocked=Η εγκατάσταση λογισμικού έχει απενεργοποιηθεί από τον διαχειριστή του συστήματός σας.
+xpinstallDisabledMessage=Η εγκατάσταση λογισμικού είναι αυτή τη στιγμή απενεργοποιημένη. Κάντε κλικ στην Ενεργοποίηση και δοκιμάστε πάλι.
+xpinstallDisabledButton=Ενεργοποίηση
+xpinstallDisabledButton.accesskey=ν
+
+# LOCALIZATION NOTE (addonInstallBlockedByPolicy)
+# This message is shown when the installation of an add-on is blocked by
+# enterprise policy. %1$S is replaced by the name of the add-on.
+# %2$S is replaced by the ID of add-on. %3$S is a custom message that
+# the administration can add to the message.
+addonInstallBlockedByPolicy=Το %1$S (%2$S) έχει αποκλειστεί από το διαχειριστή του συστήματός σας.%3$S
+
+# LOCALIZATION NOTE (addonPostInstall.message1)
+# %1$S is replaced with the localized named of the extension that was
+# just installed.
+# %2$S is replaced with the localized name of the application.
+addonPostInstall.message1=Το %1$S έχει προστεθεί στο %2$S.
+# LOCALIZATION NOTE (addonPostInstall.multiple.message1)
+# %1$S is replaced with the localized name of the application.
+addonPostInstall.multiple.message=Αυτά τα πρόσθετα έχουν προστεθεί στο %1$S:
+addonPostInstall.okay.label=OK
+addonPostInstall.okay.accesskey=O
+
+# LOCALIZATION NOTE (addonDownloadingAndVerifying):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Also see https://bugzilla.mozilla.org/show_bug.cgi?id=570012 for mockups
+addonDownloadingAndVerifying=Γίνεται λήψη και επαλήθευση του προσθέτου…;Γίνεται λήψη και επαλήθευση #1 προσθέτων…
+addonDownloadVerifying=Επαλήθευση
+
+addonInstall.unsigned=(Μη επαληθευμένο)
+addonInstall.cancelButton.label=Ακύρωση
+addonInstall.cancelButton.accesskey=Α
+addonInstall.acceptButton2.label=Προσθήκη
+addonInstall.acceptButton2.accesskey=Π
+
+# LOCALIZATION NOTE (addonConfirmInstallMessage,addonConfirmInstallUnsigned):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is brandShortName
+# #2 is the number of add-ons being installed
+addonConfirmInstall.message=Ο ιστοτόπος θέλει να εγκαταστήσει ένα πρόσθετο στο #1:;Ο ιστοτόπος θέλει να εγκαταστήσει #2 πρόσθετα στο #1:
+addonConfirmInstallUnsigned.message=Προσοχή: Ο ιστοτόπος θέλει να εγκαταστήσει ένα μη επιβεβαιωμένο πρόσθετο στο #1. Συνεχίστε με δική σας ευθύνη.;Προσοχή: Ο ιστοτόπος θέλει να εγκαταστήσει #2 μη επιβεβαιωμένα πρόσθετα στο #1. Συνεχίστε με δική σας ευθύνη.
+
+# LOCALIZATION NOTE (addonConfirmInstallSomeUnsigned.message):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is brandShortName
+# #2 is the total number of add-ons being installed (at least 2)
+addonConfirmInstallSomeUnsigned.message=;Προσοχή: Ο ιστοτόπος θέλει να εγκαταστήσει #2 πρόσθετα στο #1, μερικά από τα οποία δεν είναι επιβεβαιωμένα. Συνεχίστε με δική σας ευθύνη.
+
+# LOCALIZATION NOTE (addonInstalled):
+# %S is the name of the add-on
+addonInstalled=Το %S έχει εγκατασταθεί επιτυχώς.
+# LOCALIZATION NOTE (addonsGenericInstalled):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of add-ons
+addonsGenericInstalled=Το πρόσθετο #1 εγκαταστάθηκε με επιτυχία.;#1 πρόσθετα εγκαταστάθηκαν με επιτυχία.
+
+# LOCALIZATION NOTE (addonInstallError-1, addonInstallError-2, addonInstallError-3, addonInstallError-4, addonInstallError-5, addonLocalInstallError-1, addonLocalInstallError-2, addonLocalInstallError-3, addonLocalInstallError-4, addonLocalInstallError-5):
+# %1$S is the application name, %2$S is the add-on name
+addonInstallError-1=Δεν ήταν δυνατή η λήψη του προσθέτου λόγω αποτυχίας σύνδεσης.
+addonInstallError-2=Δεν ήταν δυνατή η εγκατάσταση του πρόσθετου επειδή δεν συμφωνεί με το αναμενόμενο πρόσθετο %1$S.
+addonInstallError-3=Δεν ήταν δυνατή η εγκατάσταση του πρόσθετου που μεταφορτώθηκε από τον ιστοτόπο γιατί μοιάζει να είναι κατεστραμμένο.
+addonInstallError-4=Το %2$S δεν ήταν δυνατό να εγκατασταθεί, επειδή το %1$S δεν μπόρεσε να τροποποιήσει το απαιτούμενο αρχείο.
+addonInstallError-5=Το %1$S απέτρεψε τον ιστοτόπο από την εγκατάσταση ενός μη-επιβεβαιωμένου πρόσθετου.
+addonLocalInstallError-1=Δεν ήταν δυνατή η εγκατάσταση του πρόσθετου λόγω σφάλματος στο σύστημα αρχείων.
+addonLocalInstallError-2=Δεν ήταν δυνατή η εγκατάσταση του πρόσθετου γιατί δεν συμφωνεί με το αναμενόμενο πρόσθετο %1$S.
+addonLocalInstallError-3=Δεν ήταν δυνατή η εγκατάσταση του πρόσθετου γιατί μοιάζει να είναι κατεστραμμένο.
+addonLocalInstallError-4=Το %2$S δεν ήταν δυνατό να εγκατασταθεί, επειδή το %1$S δεν μπόρεσε να τροποποιήσει το απαιτούμενο αρχείο.
+addonLocalInstallError-5=Δεν ήταν δυνατή η εγκατάσταση του πρόσθετου γιατί δεν επαληθεύτηκε.
+
+# LOCALIZATION NOTE (addonInstallErrorIncompatible):
+# %1$S is the application name, %2$S is the application version, %3$S is the add-on name
+addonInstallErrorIncompatible=Δεν ήταν δυνατή η εγκατάσταση του %3$S γιατί δεν είναι συμβατό με το %1$S %2$S.
+
+# LOCALIZATION NOTE (addonInstallErrorBlocklisted): %S is add-on name
+addonInstallErrorBlocklisted=Δεν ήταν δυνατή η εγκατάσταση του %S γιατί εμπεριέχει μεγάλο ρίσκο δημιουργίας αστάθειας ή προβλημάτων ασφαλείας.
+
+# LOCALIZATION NOTE (webextPerms.header)
+# This string is used as a header in the webextension permissions dialog,
+# %S is replaced with the localized name of the extension being installed.
+# See https://bug1308309.bmoattachments.org/attachment.cgi?id=8814612
+# for an example of the full dialog.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.header=Προσθήκη του %S;
+
+# %S is brandShortName
+webextPerms.experimentWarning=Τα κακόβουλα πρόσθετα μπορούν να κλέψουν τις προσωπικές σας πληροφορίες ή να θέσουν σε κίνδυνο τον υπολογιστή σας. Να εγκαταστήσετε αυτό το πρόσθετο μόνο αν εμπιστεύεστε την προέλευσή του.
+webextPerms.unsignedWarning=Προσοχή: Το πρόσθετο δεν έχει επαληθευτεί. Κακόβουλα πρόσθετα μπορούν να υποκλέψουν προσωπικές πληροφορίες ή να θέσουν σε κίνδυνο τον υπολογιστή σας. Να εγκαταστήσετε το πρόσθετο μόνο αν εμπιστεύεστε την πηγή.
+
+# LOCALIZATION NOTE (webextPerms.listIntro)
+# This string will be followed by a list of permissions requested
+# by the webextension.
+webextPerms.listIntro=Απαιτεί την άδειά σας για:
+webextPerms.learnMore=Μάθετε περισσότερα σχετικά με τα δικαιώματα
+webextPerms.add.label=Προσθήκη
+webextPerms.add.accessKey=Π
+webextPerms.cancel.label=Ακύρωση
+webextPerms.cancel.accessKey=Α
+
+# LOCALIZATION NOTE (webextPerms.sideloadMenuItem)
+# %1$S will be replaced with the localized name of the sideloaded add-on.
+# %2$S will be replace with the name of the application (e.g., Firefox, Nightly)
+webextPerms.sideloadMenuItem=Το %1$S προστέθηκε στο %2$S
+
+# LOCALIZATION NOTE (webextPerms.sideloadHeader)
+# This string is used as a header in the webextension permissions dialog
+# when the extension is side-loaded.
+# %S is replaced with the localized name of the extension being installed.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.sideloadHeader=Το %S προστέθηκε
+webextPerms.sideloadText2=Κάποιο άλλο πρόγραμμα στον υπολογιστή σας εγκατέστησε ένα πρόσθετο που ενδέχεται να επηρεάσει το πρόγραμμα περιήγησής σας. Παρακαλούμε ελέγξτε τα δικαιώματα αυτού του προσθέτου και επιλέξτε "Ενεργοποίηση" ή "Ακύρωση" (για να παραμείνει ανενεργό).
+webextPerms.sideloadTextNoPerms=Κάποιο άλλο πρόγραμμα στον υπολογιστή σας εγκατέστησε ένα πρόσθετο που ενδέχεται να επηρεάσει το πρόγραμμα περιήγησής σας. Παρακαλούμε επιλέξτε "Ενεργοποίηση" ή "Ακύρωση" (για να παραμείνει ανενεργό).
+
+webextPerms.sideloadEnable.label=Ενεργοποίηση
+webextPerms.sideloadEnable.accessKey=Ε
+webextPerms.sideloadCancel.label=Ακύρωση
+webextPerms.sideloadCancel.accessKey=Α
+
+# LOCALIZATION NOTE (webextPerms.updateMenuItem)
+# %S will be replaced with the localized name of the extension which
+# has been updated.
+webextPerms.updateMenuItem=Το %S απαιτεί νέα δικαιώματα
+
+# LOCALIZATION NOTE (webextPerms.updateText)
+# %S is replaced with the localized name of the updated extension.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.updateText=Το %S έχει ενημερωθεί. Θα πρέπει να εγκρίνετε τα νέα δικαιώματα πριν εγκατασταθεί η ενημερωμένη έκδοση. Αν επιλέξετε “Ακύρωση” θα διατηρηθεί η τρέχουσα έκδοση του προσθέτου.
+
+webextPerms.updateAccept.label=Ενημέρωση
+webextPerms.updateAccept.accessKey=Ε
+
+# LOCALIZATION NOTE (webextPerms.optionalPermsHeader)
+# %S is replace with the localized name of the extension requested new
+# permissions.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.optionalPermsHeader=Το %S απαιτεί επιπρόσθετα δικαιώματα.
+webextPerms.optionalPermsListIntro=Θέλει να:
+webextPerms.optionalPermsAllow.label=Αποδοχή
+webextPerms.optionalPermsAllow.accessKey=Α
+webextPerms.optionalPermsDeny.label=Άρνηση
+webextPerms.optionalPermsDeny.accessKey=Ά
+
+webextPerms.description.accountsFolders=Δημιουργεί, να μετονομάζει ή να διαγράφει τους φακέλους λογαριασμών email σας
+webextPerms.description.accountsRead=Προβάλλει τους λογαριασμούς αλληλογραφίας σας και των φακέλων τους
+webextPerms.description.addressBooks=Διαβάζει και να τροποποιεί τα ευρετήρια και τις επαφές σας
+webextPerms.description.bookmarks=Διαβάζει και να τροποποιεί σελιδοδείκτες
+webextPerms.description.browserSettings=Διαβάζει και να τροποποιεί τις ρυθμίσεις του προγράμματος περιήγησής σας
+webextPerms.description.browsingData=Διαγράφει το πρόσφατο ιστορικό περιήγησης, τα cookies και τα σχετικά δεδομένα
+webextPerms.description.clipboardRead=Λήψη δεδομένων από το πρόχειρο
+webextPerms.description.clipboardWrite=Εισαγάγει δεδομένα στο πρόχειρο
+webextPerms.description.compose=Διαβάζει και να τροποποιεί τα email σας καθώς τα συνθέτετε και τα στέλνετε
+webextPerms.description.devtools=Επεκτείνει τα εργαλεία προγραμματιστή για πρόσβαση στα δεδομένα των ανοικτών καρτελών σας
+webextPerms.description.dns=Έχει πρόσβαση στις πληροφορίες της διεύθυνσης IP και του ονόματος υπολογιστή σας
+webextPerms.description.downloads=Κάνει λήψη αρχείων και να διαβάζει και να τροποποιεί το ιστορικό λήψεων του προγράμματος περιήγησής σας
+webextPerms.description.downloads.open=Ανοίγει ληφθέντα αρχεία του υπολογιστή σας
+# LOCALIZATION NOTE (webextPerms.description.experiment)
+# %S will be replaced with the name of the application
+webextPerms.description.experiment=Έχει πλήρη, απεριόριστη πρόσβαση στο %S και στον υπολογιστή σας
+webextPerms.description.find=Διαβάζει το κείμενο όλων των ανοικτών καρτελών
+webextPerms.description.geolocation=Έχει πρόσβαση στην τοποθεσία σας
+webextPerms.description.history=Έχει πρόσβαση στο ιστορικό περιήγησης
+webextPerms.description.management=Παρακολουθεί τη χρήση επεκτάσεων και να διαχειρίζεται τα θέματα
+webextPerms.description.messagesModify=Διαβάζει και να τροποποιεί τα μηνύματα email σας ενώ προβάλλονται σε εσάς
+webextPerms.description.messagesMove=Μετακινεί, να αντιγράφει ή να διαγράφει τα μηνύματα email σας
+webextPerms.description.messagesRead=Διαβάζει ή να επισημαίνει τα μηνύματα email σας
+# LOCALIZATION NOTE (webextPerms.description.nativeMessaging)
+# %S will be replaced with the name of the application
+webextPerms.description.nativeMessaging=Ανταλλάσσει μηνύματα με άλλα προγράμματα, εκτός του %S
+webextPerms.description.notifications=Προβάλλει ειδοποιήσεις σε εσάς
+webextPerms.description.pkcs11=Παρέχει κρυπτογραφημένες υπηρεσίες ταυτοποίησης
+webextPerms.description.privacy=Διαβάζει και να τροποποιεί τις ρυθμίσεις απορρήτου
+webextPerms.description.proxy=Ελέγχει τις ρυθμίσεις διαμεσολαβητή του προγράμματος περιήγησής σας
+webextPerms.description.sessions=Έχει πρόσβαση στις πρόσφατα κλεισμένες καρτέλες
+webextPerms.description.tabs=Έχει πρόσβαση στις καρτέλες του προγράμματος περιήγησης
+webextPerms.description.tabHide=Αποκρύβει και να εμφανίζει τις καρτέλες του προγράμματος περιήγησης
+webextPerms.description.topSites=Έχει πρόσβαση στο ιστορικό περιήγησης
+webextPerms.description.unlimitedStorage=Αποθηκεύει απεριόριστο αριθμό δεδομένων πελάτη
+webextPerms.description.webNavigation=Έχει πρόσβαση στη δραστηριότητα του προγράμματος περιήγησης κατά την πλοήγηση
+
+webextPerms.hostDescription.allUrls=Έχει πρόσβαση στα δεδομένα σας για όλες τις ιστοσελίδες
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.wildcard)
+# %S will be replaced by the DNS domain for which a webextension
+# is requesting access (e.g., mozilla.org)
+webextPerms.hostDescription.wildcard=Έχει πρόσβαση στα δεδομένα σας για τις ιστοσελίδες στον τομέα %S
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.tooManyWildcards):
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 will be replaced by an integer indicating the number of additional
+# domains for which this webextension is requesting permission.
+webextPerms.hostDescription.tooManyWildcards=Έχει πρόσβαση στα δεδομένα σας σε #1 άλλο τομέα;Έχει πρόσβαση στα δεδομένα σας σε άλλους #1 τομείς
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.oneSite)
+# %S will be replaced by the DNS host name for which a webextension
+# is requesting access (e.g., www.mozilla.org)
+webextPerms.hostDescription.oneSite=Έχει πρόσβαση στα δεδομένα σας για το %S
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.tooManySites)
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 will be replaced by an integer indicating the number of additional
+# hosts for which this webextension is requesting permission.
+webextPerms.hostDescription.tooManySites=Έχει πρόσβαση στα δεδομένα σας σε #1 άλλη ιστοσελίδα;Έχει πρόσβαση στα δεδομένα σας σε #1 άλλες ιστοσελίδες
+
+# LOCALIZATION NOTE (webext.defaultSearch.description)
+# %1$S is replaced with the localized named of the extension that is asking to change the default search engine.
+# %2$S is replaced with the name of the current search engine
+# %3$S is replaced with the name of the new search engine
+webext.defaultSearch.description=Το %1$S επιθυμεί την αλλαγή της προεπιλεγμένης μηχανής αναζήτησης από %2$S σε %3$S. Συμφωνείτε;
+webext.defaultSearchYes.label=Ναι
+webext.defaultSearchYes.accessKey=Ν
+webext.defaultSearchNo.label=Όχι
+webext.defaultSearchNo.accessKey=Ό
+
+# LOCALIZATION NOTE (webext.remove.confirmation.title)
+# %S is the name of the extension which is about to be removed.
+webext.remove.confirmation.title=Αφαίρεση του %S
+# LOCALIZATION NOTE (webext.remove.confirmation.message)
+# %1$S is the name of the extension which is about to be removed.
+# %2$S is brandShorterName
+webext.remove.confirmation.message=Αφαίρεση του %1$S από το %2$S;
+webext.remove.confirmation.button=Αφαίρεση
diff --git a/l10n-el/mail/chrome/messenger/addressbook/abAddressBookNameDialog.dtd b/l10n-el/mail/chrome/messenger/addressbook/abAddressBookNameDialog.dtd
new file mode 100644
index 0000000000..7eefd5e2d6
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/addressbook/abAddressBookNameDialog.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/. -->
+
+<!-- Labels -->
+<!ENTITY name.label "Όνομα ευρετηρίου:">
+<!ENTITY name.accesskey "μ">
diff --git a/l10n-el/mail/chrome/messenger/addressbook/abCard.dtd b/l10n-el/mail/chrome/messenger/addressbook/abCard.dtd
new file mode 100644
index 0000000000..79048639dc
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/addressbook/abCard.dtd
@@ -0,0 +1,156 @@
+<!-- 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 Contact.tab "Επαφή">
+<!ENTITY Contact.accesskey "Ε">
+<!ENTITY Name.box "Όνομα">
+
+<!-- LOCALIZATION NOTE:
+ NameField1, NameField2, PhoneticField1, PhoneticField2
+ those fields are either LN or FN depends on the target country.
+ "FirstName" and "LastName" can be swapped for id to change the order
+ but they should not be translated (same applied to phonetic id).
+ Make sure the translation of label corresponds to the order of id.
+-->
+
+<!-- LOCALIZATION NOTE (NameField1.id) : DONT_TRANSLATE -->
+<!ENTITY NameField1.id "FirstName">
+<!-- LOCALIZATION NOTE (NameField2.id) : DONT_TRANSLATE -->
+<!ENTITY NameField2.id "LastName">
+<!-- LOCALIZATION NOTE (PhoneticField1.id) : DONT_TRANSLATE -->
+<!ENTITY PhoneticField1.id "PhoneticFirstName">
+<!-- LOCALIZATION NOTE (PhoneticField2.id) : DONT_TRANSLATE -->
+<!ENTITY PhoneticField2.id "PhoneticLastName">
+
+<!ENTITY NameField1.label "Όνομα:">
+<!ENTITY NameField1.accesskey "Ό">
+<!ENTITY NameField2.label "Επώνυμο:">
+<!ENTITY NameField2.accesskey "ν">
+<!ENTITY PhoneticField1.label "Φωνητικό:">
+<!ENTITY PhoneticField2.label "Φωνητικό:">
+<!ENTITY DisplayName.label "Προβολή:">
+<!ENTITY DisplayName.accesskey "Π">
+<!ENTITY preferDisplayName.label "Να προτιμάται πάντα το όνομα εμφάνισης αντί της επικεφαλίδας μηνύματος">
+<!ENTITY preferDisplayName.accesskey "φ">
+<!ENTITY NickName.label "Ψευδώνυμο:">
+<!ENTITY NickName.accesskey "Ψ">
+
+<!ENTITY PrimaryEmail.label "Email:">
+<!ENTITY PrimaryEmail.accesskey "E">
+<!ENTITY SecondEmail.label "Επιπρόσθετο email:">
+<!ENTITY SecondEmail.accesskey "i">
+<!ENTITY PreferMailFormat.label "Προτιμώμενη μορφή ληφθέντων μηνυμάτων:">
+<!ENTITY PreferMailFormat.accesskey "μ">
+<!ENTITY PlainText.label "Απλό κείμενο">
+<!ENTITY HTML.label "HTML">
+<!ENTITY Unknown.label "Άγνωστη">
+<!ENTITY chatName.label "Όνομα συνομιλίας:">
+
+<!ENTITY WorkPhone.label "Εργασία:">
+<!ENTITY WorkPhone.accesskey "γ">
+<!ENTITY HomePhone.label "Οικία:">
+<!ENTITY HomePhone.accesskey "κ">
+<!ENTITY FaxNumber.label "Φαξ:">
+<!ENTITY FaxNumber.accesskey "ξ">
+<!ENTITY PagerNumber.label "Βομβητής:">
+<!ENTITY PagerNumber.accesskey "β">
+<!ENTITY CellularNumber.label "Κινητό:">
+<!ENTITY CellularNumber.accesskey "η">
+
+<!ENTITY Home.tab "Προσωπικά">
+<!ENTITY Home.accesskey "Π">
+<!ENTITY HomeAddress.label "Διεύθυνση:">
+<!ENTITY HomeAddress.accesskey "θ">
+<!ENTITY HomeAddress2.label "">
+<!ENTITY HomeAddress2.accesskey "">
+<!ENTITY HomeCity.label "Πόλη:">
+<!ENTITY HomeCity.accesskey "λ">
+<!ENTITY HomeState.label "Πολιτεία/Επαρχία:">
+<!ENTITY HomeState.accesskey "Π">
+<!ENTITY HomeZipCode.label "Ταχυδρομικός κώδικας:">
+<!ENTITY HomeZipCode.accesskey "Τ">
+<!ENTITY HomeCountry.label "Χώρα:">
+<!ENTITY HomeCountry.accesskey "ρ">
+<!ENTITY HomeWebPage.label "Ιστοσελίδα:">
+<!ENTITY HomeWebPage.accesskey "σ">
+<!ENTITY Birthday.label "Γενέθλια:">
+<!ENTITY Birthday.accesskey "Γ">
+<!ENTITY Month.placeholder "Μήνας">
+<!ENTITY Day.placeholder "Ημέρα">
+<!ENTITY Year.placeholder "Έτος">
+<!ENTITY Age.label "Ηλικία:">
+<!ENTITY Age.placeholder "Ηλικία">
+
+<!ENTITY Work.tab "Εργασία">
+<!ENTITY Work.accesskey "Ε">
+<!ENTITY JobTitle.label "Τίτλος:">
+<!ENTITY JobTitle.accesskey "τ">
+<!ENTITY Department.label "Τμήμα:">
+<!ENTITY Department.accesskey "μ">
+<!ENTITY Company.label "Οργανισμός:">
+<!ENTITY Company.accesskey "ν">
+<!ENTITY WorkAddress.label "Διεύθυνση:">
+<!ENTITY WorkAddress.accesskey "θ">
+<!ENTITY WorkAddress2.label "">
+<!ENTITY WorkAddress2.accesskey "">
+<!ENTITY WorkCity.label "Πόλη:">
+<!ENTITY WorkCity.accesskey "λ">
+<!ENTITY WorkState.label "Πολιτεία/Επαρχία:">
+<!ENTITY WorkState.accesskey "Π">
+<!ENTITY WorkZipCode.label "Ταχυδρομικός κώδικας:">
+<!ENTITY WorkZipCode.accesskey "Τ">
+<!ENTITY WorkCountry.label "Χώρα:">
+<!ENTITY WorkCountry.accesskey "ρ">
+<!ENTITY WorkWebPage.label "Ιστοσελίδα:">
+<!ENTITY WorkWebPage.accesskey "σ">
+
+<!ENTITY Other.tab "Άλλα">
+<!ENTITY Other.accesskey "λ">
+<!ENTITY Custom1.label "Προσαρμοσμένο 1:">
+<!ENTITY Custom1.accesskey "1">
+<!ENTITY Custom2.label "Προσαρμοσμένο 2:">
+<!ENTITY Custom2.accesskey "2">
+<!ENTITY Custom3.label "Προσαρμοσμένο 3:">
+<!ENTITY Custom3.accesskey "3">
+<!ENTITY Custom4.label "Προσαρμοσμένο 4:">
+<!ENTITY Custom4.accesskey "4">
+<!ENTITY Notes.label "Σημειώσεις:">
+<!ENTITY Notes.accesskey "Σ">
+
+<!ENTITY Chat.tab "Συνομιλία">
+<!ENTITY Chat.accesskey "α">
+<!ENTITY Gtalk.label "Google Talk:">
+<!ENTITY Gtalk.accesskey "G">
+<!ENTITY AIM.label "AIM:">
+<!ENTITY AIM2.accesskey "M">
+<!ENTITY Yahoo.label "Yahoo!:">
+<!ENTITY Yahoo.accesskey "Y">
+<!ENTITY Skype.label "Skype:">
+<!ENTITY Skype.accesskey "S">
+<!ENTITY QQ.label "QQ:">
+<!ENTITY QQ.accesskey "Q">
+<!ENTITY MSN.label "MSN:">
+<!ENTITY MSN2.accesskey "N">
+<!ENTITY ICQ.label "ICQ:">
+<!ENTITY ICQ.accesskey "I">
+<!ENTITY XMPP.label "Jabber ID:">
+<!ENTITY XMPP.accesskey "J">
+<!ENTITY IRC.label "Ψευδώνυμο IRC:">
+<!ENTITY IRC.accesskey "R">
+
+<!ENTITY Photo.tab "Φωτογραφία">
+<!ENTITY Photo.accesskey "ω">
+<!ENTITY GenericPhoto.label "Γενική φωτογραφία">
+<!ENTITY GenericPhoto.accesskey "Γ">
+<!ENTITY DefaultPhoto.label "Προεπιλογή">
+<!ENTITY PhotoFile.label "Από αυτό τον υπολογιστή">
+<!ENTITY PhotoFile.accesskey "υ">
+<!ENTITY BrowsePhoto.label "Περιήγηση">
+<!ENTITY BrowsePhoto.accesskey "γ">
+<!ENTITY PhotoURL.label "Από το διαδίκτυο">
+<!ENTITY PhotoURL.accesskey "κ">
+<!ENTITY PhotoURL.placeholder "Επικολλήστε ή εισάγετε τη διαδικτυακή διεύθυνση μιας φωτογραφίας">
+<!ENTITY UpdatePhoto.label "Ενημέρωση">
+<!ENTITY UpdatePhoto.accesskey "μ">
+<!ENTITY PhotoDropTarget.label "Σύρετε μια νέα φωτογραφία εδώ">
diff --git a/l10n-el/mail/chrome/messenger/addressbook/abContactsPanel.dtd b/l10n-el/mail/chrome/messenger/addressbook/abContactsPanel.dtd
new file mode 100644
index 0000000000..e73c235874
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/addressbook/abContactsPanel.dtd
@@ -0,0 +1,49 @@
+<!-- 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 propertiesMenu.label "Ιδιότητες">
+<!ENTITY propertiesMenu.accesskey "ι">
+<!ENTITY propertiesCmd.key "i">
+<!ENTITY abPropertiesMenu.label "Ιδιότητες ευρετηρίου">
+<!ENTITY abPropertiesMenu.accesskey "ι">
+<!ENTITY contactPropertiesMenu.label "Ιδιότητες επαφής">
+<!ENTITY contactPropertiesMenu.accesskey "ι">
+<!ENTITY mailingListPropertiesMenu.label "Ιδιότητες λίστας αλληλογραφίας">
+<!ENTITY mailingListPropertiesMenu.accesskey "ι">
+
+<!ENTITY abContextMenuButton.tooltip "Προβολή μενού επιλογών ευρετηρίου διευθύνσεων">
+<!ENTITY addressbookPicker.label "Ευρετήριο:">
+<!ENTITY addressbookPicker.accesskey "υ">
+<!ENTITY searchContacts.label "Αναζήτηση επαφών:">
+<!ENTITY searchContacts.accesskey "ν">
+<!ENTITY SearchNameOrEmail.label "Όνομα ή email">
+
+<!ENTITY addtoToFieldMenu.label "Προσθήκη στο πεδίο Προς">
+<!ENTITY addtoToFieldMenu.accesskey "Π">
+<!ENTITY addtoCcFieldMenu.label "Προσθήκη στο πεδίο Κοιν">
+<!ENTITY addtoCcFieldMenu.accesskey "Κ">
+<!ENTITY addtoBccFieldMenu.label "Προσθήκη στο πεδίο Κρυφ. κοιν.">
+<!ENTITY addtoBccFieldMenu.accesskey "φ">
+<!ENTITY deleteAddrBookCard.label "Διαγραφή">
+<!ENTITY deleteAddrBookCard.accesskey "Δ">
+<!ENTITY propertiesContext.label "Ιδιότητες">
+<!ENTITY propertiesContext.accesskey "ι">
+<!ENTITY abPropertiesContext.label "Ιδιότητες">
+<!ENTITY abPropertiesContext.accesskey "ι">
+<!ENTITY editContactContext.label "Επεξεργασία επαφής">
+<!ENTITY editContactContext.accesskey "Ε">
+<!ENTITY editMailingListContext.label "Επεξεργασία λίστας">
+<!ENTITY editMailingListContext.accesskey "Ε">
+
+<!ENTITY newContactAbContext.label "Νέα επαφή">
+<!ENTITY newContactAbContext.accesskey "Ε">
+<!ENTITY newListAbContext.label "Νέα λίστα">
+<!ENTITY newListAbContext.accesskey "Λ">
+
+<!ENTITY toButton.label "Προσθήκη στο Πρός:">
+<!ENTITY toButton.accesskey "Π">
+<!ENTITY ccButton.label "Προσθήκη στο Κοιν:">
+<!ENTITY ccButton.accesskey "θ">
+<!ENTITY bccButton.label "Προσθήκη στο Κρυφ. κοιν: ">
+<!ENTITY bccButton.accesskey "φ">
diff --git a/l10n-el/mail/chrome/messenger/addressbook/abMailListDialog.dtd b/l10n-el/mail/chrome/messenger/addressbook/abMailListDialog.dtd
new file mode 100644
index 0000000000..bc0ad67a51
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/addressbook/abMailListDialog.dtd
@@ -0,0 +1,21 @@
+<!-- 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/. -->
+
+<!-- Title -->
+<!ENTITY mailListWindowAdd.title "Νέα λίστα αλληλογραφίας">
+
+<!-- Labels and Access Keys -->
+<!ENTITY addToAddressBook.label "Προσθήκη σε:">
+<!ENTITY addToAddressBook.accesskey "θ">
+<!ENTITY ListName.label "Όνομα λίστας: ">
+<!ENTITY ListName.accesskey "Λ">
+<!ENTITY ListNickName.label "Ψευδώνυμο λίστας: ">
+<!ENTITY ListNickName.accesskey "ν">
+<!ENTITY ListDescription.label "Περιγραφή:">
+<!ENTITY ListDescription.accesskey "ε">
+<!-- See bug 58485, when we implement drag and drop, add 'or drag addresses' back in -->
+<!ENTITY AddressTitle.label "Εισάγετε διευθύνσεις email για προσθήκη στη λίστα αλληλογραφίας:">
+<!ENTITY AddressTitle.accesskey "τ">
+<!ENTITY UpButton.label "Μετακίνηση πάνω">
+<!ENTITY DownButton.label "Μετακίνηση κάτω">
diff --git a/l10n-el/mail/chrome/messenger/addressbook/abMainWindow.dtd b/l10n-el/mail/chrome/messenger/addressbook/abMainWindow.dtd
new file mode 100644
index 0000000000..db2ade2ee9
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/addressbook/abMainWindow.dtd
@@ -0,0 +1,221 @@
+<!-- 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 addressbookWindow.title "Ευρετήριο">
+<!ENTITY blankResultsPaneMessage.label "Αυτό το ευρετήριο εμφανίζει επαφές μόνο μετά από μια αναζήτηση">
+<!ENTITY localResultsOnlyMessage.label "Επαφές από απομακρυσμένα ευρετήρια δεν εμφανίζονται μέχρι να γίνει αναζήτηση">
+
+<!-- File Menu -->
+<!ENTITY fileMenu.label "Αρχείο">
+<!ENTITY fileMenu.accesskey "χ">
+<!ENTITY newMenu.label "Νέο">
+<!ENTITY newMenu.accesskey "Ν">
+<!ENTITY newContact.label "Επαφή ευρετηρίου…">
+<!ENTITY newContact.accesskey "φ">
+<!ENTITY newContact.key "N">
+<!ENTITY newListCmd.label "Λίστα αλληλογραφίας…">
+<!ENTITY newListCmd.accesskey "Λ">
+<!ENTITY newAddressBookCmd.label "Ευρετήριο…">
+<!ENTITY newAddressBookCmd.accesskey "ρ">
+<!ENTITY newCardDAVBookCmd.label "Ευρετήριο CardDAV…">
+<!ENTITY newCardDAVBookCmd.accesskey "V">
+<!ENTITY newLDAPDirectoryCmd.label "Κατάλογος LDAP…">
+<!ENTITY newLDAPDirectoryCmd.accesskey "Κ">
+<!ENTITY newMessageCmd.label "Μήνυμα">
+<!ENTITY newMessageCmd.key "M">
+<!ENTITY newMessageCmd.accesskey "Μ">
+<!-- LOCALIZATION NOTE (osxAddressBook) : These entities are only used on Mac -->
+<!ENTITY osxAddressBook.label "Χρήση ευρετηρίου διευθύνσεων Mac OS X">
+<!ENTITY osxAddressBook.accesskey "ο">
+<!ENTITY closeCmd.label "Κλείσιμο">
+<!ENTITY closeCmd.key "W">
+<!ENTITY closeCmd.accesskey "Κ">
+<!ENTITY printSetupCmd.label "Διαμόρφωση σελίδας…">
+<!ENTITY printSetupCmd.accesskey "Δ">
+<!ENTITY printPreviewContactCmd.label "Προεπισκόπηση εκτύπωσης επαφής">
+<!ENTITY printPreviewContactCmd.accesskey "ε">
+<!ENTITY printPreviewAddressBook.label "Προεπισκόπηση εκτύπωσης ευρετηρίου διευθύνσεων">
+<!ENTITY printPreviewAddressBook.accesskey "δ">
+<!ENTITY printContactCmd.label "Εκτύπωση επαφής…">
+<!ENTITY printContactCmd.accesskey "π">
+<!ENTITY printContactCmd.key "P">
+<!ENTITY printAddressBook.label "Εκτύπωση ευρετηρίου…">
+<!ENTITY printAddressBook.accesskey "κ">
+
+<!-- Edit Menu -->
+<!ENTITY editMenu.label "Επεξεργασία">
+<!ENTITY editMenu.accesskey "ξ">
+<!ENTITY deleteCmd.label "Διαγραφή">
+<!ENTITY deleteAbCmd.label "Διαγραφή ευρετηρίου">
+<!ENTITY deleteContactCmd.label "Διαγραφή επαφής">
+<!ENTITY deleteContactsCmd.label "Διαγραφή επαφών">
+<!ENTITY deleteListCmd.label "Διαγραφή λίστας">
+<!ENTITY deleteListsCmd.label "Διαγραφή λιστών">
+<!ENTITY deleteItemsCmd.label "Διαγραφή στοιχείων">
+<!ENTITY searchAddressesCmd.key "f">
+<!ENTITY propertiesMenu.label "Ιδιότητες">
+<!ENTITY propertiesMenu.accesskey "ι">
+<!ENTITY propertiesCmd.key "i">
+<!ENTITY abPropertiesMenu.label "Ιδιότητες ευρετηρίου">
+<!ENTITY abPropertiesMenu.accesskey "ι">
+<!ENTITY contactPropertiesMenu.label "Ιδιότητες επαφής">
+<!ENTITY contactPropertiesMenu.accesskey "ι">
+<!ENTITY mailingListPropertiesMenu.label "Ιδιότητες λίστας αλληλογραφίας">
+<!ENTITY mailingListPropertiesMenu.accesskey "ι">
+
+<!-- View Menu -->
+<!ENTITY viewMenu.label "Προβολή">
+<!ENTITY viewMenu.accesskey "β">
+<!ENTITY viewToolbarsMenu.label "Γραμμές εργαλείων">
+<!ENTITY viewToolbarsMenu.accesskey "γ">
+<!ENTITY menubarCmd.label "Γραμμή μενού">
+<!ENTITY menubarCmd.accesskey "μ">
+<!ENTITY showAbToolbarCmd.label "Γραμμή ευρετηρίων διευθύνσεων">
+<!ENTITY showAbToolbarCmd.accesskey "ρ">
+<!ENTITY showTaskbarCmd.label "Γραμμή κατάστασης">
+<!ENTITY showTaskbarCmd.accesskey "μ">
+<!ENTITY customizeToolbar.label "Προσαρμογή…">
+<!ENTITY customizeToolbar.accesskey "ρ">
+<!ENTITY layoutMenu.label "Διάταξη">
+<!ENTITY layoutMenu.accesskey "ξ">
+<!ENTITY showDirectoryPane.label "Προβολή καταλόγων">
+<!ENTITY showDirectoryPane.accesskey "Π">
+<!ENTITY showContactPane2.label "Προβολή επαφών">
+<!ENTITY showContactPane2.accesskey "φ">
+<!ENTITY menu_ShowNameAs.label "Εμφάνιση ονόματος ως">
+<!ENTITY menu_ShowNameAs.accesskey "ν">
+<!-- LOCALIZATION NOTE (firstLastCmd2.label): We're not including a comma here
+because displayed names don't have the comma in between. -->
+<!ENTITY firstLastCmd2.label "Όνομα Επώνυμο">
+<!ENTITY firstLastCmd2.accesskey "μ">
+<!ENTITY lastFirstCmd.label "Επώνυμο, Όνομα">
+<!ENTITY lastFirstCmd.accesskey "π">
+<!ENTITY displayNameCmd.label "Εμφανιζόμενο όνομα">
+<!ENTITY displayNameCmd.accesskey "ν">
+<!ENTITY sortMenu.label "Ταξινόμηση κατά">
+<!ENTITY sortMenu.accesskey "Τ">
+
+<!-- Tools Menu -->
+<!ENTITY tasksMenu.label "Εργαλεία">
+<!ENTITY tasksMenu.accesskey "γ">
+<!ENTITY messengerCmd.label "Αλληλογραφία &amp; ομάδες συζήτησης">
+<!ENTITY messengerCmd.accesskey "λ">
+<!ENTITY messengerCmd.commandkey "1">
+<!ENTITY searchAddressesCmd.label "Αναζήτηση διευθύνσεων…">
+<!ENTITY searchAddressesCmd.accesskey "ζ">
+<!ENTITY importCmd.label "Εισαγωγή…">
+<!ENTITY importCmd.accesskey "ι">
+<!ENTITY exportCmd.label "Εξαγωγή…">
+<!ENTITY exportCmd.accesskey "ξ">
+<!ENTITY preferencesCmd2.label "Επιλογές">
+<!ENTITY preferencesCmd2.accesskey "π">
+<!ENTITY preferencesCmdUnix.label "Προτιμήσεις">
+<!ENTITY preferencesCmdUnix.accesskey "μ">
+
+<!-- Address Book Toolbar and Context Menus -->
+<!ENTITY newContactButton.label "Νέα επαφή">
+<!ENTITY newContactButton.accesskey "φ">
+<!ENTITY newlistButton.label "Νέα λίστα">
+<!ENTITY newlistButton.accesskey "λ">
+<!ENTITY showAsDefault.label "Προεπιλεγμένος κατάλογος εκκίνησης">
+<!ENTITY showAsDefault.accesskey "Ρ">
+<!ENTITY editPropertiesButton.label "Επεξεργασία">
+<!ENTITY propertiesContext.label "Ιδιότητες">
+<!ENTITY propertiesContext.accesskey "ι">
+<!ENTITY abPropertiesContext.label "Ιδιότητες">
+<!ENTITY abPropertiesContext.accesskey "ι">
+<!ENTITY syncContext.label "Συγχρονισμός">
+<!ENTITY syncContext.accesskey "υ">
+<!ENTITY editContactContext.label "Επεξεργασία επαφής">
+<!ENTITY editContactContext.accesskey "Ε">
+<!ENTITY editMailingListContext.label "Επεξεργασία λίστας">
+<!ENTITY editMailingListContext.accesskey "Ε">
+<!ENTITY newmsgButton.label "Σύνταξη">
+<!ENTITY newmsgButton.accesskey "Σ">
+<!ENTITY newIM.label "Άμεσο μήνυμα">
+<!ENTITY newIM.accesskey "α">
+<!ENTITY printButton.label "Εκτύπωση…">
+<!ENTITY printButton.accesskey "π">
+<!ENTITY deleteButton2.label "Διαγραφή">
+<!ENTITY deleteButton2.accesskey "Δ">
+
+<!-- Address Book Toolbar Tooltips -->
+<!ENTITY columnChooser.tooltip "Επιλέξτε στήλες προς εμφάνιση">
+<!ENTITY newContactButton.tooltip "Δημιουργία νέας επαφής στο ευρετήριο">
+<!ENTITY newlistButton.tooltip "Δημιουργία νέας λίστας">
+<!ENTITY editPropertiesButton.tooltip "Επεξεργασία επιλεγμένου στοιχείου">
+<!ENTITY editAbPropertiesButton.tooltip "Επεξεργασία ιδιοτήτων επιλεγμένου ευρετηρίου διευθύνσεων">
+<!ENTITY editContactPropertiesButton.tooltip "Επεξεργασία επιλεγμένης επαφής">
+<!ENTITY editMailingListPropertiesButton.tooltip "Επεξεργασία επιλεγμένης λίστας αλληλογραφίας">
+<!ENTITY newmsgButton.tooltip "Αποστολή ενός μηνύματος αλληλογραφίας">
+<!ENTITY newIM.tooltip "Αποστολή ενός άμεσου μηνύματος ή chat">
+<!ENTITY deleteButton2.tooltip "Διαγραφή επιλεγμένου αντικειμένου">
+
+<!-- Search Bar -->
+<!ENTITY SearchNameOrEmail.label "Όνομα ή email">
+<!ENTITY SearchNameOrEmail.accesskey "ν">
+<!ENTITY advancedButton.tooltip "Προχωρημένη αναζήτηση διεύθυνσης">
+<!ENTITY quickSearchCmd.key "k">
+<!ENTITY searchItem.title "Γρήγορη αναζήτηση">
+
+<!-- Results Pane -->
+<!ENTITY Addrbook.label "Ευρετήριο">
+<!ENTITY Addrbook.accesskey "ρ">
+<!ENTITY GeneratedName.label "Όνομα">
+<!ENTITY GeneratedName.accesskey "ν">
+<!ENTITY PrimaryEmail.label "Email">
+<!ENTITY PrimaryEmail.accesskey "E">
+<!ENTITY ChatName.label "Όνομα συνομιλίας">
+<!ENTITY ChatName.accesskey "σ">
+<!ENTITY Company.label "Εταιρεία">
+<!ENTITY Company.accesskey "ρ">
+<!ENTITY NickName.label "Ψευδώνυμο">
+<!ENTITY NickName.accesskey "δ">
+<!ENTITY SecondEmail.label "Επιπρόσθετο email">
+<!ENTITY SecondEmail.accesskey "θ">
+<!ENTITY Department.label "Τμήμα">
+<!ENTITY Department.accesskey "μ">
+<!ENTITY JobTitle.label "Τίτλος">
+<!ENTITY JobTitle.accesskey "λ">
+<!ENTITY CellularNumber.label "Κινητό">
+<!ENTITY CellularNumber.accesskey "η">
+<!ENTITY PagerNumber.label "Βομβητής">
+<!ENTITY PagerNumber.accesskey "Β">
+<!ENTITY FaxNumber.label "Φαξ">
+<!ENTITY FaxNumber.accesskey "Φ">
+<!ENTITY HomePhone.label "Τηλέφωνο οικίας">
+<!ENTITY HomePhone.accesskey "ο">
+<!ENTITY WorkPhone.label "Τηλέφωνο εργασίας">
+<!ENTITY WorkPhone.accesskey "γ">
+<!ENTITY sortAscending.label "Αύξουσα">
+<!ENTITY sortAscending.accesskey "ξ">
+<!ENTITY sortDescending.label "Φθίνουσα">
+<!ENTITY sortDescending.accesskey "Φ">
+<!ENTITY _PhoneticName.label "Φωνητικό όνομα">
+<!ENTITY _PhoneticName.accesskey "ω">
+
+<!-- Card Summary Pane -->
+<!-- Box Headings -->
+<!ENTITY contact.heading "Επαφή">
+<!ENTITY home.heading "Οικία">
+<!ENTITY other.heading "Άλλο">
+<!ENTITY chat.heading "Συνομιλία">
+<!ENTITY phone.heading "Τηλέφωνο">
+<!ENTITY work.heading "Εργασία">
+<!-- Special Box Headings, for mailing lists -->
+<!ENTITY description.heading "Περιγραφή">
+<!ENTITY addresses.heading "Διευθύνσεις">
+<!-- For Map It! -->
+<!ENTITY mapItButton.label "Λήψη χάρτη">
+<!ENTITY mapIt.tooltip "Εμφάνιση ενός χάρτη αυτής της διεύθυνσης από το διαδίκτυο">
+
+<!-- Status Bar -->
+<!ENTITY statusText.label "">
+
+<!-- Mac OS X Window Menu -->
+<!ENTITY windowMenu.label "Παράθυρο">
+<!ENTITY minimizeWindow.label "Ελαχιστοποίηση">
+<!ENTITY minimizeWindow.key "m">
+<!ENTITY bringAllToFront.label "Μεταφορά όλων μπροστά">
+<!ENTITY zoomWindow.label "Ζουμ">
diff --git a/l10n-el/mail/chrome/messenger/addressbook/abNewCardDialog.dtd b/l10n-el/mail/chrome/messenger/addressbook/abNewCardDialog.dtd
new file mode 100644
index 0000000000..3145242644
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/addressbook/abNewCardDialog.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/. -->
+
+<!-- Labels -->
+<!ENTITY chooseAddressBook.label "Προσθήκη σε:">
+<!ENTITY chooseAddressBook.accesskey "θ">
diff --git a/l10n-el/mail/chrome/messenger/addressbook/abResultsPane.dtd b/l10n-el/mail/chrome/messenger/addressbook/abResultsPane.dtd
new file mode 100644
index 0000000000..eee13f748e
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/addressbook/abResultsPane.dtd
@@ -0,0 +1,38 @@
+<!-- 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 Addrbook.label "Ευρετήριο">
+<!ENTITY Addrbook.accesskey "Ε">
+<!ENTITY GeneratedName.label "Όνομα">
+<!ENTITY GeneratedName.accesskey "ν">
+<!ENTITY PrimaryEmail.label "Email">
+<!ENTITY PrimaryEmail.accesskey "E">
+<!ENTITY Company.label "Εταιρεία">
+<!ENTITY Company.accesskey "ρ">
+<!ENTITY _PhoneticName.label "Φωνητικό όνομα">
+<!ENTITY _PhoneticName.accesskey "ω">
+<!ENTITY NickName.label "Ψευδώνυμο">
+<!ENTITY NickName.accesskey "δ">
+<!ENTITY SecondEmail.label "Επιπρόσθετο email">
+<!ENTITY SecondEmail.accesskey "l">
+<!ENTITY Department.label "Τμήμα">
+<!ENTITY Department.accesskey "μ">
+<!ENTITY JobTitle.label "Τίτλος">
+<!ENTITY JobTitle.accesskey "Τ">
+<!ENTITY CellularNumber.label "Κινητό">
+<!ENTITY CellularNumber.accesskey "Κ">
+<!ENTITY PagerNumber.label "Βομβητής">
+<!ENTITY PagerNumber.accesskey "Β">
+<!ENTITY FaxNumber.label "Φαξ">
+<!ENTITY FaxNumber.accesskey "Φ">
+<!ENTITY HomePhone.label "Τηλέφωνο οικίας">
+<!ENTITY HomePhone.accesskey "Τ">
+<!ENTITY WorkPhone.label "Τηλέφωνο εργασίας">
+<!ENTITY WorkPhone.accesskey "ε">
+<!ENTITY ChatName.label "Όνομα συνομιλίας">
+<!ENTITY ChatName.accesskey "Ό">
+<!ENTITY sortAscending.label "Αύξουσα">
+<!ENTITY sortAscending.accesskey "Α">
+<!ENTITY sortDescending.label "Φθίνουσα">
+<!ENTITY sortDescending.accesskey "Φ">
diff --git a/l10n-el/mail/chrome/messenger/addressbook/addressBook.properties b/l10n-el/mail/chrome/messenger/addressbook/addressBook.properties
new file mode 100644
index 0000000000..84e627fe62
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/addressbook/addressBook.properties
@@ -0,0 +1,262 @@
+# 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/.
+
+# The following are used by the Mailing list dialog.
+# LOCALIZATION NOTE (mailingListTitleEdit): %S will be replaced by the Mailing List's display name.
+mailingListTitleEdit=Επεξεργασία "%S"
+emptyListName=Πρέπει να εισάγετε ένα όνομα λίστας.
+badListNameCharacters=Ένα όνομα λίστας δεν μπορεί να περιλαμβάνει τους εξής χαρακτήρες: < > ; , "
+badListNameSpaces=Ένα όνομα λίστας δεν μπορεί να περιλαμβάνει πολλαπλά παρακείμενα κενά.
+lastFirstFormat=%S, %S
+firstLastFormat=%S %S
+
+allAddressBooks=Όλα τα ευρετήρια
+
+newContactTitle=Νέα επαφή
+# %S will be the contact's display name
+newContactTitleWithDisplayName=Νέα επαφή για %S
+editContactTitle=Επεξεργασία επαφής
+# %S will be the contact's display name
+editContactTitleWithDisplayName=Επεξεργασία επαφής για %S
+# don't translate vCard
+editVCardTitle=Επεξεργασία vCard
+# %S will be the card's display name, don't translate vCard
+editVCardTitleWithDisplayName=Επεξεργασία vCard για %S
+
+## LOCALIZATION NOTE (cardRequiredDataMissingMessage): do not localize \n
+cardRequiredDataMissingMessage=Θα πρέπει να εισάγετε τουλάχιστον ένα από τα παρακάτω:\nΔιεύθυνση Email, Όνομα, Επίθετο, Εμφανιζόμενο όνομα, Οργανισμός.
+cardRequiredDataMissingTitle=Λείπουν απαιτούμενες πληροφορίες
+incorrectEmailAddressFormatMessage=Η κύρια διεύθυνση email πρέπει να είναι της μορφής user@host.
+incorrectEmailAddressFormatTitle=Λάθος μορφή διεύθυνσης email
+
+viewListTitle=Λίστα αλληλογραφίας: %S
+mailListNameExistsTitle=Η λίστα αλληλογραφίας υπάρχει ήδη
+mailListNameExistsMessage=Μια λίστα αλληλογραφίας με αυτό το όνομα υπάρχει ήδη. Παρακαλώ επιλέξτε ένα διαφορετικό όνομα.
+
+confirmDeleteThisContactTitle=Διαγραφή επαφής
+# LOCALIZATION NOTE (confirmDeleteThisContact):
+# #1 The name of the selected contact
+# Don't localize "\n• #1" unless your local layout comes out wrong.
+# Example: Are you sure you want to delete this contact?
+# • John Doe
+confirmDeleteThisContact=Θέλετε σίγουρα να διαγράψετε αυτή την επαφή;\n• #1
+
+confirmDelete2orMoreContactsTitle=Διαγραφή Πολλαπλών Επαφών
+# LOCALIZATION NOTE (confirmDelete2orMoreContacts):
+# Semicolon list of plural forms.
+# See: https://developer.mozilla.org/docs/Localization_and_Plurals
+# #1 The number of selected contacts, always more than 1.
+# Example: Are you sure you want to delete these 3 contacts?
+confirmDelete2orMoreContacts=Θέλετε σίγουρα να διαγράψετε αυτή τη #1 επαφή;;Θέλετε σίγουρα να διαγράψετε αυτές τις #1 επαφές;
+
+confirmRemoveThisContactTitle=Αφαίρεση επαφής
+# LOCALIZATION NOTE (confirmRemoveThisContact):
+# #1 The name of the selected contact
+# #2 The name of the containing mailing list
+# This title is about a contact in a mailing list, so it will not be deleted,
+# but only removed from the list.
+# Don't localize "\n• #1" unless your local layout comes out wrong.
+# Example: Are you sure you want to remove this contact from the mailing list 'Customers List'?
+# • John Doe
+confirmRemoveThisContact=Θέλετε σίγουρα να διαγράψετε αυτή την επαφή από τη λίστα αλληλογραφίας '#2';\n• #1
+
+confirmRemove2orMoreContactsTitle=Αφαίρεση Πολλαπλών Επαφών
+# LOCALIZATION NOTE (confirmRemove2orMoreContacts):
+# Semicolon list of singular and plural forms.
+# See: https://developer.mozilla.org/docs/Localization_and_Plurals
+# #1 The number of selected contacts, always more than 1.
+# #2 The name of the containing mailing list
+# Example: Are you sure you want to remove these 3 contacts from the mailing list 'Customers List'?
+confirmRemove2orMoreContacts=Θέλετε σίγουρα να αφαιρέσετε αυτή τη #1 επαφή από τη λίστα αλληλογραφίας '#2';;Θέλετε σίγουρα να αφαιρέσετε αυτές τις #1 επαφές από τη λίστα αλληλογραφίας '#2';
+
+confirmDeleteThisMailingListTitle=Διαγραφή Λίστας Ταχυδρομείου
+# LOCALIZATION NOTE (confirmDeleteThisMailingList):
+# #1 The name of the selected mailing list
+# Don't localize "\n• #1" unless your local layout comes out wrong.
+# Example: Are you sure you want to delete this mailing list?
+# • Customers List
+confirmDeleteThisMailingList=Θέλετε σίγουρα να διαγράψετε αυτή τη λίστα αλληλογραφίας;\n• #1
+
+confirmDelete2orMoreMailingListsTitle=Διαγραφή Πολλαπλών Λιστών Ταχυδρομείου
+# LOCALIZATION NOTE (confirmDelete2orMoreMailingLists):
+# Semicolon list of plural forms.
+# See: https://developer.mozilla.org/docs/Localization_and_Plurals
+# #1 The number of selected mailing lists, always more than 1
+# Example: Are you sure you want to delete these 3 mailing lists?
+confirmDelete2orMoreMailingLists=Θέλετε σίγουρα να διαγράψετε αυτή τη #1 λίστα αλληλογραφίας;;Θέλετε σίγουρα να διαγράψετε αυτές τις #1 λίστες αλληλογραφίας;
+
+confirmDelete2orMoreContactsAndListsTitle=Διαγραφή Επαφών και Λιστών Ταχυδρομείου
+# LOCALIZATION NOTE (confirmDelete2orMoreContactsAndLists):
+# Semicolon list of and plural forms.
+# See: https://developer.mozilla.org/docs/Localization_and_Plurals
+# #1 The number of selected contacts and mailing lists, always more than 1
+# Example: Are you sure you want to delete these 3 contacts and mailing lists?
+confirmDelete2orMoreContactsAndLists=Θέλετε σίγουρα να διαγράψετε αυτές τις #1 επαφές και λίστες αλληλογραφίας;;Θέλετε σίγουρα να διαγράψετε αυτές τις #1 επαφές και λίστες αλληλογραφίας;
+
+confirmDeleteThisAddressbookTitle=Διαγραφή ευρετηρίου
+# LOCALIZATION NOTE (confirmDeleteThisAddressbookTitle):
+# #1 The name of the selected address book
+# Don't localize "\n• #1" unless your local layout comes out wrong.
+# Example: Are you sure you want to delete this address book and all of its contacts?
+# • Friends and Family Address Book
+confirmDeleteThisAddressbook=Θέλετε σίγουρα να διαγράψετε αυτό το ευρετήριο και όλες τις επαφές του;\n• #1
+
+confirmDeleteThisLDAPDirTitle=Διαγραφή Τοπικού Καταλόγου LDAP
+# LOCALIZATION NOTE (confirmDeleteThisLDAPDir):
+# #1 The name of the selected LDAP directory
+# Don't localize "\n• #1" unless your local layout comes out wrong.
+# Example: Are you sure you want to delete the local copy of this LDAP directory and all of its offline contacts?
+# • Mozilla LDAP Directory
+confirmDeleteThisLDAPDir=Είστε σίγουροι για τη διαγραφή του τοπικού αντιγράφου του καταλόγου LDAP και όλων των εκτός σύνδεσης επαφών του;\n• #1
+
+confirmDeleteThisCollectionAddressbookTitle=Διαγραφή Συλλογής Βιβλίου Διευθύνσεων
+# LOCALIZATION NOTE (confirmDeleteThisCollectionAddressbook):
+# #1 The name of the selected collection address book
+# #2 The name of the application (Thunderbird)
+# Don't localize "\n• #1" unless your local layout comes out wrong.
+# Example: If this address book is deleted, Thunderbird will no longer collect addresses.
+# Are you sure you want to delete this address book and all of its contacts?
+# • My Collecting Addressbook
+confirmDeleteThisCollectionAddressbook=Αν διαγραφεί αυτό το ευρετήριο διευθύνσεων, το #2 δεν θα συλλέγει πλέον διευθύνσεις.\nΘέλετε σίγουρα να διαγράψετε αυτό το ευρετήριο διευθύνσεων και όλες τις επαφές του;\n• #1
+
+propertyPrimaryEmail=Email
+propertyListName=Όνομα λίστας
+propertySecondaryEmail=Επιπρόσθετο email
+propertyNickname=Ψευδώνυμο
+propertyDisplayName=Όνομα
+propertyWork=Εργασία
+propertyHome=Οικία
+propertyFax=Φαξ
+propertyCellular=Κινητό
+propertyPager=Βομβητής
+propertyBirthday=Γενέθλια
+propertyCustom1=Προσαρμοσμένο 1
+propertyCustom2=Προσαρμοσμένο 2
+propertyCustom3=Προσαρμοσμένο 3
+propertyCustom4=Προσαρμοσμένο 4
+
+propertyGtalk=Google Talk
+propertyAIM=AIM
+propertyYahoo=Yahoo!
+propertySkype=Skype
+propertyQQ=QQ
+propertyMSN=MSN
+propertyICQ=ICQ
+propertyXMPP=Αναγνωριστικό Jabber
+propertyIRC=Ψευδώνυμο IRC
+
+## LOCALIZATION NOTE (cityAndStateAndZip):
+## %1$S is city, %2$S is state, %3$S is zip
+cityAndStateAndZip=%1$S, %2$S %3$S
+## LOCALIZATION NOTE (cityAndStateNoZip):
+## %1$S is city, %2$S is state
+cityAndStateNoZip=%1$S, %2$S
+## LOCALIZATION NOTE (cityOrStateAndZip):
+## %1$S is city or state, %2$S is zip
+cityOrStateAndZip=%1$S %2$S
+
+stateZipSeparator=
+
+prefixTo=Προς
+prefixCc=Κοιν
+prefixBcc=Κρυφή κοιν.
+addressBook=Ευρετήριο διευθύνσεων
+
+# Contact photo management
+browsePhoto=Φωτογραφία επαφής
+stateImageSave=Αποθήκευση της εικόνας…
+errorInvalidUri=Σφάλμα: Μη έγκυρη πηγή εικόνας.
+errorNotAvailable=Σφάλμα: Το αρχείο δεν είναι προσβάσιμο.
+errorInvalidImage=Σφάλμα: Επιτρέπονται μόνο εικόνες τύπου JPG, PNG και GIF.
+errorSaveOperation=Σφάλμα: Δεν ήταν δυνατή η αποθήκευση της εικόνας.
+
+# mailnews.js
+ldap_2.servers.pab.description=Προσωπικό ευρετήριο
+ldap_2.servers.history.description=Συλλεγμένες διευθύνσεις
+## LOCALIZATION NOTE (ldap_2.servers.osx.description is only used on Mac OS X)
+ldap_2.servers.osx.description=Βιβλίο διευθύνσεων του Mac OS X
+
+# status bar stuff
+## LOCALIZATION NOTE (totalContactStatus):
+## %1$S is address book name, %2$S is contact count
+totalContactStatus=Σύνολο επαφών στο %1$S: %2$S
+noMatchFound=Δεν βρέθηκαν ταιριάσματα
+## LOCALIZATION NOTE (matchesFound1):
+## Semicolon-separated list of singular and plural forms.
+## See: https://developer.mozilla.org/docs/Mozilla/Localization/Localization_and_Plurals
+## #1 is the number of matching contacts found
+matchesFound1=Βρέθηκε #1 αντιστοιχία;Βρέθηκαν #1 αντιστοιχίες
+
+## LOCALIZATION NOTE (contactsCopied): Semi-colon list of plural forms
+## %1$S is the number of contacts that were copied. This should be used multiple
+## times wherever you need it. Do not replace by %S.
+contactsCopied=Αντιγράφηκε %1$S επαφή;Αντιγράφηκαν %1$S επαφές
+
+## LOCALIZATION NOTE (contactsMoved): Semi-colon list of plural forms
+## %1$S is the number of contacts that were moved. This should be used multiple
+## times wherever you need it. Do not replace by %S.
+contactsMoved=%1$S επαφή μετακινήθηκε;%1$S επαφές μετακινήθηκαν
+
+# LDAP directory stuff
+invalidName=Παρακαλούμε εισάγετε ένα έγκυρο όνομα.
+invalidHostname=Παρακαλούμε εισάγετε ένα έγκυρο όνομα κεντρικού υπολογιστή.
+invalidPortNumber=Παρακαλούμε εισάγετε έναν έγκυρο αριθμό θύρας.
+invalidResults=Παρακαλούμε εισάγετε έναν έγκυρο αριθμό στο πεδίο αποτελεσμάτων.
+abReplicationOfflineWarning=Θα πρέπει να εργάζεστε με σύνδεση για να εκτελέσετε μια LDAP replication.
+abReplicationSaveSettings=Πρέπει να αποθηκεύσετε τις ρυθμίσεις πριν γίνει λήψη ενός καταλόγου.
+
+# For importing / exporting
+## LOCALIZATION NOTE (ExportAddressBookNameTitle): %S is the name of exported addressbook
+ExportAddressBookNameTitle=Εξαγωγή ευρετηρίου - %S
+LDIFFiles=LDIF
+CSVFiles=Comma Separated (*.csv)
+CSVFilesSysCharset=Χωρισμένα με κόμμα (Κωδικοποίηση συστήματος)
+CSVFilesUTF8=Χωρισμένα με κόμμα (UTF-8)
+TABFiles=Οριοθετημένο κείμενο (*.tab,*.txt)
+TABFilesSysCharset=Οριοθετημένο κείμενο (κωδικοποίηση συστήματος)
+TABFilesUTF8=Οριοθετημένο κείμενο (UTF-8)
+VCFFiles=vCard
+SupportedABFiles=Υποστηριζόμενα αρχεία βιβλίου διευθύνσεων
+failedToExportTitle=Η εξαγωγή απέτυχε
+failedToExportMessageNoDeviceSpace=Αποτυχία εξαγωγής ευρετηρίου διευθύνσεων, δεν υπάρχει ελεύθερος χώρος στη συσκευή
+failedToExportMessageFileAccessDenied=Αποτυχία εξαγωγής ευρετηρίου διευθύνσεων, απαγορεύθηκε η πρόσβαση στο αρχείο.
+
+# For getting authDN for replication using dlg box
+AuthDlgTitle=Αντίγραφο ευρετηρίου διευθύνσεων LDAP
+AuthDlgDesc=Για πρόσβαση στο διακομιστή καταλόγου, εισάγετε το όνομα χρήστη και τον κωδικό πρόσβασής σας.
+
+# LOCALIZATION NOTE(joinMeInThisChat)
+# use + for spaces
+joinMeInThisChat=Μπείτε+κι+εσείς+σε+αυτή+τη+συνομιλία.
+
+# For printing
+headingHome=Οικία
+headingWork=Εργασία
+headingOther=Άλλο
+headingChat=Συνομιλία
+headingPhone=Τηλέφωνο
+headingDescription=Περιγραφή
+headingAddresses=Διευθύνσεις
+
+## For address books
+addressBookTitleNew=Νέο ευρετήριο διευθύνσεων
+# LOCALIZATION NOTE (addressBookTitleEdit):
+# %S is the current name of the address book.
+# Example: My Custom AB Properties
+addressBookTitleEdit=%S - Ιδιότητες
+duplicateNameTitle=Διπλό όνομα βιβλίου διευθύνσεων
+# LOCALIZATION NOTE (duplicateNameText):
+# Don't localize "\n• %S" unless your local layout comes out wrong.
+# %S is the name of the existing address book.
+# Example: An address book with this name already exists:
+# • My Custom AB
+duplicateNameText=Ένα βιβλίο διευθύνσεων με αυτό το όνομα υπάρχει ήδη:\n• %S
+
+# For corrupt .mab files
+corruptMabFileTitle=Κατεστραμμένο αρχείο ευρετηρίου διευθύνσεων
+corruptMabFileAlert=Ένα από τα αρχεία του ευρετηρίου διευθύνσεων (%1$S αρχείο) δεν μπορεί να αναγνωσθεί. Θα δημιουργηθεί ένα νέο αρχείο %2$S και ένα αντίγραφο ασφαλείας του παλιού με το όνομα %3$S, θα δημιουργηθεί στον ίδιο κατάλογο.
+
+# For locked .mab files
+lockedMabFileTitle=Αδυναμία φόρτωσης αρχείου ευρετηρίου
+lockedMabFileAlert=Αδυναμία φόρτωσης αρχείου ευρετηρίου διευθύνσεων %S. Μπορεί να είναι μόνο για ανάγνωση, ή κλειδωμένο από άλλη εφαρμογή. Παρακαλώ προσπαθήστε αργότερα.
diff --git a/l10n-el/mail/chrome/messenger/addressbook/ldapAutoCompErrs.properties b/l10n-el/mail/chrome/messenger/addressbook/ldapAutoCompErrs.properties
new file mode 100644
index 0000000000..308943992e
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/addressbook/ldapAutoCompErrs.properties
@@ -0,0 +1,104 @@
+# 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/.
+
+# These are error strings for problems that happen while in the
+# various states declared in nsILDAPAutoCompFormatter.idl. Note that
+# the number that indexes each error state is the same as the number
+# corresponding to that state in nsILDAPAutoCompFormatter.idl.
+
+## @name ERR_STATE_UNBOUND
+## @loc none
+0=Πρόβλημα αρχικοποίησης LDAP
+
+## @name ERR_STATE_INITIALIZING
+## @loc none
+1=Η επικοινωνία με τον διακομιστή LDAP απέτυχε
+
+## @name ERR_STATE_BINDING
+## @loc none
+2=Η επικοινωνία με τον διακομιστή LDAP απέτυχε
+
+## @name ERR_STATE_BOUND
+## @loc none
+3=Πρόβλημα επικοινωνίας με τον διακομιστή LDAP
+
+## @name ERR_STATE_SEARCHING
+## @loc none
+4=Σφάλμα αναζήτησης διακομιστή LDAP
+
+
+# The format of the alert dialog itself
+#
+## @name ALERT_FORMAT
+## @loc None of %1$S, %2$S and %3$S should be localized.
+## %1$S is the error code itself, %2$S is an LDAP SDK error message from
+## chrome://mozldap/locale/ldap.properties, and %3$S is a hint relating
+## to that specific error, found in this file.
+errorAlertFormat=Κωδικός σφάλματος %1$S: %2$S\n\n %3$S
+
+## The following errors are for error codes other than LDAP-specific ones.
+## Someday mozilla will actually have a system for mapping nsresults to
+## error strings that's actually widely used, unlike nsIErrorService. But
+## until it does, these strings live here...
+
+## @name HOST_NOT_FOUND
+## @loc none
+5000=δεν βρέθηκε ο κεντρικός υπολογιστής
+
+## @name GENERIC_ERROR
+## @loc none
+9999=Άγνωστο σφάλμα
+
+
+# Hints to for the user, associated with specific error codes (ie error code
+# + 10000)
+
+
+## @name TIMELIMIT_EXCEEDED_HINT
+## @loc none
+10003=Παρακαλώ προσπαθήστε ξανά ή αλλιώς επικοινωνήστε με τον διαχειριστή του συστήματος σας.
+
+## @name STRONGAUTH_REQUIRED_HINT
+## @loc none
+10008=Η ισχυρή διαπίστευση δεν υποστηρίζεται προς το παρόν.
+
+## @name INVALID_SYNTAX_HINT
+## @loc none
+10021=Βεβαιωθείτε ότι το φίλτρο αναζήτησης είναι σωστό και προσπαθήστε ξανά, ή επικοινωνήστε με το διαχειριστή του συστήματός σας. Για να βεβαιωθείτε ότι το φίλτρο αναζήτησης είναι σωστό, από το μενού Επεξεργασία, επιλέξτε Προτιμήσεις>Αλληλογραφία και συζήτηση και μετά διευθυνσιοδότηση. Κάντε κλικ στην επεξεργασία καταλόγων και επιλέξτε τον διακομιστή LDAP που χρησιμοποιείτε. Μετά κάντε κλικ στο Επεξεργασία για να προβάλλετε τα φίλτρα αναζήτησης.
+
+## @name NO_SUCH_OBJECT_HINT
+## @loc none
+10032=Βεβαιωθείτε ότι η Βάση DN είναι σωστή και, έπειτα, προσπαθήστε ξανά, ή αλλιώς επικοινωνήστε με το διαχειριστή του συστήματος σας. Για να βεβαιωθείτε ότι η Βάση DN είναι σωστή, από το μενού "Επεξεργασία", επιλέξτε "Προτιμήσεις", ύστερα "Αλληλογραφία & ομάδες συζήτησης" και τέλος "Διευθυνσιοδότηση". Κάντε κλικ στο "Επεξεργασία καταλόγων" και επιλέξτε το διακομιστή LDAP σε χρήση. Κάντε κλικ στο "Επεξεργασία" για προβολή της Βάσης DN.
+
+## @name BUSY_HINT
+## @loc none
+10051=Προσπαθήστε αργότερα.
+
+## @name SERVER_DOWN_HINT
+## @loc none
+10081=Βεβαιωθείτε ότι το όνομα κεντρικού υπολογιστή και ο αριθμός θύρας είναι σωστά, και προσπαθήστε ξανά, ή επικοινωνήστε με το διαχειριστή του συστήματός σας. Για να βεβαιωθείτε για την ορθότητά τους από το μενού Επεξεργασία, επιλέξτε Προτιμήσεις>Αλληλογραφία και συζήτηση και μετά διευθυνσιοδότηση. Κάντε κλικ στις επεξεργασία καταλόγων και επιλέξτε τον διακομιστή LDAP που χρησιμοποιείτε. Μετά κάντε κλικ στο Επεξεργασία για να προβάλλετε το όνομα του κεντρικού υπολογιστή. Κάντε κλικ στις Ειδικές επιλογές για να προβάλλετε τους αριθμούς θύρας.
+
+## @name TIMEOUT_HINT
+## @loc none
+10085=Προσπαθήστε αργότερα.
+
+## @name FILTER_ERROR_HINT
+## @loc none
+10087=Βεβαιωθείτε ότι το φίλτρο αναζήτησης είναι σωστό, και προσπαθήστε ξανά, ή επικοινωνήστε με το διαχειριστή του συστήματός σας. Για να βεβαιωθείτε ότι το φίλτρο αναζήτησης είναι σωστό από το μενού Επεξεργασία, επιλέξτε Προτιμήσεις>Αλληλογραφία και συζήτηση και μετά διευθυνσιοδότηση. Κάντε κλικ στην επεξεργασία καταλόγων και επιλέξτε τον διακομιστή LDAP που χρησιμοποιείτε. Μετά κάντε κλικ στο Επεξεργασία για να προβάλλετε τα φίλτρα αναζήτησης.
+
+## @name NO_MEMORY_HINT
+## @loc none
+10090=Κλείστε κάποια άλλα παράθυρα ή/και εφαρμογές και προσπαθήστε ξανά.
+
+## @name CONNECT_ERROR_HINT
+## @loc none
+10091=Βεβαιωθείτε ότι το όνομα κεντρικού υπολογιστή και ο αριθμός θύρας είναι σωστά, και προσπαθήστε ξανά, ή επικοινωνήστε με το διαχειριστή του συστήματός σας. Για να βεβαιωθείτε για την ορθότητά τους από το μενού Επεξεργασία, επιλέξτε Προτιμήσεις>Αλληλογραφία και συζήτηση και μετά διευθυνσιοδότηση. Κάντε κλικ στην επεξεργασία καταλόγων και επιλέξτε τον διακομιστή LDAP που χρησιμοποιείτε. Μετά κάντε κλικ στο Επεξεργασία για να προβάλλετε το όνομα του κεντρικού υπολογιστή. Κάντε κλικ στις Ειδικές επιλογές για να προβάλλετε τους αριθμούς θύρας.
+
+## @name HOST_NOT_FOUND_HINT
+## @loc none
+15000=Βεβαιωθείτε ότι το όνομα του κεντρικού υπολογιστή είναι σωστό, και μετά προσπαθήστε ξανά, ή αλλιώς επικοινωνήστε με τον διαχειριστή του συστήματος. Για να βεβαιωθείτε ότι το όνομα είναι σωστό επιλέξτε Προτιμήσεις>Αλληλογραφία από το Μενού της επεξεργασίας και μετά επιλέξτε διευθυνσιοδότηση. Πατήστε επεξεργασία για να εμφανιστεί το όνομα του κεντρικού υπολογιστή.
+
+## @name GENERIC_HINT
+## @loc none
+19999=Επικοινωνήστε με τον διαχειριστή συστήματος
diff --git a/l10n-el/mail/chrome/messenger/addressbook/pref-directory-add.dtd b/l10n-el/mail/chrome/messenger/addressbook/pref-directory-add.dtd
new file mode 100644
index 0000000000..d335011312
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/addressbook/pref-directory-add.dtd
@@ -0,0 +1,45 @@
+<!-- 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 directoryName.label "Όνομα:">
+<!ENTITY directoryName.accesskey "μ">
+<!ENTITY directoryHostname.label "Όνομα κεντρικού υπολογιστή: ">
+<!ENTITY directoryHostname.accesskey "ν">
+<!ENTITY directoryBaseDN.label "DN βάσης: ">
+<!ENTITY directoryBaseDN.accesskey "β">
+<!ENTITY findButton.label "Εύρεση">
+<!ENTITY findButton.accesskey "ρ">
+<!ENTITY directorySecure.label "Χρήση ασφαλούς σύνδεσης (SSL)">
+<!ENTITY directorySecure.accesskey "Χ">
+<!ENTITY directoryLogin.label "DN σύνδεσης: ">
+<!ENTITY directoryLogin.accesskey "σ">
+<!ENTITY General.tab "Γενικά">
+<!ENTITY Offline.tab "Εκτός σύνδεσης">
+<!ENTITY Advanced.tab "Για προχωρημένους">
+<!ENTITY portNumber.label "Αριθμός θύρας:">
+<!ENTITY portNumber.accesskey "θ">
+<!ENTITY searchFilter.label "Φίλτρο αναζήτησης: ">
+<!ENTITY searchFilter.accesskey "Φ">
+<!ENTITY scope.label "Εμβέλεια: ">
+<!ENTITY scope.accesskey "β">
+<!ENTITY scopeOneLevel.label "Ένα επίπεδο">
+<!ENTITY scopeOneLevel.accesskey "π">
+<!ENTITY scopeSubtree.label "Υποφάκελος">
+<!ENTITY scopeSubtree.accesskey "Υ">
+<!ENTITY return.label "Ανώτατο όριο αποτελεσμάτων:">
+<!ENTITY return.accesskey "σ">
+<!ENTITY results.label "αποτελέσματα">
+<!ENTITY offlineText.label "Μπορείτε να κάνετε λήψη ενός τοπικού αντιγράφου αυτού του καταλόγου ώστε να είναι διαθέσιμο για εργασία εκτός σύνδεσης.">
+<!ENTITY saslMechanism.label "Μέθοδος σύνδεσης: ">
+<!ENTITY saslMechanism.accesskey "θ">
+<!ENTITY saslOff.label "Απλή">
+<!ENTITY saslOff.accesskey "λ">
+<!ENTITY saslGSSAPI.label "Kerberos (GSSAPI)">
+<!ENTITY saslGSSAPI.accesskey "K">
+
+<!-- Localization note: this is here because the width of the dialog
+ is determined by the width of the base DN box; and that is likely
+ to vary somewhat with the language.
+-->
+<!ENTITY newDirectoryWidth "40em">
diff --git a/l10n-el/mail/chrome/messenger/addressbook/pref-directory.dtd b/l10n-el/mail/chrome/messenger/addressbook/pref-directory.dtd
new file mode 100644
index 0000000000..9bd49c1eba
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/addressbook/pref-directory.dtd
@@ -0,0 +1,17 @@
+<!-- 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 (window.title) : do not translate "LDAP" in below line -->
+<!ENTITY pref.ldap.window.title "Διακομιστές καταλόγου LDAP">
+<!-- LOCALIZATION NOTE (directories.label) : do not translate "LDAP" in below line -->
+<!ENTITY directories.label "Διακομιστής καταλόγου LDAP:">
+<!-- LOCALIZATION NOTE (directoriesText.label) : do not translate "LDAP" in below line -->
+<!ENTITY directoriesText.label "Επιλέξτε ένα διακομιστή καταλόγου LDAP:">
+<!ENTITY directoriesText.accesskey "ξ">
+<!ENTITY addDirectory.label "Προσθήκη">
+<!ENTITY addDirectory.accesskey "Π">
+<!ENTITY editDirectory.label "Επεξεργασία">
+<!ENTITY editDirectory.accesskey "Ε">
+<!ENTITY deleteDirectory.label "Διαγραφή">
+<!ENTITY deleteDirectory.accesskey "Δ">
diff --git a/l10n-el/mail/chrome/messenger/addressbook/replicationProgress.properties b/l10n-el/mail/chrome/messenger/addressbook/replicationProgress.properties
new file mode 100644
index 0000000000..91ec2ae18a
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/addressbook/replicationProgress.properties
@@ -0,0 +1,20 @@
+# 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/.
+replicationStarted=Η αντιγραφή ξεκίνησε…
+changesStarted=Η εύρεση αλλαγών προς αντιγραφή ξεκίνησε…
+replicationSucceeded=Η δημιουργία αντιγράφου ήταν πετυχημένη
+replicationFailed=Η δημιουργία αντιγράφου απέτυχε
+replicationCancelled=Η δημιουργία αντιγράφου ακυρώθηκε
+# LOCALIZATION NOTE
+# do not localize %S. %S is the current entry number (an integer)
+currentCount=Δημιουργία αντιγράφου καταχώρισης καταλόγου: %S
+
+downloadButton=Λήψη τώρα
+downloadButton.accesskey=ψ
+cancelDownloadButton=Ακύρωση λήψης
+cancelDownloadButton.accesskey=ρ
+
+directoryTitleNew=Νέος κατάλογος LDAP
+## LOCALIZATION NOTE (directoryTitleEdit): %S will be replaced by the LDAP directory's display name
+directoryTitleEdit=%S - Ιδιότητες
diff --git a/l10n-el/mail/chrome/messenger/am-addressing.dtd b/l10n-el/mail/chrome/messenger/am-addressing.dtd
new file mode 100644
index 0000000000..d19e50905a
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-addressing.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/. -->
+
+<!-- extracted from am-addressing.xul -->
+
+<!-- extracted from am-addressing.xhtml -->
+
+<!ENTITY addressing.label "Σύνταξη &amp; διευθυνσιοδότηση">
+<!ENTITY addressingGroupTitle.label "Διευθυνσιοδότηση">
+<!ENTITY addressingText.label "Κατά την αναζήτηση διευθύνσεων:">
+<!-- LOCALIZATION NOTE (override.label) : do not translate "LDAP" in below line -->
+<!ENTITY useGlobal.label "Χρήση γενικών προτιμήσεων διακομιστή LDAP για αυτό το λογαριασμό">
+<!ENTITY useGlobal.accesskey "χ">
+<!ENTITY editDirectories.label "Επεξεργασία καταλόγων…">
+<!ENTITY editDirectories.accesskey "ξ">
+<!-- LOCALIZATION NOTE (directories.label) : do not translate "LDAP" in below line -->
+<!ENTITY directories.label "Χρήση διαφορετικού διακομιστή LDAP:">
+<!ENTITY directories.accesskey "ρ">
+<!ENTITY directoriesNone.label "Κανένα">
+
+<!-- am-addressing.xul -->
+
+<!-- am-addressing.xhtml -->
+
+<!ENTITY compositionGroupTitle.label "Σύνταξη">
+<!-- LOCALIZATION NOTE (useHtml.label) : do not translate "html" in below line -->
+<!ENTITY useHtml.label "Σύνταξη μηνυμάτων σε μορφή HTML">
+<!ENTITY useHtml.accesskey "Σ">
+<!ENTITY autoQuote.label "Αυτόματη παράθεση του αρχικού μηνύματος κατά την απάντηση">
+<!ENTITY autoQuote.accesskey "π">
+<!-- LOCALIZATION NOTE (quoting.label): This will concatenate with the 4 strings that follow. -->
+<!ENTITY quoting.label "Κατά την παράθεση,">
+<!ENTITY quoting.accesskey "π">
+<!ENTITY aboveQuote.label "έναρξη απάντησης πάνω από την παράθεση">
+<!ENTITY belowQuote.label "έναρξη απάντησης κάτω από την παράθεση">
+<!ENTITY selectAndQuote.label "επιλογή παράθεσης">
+<!ENTITY place.label "και τοποθέτηση υπογραφής">
+<!ENTITY place.accesskey "τ">
+<!ENTITY belowText.label "κάτω από την παράθεση (προτείνεται)">
+<!ENTITY aboveText.label "κάτω από την απάντηση (πάνω από την παράθεση)">
+<!ENTITY includeSigOnReply.label "Χρήση υπογραφής στις απαντήσεις">
+<!ENTITY includeSigOnReply.accesskey "σ">
+<!ENTITY includeSigOnForward.label "Χρήση υπογραφής στις προωθήσεις">
+<!ENTITY includeSigOnForward.accesskey "θ">
+
+<!ENTITY globalComposingPrefs.label "Γενικές προτιμήσεις σύνταξης…">
+<!ENTITY globalComposingPrefs.accesskey "κ">
+
+<!ENTITY globalAddressingPrefs.label "Γενικές προτιμήσεις διευθυνσιοδότησης…">
+<!ENTITY globalAddressingPrefs.accesskey "δ">
diff --git a/l10n-el/mail/chrome/messenger/am-advanced.dtd b/l10n-el/mail/chrome/messenger/am-advanced.dtd
new file mode 100644
index 0000000000..08b7a9842a
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-advanced.dtd
@@ -0,0 +1,28 @@
+<!-- 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/. -->
+
+<!-- extracted from am-advanced.xhtml -->
+
+<!-- LOCALIZATION NOTE (smtpServer.label): do not translate "SMTP" in below line -->
+<!ENTITY smtpServer.label "Ρυθμίσεις διακομιστή εξερχομένων (SMTP)">
+
+<!-- LOCALIZATION NOTE (smtpDescription.label): do not translate "SMTP" in below line -->
+<!ENTITY smtpDescription.label "Κατά τη διαχείριση των ταυτοτήτων σας, μπορείτε να χρησιμοποιήσετε ένα διακομιστή από τη λίστα, επιλέγοντάς τον ως διακομιστή εξερχομένων (SMTP), ή μπορείτε να χρησιμοποιήσετε τον προεπιλεγμένο, επιλέγοντας το &quot;Χρήση προεπιλεγμένου διακομιστή&quot;.">
+
+<!ENTITY smtpListAdd.label "Προσθήκη…">
+<!ENTITY smtpListAdd.accesskey "θ">
+<!ENTITY smtpListEdit.label "Επεξεργασία…">
+<!ENTITY smtpListEdit.accesskey "Ε">
+<!ENTITY smtpListDelete.label "Αφαίρεση">
+<!ENTITY smtpListDelete.accesskey "φ">
+<!ENTITY smtpListSetDefault.label "Ορισμός προεπιλογής">
+<!ENTITY smtpListSetDefault.accesskey "π">
+
+<!ENTITY serverDetails.label "Λεπτομέρειες επιλεγμένου διακομιστή:">
+<!ENTITY serverDescription.label "Περιγραφή:">
+<!ENTITY serverName.label "Όνομα διακομιστή: ">
+<!ENTITY serverPort.label "Θύρα: ">
+<!ENTITY userName.label "Όνομα χρήστη: ">
+<!ENTITY connectionSecurity.label "Ασφάλεια σύνδεσης: ">
+<!ENTITY authMethod.label "Μέθοδος πιστοποίησης: ">
diff --git a/l10n-el/mail/chrome/messenger/am-archiveoptions.dtd b/l10n-el/mail/chrome/messenger/am-archiveoptions.dtd
new file mode 100644
index 0000000000..b0b048d406
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-archiveoptions.dtd
@@ -0,0 +1,25 @@
+<!-- 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/. -->
+
+<!-- extracted from am-archiveoptions.xul -->
+
+<!-- extracted from am-archiveoptions.xhtml -->
+
+<!ENTITY dialogTitle.label "Επιλογές αρχειοθέτησης">
+<!ENTITY archiveGranularityPrefix.label "Κατά την αρχειοθέτηση μηνυμάτων, τοποθέτηση:">
+<!ENTITY archiveFlat.label "Σε ένα μόνο φάκελο">
+<!ENTITY archiveFlat.accesskey "μ">
+<!ENTITY archiveYearly.label "Σε ετήσιους φακέλους αρχειοθέτησης">
+<!ENTITY archiveYearly.accesskey "σ">
+<!ENTITY archiveMonthly.label "Σε μηνιαίους φακέλους αρχειοθέτησης">
+<!ENTITY archiveMonthly.accesskey "η">
+<!ENTITY keepFolderStructure.label "Διατήρηση υπάρχουσας δομής φακέλου αρχειοθετημένων μηνυμάτων">
+<!ENTITY keepFolderStructure.accesskey "Δ">
+<!ENTITY archiveExample.label "Παράδειγμα">
+<!-- LOCALIZATION NOTE (archiveFolderName.label): this should match the default
+ name for the "Archives" folder -->
+<!ENTITY archiveFolderName.label "Αρχειοθήκες">
+<!-- LOCALIZATION NOTE (inboxFolderName.label): this should match the default
+ name for the "Inbox" folder -->
+<!ENTITY inboxFolderName.label "Εισερχόμενα">
diff --git a/l10n-el/mail/chrome/messenger/am-copies.dtd b/l10n-el/mail/chrome/messenger/am-copies.dtd
new file mode 100644
index 0000000000..784499e075
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-copies.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/. -->
+
+<!-- extracted from am-copies.xhtml -->
+
+<!ENTITY copyAndFolderTitle.label "Αντίγραφα &amp; φάκελοι">
+<!ENTITY sendingPrefix.label "Κατά την αποστολή μηνυμάτων, αυτόματη: ">
+<!ENTITY fccMailFolder.label "Τοποθέτηση αντιγράφου:">
+<!ENTITY fccMailFolder.accesskey "ν">
+<!ENTITY fccReplyFollowsParent.label "Τοποθέτηση απαντήσεων στο φάκελο του αρχικού μηνύματος">
+<!ENTITY fccReplyFollowsParent.accesskey "θ">
+<!-- LOCALIZATION NOTE (ccAddress.label): do not translate "Cc" in below line -->
+<!ENTITY ccAddress.label "Κοινοποίηση (Cc) στις διευθύνσεις email:">
+<!ENTITY ccAddress.accesskey "ι">
+<!ENTITY ccAddressList.placeholder "Διαχωρισμός διευθύνσεων με κόμματα">
+<!-- LOCALIZATION NOTE (bccAddress.label): do not translate "Bcc" in below line -->
+<!ENTITY bccAddress.label "Κρυφή κοινοποίηση (Bcc) στις διευθύνσεις email:">
+<!ENTITY bccAddress.accesskey "θ">
+<!ENTITY bccAddressList.placeholder "Διαχωρισμός διευθύνσεων με κόμματα">
+<!ENTITY saveMessageDlg.label "Εμφάνιση παραθύρου επιβεβαίωσης κατά την αποθήκευση μηνυμάτων">
+<!ENTITY saveMessageDlg.accesskey "β">
+<!-- LOCALIZATION NOTE (sentFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY sentFolderOn.label "Στο φάκελο &quot;Απεσταλμένα&quot; του:">
+<!ENTITY sentFolderOn.accesskey "ε">
+<!ENTITY sentInOtherFolder.label "Σε άλλο:">
+<!ENTITY sentInOtherFolder.accesskey "λ">
+<!-- LOCALIZATION NOTE (archivesFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY archivesTitle.label "Αρχεία μηνυμάτων">
+<!ENTITY keepArchives.label "Διατήρηση αρχείων μηνυμάτων:">
+<!ENTITY keepArchives.accesskey "Δ">
+<!ENTITY archiveHierarchyButton.label "Επιλογές αρχειοθέτησης…">
+<!ENTITY archiveHierarchyButton.accesskey "χ">
+<!ENTITY archivesFolderOn.label "Στο φάκελο &quot;Αρχειοθήκη&quot; του:">
+<!ENTITY archivesFolderOn.accesskey "χ">
+<!ENTITY archiveInOtherFolder.label "Σε άλλο:">
+<!ENTITY archiveInOtherFolder.accesskey "λ">
+<!ENTITY specialFolders.label "Προσχέδια και πρότυπα">
+<!ENTITY keepDrafts2.label "Διατήρηση προσχεδίων μηνυμάτων:">
+<!-- LOCALIZATION NOTE (draftsFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY draftsFolderOn.label "Στο φάκελο &quot;Προσχέδια&quot; του:">
+<!ENTITY draftsFolderOn.accesskey "σ">
+<!ENTITY draftInOtherFolder.label "Σε άλλο:">
+<!ENTITY draftInOtherFolder.accesskey "λ">
+<!ENTITY keepTemplates.label "Διατήρηση προτύπων μηνυμάτων:">
+<!-- LOCALIZATION NOTE (templatesFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY templatesFolderOn.label "Στο φάκελο &quot;Πρότυπα&quot; του:">
+<!ENTITY templatesFolderOn.accesskey "κ">
+<!ENTITY templateInOtherFolder.label "Σε άλλο:">
+<!ENTITY templateInOtherFolder.accesskey "ο">
diff --git a/l10n-el/mail/chrome/messenger/am-e2e.properties b/l10n-el/mail/chrome/messenger/am-e2e.properties
new file mode 100644
index 0000000000..282fb26e33
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-e2e.properties
@@ -0,0 +1,5 @@
+# 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/.
+
+prefPanel-e2e=Κρυπτογράφηση από άκρο σε άκρο
diff --git a/l10n-el/mail/chrome/messenger/am-identities-list.dtd b/l10n-el/mail/chrome/messenger/am-identities-list.dtd
new file mode 100644
index 0000000000..6385d93061
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-identities-list.dtd
@@ -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/. -->
+
+<!ENTITY identitiesListManageDesc.label "Κάντε διαχείριση των ταυτοτήτων για αυτό το λογαριασμό. Χρησιμοποιείται η πρώτη ταυτότητα από προεπιλογή.">
+<!ENTITY identitiesListAdd.label "Προσθήκη…">
+<!ENTITY identitiesListAdd.accesskey "Π">
+<!ENTITY identitiesListEdit.label "Επεξεργασία…">
+<!ENTITY identitiesListEdit.accesskey "Ε">
+<!ENTITY identitiesListDefault.label "Ορισμός προεπιλογής">
+<!ENTITY identitiesListDefault.accesskey "Ο">
+<!ENTITY identitiesListDelete.label "Διαγραφή">
+<!ENTITY identitiesListDelete.accesskey "Δ">
+<!ENTITY identitiesListClose.label "Κλείσιμο">
+<!ENTITY identitiesListClose.accesskey "Κ">
diff --git a/l10n-el/mail/chrome/messenger/am-identity-edit.dtd b/l10n-el/mail/chrome/messenger/am-identity-edit.dtd
new file mode 100644
index 0000000000..f28d35fe8b
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-identity-edit.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/. -->
+
+<!ENTITY identityListDesc.label "Κάντε ρύθμιση των παραμέτρων αυτής της ταυτότητας:">
+
+<!ENTITY settingsTab.label "Ρυθμίσεις">
+<!ENTITY copiesFoldersTab.label "Αντίγραφα &amp; φάκελοι">
+<!ENTITY addressingTab.label "Σύνταξη &amp; διευθυνσιοδότηση">
+
+<!ENTITY publicData.label "Δημόσια Δεδομένα">
+<!ENTITY privateData.label "Ιδιωτικά Δεδομένα">
+<!ENTITY identityAlias.label "Ετικέτα ταυτότητας:">
+<!ENTITY identityAlias.accesskey "τ">
diff --git a/l10n-el/mail/chrome/messenger/am-im.dtd b/l10n-el/mail/chrome/messenger/am-im.dtd
new file mode 100644
index 0000000000..e3d963adbe
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-im.dtd
@@ -0,0 +1,16 @@
+<!-- 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 accountWindow.title "Ιδιότητες λογαριασμού">
+<!ENTITY accountWindow.width "300">
+<!ENTITY account.general "Γενικά">
+<!ENTITY account.advanced "Σύνθετες επιλογές">
+<!ENTITY account.name "Όνομα χρήστη:">
+<!ENTITY account.password "Κωδικός πρόσβασης:">
+<!ENTITY account.alias "Ψευδώνυμο:">
+<!ENTITY account.newMailNotification "Ειδοποίηση για νέα email">
+<!ENTITY account.autojoin "Κανάλια με αυτόματη σύνδεση:">
+<!ENTITY account.proxySettings.caption "Ρυθμίσεις διαμεσολαβητή:">
+<!ENTITY account.proxySettings.change.label "Αλλαγή…">
+<!ENTITY account.proxySettings.change.accessKey "C">
diff --git a/l10n-el/mail/chrome/messenger/am-junk.dtd b/l10n-el/mail/chrome/messenger/am-junk.dtd
new file mode 100644
index 0000000000..7bf8d9dd2a
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-junk.dtd
@@ -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/. -->
+
+<!ENTITY junkSettings.label "Ρυθμίσεις ανεπιθύμητων">
+<!ENTITY trainingDescription.label "Αν ενεργοποιηθεί, πρέπει πρώτα να εκπαιδεύσετε το &brandShortName; ώστε να αναγνωρίζει την ανεπιθύμητη αλληλογραφία, χρησιμοποιώντας το αντίστοιχο κουμπί της γραμμής εργαλείων για επισήμανση των ανεπιθύμητων email. Πρέπει να αναγνωρίσετε τα ανεπιθύμητα και μη μηνύματα. Μετά από αυτό, το &brandShortName; θα μπορεί να επισημαίνει αυτόματα τα ανεπιθύμητα email.">
+<!ENTITY level.label "Ενεργοποίηση προσαρμοστικών ελέγχων ανεπιθύμητης αλληλογραφίας για αυτό το λογαριασμό">
+<!ENTITY level.accesskey "Ε">
+
+<!ENTITY move.label "Μετακίνηση νέων ανεπιθύμητων μηνυμάτων:">
+<!ENTITY move.accesskey "ν">
+<!ENTITY junkFolderOn.label "Στο φάκελο &quot;Ανεπιθύμητα&quot; του:">
+<!ENTITY junkFolderOn.accesskey "θ">
+<!ENTITY otherFolder.label "Σε άλλο:">
+<!ENTITY otherFolder.accesskey "λ">
+<!ENTITY purge1.label "Αυτόματη διαγραφή ανεπιθύμητης αλληλογραφίας, που είναι παλαιότερη από">
+<!ENTITY purge1.accesskey "υ">
+<!ENTITY purge2.label "ημέρες">
+
+<!ENTITY whitelistHeader.label "Να μην γίνεται αυτόματη επισήμανση αλληλογραφίας ως ανεπιθύμητης, όταν ο αποστολέας ανήκει στα εξής: ">
+<!ENTITY whitelistHeader.accesskey "μ">
+
+<!ENTITY ispHeadersWarning.label "Αν ενεργοποιηθεί, το &brandShortName; αυτόματα θα θεωρεί ανεπιθύμητα τα μηνύματα που επισημαίνονται από αυτή την εξωτερική υπηρεσία ταξινόμησης.">
+<!ENTITY ispHeaders.label "Να θεωρούνται έμπιστες οι κεφαλίδες ανεπιθύμητης αλληλογραφίας, που καθορίζονται από το: ">
+<!ENTITY ispHeaders.accesskey "φ">
+
+<!ENTITY junkClassification.label "Διαλογή">
+<!ENTITY junkActions.label "Προορισμός και φύλαξη">
+
+<!ENTITY globalJunkPrefs.label "Γενικές προτιμήσεις ανεπιθύμητων…">
+<!ENTITY globalJunkPrefs.accesskey "Θ">
diff --git a/l10n-el/mail/chrome/messenger/am-main.dtd b/l10n-el/mail/chrome/messenger/am-main.dtd
new file mode 100644
index 0000000000..7d34c9b006
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-main.dtd
@@ -0,0 +1,47 @@
+<!-- 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/. -->
+
+<!-- extracted from am-main.xhtml -->
+
+<!ENTITY accountTitle.label "Ρυθμίσεις λογαριασμού">
+<!ENTITY accountName.label "Όνομα λογαριασμού:">
+<!ENTITY accountName.accesskey "ν">
+<!ENTITY identityTitle.label "Ταυτότητα">
+<!ENTITY identityDesc.label "Κάθε λογαριασμός έχει μια ταυτότητα, η οποία αποτελείται από πληροφορίες που βλέπουν οι αναγνώστες των μηνυμάτων σας.">
+<!ENTITY name.label "Το όνομά σας:">
+<!ENTITY name.accesskey "μ">
+<!ENTITY email.label "Διεύθυνση email:">
+<!ENTITY email.accesskey "ε">
+<!ENTITY catchAll.label "Απάντηση από αυτή την ταυτότητα όταν ταιριάζουν οι επικεφαλίδες παράδοσης:">
+<!ENTITY catchAll.accesskey "π">
+<!ENTITY replyTo.label "Διεύθυνση απάντησης:">
+<!ENTITY replyTo.accesskey "σ">
+<!ENTITY replyTo.placeholder "Οι παραλήπτες θα απαντούν σε αυτή τη διεύθυνση">
+<!ENTITY organization.label "Οργανισμός:">
+<!ENTITY organization.accesskey "Ο">
+<!ENTITY signatureText.label "Κείμενο υπογραφής:">
+<!ENTITY signatureText.accesskey "μ">
+<!ENTITY signatureHtml.label "Χρήση HTML (π.χ. &lt;b&gt;bold&lt;/b&gt;)">
+<!ENTITY signatureHtml.accesskey "η">
+<!ENTITY signatureFile.label "Επισύναψη υπογραφής από αρχείο (κείμενο, HTML, ή εικόνα):">
+<!ENTITY signatureFile.accesskey "ψ">
+<!ENTITY edit.label "Επεξεργασία…">
+<!ENTITY choose.label "Επιλογή…">
+<!ENTITY choose.accesskey "λ">
+<!ENTITY editVCard.label "Επεξεργασία κάρτας…">
+<!ENTITY editVCard.accesskey "ξ">
+<!-- LOCALIZATION NOTE (attachVCard.label) : do not translate "vCard" in below line -->
+<!ENTITY attachVCard.label "Επισύναψη προσωπικής vCard σε μηνύματα">
+<!ENTITY attachVCard.accesskey "α">
+
+<!ENTITY manageIdentities.label "Διαχείριση ταυτοτήτων…">
+<!ENTITY manageIdentities.accesskey "Δ">
+
+<!-- LOCALIZATION NOTE (smtpName.label) : do not translate "SMTP" in below line -->
+<!ENTITY smtpName.label "Διακομιστής εξερχομένων (SMTP):">
+<!ENTITY smtpName.accesskey "χ">
+<!ENTITY smtpDefaultServer.label "Χρήση προεπιλεγμένου διακομιστή">
+
+<!ENTITY smtpServerEdit.label "Επεξεργασία διακομιστή SMTP…">
+<!ENTITY smtpServerEdit.accesskey "P">
diff --git a/l10n-el/mail/chrome/messenger/am-mdn.dtd b/l10n-el/mail/chrome/messenger/am-mdn.dtd
new file mode 100644
index 0000000000..4cd2f1dab6
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-mdn.dtd
@@ -0,0 +1,33 @@
+<!-- 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 pane.title "Αποδεικτικά ανάγνωσης">
+<!ENTITY useGlobalPrefs.label "Χρήση των γενικών προτιμήσεων αποδεικτικών ανάγνωσης για αυτό το λογαριασμό">
+<!ENTITY useGlobalPrefs.accesskey "Χ">
+<!ENTITY globalReceipts.label "Γενικές προτιμήσεις…">
+<!ENTITY globalReceipts.accesskey "κ">
+<!ENTITY useCustomPrefs.label "Προσαρμογή αποδεικτικών ανάγνωσης για αυτό το λογαριασμό">
+<!ENTITY useCustomPrefs.accesskey "Π">
+<!ENTITY requestReceipt.label "Κατά την αποστολή μηνυμάτων, να ζητείται πάντα αποδεικτικό ανάγνωσης">
+<!ENTITY requestReceipt.accesskey "Κ">
+<!ENTITY receiptArrive.label "Όταν φτάνει ένα αποδεικτικό:">
+<!ENTITY leaveIt.label "Παραμονή στα εισερχόμενα">
+<!ENTITY leaveIt.accesskey "σ">
+<!-- LOCALIZATION NOTE moveToSent.label Translate: 'Sent' according to Netscape glossary -->
+<!ENTITY moveToSent.label "Μετακίνηση στο φάκελο &quot;Απεσταλμένα&quot;">
+<!ENTITY moveToSent.accesskey "Μ">
+<!ENTITY requestMDN.label "Κατά τη λήψη αιτήματος για αποδεικτικό ανάγνωσης:">
+<!ENTITY returnSome.label "Αποδοχή αποδεικτικών ανάγνωσης για ορισμένα μηνύματα">
+<!ENTITY returnSome.accesskey "ε">
+<!ENTITY never.label "Να μην γίνεται αποστολή αποδεικτικού">
+<!ENTITY never.accesskey "Ν">
+<!ENTITY notInToCc.label 'Αν δεν είμαι στα πεδία "Προς" ή "Κοιν." του μηνύματος:'>
+<!ENTITY notInToCc.accesskey "Α">
+<!ENTITY outsideDomain.label "Αν ο αποστολέας είναι εκτός του τομέα μου:">
+<!ENTITY outsideDomain.accesskey "τ">
+<!ENTITY otherCases.label "Σε όλες τις άλλες περιπτώσεις:">
+<!ENTITY otherCases.accesskey "λ">
+<!ENTITY askMe.label "Να γίνεται ερώτηση">
+<!ENTITY alwaysSend.label "Να γίνεται αποστολή">
+<!ENTITY neverSend.label "Να μην γίνεται αποστολή">
diff --git a/l10n-el/mail/chrome/messenger/am-mdn.properties b/l10n-el/mail/chrome/messenger/am-mdn.properties
new file mode 100644
index 0000000000..a6dbc50e5e
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-mdn.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/.
+
+## Strings used in prefs.
+prefPanel-mdn=Αποδεικτικά ανάγνωσης
diff --git a/l10n-el/mail/chrome/messenger/am-offline.dtd b/l10n-el/mail/chrome/messenger/am-offline.dtd
new file mode 100644
index 0000000000..3719ce6031
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-offline.dtd
@@ -0,0 +1,57 @@
+<!-- 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 doNotDownloadPop3Movemail.label "Για εξοικονόμηση αποθηκευτικού χώρου, να μη λαμβάνονται:">
+<!ENTITY doNotDownloadNntp.label "Για εξοικονόμηση αποθηκευτικού χώρου, να μη λαμβάνονται για εργασία χωρίς σύνδεση:">
+<!ENTITY doNotDownloadImap.label "Για εξοικονόμηση χώρου, μπορείτε να περιορίσετε κατά ημερομηνία ή μέγεθος τη λήψη μηνυμάτων από το διακομιστή, καθώς και τη διατήρηση τοπικών αντιγράφων για εργασία εκτός σύνδεσης.">
+<!ENTITY allFoldersOffline2.label "Διατήρηση των μηνυμάτων όλων των φακέλων αυτού του λογαριασμού, σε αυτό τον υπολογιστή">
+<!ENTITY allFoldersOffline2.accesskey "ο">
+<!ENTITY allFoldersOfflineNote.label 'Σημείωση: Η αλλαγή θα επηρεάσει όλους τους φακέλους αυτού του λογαριασμού. Για ορισμό μεμονωμένων φακέλων, κάντε κλικ στο κουμπί "Για προχωρημένους…".'>
+<!ENTITY offlineNotDownload.label "Μηνύματα μεγαλύτερα από">
+<!ENTITY offlineNotDownload.accesskey "Μ">
+<!ENTITY autosyncNotDownload.label "Να μην γίνεται λήψη μηνυμάτων, μεγαλύτερων από">
+<!ENTITY autosyncNotDownload.accesskey "μ">
+<!ENTITY kb.label "KB">
+<!ENTITY daysOld.label "ημερών">
+<!ENTITY message.label "μηνυμάτων">
+<!ENTITY nntpNotDownloadRead.label "Αναγνωσμένα μηνύματα">
+<!ENTITY nntpNotDownloadRead.accesskey "γ">
+<!ENTITY nntpDownloadMsg.label "Μηνύματα περισσότερο από">
+<!ENTITY nntpDownloadMsg.accesskey "σ">
+<!ENTITY retentionCleanup.label "Για να ανακτήσετε χώρο στο δίσκο, μπορείτε να διαγράψετε τα παλιά μηνύματα.">
+<!ENTITY retentionCleanupImap.label "Για ανάκτηση χώρου, μπορείτε να διαγράψετε οριστικά τα παλιά σας μηνύματα (τοπικά αντίγραφα και πρωτότυπα απομακρυσμένου διακομιστή).">
+<!ENTITY retentionCleanupPop.label "Για εξοικονόμηση αποθηκευτικού χώρου, μπορείτε να διαγράψετε μόνιμα τα παλιά σας μηνύματα μαζί με τα αρχικά μηνύματα στον απομακρυσμένο διακομιστή.">
+<!ENTITY retentionKeepMsg.label "Διαγραφή μηνυμάτων, παλαιότερων από">
+<!ENTITY retentionKeepMsg.accesskey "μ">
+<!ENTITY retentionKeepAll.label "Να μην γίνει διαγραφή μηνυμάτων">
+<!ENTITY retentionKeepAll.accesskey "η">
+<!ENTITY retentionKeepRecent.label "Διαγραφή όλων, εκτός των τελευταίων">
+<!ENTITY retentionKeepRecent.accesskey "κ">
+<!ENTITY retentionApplyToFlagged.label "Διατήρηση μηνυμάτων με αστέρι">
+<!ENTITY retentionApplyToFlagged.accesskey "σ">
+<!ENTITY nntpRemoveMsgBody.label "Διαγραφή σώματος από μηνύματα μεγαλύτερα από">
+<!ENTITY nntpRemoveMsgBody.accesskey "φ">
+<!ENTITY offlineSelectNntp.label "Επιλογή ομάδων συζήτησης για χρήση εκτός σύνδεσης…">
+<!ENTITY offlineSelectNntp.accesskey "λ">
+<!ENTITY offlineImapAdvancedOffline.label "Για προχωρημένους…">
+<!ENTITY offlineImapAdvancedOffline.accesskey "χ">
+<!ENTITY syncGroupTitle.label "Συγχρονισμός μηνυμάτων">
+<!ENTITY diskspaceGroupTitle.label "Χώρος δίσκου">
+
+<!-- LOCALIZATION NOTE: (ageAutosyncBefore.label, ageAutosyncMiddle.label, ageAutosyncAfter.label):
+ The entities ageAutosyncBefore.label, ageAutosyncMiddle.label, and ageAutosyncAfter.label appear
+ on a single line within the scope of useAutosync.ByAge as follows:
+
+ &ageAutosyncBefore.label [textbox for autosync value] &ageAutosyncMiddle.label; [dropdown for autosync interval] &ageAutosyncAfter.label;
+-->
+<!ENTITY allAutosync.label "Τοπικός συγχρονισμός όλων των μηνυμάτων ανεξαρτήτως ημερομηνίας">
+<!ENTITY allAutosync.accesskey "χ">
+<!ENTITY ageAutosyncBefore.label "Συγχρονισμός των τελευταίων">
+<!ENTITY ageAutosync.accesskey "γ">
+<!ENTITY ageAutosyncMiddle.label "">
+<!ENTITY dayAgeInterval.label "ημερών">
+<!ENTITY weekAgeInterval.label "εβδομάδων">
+<!ENTITY monthAgeInterval.label "μηνών">
+<!ENTITY yearAgeInterval.label "ετών">
+<!ENTITY ageAutosyncAfter.label "">
diff --git a/l10n-el/mail/chrome/messenger/am-server-advanced.dtd b/l10n-el/mail/chrome/messenger/am-server-advanced.dtd
new file mode 100644
index 0000000000..8f0dbbcdac
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-server-advanced.dtd
@@ -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/. -->
+
+<!ENTITY serverAdvanced.label "Σύνθετες ρυθμίσεις λογαριασμού">
+<!-- LOCALIZATION NOTE (serverDirectory.label): Do not translate "IMAP" -->
+<!ENTITY serverDirectory.label "Κατάλογος διακομιστή IMAP:">
+<!ENTITY serverDirectory.accesskey "γ">
+<!ENTITY usingSubscription.label "Εμφάνιση μόνο εγγεγραμμένων φακέλων">
+<!ENTITY usingSubscription.accesskey "λ">
+<!ENTITY dualUseFolders.label "Ο διακομιστής υποστηρίζει φακέλους που περιέχουν υποφακέλους και μηνύματα">
+<!ENTITY dualUseFolders.accesskey "σ">
+<!ENTITY maximumConnectionsNumber.label "Μέγιστος αριθμός συνδέσεων διακομιστή στην προσωρινή μνήμη">
+<!ENTITY maximumConnectionsNumber.accesskey "Μ">
+<!-- LOCALIZATION NOTE (namespaceDesc.label): Do not translate "IMAP" -->
+<!ENTITY namespaceDesc.label "Αυτές οι προτιμήσεις καθορίζουν τους χώρους ονομάτων στο διακομιστή IMAP">
+<!ENTITY personalNamespace.label "Προσωπικός χώρος ονόματος:">
+<!ENTITY personalNamespace.accesskey "ο">
+<!ENTITY publicNamespace.label "Δημόσιο (κοινόχρηστο):">
+<!ENTITY publicNamespace.accesskey "μ">
+<!ENTITY otherUsersNamespace.label "Άλλοι χρήστες:">
+<!ENTITY otherUsersNamespace.accesskey "λ">
+<!ENTITY overrideNamespaces.label "Να επιτρέπεται στο διακομιστή η παράκαμψη αυτών των χώρων ονομάτων">
+<!ENTITY overrideNamespaces.accesskey "ρ">
+<!ENTITY pop3DeferringDesc.label "Κατά τη λήψη των μηνυμάτων από τον διακομιστή του λογαριασμού, να γίνεται χρήση του παρακάτω φακέλου για την αποθήκευση των νέων μηνυμάτων:">
+<!ENTITY accountInbox.label "Εισερχόμενα για τον λογαριασμό">
+<!ENTITY accountInbox.accesskey "ε">
+<!ENTITY deferToServer.label "Εισερχόμενα για διαφορετικό λογαριασμό">
+<!ENTITY deferToServer.accesskey "δ">
+<!ENTITY deferGetNewMail.label "Να περιλαμβάνεται αυτός ο διακομιστής κατά τη λήψη αλληλογραφίας">
+<!ENTITY deferGetNewMail.accesskey "π">
diff --git a/l10n-el/mail/chrome/messenger/am-server-top.dtd b/l10n-el/mail/chrome/messenger/am-server-top.dtd
new file mode 100644
index 0000000000..2ec2f1169e
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-server-top.dtd
@@ -0,0 +1,89 @@
+<!-- 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 messageStorage.label "Αποθήκευση μηνυμάτων">
+<!ENTITY securitySettings.label "Ρυθμίσεις ασφαλείας">
+<!ENTITY serverSettings.label "Ρυθμίσεις διακομιστή">
+<!ENTITY serverType.label "Τύπος διακομιστή:">
+<!ENTITY serverName.label "Όνομα διακομιστή:">
+<!ENTITY serverName.accesskey "δ">
+<!ENTITY userName.label "Όνομα χρήστη:">
+<!ENTITY userName.accesskey "ν">
+<!ENTITY port.label "Θύρα:">
+<!ENTITY port.accesskey "Θ">
+<!ENTITY serverPortDefault.label "Προεπιλογή:">
+<!-- LOCALIZATION NOTE (biffStart.label) : translate below 2 line with grammar dependency
+ For example, in Japanese cases:
+ biffStart.label "every"
+ biffEnd.label "minutes for new messages Check"
+-->
+<!ENTITY biffStart.label "Έλεγχος για νέα μηνύματα κάθε">
+<!ENTITY biffStart.accesskey "χ">
+<!ENTITY biffEnd.label "λεπτά">
+<!ENTITY useIdleNotifications.label "Αποδοχή άμεσων ειδοποιήσεων διακομιστή όταν έρχονται νέα μηνύματα">
+<!ENTITY useIdleNotifications.accesskey "κ">
+<!ENTITY connectionSecurity.label "Ασφάλεια σύνδεσης:">
+<!ENTITY connectionSecurity.accesskey "φ">
+<!ENTITY connectionSecurityType-0.label "Καμία">
+<!ENTITY connectionSecurityType-1.label "STARTTLS, αν είναι διαθέσιμη">
+<!ENTITY connectionSecurityType-2.label "STARTTLS">
+<!ENTITY connectionSecurityType-3.label "SSL/TLS">
+<!ENTITY authMethod.label "Μέθοδος ταυτοποίησης:">
+<!ENTITY authMethod.accesskey "θ">
+<!ENTITY leaveOnServer.label "Διατήρηση μηνυμάτων στον διακομιστή">
+<!ENTITY leaveOnServer.accesskey "τ">
+<!ENTITY headersOnly.label "Λήψη κεφαλίδων μόνο">
+<!ENTITY headersOnly.accesskey "φ">
+<!ENTITY deleteByAgeFromServer.label "Για το περισσότερο">
+<!ENTITY deleteByAgeFromServer.accesskey "π">
+<!ENTITY daysEnd.label "ημέρες">
+<!ENTITY deleteOnServer2.label "Μέχρι να τα διαγράψω">
+<!ENTITY deleteOnServer2.accesskey "γ">
+<!ENTITY downloadOnBiff.label "Αυτόματη λήψη νέων μηνυμάτων">
+<!ENTITY downloadOnBiff.accesskey "υ">
+<!ENTITY deleteMessagePrefix.label "Κατά τη διαγραφή ενός μηνύματος:">
+<!ENTITY modelMoveToTrash.label "Μετακίνηση στο φάκελο:">
+<!ENTITY modelMoveToTrash.accesskey "φ">
+<!ENTITY modelMarkDeleted.label "Επισήμανση ως διαγραμμένο">
+<!ENTITY modelMarkDeleted.accesskey "μ">
+<!ENTITY modelDeleteImmediately.label "Άμεση αφαίρεση">
+<!ENTITY modelDeleteImmediately.accesskey "φ">
+<!-- LOCALIZATION NOTE (expungeOnExit.label) : do not translate two of "&quot;" in below line -->
+<!ENTITY expungeOnExit.label "Εκκαθάριση (&quot;Διαγραφή&quot;) εισερχομένων κατά την έξοδο">
+<!ENTITY expungeOnExit.accesskey "θ">
+<!ENTITY emptyTrashOnExit.label "Άδειασμα του κάδου απορριμμάτων κατά την έξοδο">
+<!ENTITY emptyTrashOnExit.accesskey "δ">
+<!ENTITY loginAtStartup.label "Έλεγχος για νέα μηνύματα κατά την εκκίνηση">
+<!ENTITY loginAtStartup.accesskey "λ">
+<!-- LOCALIZATION NOTE (maxMessagesStart.label) : translate below 2 lines with grammar dependency
+ maxMessengerStart.label will be followed by maxMessagesEnd.label with the number
+ of messages between them
+-->
+<!ENTITY maxMessagesStart.label "Ερώτηση πριν τη λήψη περισσοτέρων από">
+<!ENTITY maxMessagesStart.accesskey "ρ">
+<!-- LOCALIZATION NOTE (maxMessagesEnd.label) : see note for maxMessagesStart.label -->
+<!ENTITY maxMessagesEnd.label "μηνύματα">
+<!ENTITY alwaysAuthenticate.label "Να απαιτείται πάντα πιστοποίηση κατά τη σύνδεση με αυτόν τον διακομιστή">
+<!ENTITY alwaysAuthenticate.accesskey "π">
+<!ENTITY newsrcFilePath1.label "Αρχείο News.rc:">
+<!ENTITY newsrcPicker1.label "Επιλογή αρχείου News.rc">
+<!ENTITY abbreviate.label "Προβολή ονομάτων ομάδων συζήτησης σαν:">
+<!ENTITY abbreviateOn.label "Ολόκληρα τα ονόματα (για παράδειγμα, 'netscape.public.mozilla.mail-news')">
+<!ENTITY abbreviateOff.label "Συντόμευση ονομάτων (π.χ., 'n.p.m.mail-news')">
+<!ENTITY advancedButton.label "Για προχωρημένους…">
+<!ENTITY advancedButton.accesskey "χ">
+<!ENTITY serverDefaultCharset2.label "Προεπιλεγμένη κωδικοποίηση χαρακτήρων:">
+<!ENTITY localPath1.label "Τοπικός φάκελος:">
+<!ENTITY localFolderPicker.label "Επιλογή τοπικού καταλόγου">
+<!ENTITY browseFolder.label "Περιήγηση…">
+<!ENTITY browseFolder.accesskey "γ">
+<!ENTITY browseNewsrc.label "Περιήγηση…">
+<!ENTITY browseNewsrc.accesskey "ε">
+
+<!ENTITY accountTitle.label "Ρυθμίσεις λογαριασμού">
+<!ENTITY accountSettingsDesc.label "Ο ακόλουθος λογαριασμός είναι ειδικός. Δεν υπάρχουν ταυτότητες που να σχετίζονται με αυτόν.">
+<!ENTITY storeType.label "Τρόπος αποθήκευσης μηνυμάτων:">
+<!ENTITY storeType.accesskey "τ">
+<!ENTITY mboxStore2.label "Αρχείο ανά φάκελο (mbox)">
+<!ENTITY maildirStore.label "Αρχείο ανά μήνυμα (maildir)">
diff --git a/l10n-el/mail/chrome/messenger/am-serverwithnoidentities.dtd b/l10n-el/mail/chrome/messenger/am-serverwithnoidentities.dtd
new file mode 100644
index 0000000000..4467f68a52
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-serverwithnoidentities.dtd
@@ -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/. -->
+
+<!ENTITY accountName.label "Όνομα λογαριασμού:">
+<!ENTITY accountName.accesskey "ν">
diff --git a/l10n-el/mail/chrome/messenger/am-smime.dtd b/l10n-el/mail/chrome/messenger/am-smime.dtd
new file mode 100644
index 0000000000..3663d94d46
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-smime.dtd
@@ -0,0 +1,55 @@
+<!-- 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 e2eTitle.label "Κρυπτογράφηση από άκρο σε άκρο">
+<!ENTITY e2eLearnMore.label "Μάθετε περισσότερα">
+
+<!ENTITY e2eEnc.description "Χωρίς κρυπτογράφηση από άκρο σε άκρο, τα περιεχόμενα των μηνυμάτων εκτίθενται εύκολα στον πάροχο ηλεκτρονικού ταχυδρομείου σας και σε μαζική παρακολούθηση.">
+<!ENTITY e2eeReqWarning.description "Αν απαιτήσετε κρυπτογράφηση, θα πρέπει να έχετε το δημόσιο κλειδί ή το πιστοποιητικό κάθε παραλήπτη για να στείλετε ένα μήνυμα.">
+
+<!ENTITY e2eSigning.description "Μια ψηφιακή υπογραφή επιτρέπει στους παραλήπτες να επαληθεύσουν ότι το μήνυμα εστάλη από εσάς και ότι το περιεχόμενο δεν έχει αλλάξει.">
+<!ENTITY e2eTechPref.description "Προτιμώμενη τεχνολογία κρυπτογράφησης:">
+
+<!ENTITY doNotEncrypt.label "Να μην είναι ενεργή η κρυπτογράφηση από προεπιλογή">
+<!ENTITY doNotEncrypt.accesskey "Ν">
+<!ENTITY requireEncryptMessage.label "Απαίτηση κρυπτογράφησης από προεπιλογή">
+<!ENTITY requireEncryptMessage.accesskey "φ">
+<!ENTITY encryptionCert2.message "Προσωπικό πιστοποιητικό για κρυπτογράφηση:">
+<!ENTITY digitalSign.certificate.button "Επιλογή…">
+<!ENTITY digitalSign.certificate.accesskey "Ε">
+<!ENTITY digitalSign.certificate_clear.button "Απαλοιφή">
+<!ENTITY digitalSign.certificate_clear.accesskey "Α">
+<!ENTITY encryption.certificate.button "Επιλογή…">
+<!ENTITY encryption.certificate.accesskey "π">
+<!ENTITY encryption.certificate_clear.button "Απαλοιφή">
+<!ENTITY encryption.certificate_clear.accesskey "φ">
+<!ENTITY signingGroupTitle.label "Ψηφιακή υπογραφή">
+<!ENTITY signMessage2.label "Προσθήκη ψηφιακής υπογραφής από προεπιλογή">
+<!ENTITY signMessage.accesskey "Ψ">
+
+<!ENTITY signingCert2.message "Προσωπικό πιστοποιητικό για ψηφιακή υπογραφή:">
+
+<!ENTITY sendingDefaults.label "Προεπιλεγμένες ρυθμίσεις για αποστολή μηνυμάτων">
+
+<!ENTITY technologyAutomatic.label "Αυτόματη επιλογή βάσει διαθέσιμων κλειδιών ή πιστοποιητικών">
+
+<!ENTITY certificates2.label "S/MIME">
+<!ENTITY manageCerts3.label "Διαχείριση πιστοποιητικών S/MIME">
+<!ENTITY manageCerts3.accesskey "Δ">
+<!ENTITY manageDevices2.label "Συσκευές ασφαλείας S/MIME">
+<!ENTITY manageDevices2.accesskey "φ">
+
+<!ENTITY technologySMIME.label "Να προτιμάται το S/MIME">
+<!ENTITY technologyOpenPGP.label "Να προτιμάται το OpenPGP">
+
+<!ENTITY openpgpKeys.label "OpenPGP">
+
+<!-- Strings for the cert picker dialog -->
+<!ENTITY certPicker.title "Επιλογή πιστοποιητικού">
+<!ENTITY certPicker.info "Πιστοποιητικό:">
+<!ENTITY certPicker.detailsLabel "Λεπτομέρειες επιλεγμένου πιστοποιητικού:">
+
+<!ENTITY openpgpKey.message "Προσωπικό κλειδί για κρυπτογράφηση και ψηφιακή υπογραφή:">
+<!ENTITY openpgpKey.button "Ορισμός προσωπικού κλειδιού…">
+<!ENTITY openpgpKey.accesskey "ο">
diff --git a/l10n-el/mail/chrome/messenger/am-smime.properties b/l10n-el/mail/chrome/messenger/am-smime.properties
new file mode 100644
index 0000000000..6952c3644f
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/am-smime.properties
@@ -0,0 +1,40 @@
+# 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/.
+
+## S/MIME error strings.
+## Note to localization: %S is a placeholder
+NoSenderSigningCert=Ζητήσατε να υπογράψετε ψηφιακά αυτό το μήνυμα, αλλά η εφαρμογή δεν μπορεί να βρει πιστοποιητικό κρυπτογράφησης που ορίσατε στις Προτιμήσεις αλληλογραφίας και συζήτησης ή το πιστοποιητικό έχει λήξει.
+NoSenderEncryptionCert=Ζητήσατε να κρυπτογραφήσετε αυτό το μήνυμα, αλλά η εφαρμογή δεν μπορεί να βρει πιστοποιητικό κρυπτογράφησης που ορίσατε στις Προτιμήσεις αλληλογραφίας και συζήτησης ή το πιστοποιητικό έχει λήξει.
+MissingRecipientEncryptionCert=Ζητήσατε να κρυπτογραφήσετε αυτό το μήνυμα, αλλά η εφαρμογή δεν μπορεί να βρει πιστοποιητικό κρυπτογράφησης για το %S.
+ErrorEncryptMail=Αδυναμία κρυπτογράφησης μηνύματος. Ελέγξτε ότι έχετε έγκυρο πιστοποιητικό αλληλογραφίας για κάθε παραλήπτη. Ελέγξτε ακόμα ότι τα πιστοποιητικά που έχουν ορισθεί στις Ρυμίσεις λογαριασμού Αλληλογραφίας και συζήτησης είναι έγκυρα και έμπιστα.
+ErrorCanNotSignMail=Αδυναμία υπογραφής μηνύματος. Παρακαλούμε ελέγξτε αν τα πιστοποιητικά που έχουν οριστεί στις ρυθμίσεις λογαριασμών email και ειδήσεων είναι έγκυρα και αξιόπιστα.
+
+## Strings used for in the prefs.
+NoSigningCert=Η Διαχείριση Πιστοποιητικών δεν μπορεί να βρει ένα έγκυρο πιστοποιητικό για να υπογραφούν ψηφιακά τα μηνύματά σας.
+NoSigningCertForThisAddress=Η Διαχείριση Πιστοποιητικών δεν μπορεί να βρει ένα έγκυρο πιστοποιητικό για να υπογραφούν ψηφιακά τα μηνύματά σας με τη διεύθυνση <%S>.
+NoEncryptionCert=Η Διαχείριση Πιστοποιητικών δεν μπορεί να βρει ένα έγκυρο πιστοποιητικό ώστε να μπορούν άλλοι να σας στείλουν κρυπτογραφημένα μηνύματα.
+NoEncryptionCertForThisAddress=Η Διαχείριση Πιστοποιητικών δεν μπορεί να βρει ένα έγκυρο πιστοποιητικό ώστε να μπορούν άλλοι να σας στείλουν κρυπτογραφημένα μηνύματα στη διεύθυνση <%S>.
+
+encryption_needCertWantSame=Πρίν να μπορείτε να υπογράφετε ψηφιακά τα μηνύματα σας θα πρέπει να καθορίσετε ένα πιστοποιητικό το οποίο θα χρησιμοποιούν τρίτοι όταν σας στέλνουν κρυπτογραφημένα μηνύματα. Θέλετε να ρυθμίσετε ένα πιστοποιητικό κρυπτογράφησης και αποκρυπτογράφησης τώρα;
+encryption_wantSame=Θέλετε να χρησιμοποιήσετε το ίδιο πιστοποιητικό για να κρυπτογραφείτε και να αποκρυπτογραφείτε εισερχόμενα μηνύματα;
+encryption_needCertWantToSelect=Πρίν να μπορείτε να υπογράφετε ψηφιακά τα μηνύματα σας θα πρέπει να καθορίσετε ένα πιστοποιητικό το οποίο θα χρησιμοποιούν τρίτοι όταν σας στέλνουν μηνύματα. Θέλετε να ρυθμίσετε ένα πιστοποιητικό κρυπτογράφησης τώρα;
+signing_needCertWantSame=Μπορείτε ακόμα να καθορίσετε ένα πιστοποιητικό για να το χρησιμοποιείται για την ψηφιακή υπογραφή των μηνυμάτων σας. Θέλετε να χρησιμοποιήσετετε το ίδιο πιστοποιητικό για την ψηφιακή υπογραφή;
+signing_wantSame=Θέλετε να χρησιμοποιήσετε το ίδιο πιστοποιητικό για να υπογράφετε ψηφιακά τα μηνύματα σας;
+signing_needCertWantToSelect=Θα πρέπει επίσης να καθορίσετε ένα πιστοποιητικό για χρήση στην ψηφιακή υπογραφή των μηνυμάτων σας. Θέλετε να ρυθμίσετε τώρα ένα πιστοποιητικό για την ψηφιακή υπογραφή μηνυμάτων;
+
+## Strings used by nsMsgComposeSecure
+mime_smimeEncryptedContentDesc=Κρυπτογραφημένο μήνυμα S/MIME
+mime_smimeSignatureContentDesc=Κρυπτογραφημένη υπογραφή S/MIME
+
+## Strings used by the cert picker.
+CertInfoIssuedFor=Εκδόθηκε σε:
+CertInfoIssuedBy=Εκδόθηκε από:
+CertInfoValid=Έγκυρο
+CertInfoFrom=από
+CertInfoTo=έως
+CertInfoPurposes=Σκοποί
+CertInfoEmail=Email
+CertInfoStoredIn=Αποθηκευμένο σε:
+NicknameExpired=(έληξε)
+NicknameNotYetValid=(όχι ακόμα έγκυρο)
diff --git a/l10n-el/mail/chrome/messenger/app-extension-fields.properties b/l10n-el/mail/chrome/messenger/app-extension-fields.properties
new file mode 100644
index 0000000000..898650bf8a
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/app-extension-fields.properties
@@ -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/.
+
+# LOCALIZATION NOTE (extension.thunderbird-compact-light@mozilla.org.name): This is displayed in about:addons -> Appearance
+extension.thunderbird-compact-light@mozilla.org.name=Φωτεινό
+extension.thunderbird-compact-light@mozilla.org.description=Ένα θέμα με φωτεινό σύνολο χρωμάτων.
+
+# LOCALIZATION NOTE (extension.thunderbird-compact-dark@mozilla.org.name): This is displayed in about:addons -> Appearance
+extension.thunderbird-compact-dark@mozilla.org.name=Σκούρο
+extension.thunderbird-compact-dark@mozilla.org.description=Ένα θέμα με σκούρο σύνολο χρωμάτων.
diff --git a/l10n-el/mail/chrome/messenger/appUpdate.properties b/l10n-el/mail/chrome/messenger/appUpdate.properties
new file mode 100644
index 0000000000..5763c1d518
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/appUpdate.properties
@@ -0,0 +1,40 @@
+# 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 (updateAvailableTitle): %S will be replaced with brandShortName
+updateAvailableTitle=Μια νέα ενημέρωση του %S είναι διαθέσιμη.
+# LOCALIZATION NOTE (updateAvailableMessage): %S will be replaced with brandShortName
+updateAvailableMessage=Ενημερώστε το %S σας για περισσότερη ταχύτητα και απόρρητο.
+updateAvailablePrimaryButtonLabel=Λήψη ενημέρωσης
+updateAvailablePrimaryButtonAccessKey=Λ
+updateAvailableSecondaryButtonLabel=Όχι τώρα
+updateAvailableSecondaryButtonAccessKey=Ό
+
+# LOCALIZATION NOTE (updateManualTitle): %S will be replaced with brandShortName
+updateManualTitle=Το %S δεν μπορεί να ενημερωθεί στην πιο πρόσφατη έκδοση.
+# LOCALIZATION NOTE (updateManualMessage): %S will be replaced with brandShortName
+updateManualMessage=Κάντε λήψη ενός νέου αντιγράφου του %S και θα σας βοηθήσουμε να το εγκαταστήσετε.
+# LOCALIZATION NOTE (updateManualPrimaryButtonLabel): %S will be replaced with brandShortName
+updateManualPrimaryButtonLabel=Λήψη του %S
+updateManualPrimaryButtonAccessKey=Λ
+updateManualSecondaryButtonLabel=Όχι τώρα
+updateManualSecondaryButtonAccessKey=Ό
+
+# LOCALIZATION NOTE (updateUnsupportedTitle): %S will be replaced with brandShortName
+updateUnsupportedTitle=Το %S δεν μπορεί να ενημερωθεί στην πιο πρόσφατη έκδοση.
+# LOCALIZATION NOTE (updateUnsupportedMessage): %S will be replaced with brandShortName
+updateUnsupportedMessage=Η πιο πρόσφατη έκδοση του %S δεν υποστηρίζεται στο σύστημά σας.
+updateUnsupportedPrimaryButtonLabel=Μάθετε περισσότερα
+updateUnsupportedPrimaryButtonAccessKey=Μ
+updateUnsupportedSecondaryButtonLabel=Κλείσιμο
+updateUnsupportedSecondaryButtonAccessKey=Κ
+
+# LOCALIZATION NOTE (updateRestartTitle): %S will be replaced with brandShortName
+updateRestartTitle=Επανεκκίνηση για ενημέρωση του %S.
+# LOCALIZATION NOTE (updateRestartMessage): %S will be replaced with brandShortName
+updateRestartMessage=Μετά από μια σύντομη επανεκκίνηση, το %S θα επαναφέρει όλες τις ανοικτές καρτέλες και τα παράθυρά σας.
+updateRestartPrimaryButtonLabel=Επανεκκίνηση
+updateRestartPrimaryButtonAccessKey=Ε
+updateRestartSecondaryButtonLabel=Όχι τώρα
+updateRestartSecondaryButtonAccessKey=Ό
diff --git a/l10n-el/mail/chrome/messenger/appleMailImportMsgs.properties b/l10n-el/mail/chrome/messenger/appleMailImportMsgs.properties
new file mode 100644
index 0000000000..355adf8f80
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/appleMailImportMsgs.properties
@@ -0,0 +1,21 @@
+# 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/.
+
+# Short name of import module
+ApplemailImportName=Apple Mail
+
+# Description of import module
+ApplemailImportDescription=Εισαγωγή τοπικής αλληλογραφίας από το Mac OS X Mail
+
+# Success Message
+# LOCALIZATION NOTE(ApplemailImportMailboxSuccess): Do not translate the word "%S" below.
+ApplemailImportMailboxSuccess=Τα τοπικά μηνύματα εισήχθησαν με επιτυχία από το %S
+
+# Error Message
+ApplemailImportMailboxBadparam=Εσωτερικό σφάλμα. Η εισαγωγή απέτυχε. Προσπαθήστε ξανά.
+
+# Error message
+# LOCALIZATION NOTE(ApplemailImportMailboxConverterror): Do not translate the word "%S" below.
+ApplemailImportMailboxConverterror=Σφάλμα κατά την εισαγωγή μηνυμάτων από το %S. Τα μηνύματα δεν εισήχθησαν.
+
diff --git a/l10n-el/mail/chrome/messenger/baseMenuOverlay.dtd b/l10n-el/mail/chrome/messenger/baseMenuOverlay.dtd
new file mode 100644
index 0000000000..7a60b25c53
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/baseMenuOverlay.dtd
@@ -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/. -->
+
+<!-- Help Menu -->
+<!ENTITY helpMenu.label "Βοήθεια">
+<!ENTITY helpMenu.accesskey "Β">
+<!-- LOCALIZATION NOTE some localizations of Windows use "?"
+ for the help button in the menubar but Gnome does not. -->
+<!ENTITY helpMenuWin.label "Βοήθεια">
+<!ENTITY helpMenuWin.accesskey "Β">
+<!ENTITY aboutProduct2.label "Σχετικά με το &brandShorterName;">
+<!ENTITY aboutProduct2.accesskey "Σ">
+<!ENTITY helpTroubleshootingInfo.label "Πληροφορίες επίλυσης προβλημάτων">
+<!ENTITY helpTroubleshootingInfo.accesskey "μ">
+<!ENTITY helpSafeMode.label "Επανεκκίνηση με ανενεργά πρόσθετα…">
+<!ENTITY helpSafeMode.accesskey "π">
+<!ENTITY helpSafeMode.stop.label "Επανεκκίνηση με ανενεργά πρόσθετα">
+<!ENTITY helpSafeMode.stop.accesskey "Ε">
+<!ENTITY productHelp.label "Βοήθεια &brandShortName;">
+<!ENTITY productHelp.accesskey "Β">
+<!ENTITY productHelp.commandkey "VK_F1">
+<!ENTITY productHelpMac.commandkey "?">
+<!ENTITY productHelpMac.modifiers "accel">
+
+<!ENTITY helpKeyboardShortcuts.label "Συντομεύσεις πληκτρολογίου">
+<!ENTITY helpKeyboardShortcuts.accesskey "Σ">
+
+<!ENTITY helpFeedbackPage.label "Υποβολή σχολίων…">
+<!ENTITY helpFeedbackPage.accesskey "Υ">
+
+<!ENTITY helpShowTour2.label "Περιήγηση στο &brandShorterName;">
+<!ENTITY helpShowTour2.accesskey "ρ">
+
+<!ENTITY helpGetInvolvedPage.label "Συμμετοχή">
+<!ENTITY helpGetInvolvedPage.accesskey "Σ">
+
+<!ENTITY helpDonationsPage.label "Δωρεά">
+<!ENTITY helpDonationsPage.accesskey "Δ">
diff --git a/l10n-el/mail/chrome/messenger/beckyImportMsgs.properties b/l10n-el/mail/chrome/messenger/beckyImportMsgs.properties
new file mode 100644
index 0000000000..a4623828a9
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/beckyImportMsgs.properties
@@ -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/.
+#
+# The following are used by the becky import code to display status/error
+# and informational messages
+
+# Short name of import module
+BeckyImportName=Becky! Internet Mail
+
+# Description of import module
+BeckyImportDescription=Εισαγωγή τοπικών email από το Becky! Internet Mail
+
+# Success Message
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+# The variable %S will contain the name of the Mailbox
+BeckyImportMailboxSuccess=Εισήχθησαν επιτυχώς τα τοπικά μηνύματα από το %S.
+
+BeckyImportAddressSuccess=Έγινε εισαγωγή ευρετηρίου διευθύνσεων
diff --git a/l10n-el/mail/chrome/messenger/charsetTitles.properties b/l10n-el/mail/chrome/messenger/charsetTitles.properties
new file mode 100644
index 0000000000..c18dc1a714
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/charsetTitles.properties
@@ -0,0 +1,84 @@
+# 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/.
+
+## Rule of this file:
+## 1. key should always be in lower case ascii so we can do case insensitive
+## comparison in the code faster.
+
+## Format of this file:
+## charset_name.title = a_title - specifies the human readable title for
+## this charset
+
+## Format of this file:
+## charset_name.title = a_title - specifies the human readable title for
+## this charset
+
+iso-8859-1.title = Δυτικής (ISO-8859-1)
+iso-8859-2.title = Κεντρικής Ευρώπης (ISO-8859-2)
+iso-8859-3.title = Νότιας Ευρώπης (ISO-8859-3)
+iso-8859-4.title = Βαλτικής (ISO-8859-4)
+iso-8859-10.title = Σκανδιναβικής (ISO-8859-10)
+iso-8859-13.title = Βαλτικής (ISO-8859-13)
+iso-8859-14.title = Κελτικής (ISO-8859-14)
+iso-8859-15.title = Δυτικής (ISO-8859-15)
+iso-8859-16.title = Ρουμανικής (ISO-8859-16)
+windows-1250.title = Κεντρικής Ευρώπης (Windows-1250)
+windows-1252.title = Δυτικής (Windows-1252)
+windows-1254.title = Τουρκικής (Windows-1254)
+windows-1257.title = Βαλτικής (Windows-1257)
+macintosh.title = Δυτικής (MacRoman)
+x-mac-ce.title = Κεντρικής Ευρώπης (MacCE)
+x-mac-turkish.title = Τουρκικής (MacTurkish)
+x-mac-croatian.title = Κροατικής (MacCroatian)
+x-mac-romanian.title = Ρουμανικής (MacRomanian)
+x-mac-icelandic.title = Ισλανδικής (MacIcelandic)
+iso-2022-jp.title = Ιαπωνικής (ISO-2022-JP)
+shift_jis.title = Ιαπωνικής (Shift_JIS)
+euc-jp.title = Ιαπωνικής (EUC-JP)
+big5.title = Κινέζικα Παραδοσιακά (Big5)
+big5-hkscs.title = Κινέζικα Παραδοσιακά (Big5-HKSCS)
+gb2312.title = Κινέζικα Απλοποιημένα (GB2312)
+gbk.title = Κινέζικα Απλοποιημένα (GBK)
+euc-kr.title = Κορεάτικα (EUC-KR)
+utf-7.title = Unicode (UTF-7)
+utf-8.title = Unicode (UTF-8)
+utf-16.title = Unicode (UTF-16)
+utf-16le.title = Unicode (UTF-16LE)
+utf-16be.title = Unicode (UTF-16BE)
+iso-8859-5.title = Κυριλλικά (ISO-8859-5)
+windows-1251.title = Κυριλλικά (Windows-1251)
+x-mac-cyrillic.title = Κυριλλικά (MacCyrillic)
+x-mac-ukrainian.title = Κυριλλικά/Ουκρανικά (MacUkrainian)
+koi8-r.title = Κυριλλικά (KOI8-R)
+koi8-u.title = Κυριλλικά/Ουκρανικά (KOI8-U)
+iso-8859-7.title = Ελληνικά (ISO-8859-7)
+windows-1253.title = Ελληνικά (Windows-1253)
+x-mac-greek.title = Ελληνικά (MacGreek)
+windows-1258.title = Βιετναμέζικα (Windows-1258)
+windows-874.title = Ταϊλανδέζικα (Windows-874)
+iso-8859-6.title = Αραβικά (ISO-8859-6)
+iso-8859-8.title = Εβραϊκά Οπτικά (ISO-8859-8)
+iso-8859-8-i.title = Εβραϊκά (ISO-8859-8-I)
+windows-1255.title = Εβραϊκά (Windows-1255)
+windows-1256.title = Αραβικά (Windows-1256)
+x-user-defined.title = Καθορισμένο από το χρήστη
+ibm866.title = Κυριλλικά/Ρώσικα (CP-866)
+gb18030.title = Κινέζικα Απλοποιημένα (GB18030)
+x-mac-arabic.title = Αραβικά (MacArabic)
+x-mac-farsi.title = Φαρσί (MacFarsi)
+x-mac-hebrew.title = Εβραϊκά (MacHebrew)
+x-mac-devanagari.title = Χίντι (MacDevanagari)
+x-mac-gujarati.title = Γκουτζαρατικά (MacGujarati)
+x-mac-gurmukhi.title = Γκουρμούκι (MacGurmukhi)
+
+chardet.off.title = (Χωρίς)
+chardet.universal_charset_detector.title = Παγκόσμιο
+chardet.ja_parallel_state_machine.title = Ιαπωνικά
+chardet.ko_parallel_state_machine.title = Κορεάτικα
+chardet.zhtw_parallel_state_machine.title = Παραδοσιακά κινέζικα
+chardet.zhcn_parallel_state_machine.title = Κινέζικα Απλοποιημένα
+chardet.zh_parallel_state_machine.title = Κινεζικής
+chardet.cjk_parallel_state_machine.title = Ανατολικής Ασίας
+chardet.ruprob.title = Ρωσικής
+chardet.ukprob.title = Ουκρανικής
diff --git a/l10n-el/mail/chrome/messenger/chat.dtd b/l10n-el/mail/chrome/messenger/chat.dtd
new file mode 100644
index 0000000000..6491f51d14
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/chat.dtd
@@ -0,0 +1,44 @@
+<!-- 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 onlineContactsHeader.label "Επαφές σε σύνδεση">
+<!ENTITY offlineContactsHeader.label "Επαφές εκτός σύνδεσης">
+<!ENTITY conversationsHeader.label "Συνομιλίες">
+<!ENTITY searchResultConversation.label "Αποτέλεσμα αναζήτησης">
+<!ENTITY chat.noConv.title "Οι συνομιλίες θα εμφανιστούν εδώ.">
+<!ENTITY chat.noConv.description "Χρησιμοποιήστε τη λίστα επαφών στην αριστερή προβολή για έναρξη συνομιλίας.">
+<!ENTITY chat.noPreviousConv.description "Το &brandShortName; δεν έχει επί του παρόντος προηγούμενες συνομιλίες αποθηκευμένες για αυτήν την επαφή.">
+<!ENTITY chat.noAccount.title "Δεν έχετε ρυθμίσει ένα λογαριασμό συνομιλίας ακόμα.">
+<!ENTITY chat.noAccount.description "Αφήστε το &brandShortName; να σας καθοδηγήσει στη διαδικασία ρύθμισης του λογαριασμού συνομιλίας σας.">
+<!ENTITY chat.accountWizard.button "Έναρξη">
+<!ENTITY chat.noConnectedAccount.title "Οι λογαριασμοί συνομιλίας σας δεν είναι συνδεδεμένοι.">
+<!ENTITY chat.noConnectedAccount.description "Μπορείτε να τους συνδέσετε από το παράθυρο 'Κατάσταση συνομιλίας':">
+<!ENTITY chat.showAccountManager.button "Εμφάνιση κατάστασης συνομιλίας">
+
+<!ENTITY chat.participants "Συμμετέχοντες:">
+<!ENTITY chat.previousConversations "Προηγούμενες συνομιλίες:">
+<!ENTITY chat.ongoingConversation "Συνομιλία σε εξέλιξη">
+
+<!ENTITY openConversationCmd.label "Έναρξη συνομιλίας">
+<!ENTITY openConversationCmd.accesskey "σ">
+<!ENTITY closeConversationCmd.label "Κλείσιμο συνομιλίας">
+<!ENTITY closeConversationCmd.accesskey "Κ">
+<!ENTITY aliasCmd.label "Μετονομασία">
+<!ENTITY aliasCmd.accesskey "Μ">
+<!ENTITY deleteCmd.label "Αφαίρεση επαφής">
+<!ENTITY deleteCmd.accesskey "φ">
+
+<!ENTITY openConversationButton.tooltip "Έναρξη συνομιλίας">
+<!ENTITY closeConversationButton.tooltip "Κλείσιμο συνομιλίας">
+
+<!ENTITY addBuddyButton.label "Προσθήκη επαφής">
+<!ENTITY joinChatButton.label "Συμμετοχή σε συνομιλία">
+<!ENTITY chatAccountsButton.label "Εμφάνιση λογαριασμών">
+
+<!ENTITY status.available "Διαθέσιμος/-η">
+<!ENTITY status.unavailable "Μη διαθέσιμος/-η">
+<!ENTITY status.offline "Εκτός σύνδεσης">
+
+<!ENTITY openLinkCmd.label "Άνοιγμα συνδέσμου…">
+<!ENTITY openLinkCmd.accesskey "Ά">
diff --git a/l10n-el/mail/chrome/messenger/chat.properties b/l10n-el/mail/chrome/messenger/chat.properties
new file mode 100644
index 0000000000..06c3f4b6dc
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/chat.properties
@@ -0,0 +1,99 @@
+# 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/.
+
+chatTabTitle=Συνομιλία
+goBackToCurrentConversation.button=Πίσω στην τρέχουσα συνομιλία
+# LOCALIZATION NOTE (startAConversationWith.button):
+# %S is replaced with the display name of a contact.
+startAConversationWith.button=Έναρξη συνομιλίας με %S
+
+# LOCALIZATION NOTE (defaultGroup):
+# this is used in the addBuddies dialog if the list of existing groups is empty
+defaultGroup=Επαφές
+
+# LOCALIZATION NOTE (buddy.authRequest.label):
+# This string appears in a notification bar at the
+# top of the Contacts window when someone added the user to his/her
+# contact list, to request the permission from the user to share
+# status information with this potential new contact.
+# %S is replaced with the user name of the potential new contact.
+buddy.authRequest.label=Ο/Η %S θέλει να σας μιλήσει
+buddy.authRequest.allow.label=Αποδοχή
+buddy.authRequest.allow.accesskey=Α
+buddy.authRequest.deny.label=Άρνηση
+buddy.authRequest.deny.accesskey=Ά
+
+# LOCALIZATION NOTE (buddy.deletePrompt.title):
+# %S here will be replaced by the alias (or username) of a buddy about
+# to be removed from the buddy list.
+buddy.deletePrompt.title=Διαγραφή %S;
+
+# LOCALIZATION NOTE (buddy.deletePrompt.message):
+# %1$S will be replaced by the name of a buddy (either the alias
+# followed by the username between parenthesis if an alias is set, or
+# only the username otherwise).
+# %2$S will be the name of the protocol on which this buddy is removed
+# (for example: AIM, MSN, Google Talk).
+#
+# Please find a wording that will keep the username as close as
+# possible to the beginning of the string, because this is the
+# important information that an user should see when looking quickly
+# at this prompt.
+buddy.deletePrompt.message=Ο/Η %1$S θα αφαιρεθεί οριστικά από τη λίστα φίλων %2$S σας αν συνεχίσετε.
+
+# LOCALIZATION NOTE (buddy.deletePrompt.displayName):
+# This is used to format the display name inserted in buddy.deletePrompt.message
+# %1$S is the alias, %2$S is the username.
+buddy.deletePrompt.displayName=%1$S (%2$S)
+
+# LOCALIZATION NOTE (buddy.deletePrompt.button):
+# the & symbol indicates the position of the character that should be
+# used as the accesskey for this button.
+buddy.deletePrompt.button=&Διαγραφή
+
+displayNameEmptyText=Εμφανιζόμενο όνομα
+userIconFilePickerTitle=Επιλογή του νέου εικονιδίου…
+
+# LOCALIZATION NOTE (chat.isTyping, chat.hasStoppedTyping):
+# The contact display name is displayed with a big font on a first
+# line and these two strings are displayed on a second line with a
+# smaller font. Please try to find a wording that make this look
+# almost like a sentence.
+chat.isTyping=πληκτρολογεί…
+chat.hasStoppedTyping=σταμάτησε να πληκτρολογεί.
+# LOCALIZATION NOTE (chat.contactIsTyping, chat.contactHasStoppedTyping):
+# These strings are displayed in a tooltip when hovering the status type icon.
+# %S is replaced with the display name of the contact.
+chat.contactIsTyping=Ο/Η %S πληκτρολογεί.
+chat.contactHasStoppedTyping=Ο/Η %S σταμάτησε να πληκτρολογεί.
+
+# LOCALIZATION NOTE (unknownCommand):
+# This is shown when an unknown command (/foo) is attempted. %S is the command.
+unknownCommand=Το %S δεν είναι υποστηριζόμενη εντολή. Πληκτρολογήστε /help για προβολή λίστας εντολών.
+
+#LOCALIZATION NOTE
+# These are special entries in the log tree for the corresponding days.
+log.today=Σήμερα
+log.yesterday=Χθες
+
+#LOCALIZATION NOTE
+# These are special groups in the log tree for the last 3-7 days and
+# the last 8-14 days.
+log.currentWeek=Αυτήν την εβδομάδα
+log.previousWeek=Τελευταία εβδομάδα
+
+# LOCALIZATION NOTE (messagePreview):
+# This is the default message preview to be shown
+# when the user has chosen not to show any info in the notification about the
+# incoming message being notified.
+messagePreview=Νέο μήνυμα συνομιλίας
+
+#LOCALIZATION NOTE (bundledMessagePreview): Semi-colon list of plural forms.
+# Used when multiple incoming messages from the same sender are bundled
+# into a single notification.
+# #1 is the number of incoming messages the user is being notified about. When #1
+# is greater than one, the plural form after the semicolon is used.
+# Do not translate %1$S, it is the message preview to be shown in the
+# notification, i.e. the first incoming message.
+bundledMessagePreview=%1$S… (και #1 ακόμη μήνυμα);%1$S… (και #1 ακόμη μηνύματα)
diff --git a/l10n-el/mail/chrome/messenger/configEditorOverlay.dtd b/l10n-el/mail/chrome/messenger/configEditorOverlay.dtd
new file mode 100644
index 0000000000..3d78799d68
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/configEditorOverlay.dtd
@@ -0,0 +1,5 @@
+<!-- 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 closeCmd.key "W">
diff --git a/l10n-el/mail/chrome/messenger/converterDialog.dtd b/l10n-el/mail/chrome/messenger/converterDialog.dtd
new file mode 100644
index 0000000000..7bdfc1f087
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/converterDialog.dtd
@@ -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/. -->
+
+<!ENTITY converterDialog.title "Μετατροπέας Τύπου Αποθήκευσης Μηνύματος">
+<!ENTITY converterDialog.continueButton "Συνέχεια">
+<!ENTITY converterDialog.cancelButton "Ακύρωση">
+<!ENTITY converterDialog.finishButton "Τέλος">
+<!ENTITY converterDialog.complete "Η μετατροπή ολοκληρώθηκε. Το &brandShortName; θα επανεκκινηθεί.">
+<!ENTITY converterDialog.error "Η μετατροπή απέτυχε.">
+
diff --git a/l10n-el/mail/chrome/messenger/converterDialog.properties b/l10n-el/mail/chrome/messenger/converterDialog.properties
new file mode 100644
index 0000000000..da03834334
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/converterDialog.properties
@@ -0,0 +1,41 @@
+# 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 (converterDialog.warning):
+# %1$S will be replaced by the name of the account which is going to be converted.
+# %2$S will be replaced by the format into which the account will be converted.
+# %3$S will be replaced by $BrandShortName.
+converterDialog.warning=Τα μηνύματα στο λογαριασμό %1$S θα μετατραπούν σε μορφή %2$S. Το %3$S θα επανεκκινηθεί αφού ολοκληρωθεί η μετατροπή.
+
+# LOCALIZATION NOTE (converterDialog.message):
+# %1$S will be replaced by the name of the account which is being converted.
+# %2$S will be replaced by the format into which the account will be converted.
+converterDialog.message=Γίνεται μετατροπή του λογαριασμού %1$S σε %2$S…
+
+# LOCALIZATION NOTE (converterDialog.warningForDeferredAccount):
+# %1$S will be replaced by the name of the deferred account for which migration is initiated by the user.
+# %2$S will be replaced by the name of the account to which the deferred account is deferred ie the name of the deferred-to account.
+# %3$S will be replaced by the name of the deferred-to account.
+# %4$S will be replaced by a comma separated list of names of accounts which are deferred to the deferred-to account.
+# %5$S will be replaced by a comma separated list of names of accounts which are going to get converted.
+# %6$S will be replaced by the format into which the accounts will be converted.
+# %7$S will be replaced by $BrandShortName.
+converterDialog.warningForDeferredAccount=Το %1$S μετατίθεται στο %2$S. Λογαριασμοί που μετατίθεται στο %3$S: %4$S. Τα μηνύματα στους λογαριασμούς %5$S θα μετατραπούν σε μορφή %6$S. Το %7$S θα επανεκκινήσει αφού η μετατροπή ολοκληρωθεί.
+
+# LOCALIZATION NOTE (converterDialog.warningForDeferredToAccount):
+# %1$S will be replaced by the name of the deferred-to account for which migration is initiated by the user and to which other accounts are deferred.
+# %2$S will be replaced by a comma separated list of names of accounts which are deferred to the deferred-to account.
+# %3$S will be replaced by a comma separated list of names of accounts which are going to get converted.
+# %4$S will be replaced by the format into which the accounts will be converted.
+# %5$S will be replaced by $BrandShortName.
+converterDialog.warningForDeferredToAccount=Λογαριασμοί που μετατίθενται στο %1$S: %2$S. Τα μηνύματα στους λογαριασμούς %3$S θα μετατραπούν σε μορφή %4$S. Το %5$S θα επανεκκινήσει αφού ολοκληρωθεί η μετατροπή.
+
+# LOCALIZATION NOTE (converterDialog.messageForDeferredAccount):
+# %1$S will be replaced by a comma separated list of names of accounts which are being converted.
+# %2$S will be replaced by the format into which the accounts will be converted.
+converterDialog.messageForDeferredAccount=Γίνεται μετατροπή των λογαριασμών %1$S σε %2$S…
+
+# LOCALIZATION NOTE (converterDialog.percentDone):
+# %1$S will be replaced by the percentage of conversion that is complete.
+converterDialog.percentDone=%1$S %% έτοιμο
diff --git a/l10n-el/mail/chrome/messenger/custom.properties b/l10n-el/mail/chrome/messenger/custom.properties
new file mode 100644
index 0000000000..c054727104
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/custom.properties
@@ -0,0 +1,5 @@
+# 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/.
+
+colonInHeaderName=Η κεφαλίδα που εισάγατε περιέχει ένα μη έγκυρο χαρακτήρα, όπως ':', ένα μη εκτυπώσιμο χαρακτήρα, ένα non-ascii χαρακτήρα. Απομακρύνετε το μη έγκυρο χαρακτήρα και προσπαθήστε ξανά.
diff --git a/l10n-el/mail/chrome/messenger/customizeToolbar.dtd b/l10n-el/mail/chrome/messenger/customizeToolbar.dtd
new file mode 100644
index 0000000000..6c623768f6
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/customizeToolbar.dtd
@@ -0,0 +1,18 @@
+<!-- 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 dialog.title "Προσαρμογή γραμμής εργαλείων">
+<!ENTITY dialog.dimensions "width: 100ch; height: 36em;">
+<!ENTITY instructions.description "Προσθέστε ή αφαιρέστε στοιχεία σύροντάς τα σε ή από γραμμές εργαλείων.">
+<!ENTITY show.label "Εμφάνιση:">
+<!ENTITY iconsAndText.label "Εικονίδια και κείμενο">
+<!ENTITY icons.label "Εικονίδια">
+<!ENTITY text.label "Κείμενο">
+<!ENTITY iconsBesideText.label "Εικονίδια δίπλα στο κείμενο">
+<!ENTITY useSmallIcons.label "Χρήση μικρών εικονιδίων">
+<!ENTITY restoreDefaultSet.label "Επαναφορά προεπιλεγμένου σετ">
+<!ENTITY showTitlebar2.label "Γραμμή τίτλου">
+<!ENTITY extraDragSpace2.label "Χώρος μεταφοράς">
+<!ENTITY saveChanges.label "Τέλος">
+<!ENTITY undoChanges.label "Ακύρωση Αλλαγών">
diff --git a/l10n-el/mail/chrome/messenger/customizeToolbar.properties b/l10n-el/mail/chrome/messenger/customizeToolbar.properties
new file mode 100644
index 0000000000..c9fd0e1bee
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/customizeToolbar.properties
@@ -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/.
+
+enterToolbarTitle=Νέα γραμμή εργαλείων
+enterToolbarName=Εισάγετε ένα όνομα για τη γραμμή εργαλείων:
+enterToolbarDup=Υπάρχει ήδη μια γραμμή εργαλείων με το όνομα “%S”. Παρακαλούμε εισάγετε ένα διαφορετικό όνομα.
+enterToolbarBlank=Πρέπει να εισάγετε ένα όνομα για να δημιουργήσετε μια νέα εργαλειοθήκη.
+separatorTitle=Διαχωριστής
+springTitle=Ευέλικτο διάστημα
+spacerTitle=Διάστημα
diff --git a/l10n-el/mail/chrome/messenger/devtools/dbgserver.dtd b/l10n-el/mail/chrome/messenger/devtools/dbgserver.dtd
new file mode 100644
index 0000000000..1cb7de1613
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/devtools/dbgserver.dtd
@@ -0,0 +1,4 @@
+<!ENTITY options.title "Επιλογές εργαλείων για προγραμματιστές">
+<!ENTITY options.status.label "Κατάσταση:">
+<!ENTITY options.port.label "Θύρα:">
+<!ENTITY options.forcelocal.label "Αποδοχή συνδέσεων από άλλους υπολογιστές">
diff --git a/l10n-el/mail/chrome/messenger/devtools/dbgserver.properties b/l10n-el/mail/chrome/messenger/devtools/dbgserver.properties
new file mode 100644
index 0000000000..7acfa7f040
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/devtools/dbgserver.properties
@@ -0,0 +1,11 @@
+options.stop.label=Διακοπή διακομιστή εργαλείων για προγραμματιστές
+options.start.label=Έναρξη διακομιστή εργαλείων για προγραμματιστές
+
+options.connected.label=Συνδέθηκε #1 πελάτης;Συνδέθηκαν #1 πελάτες
+options.connected.tooltip=Ο διακομιστής εργαλείων για προγραμματιστές εκτελείται και υπάρχουν συνδεδεμένοι πελάτες.
+options.listening.label=Ακρόαση
+options.listening.tooltip=Ο διακομιστής εργαλείων για προγραμματιστές εκτελείται και περιμένει συνδέσεις.
+options.idle.label=Δεν εκτελείται
+options.idle.tooltip=Ο διακομιστής εργαλείων για προγραμματιστές δεν εκτελείται. Μπορείτε να τον εκκινήσετε από αυτό το παράθυρο.
+options.unsupported.label=Δεν υποστηρίζεται
+options.unsupported.tooltip=Προέκυψε σφάλμα κατά τη φόρτωση του ενσωματωμένου διακομιστή εργαλείων για προγραμματιστές. Βεβαιωθείτε ότι είναι πακεταρισμένος και ελέγξτε την κονσόλα σφαλμάτων για μηνύματα.
diff --git a/l10n-el/mail/chrome/messenger/downloadheaders.dtd b/l10n-el/mail/chrome/messenger/downloadheaders.dtd
new file mode 100644
index 0000000000..469594e416
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/downloadheaders.dtd
@@ -0,0 +1,20 @@
+<!-- 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 all.label "Λήψη όλων των κεφαλίδων">
+<!ENTITY all.accesskey "Λ">
+<!--LOCALIZATION NOTE (download.label):
+ consider the download.label and headers.label as a single sentence
+ with the number of headers to be downloaded inserted between them:
+ EXAMPLE: "Download" <some number> "headers"
+ Either label could be set to null ("") if required grammatically.
+-->
+
+<!ENTITY download.label "Λήψη">
+<!ENTITY download.accesskey "ψ">
+<!--LOCALIZATION NOTE (headers.label): see note for download.label -->
+<!ENTITY headers.label "Κεφαλίδες">
+<!ENTITY headers.accesskey "φ">
+<!ENTITY mark.label "Επισήμανση υπολειπόμενων κεφαλίδων ως αναγνωσμένων">
+<!ENTITY mark.accesskey "μ">
diff --git a/l10n-el/mail/chrome/messenger/editContactOverlay.dtd b/l10n-el/mail/chrome/messenger/editContactOverlay.dtd
new file mode 100644
index 0000000000..b6e996fccf
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/editContactOverlay.dtd
@@ -0,0 +1,20 @@
+<!-- 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 editContactPanelDeleteContact.label "Διαγραφή">
+<!ENTITY editContactPanelDeleteContact.accesskey "γ">
+
+<!ENTITY editContactName.label "Όνομα:">
+<!ENTITY editContactName.accesskey "ν">
+
+<!ENTITY editContactEmail.label "Email:">
+<!ENTITY editContactEmail.accesskey "E">
+
+<!ENTITY editContactAddressBook.label "Ευρετήριο διευθύνσεων:">
+<!ENTITY editContactAddressBook.accesskey "θ">
+
+<!ENTITY editContactPanelDone.label "Τέλος">
+<!ENTITY editContactPanelDone.accesskey "Ο">
+
+<!ENTITY contactMoveDisabledWarning.description "Δεν μπορείτε να τροποποιήσετε αυτό το ευρετήριο διευθύνσεων επειδή αυτή η επαφή είναι σε λίστα αλληλογραφίας.">
diff --git a/l10n-el/mail/chrome/messenger/editContactOverlay.properties b/l10n-el/mail/chrome/messenger/editContactOverlay.properties
new file mode 100644
index 0000000000..236b66b02e
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/editContactOverlay.properties
@@ -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/.
+
+editTitle=Επεξεργασία επαφής
+viewTitle=Προβολή επαφής
+
+editDetailsLabel=Επεξεργασία λεπτομερειών
+editDetailsAccessKey=ξ
+viewDetailsLabel=Προβολή λεπτομερειών
+viewDetailsAccessKey=β
+
+deleteContactTitle=Διαγραφή επαφής
+deleteContactMessage=Θέλετε σίγουρα να διαγράψετε αυτή την επαφή;
diff --git a/l10n-el/mail/chrome/messenger/fieldMapImport.dtd b/l10n-el/mail/chrome/messenger/fieldMapImport.dtd
new file mode 100644
index 0000000000..fd01411e07
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/fieldMapImport.dtd
@@ -0,0 +1,20 @@
+<!-- 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 fieldMapImport.title "Εισαγωγή ευρετηρίου διευθύνσεων">
+<!ENTITY fieldMapImport.size "width: 40em; height: 30em;">
+<!ENTITY fieldMapImport.recordNumber "Εισηγμένα δεδομένα για εγγραφή:">
+<!ENTITY fieldMapImport.next.label "Επόμενο">
+<!ENTITY fieldMapImport.next.accesskey "ν">
+<!ENTITY fieldMapImport.previous.label "Προηγούμενο">
+<!ENTITY fieldMapImport.previous.accesskey "Π">
+<!ENTITY fieldMapImport.text 'Με τα κουμπιά "Μετακίνηση πάνω" και "Μετακίνηση κάτω", αντιστοιχίστε τα πεδία του ευρετηρίου διευθύνσεων στα αριστερά με τα σωστά δεδομένα προς εισαγωγή στα δεξιά. Καταργήστε την επιλογή των στοιχείων που δεν θέλετε να εισαχθούν.'>
+<!ENTITY fieldMapImport.up.label "Μετακίνηση πάνω">
+<!ENTITY fieldMapImport.up.accesskey "π">
+<!ENTITY fieldMapImport.down.label "Μετακίνηση κάτω">
+<!ENTITY fieldMapImport.down.accesskey "κ">
+<!ENTITY fieldMapImport.fieldListTitle "Πεδία ευρετηρίου διευθύνσεων">
+<!ENTITY fieldMapImport.dataTitle "Δεδομένα εγγραφής για εισαγωγή:">
+<!ENTITY fieldMapImport.skipFirstRecord.label "Η πρώτη εγγραφή περιέχει τα ονόματα πεδίων">
+<!ENTITY fieldMapImport.skipFirstRecord.accessKey "π">
diff --git a/l10n-el/mail/chrome/messenger/filter.properties b/l10n-el/mail/chrome/messenger/filter.properties
new file mode 100644
index 0000000000..92eb8c9164
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/filter.properties
@@ -0,0 +1,109 @@
+# 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/.
+
+mustSelectFolder=Πρέπει να επιλέξετε έναν φάκελο προορισμού.
+enterValidEmailAddress=Εισάγετε μια έγκυρη διεύθυνση email για προώθηση.
+pickTemplateToReplyWith=Επιλέξτε ένα πρότυπο για να απαντήσετε με αυτό.
+mustEnterName=Πρέπει να δώσετε ένα όνομα σε αυτό το φίλτρο.
+cannotHaveDuplicateFilterTitle=Όνομα Φίλτρου εις διπλούν
+cannotHaveDuplicateFilterMessage=Το όνομα φίλτρου που καταχωρίσατε υπάρχει ήδη. Πληκτρολογήστε ένα διαφορετικό όνομα φίλτρου
+mustHaveFilterTypeTitle=Δεν επιλέχθηκε φίλτρο γεγονότος
+mustHaveFilterTypeMessage=Πρέπει να επιλέξετε τουλάχιστον ένα γεγονός κατά την εφαρμογή του φίλτρου. Αν δεν επιθυμείτε το φίλτρο να εκτελείται σε οποιοδήποτε γεγονός, μην επιλέξετε την κατάσταση ενεργοποίησής του από τον διάλογο Φίλτρα Μηνυμάτων.
+deleteFilterConfirmation=Διαγραφή επιλεγμένου φίλτρου;
+untitledFilterName=Φίλτρο χωρίς τίτλο
+matchAllFilterName=Ταίριασμα όλων των μηνυμάτων
+filterListBackUpMsg=Τα φίλτρα σας δεν λειτουργούν επειδή το αρχείο msgFilterRules.dat,που περιέχει τα φίλτρα δεν είναι αναγνώσιμο. Ένα νέο αρχείο msgFilterRules.dat θα δημιουργηθεί και ένα αντίγραφο του παλιού αρχείου που θα ονομάζεται rulesbackup.dat θα δημιουργηθεί στον ίδιο κατάλογο.
+customHeaderOverflow=Έχετε υπερβεί το μέγιστο αριθμό των 50 προσαρμοσμένων κεφαλίδων. Απομακρύνετε κάποιες από αυτές και προσπαθήστε ξανά.
+filterCustomHeaderOverflow=Τα φίλτρα σας υπερβαίνουν το μέγιστο αριθμό των 50 προσαρμοσμένων κεφαλίδων. Επεξεργαστείτε το αρχείο rules.dat που περιέχει τα φίλτρα σας ώστε να χρησιμοποιείτε λιγότερες προσαρμοσμένες κεφαλίδες
+invalidCustomHeader=Ένα από τα φίλτρα σας χρησιμοποιεί μια προσαρμοσμένη κεφαλίδα που περιέχει ένα μή έγκυρο χαρακτήρα, όπως ':', ένα μή εκτυπώσιμο χαρακτήρα ή ένα χαρακτήρα 8-bit. Επεξεργαστείτε το αρχείο rules.dat, που περιέχει τα φίλτρα σας για να απομακρύνετε τους μή έγκυρους χαρακτήρες.
+continueFilterExecution=Η εφαρμογή του φίλτρου %S απέτυχε. Θέλετε να συνεχίσετε με την εφαρμογή φίλτρων;
+promptTitle=Εκτέλεση φίλτρων
+promptMsg=Βρίσκεστε στη διαδικασία δημιουργία φίλτρων για μηνύματα.\nΘέλετε να συνεχίσετε με την εφαρμογή φίλτρων;
+stopButtonLabel=Διακοπή
+continueButtonLabel=Συνέχεια
+# LOCALIZATION NOTE(cannotEnableIncompatFilter)
+# %S=the name of the application
+cannotEnableIncompatFilter=To φίλτρο ίσως να δημιουργήθηκε από μια νέα ή ασύμβατη έκδοση του %S. Δεν μπορείτε να το ενεργοποιήσετε, επειδή δεν γνωρίζουμε πώς να το εφαρμόσουμε.
+dontWarnAboutDeleteCheckbox=Να μην ερωτηθώ ξανά
+# LOCALIZATION NOTE(copyToNewFilterName)
+# %S=the name of the filter that is being copied
+copyToNewFilterName=Αντίγραφο του %S
+# LOCALIZATION NOTE(contextPeriodic.label): Semi-colon list of plural forms.
+# #1=the number of minutes
+contextPeriodic.label=Περιοδικά, κάθε λεπτό;Περιοδικά, κάθε #1 λεπτά
+
+# LOCALIZATION NOTE(filterFailureWarningPrefix)
+# %1$S=filter error action
+# %2$S=error code as hexadecimal string.
+filterFailureWarningPrefix=Απέτυχε η ενέργεια του φίλτρου: «%1$S» με κωδικό σφάλματος=%2$S κατά την απόπειρα:
+filterFailureSendingReplyError=Σφάλμα αποστολής απάντησης
+filterFailureSendingReplyAborted=Η αποστολή απάντησης ακυρώθηκε
+filterFailureMoveFailed=Αποτυχία μετακίνησης
+filterFailureCopyFailed=Αποτυχία αντιγραφής
+filterFailureAction=Αποτυχία εφαρμογής της ενέργειας φίλτρου
+
+searchTermsInvalidTitle=Μη έγκυροι όροι αναζήτησης
+# LOCALIZATION NOTE(searchTermsInvalidRule)
+# %1$S=search attribute name from the invalid rule
+# %2$S=search operator from the bad rule
+searchTermsInvalidRule=Δεν είναι δυνατή η αποθήκευση του φίλτρου επειδή οι όροι αναζήτησης "%1$S %2$S" δεν είναι έγκυροι στο παρόν πλαίσιο.
+# LOCALIZATION NOTE(filterActionOrderExplanation)
+# Keep the \n\n that mean 2 linebreaks.
+filterActionOrderExplanation=Όταν ένα μήνυμα ταιριάξει με το φίλτρο, οι ενέργειες θα εκτελεστούν με την ακόλουθη σειρά:\n\n
+filterActionOrderTitle=Πραγματική σειρά ενεργειών
+## LOCALIZATION NOTE(filterActionItem):
+# %1$S=sequence number of the action, %2$S=action text, %3$S=action argument
+filterActionItem=%1$S. %2$S %3$S\n
+
+## LOCALIZATION NOTE(filterCountVisibleOfTotal):
+# %1$S=number of matching filters, %2$S=total number of filters
+filterCountVisibleOfTotal=%1$S από %2$S
+## LOCALIZATION NOTE(filterCountItems):
+## Semicolon-separated list of singular and plural forms.
+## See: https://developer.mozilla.org/en/docs/Localization_and_Plurals
+## #1 is the count of items in the list.
+filterCountItems=#1 στοιχείο; #1 στοιχεία
+# for junk mail logging / mail filter logging
+# LOCALIZATION NOTE(junkLogDetectStr)
+# %1$S=author, %2$S=subject, %3$S=date
+junkLogDetectStr=Εντοπίστηκε ανεπιθύμητο μήνυμα από %1$S - %2$S στις %3$S
+# LOCALIZATION NOTE(logMoveStr)
+# %1$S=message id, %2$S=folder URI
+logMoveStr=μετακινήθηκε message id=%1$S σε %2$S
+# LOCALIZATION NOTE(logCopyStr)
+# %1$S=message id, %2$S=folder URI
+logCopyStr=αντιγράφηκε message id=%1$S σε %2$S
+# LOCALIZATION NOTE(filterLogLine):
+# %1$S=timestamp, %2$S=log message
+filterLogLine=[%1$S] %2$S
+# LOCALIZATION NOTE(filterMessage):
+# %1$S=filter name, %1$S=log message
+filterMessage=Μήνυμα από το φίλτρο "%1$S": %2$S
+# LOCALIZATION NOTE(filterLogDetectStr)
+# %1$S=filter name %2$S=author, %3$S=subject, %4$S=date
+filterLogDetectStr=Εφαρμόσθηκε φίλτρο "%1$S" στο μήνυμα από %2$S - %3$S στις %4$S
+filterMissingCustomAction=Λείπει προσαρμοσμένη ενέργεια
+filterAction2=η προτεραιότητα άλλαξε
+filterAction3=διαγράφηκε
+filterAction4=σημειώθηκε ως αναγνωσμένο
+filterAction5=το νήμα τερματίστηκε
+filterAction6=το νήμα παρακολουθείται
+filterAction7=με αστέρι
+filterAction8=με ετικέτα
+filterAction9=απαντήθηκε
+filterAction10=προωθήθηκε
+filterAction11=η εκτέλεση διακόπηκε
+filterAction12=διαγράφηκε από τον διακομιστή POP3
+filterAction13=διατηρήθηκε στο διακομιστή POP3
+filterAction14=σκορ ανεπιθύμητης αλληλογραφίας
+filterAction15=έγινε λήψη σώματος μηνύματος από τον διακομιστή POP3
+filterAction16=αντιγράφηκε στον φάκελο
+filterAction17=με ετικέτα
+filterAction18=αγνοημένο υπονήμα
+filterAction19=σημειώθηκε ως μη αναγνωσμένο
+# LOCALIZATION NOTE(filterAutoNameStr)
+# %1$S=Header or item to match, e.g. "From", "Tag", "Age in days", etc.
+# %2$S=Operator, e.g. "Contains", "is", "is greater than", etc.
+# %3$S=Value, e.g. "Steve Jobs", "Important", "42", etc.
+filterAutoNameStr=%1$S %2$S: %3$S
diff --git a/l10n-el/mail/chrome/messenger/folderProps.dtd b/l10n-el/mail/chrome/messenger/folderProps.dtd
new file mode 100644
index 0000000000..c4d88ca292
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/folderProps.dtd
@@ -0,0 +1,74 @@
+<!-- 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 folderProps.windowtitle.label "Ιδιότητες">
+
+<!ENTITY generalInfo.label "Γενικές πληροφορίες">
+<!ENTITY folderCharsetFallback2.label "Εφεδρική κωδικοποίηση κειμένου:">
+<!ENTITY folderCharsetFallback2.accesskey "ω">
+<!ENTITY folderCharsetEnforce2.label "Εφαρμογή της κωδικοποίησης σε όλα τα μηνύματα του φακέλου (οι ξεχωριστές ρυθμίσεις κωδικοποίησης κειμένου των μηνυμάτων και ο αυτόματος εντοπισμός θα αγνοηθούν)">
+<!ENTITY folderCharsetEnforce2.accesskey "ι">
+<!ENTITY folderRebuildSummaryFileTip2.label "Επιδιόρθωση αρχείου περίληψης ευρετηρίου">
+<!ENTITY folderRebuildSummaryFile2.label "Επιδιόρθωση φακέλου">
+<!ENTITY folderRebuildSummaryFile2.accesskey "ρ">
+<!ENTITY folderRebuildSummaryFile.explanation "Μερικές φορές το αρχείο ευρετηρίου του φακέλου (.msf) καταστρέφεται και φαίνεται ότι λείπουν μηνύματα ή εμφανίζονται διαγραμμένα μηνύματα. Συνήθως η επιδιόρθωση του αρχείου λύνει αυτά τα προβλήματα.">
+<!ENTITY folderIncludeInGlobalSearch.label "Να συμπεριλαμβάνονται τα μηνύματα αυτού του φακέλου στα αποτελέσματα της καθολικής αναζήτησης">
+<!ENTITY folderIncludeInGlobalSearch.accesskey "θ">
+
+<!ENTITY retention.label "Πολιτική διατήρησης">
+<!ENTITY retentionUseAccount.label "Χρήση ρυθμίσεων λογαριασμού">
+<!ENTITY retentionUseAccount.accesskey "ρ">
+<!ENTITY daysOld.label "ημέρες παλιά">
+<!ENTITY message.label "μηνύματα">
+<!ENTITY retentionCleanup.label "Για να ανακτήσετε χώρο στο δίσκο, μπορείτε να διαγράψετε τα παλιά μηνύματα">
+<!ENTITY retentionCleanupImap.label "Για εξοικονόμηση αποθηκευτικού χώρου, μπορείτε να διαγράψετε μόνιμα τα παλιά σας μηνύματα στους τοπικούς σας φακέλους και στον απομακρυσμένο διακομιστή.">
+<!ENTITY retentionCleanupPop.label "Για εξοικονόμηση αποθηκευτικού χώρου, μπορείτε να διαγράψετε μόνιμα τα παλιά σας μηνύματα μαζί με τα αρχικά μηνύματα στον απομακρυσμένο διακομιστή.">
+<!ENTITY retentionDeleteMsg.label "Διαγραφή μηνυμάτων παλαιότερων από">
+<!ENTITY retentionDeleteMsg.accesskey "μ">
+<!ENTITY retentionKeepAll.label "Να μην γίνει διαγραφή μηνυμάτων">
+<!ENTITY retentionKeepAll.accesskey "μ">
+<!ENTITY retentionKeepRecent.label "Διαγραφή όλων εκτός από τα πιο πρόσφατα">
+<!ENTITY retentionKeepRecent.accesskey "λ">
+<!ENTITY retentionApplyToFlagged.label "Διατήρηση μηνυμάτων με αστέρι">
+<!ENTITY retentionApplyToFlagged.accesskey "σ">
+
+<!ENTITY folderSynchronizationTab.label "Συγχρονισμός">
+<!ENTITY folderCheckForNewMessages2.label "Κατά τη λήψη μηνυμάτων από αυτόν το λογαριασμό, να γίνεται πάντα έλεγχος αυτού του φακέλου">
+<!ENTITY folderCheckForNewMessages2.accesskey "φ">
+
+<!ENTITY offlineFolder.check.label "Επιλογή αυτού του φακέλου για εργασία χωρίς σύνδεση">
+<!ENTITY offlineFolder.check.accesskey "γ">
+<!ENTITY offlineFolder.button.label "Λήψη τώρα">
+<!ENTITY offlineFolder.button.accesskey "ψ">
+
+<!ENTITY selectofflineNewsgroup.check.label "Επιλογή αυτής της ομάδας συζητήσεων για εργασία χωρίς σύνδεση">
+<!ENTITY selectofflineNewsgroup.check.accesskey "τ">
+<!ENTITY offlineNewsgroup.button.label "Λήψη τώρα">
+<!ENTITY offlineNewsgroup.button.accesskey "ψ">
+
+<!ENTITY folderProps.name.label "Όνομα:">
+<!ENTITY folderProps.name.accesskey "ν">
+<!ENTITY folderProps.color.label "Χρώμα εικονιδίου:">
+<!ENTITY folderProps.color.accesskey "Χ">
+<!ENTITY folderProps.reset.tooltip "Επαναφορά προεπιλεγμένου χρώματος">
+<!ENTITY folderProps.location.label "Τοποθεσία:">
+<!ENTITY folderProps.location.accesskey "θ">
+
+<!ENTITY folderSharingTab.label "Κοινή χρήση">
+<!ENTITY privileges.button.label "Προνόμια...">
+<!ENTITY privileges.button.accesskey "ν">
+<!ENTITY permissionsDesc.label "Έχετε τα ακόλουθα δικαιώματα:">
+<!ENTITY folderOtherUsers.label "Άλλα άτομα με πρόσβαση σε αυτό το φάκελο:">
+<!ENTITY folderType.label "Τύπος φακέλου:">
+
+<!ENTITY folderQuotaTab.label "Όριο">
+<!ENTITY folderQuotaUsage.label "Χρήση:">
+<!ENTITY folderQuotaStatus.label "Κατάσταση:">
+
+<!ENTITY numberOfMessages.label "Αριθμός μηνυμάτων:">
+<!-- LOCALIZATION NOTE: When the number of messages can't be determined, this string is displayed as the number -->
+<!ENTITY numberUnknown.label "άγνωστο">
+<!ENTITY sizeOnDisk.label "Μέγεθος στο δίσκο:">
+<!-- LOCALIZATION NOTE: When the size can't be determined, this string is displayed as the size -->
+<!ENTITY sizeUnknown.label "άγνωστο">
diff --git a/l10n-el/mail/chrome/messenger/folderWidgets.properties b/l10n-el/mail/chrome/messenger/folderWidgets.properties
new file mode 100644
index 0000000000..ffa26fd311
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/folderWidgets.properties
@@ -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/.
+
+# LOCALIZATION NOTE(globalInbox)
+# %S=name of the Local folders account
+globalInbox=Καθολικά εισερχόμενα (%S)
+# LOCALIZATION NOTE(verboseFolderFormat): %1$S is folder name, %2$S is server name
+verboseFolderFormat=%1$S στο %2$S
+chooseFolder=Επιλογή φακέλου…
+chooseAccount=Επιλογή λογαριασμού…
+noFolders=Κανένας διαθέσιμος φάκελος
diff --git a/l10n-el/mail/chrome/messenger/folderpane.dtd b/l10n-el/mail/chrome/messenger/folderpane.dtd
new file mode 100644
index 0000000000..da37e2fe5f
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/folderpane.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 nameColumn.label "Όνομα">
+<!ENTITY unreadColumn.label "Μη αναγνωσμένα">
+<!ENTITY totalColumn.label "Σύνολο">
+<!ENTITY folderSizeColumn.label "Μέγεθος">
diff --git a/l10n-el/mail/chrome/messenger/gloda.properties b/l10n-el/mail/chrome/messenger/gloda.properties
new file mode 100644
index 0000000000..ba87d5ad8a
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/gloda.properties
@@ -0,0 +1,175 @@
+# 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 (*.facetNameLabel): These are the labels used to label the facet
+# displays in the global search facet display mechanism. They should be
+# compact descriptions of the facet type (e.g. "Folder", and don't need to
+# refer to the objects being faceted (e.g. "Message" or "Mail").
+
+# LOCALIZATION NOTE (*.includeLabel): The label to use for the included group
+# in the facet display. If not provided, we will fall back to
+# "glodaFacetView.facets.included.fallbackLabel".
+
+# LOCALIZATION NOTE (*.excludeLabel): The label to use for the excluded group
+# in the facet display. If not provided, we will fall back to
+# "glodaFacetView.facets.excluded.fallbackLabel".
+
+# LOCALIZATION NOTE (*.remainderLabel): The label to use for the remaining items
+# that are neither part of the included group or the excluded group in the
+# facet display. If not provided, we will fall back to
+# "glodaFacetView.facets.remainder.fallbackLabel".
+
+# LOCALIZATION NOTE (*.mustMatchLabel): The label to use for the popup menu
+# to indicate that the results should be restricted to messages which match
+# a particular value. If not provided, we will fall back to
+# "glodaFacetView.facets.mustMatch.fallbackLabel". #1, if present, is
+# replaced by the value of the facet (name, folder, mailing list, etc.)
+
+# LOCALIZATION NOTE (*.cantMatchLabel): The label to use for the popup menu
+# to indicate that the results should be restricted to messages which match
+# a particular value. If not provided, we will fall back to
+# "glodaFacetView.facets.cantMatch.fallbackLabel". #1, if present, is
+# replaced by the value of the facet (name, folder, mailing list, etc.)
+
+# LOCALIZATION NOTE (*.mayMatchLabel): The label to use for the popup menu
+# to indicate that the results should no longer be restricted relative to
+# this particular facet value. If not provided, we will fall back to
+# "glodaFacetView.facets.mayMatch.fallbackLabel". #1, if present, is
+# replaced by the value of the facet (name, folder, mailing list, etc.)
+
+# LOCALIZATION NOTE (*.mustMatchSomeLabel): The label to use for the popup menu
+# to indicate that the results should be restricted to messages which have
+# _some_ value (e.g. at least one tag is set). If not provided, we will fall
+# back to "glodaFacetView.facets.mustMatchSome.fallbackLabel". #1, if present,
+# is replaced by the value of the facet (name, folder, mailing list, etc.)
+
+# LOCALIZATION NOTE (*.mustMatchNoneLabel): The label to use for the popup menu
+# to indicate that the results should be restricted to messages which have _no_
+# value (e.g. no tags are set). If not provided, we will fall back to
+# "glodaFacetView.facets.mustMatchNoneLabel.fallbackLabel". #1, if present, is
+# replaced by the value of the facet (name, folder, mailing list, etc.)
+
+# LOCALIZATION NOTE (*.mayMatchAnyLabel): The label to use for the popup menu
+# to indicate that the results should not be restricted to messages which have
+# any or no value (e.g. no requirements on any tags are set). If not provided,
+# we will fall back to "glodaFacetView.facets.mayMatchAnyLabel.fallbackLabel".
+# #1, if present, is replaced by the value of the facet (name, folder, mailing
+# list, etc.)
+
+# LOCALIZATION NOTE (gloda.message.attr.account.*): Stores the account in which
+# a message's folder is located.
+gloda.message.attr.account.facetNameLabel=Λογαριασμός
+gloda.message.attr.account.includeLabel=αποθηκευμένο σε οποιοδήποτε:
+gloda.message.attr.account.excludeLabel=μη αποθηκευμένο σε:
+gloda.message.attr.account.remainderLabel=άλλοι λογαριασμοί:
+gloda.message.attr.account.mustMatchLabel=πρέπει να είναι σε #1
+gloda.message.attr.account.cantMatchLabel=δεν είναι σε #1
+
+# LOCALIZATION NOTE (gloda.message.attr.folder.*): Stores the message folder in
+# which the message is stored.
+gloda.message.attr.folder.facetNameLabel=Φάκελος
+gloda.message.attr.folder.includeLabel=αποθηκευμένο σε οποιοδήποτε:
+gloda.message.attr.folder.excludeLabel=μη αποθηκευμένο σε:
+gloda.message.attr.folder.remainderLabel=άλλοι φάκελοι:
+gloda.message.attr.folder.mustMatchLabel=πρέπει να είναι σε #1
+gloda.message.attr.folder.cantMatchLabel=δεν είναι #1
+
+# LOCALIZATION NOTE (gloda.message.attr.fromMe.*): Stores everyone involved
+# with the message. This means from/to/cc/bcc.
+gloda.message.attr.fromMe.facetNameLabel=Από εμένα
+
+# LOCALIZATION NOTE (gloda.message.attr.toMe.*): Stores everyone involved
+# with the message. This means from/to/cc/bcc.
+gloda.message.attr.toMe.facetNameLabel=Προς εσάς
+
+# LOCALIZATION NOTE (gloda.message.attr.involves.*): Stores everyone involved
+# with the message. This means from/to/cc/bcc.
+gloda.message.attr.involves.facetNameLabel=Άνθρωποι
+gloda.message.attr.involves.includeLabel=περιλαμβάνονται σε οποιοδήποτε από:
+gloda.message.attr.involves.excludeLabel=δεν περιλαμβάνονται:
+gloda.message.attr.involves.remainderLabel=άλλοι συμμετέχοντες:
+gloda.message.attr.involves.mustMatchLabel=πρέπει να περιλαμβάνει #1
+gloda.message.attr.involves.cantMatchLabel=δεν περιλαμβάνει #1
+
+# LOCALIZATION NOTE (gloda.message.attr.date.*): Stores the date of the message.
+# Thunderbird normally stores the date the message claims it was composed
+# according to the "Date" header. This is not the same as when the message
+# was sent or when it was eventually received by the user. In the future we
+# may change this to be one of the other dates, but not anytime soon.
+gloda.message.attr.date.facetNameLabel=Ημερομηνία
+
+# LOCALIZATION NOTE (gloda.message.attr.attachmentTypes.*): Stores the list of
+# MIME types (ex: image/png, text/plain) of real attachments (not just part of
+# the message content but explicitly named attachments) on the message.
+# Although we hope to be able to provide localized human-readable explanations
+# of the MIME type (ex: "PowerPoint document"), I don't know if that is going
+# to happen.
+gloda.message.attr.attachmentTypes.facetNameLabel=Συνημμένα
+
+# LOCALIZATION NOTE (gloda.message.attr.mailing-list.*): Stores the mailing
+# lists detected in the message. This will normally be the e-mail address of
+# the mailing list and only be detected in messages received from the mailing
+# list. Extensions may contribute additional detected mailing-list-like
+# things.
+gloda.message.attr.mailing-list.facetNameLabel=Λίστα αλληλογραφίας
+gloda.message.attr.mailing-list.noneLabel=Καμία
+gloda.message.attr.mailing-list.includeLabel=ελήφθη σε οποιοδήποτε:
+gloda.message.attr.mailing-list.excludeLabel=δεν ελήφθη σε κανένα:
+gloda.message.attr.mailing-list.remainderLabel=άλλες λίστες αλληλογραφίας:
+gloda.message.attr.mailing-list.mustMatchLabel=πρέπει να είναι σε #1
+gloda.message.attr.mailing-list.cantMatchLabel=δεν είναι σε #1
+gloda.message.attr.mailing-list.mustMatchSomeLabel=πρέπει να είναι στη λίστα αλληλογραφίας
+gloda.message.attr.mailing-list.mustMatchNoneLabel=δεν είναι στη λίστα αλληλογραφίας
+
+# LOCALIZATION NOTE (gloda.message.attr.tag.*): Stores the tags applied to the
+# message. Notably, gmail's labels are not currently exposed via IMAP and we
+# do not do anything clever with gmail, so this is independent of gmail labels
+# This may change in the future, but it's a safe bet it's not happening on
+# Thunderbird's side prior to 3.0.
+gloda.message.attr.tag.facetNameLabel=Ετικέτες
+gloda.message.attr.tag.noneLabel=Καμία
+gloda.message.attr.tag.includeLabel=ετικέτα σε οποιοδήποτε:
+gloda.message.attr.tag.excludeLabel=χωρίς ετικέτες:
+gloda.message.attr.tag.remainderLabel=άλλες ετικέτες:
+gloda.message.attr.tag.mustMatchLabel=πρέπει να έχει ετικέτα #1
+gloda.message.attr.tag.cantMatchLabel=δεν έχει ετικέτα #1
+gloda.message.attr.tag.mustMatchSomeLabel=πρέπει να έχει ετικέτα
+gloda.message.attr.tag.mustMatchNoneLabel=δεν έχει ετικέτα
+
+# LOCALIZATION NOTE (gloda.message.attr.star.*): Stores whether the message is
+# starred or not, as indicated by a pretty star icon. In the past, the icon
+# used to be a flag. The IMAP terminology continues to be "flagged".
+gloda.message.attr.star.facetNameLabel=Με αστέρι
+
+# LOCALIZATION NOTE (gloda.message.attr.read.*): Stores whether the user has
+# read the message or not.
+gloda.message.attr.read.facetNameLabel=Αναγνωσμένα
+
+# LOCALIZATION NOTE (gloda.message.attr.repliedTo.*): Stores whether we believe
+# the user has ever replied to the message. We normally show a little icon in
+# the thread pane when this is the case.
+gloda.message.attr.repliedTo.facetNameLabel=Απαντημένα
+
+# LOCALIZATION NOTE (gloda.message.attr.forwarded.*): Stores whether we believe
+# the user has ever forwarded the message. We normally show a little icon in
+# the thread pane when this is the case.
+gloda.message.attr.forwarded.facetNameLabel=Προωθημένα
+
+# LOCALIZATION NOTE (gloda.mimetype.category.*.label): Map categories of MIME
+# types defined in MimeTypeCategories.jsm to labels.
+# LOCALIZATION NOTE (gloda.mimetype.category.archives.label): Archive is
+# referring to things like zip files, tar files, tar.gz files, etc.
+gloda.mimetype.category.archives.label=Αρχειοθήκες
+gloda.mimetype.category.documents.label=Έγγραφα
+gloda.mimetype.category.images.label=Εικόνες
+# LOCALIZATION NOTE (gloda.mimetype.category.media.label): Media is meant to
+# encompass both audio and video. This is because video and audio streams are
+# frequently stored in the same type of container and we cannot rely on the
+# sending e-mail client to have been clever enough to figure out what was
+# really in the file. So we group them together.
+gloda.mimetype.category.media.label=Πολυμέσα (Ήχος, Βίντεο)
+gloda.mimetype.category.pdf.label=Αρχεία PDF
+# LOCALIZATION NOTE (gloda.mimetype.category.other.label): Other is the category
+# for MIME types that we don't really know what it is.
+gloda.mimetype.category.other.label=Άλλα
diff --git a/l10n-el/mail/chrome/messenger/glodaComplete.properties b/l10n-el/mail/chrome/messenger/glodaComplete.properties
new file mode 100644
index 0000000000..d3ec7a23e5
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/glodaComplete.properties
@@ -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/.
+
+# LOCALIZATION NOTE (glodaComplete.messagesTagged.label): The label used
+# in the autocomplete widget to refer to a query for all messages tagged
+# by a particular tag (replacing #1).
+glodaComplete.messagesTagged.label=Μηνύματα με ετικέτα: #1
+
+# LOCALIZATION NOTE (glodaComplete.messagesMentioning.label): The label used
+# in the autocomplete widget to refer to a search for all messages mentioning
+# a particular word (replacing #1).
+glodaComplete.messagesMentioning.label=Μηνύματα που αναφέρουν: #1
+
+# LOCALIZATION NOTE (glodaComplete.messagesWithMany.label): The label used
+# in the autocomplete widget to refer to a search for all messages mentioning
+# a set of words, or a phrase containing multiple words (e.g. "red pepper")
+# We use the same words in en-US, but maybe that's not always true.
+glodaComplete.messagesMentioningMany.label=Μηνύματα που αναφέρουν: #1
diff --git a/l10n-el/mail/chrome/messenger/glodaFacetView.dtd b/l10n-el/mail/chrome/messenger/glodaFacetView.dtd
new file mode 100644
index 0000000000..60e42991ac
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/glodaFacetView.dtd
@@ -0,0 +1,29 @@
+<!-- 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 (glodaFacetView.filters.label): Label at the top of the
+ faceting sidebar. Serves as a header both for the checkboxes under it as
+ well for labeled facets with multiple options. -->
+<!ENTITY glodaFacetView.filters.label "Φίλτρα">
+
+<!-- LOCALIZATION NOTE (glodaFacetView.loading.label): Label that appears when
+ the search results take a long time to appear. -->
+<!ENTITY glodaFacetView.loading.label "Αναζήτηση...">
+
+<!-- LOCALIZATION NOTE (glodaFacetView.empty.label): Label that appears when
+ there are no results that match the search query. -->
+<!ENTITY glodaFacetView.empty.label "Κανένα μήνυμα δεν ταιριάζει στην αναζήτησή σας">
+
+<!-- LOCALIZATION NOTE (glodaFacetView.pageMore.label): Label at the bottom
+ of the results list to show more hits. -->
+<!ENTITY glodaFacetView.pageMore.label "Περισσότερα »">
+
+<!-- LOCALIZATION NOTE(glodaFacetView.results.message.openEmailAsList.label2): The
+ label for the button/link that causes us to display all of the emails in
+ the active set in a new thread pane display tab. -->
+<!ENTITY glodaFacetView.openEmailAsList.label "Εμφάνιση αποτελεσμάτων ως λίστα">
+
+<!-- LOCALIZATION NOTE(glodaFacetView.results.message.openEmailAsList.tooltip):
+ The tooltip to display when hovering over the openEmailAsList label. -->
+<!ENTITY glodaFacetView.openEmailAsList.tooltip "Εμφάνιση όλων των email του ενεργού συνόλου σε νέα καρτέλα">
diff --git a/l10n-el/mail/chrome/messenger/glodaFacetView.properties b/l10n-el/mail/chrome/messenger/glodaFacetView.properties
new file mode 100644
index 0000000000..ce97d50294
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/glodaFacetView.properties
@@ -0,0 +1,171 @@
+# 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 (glodaFacetView.tab.query.label):
+# The tab title to display for tabs that are based on a gloda (global database)
+# query or collection rather than a user search. At some point we might try
+# and explain what the query/collection is in automatic fashion, but not today.
+glodaFacetView.tab.query.label=Αναζήτηση
+
+# LOCALIZATION NOTE (glodaFacetView.tab.search.label):
+# The tab title to display for tabs with a new gloda (global database)
+# user search (rather than a query or collection) without a search string.
+# After the search has been started, we just display the search string entered
+# by the user.
+glodaFacetView.tab.search.label=Αναζήτηση
+
+# LOCALIZATION NOTE(glodaFacetView.search.label2):
+# The heading for the search page.
+# A short description of user's search query will be appended.
+glodaFacetView.search.label2=Αποτελέσματα για:
+
+# LOCALIZATION NOTE(glodaFacetView.constraints.query.fulltext.label):
+# The label to display to describe when our base query was a fulltext search
+# across messages. The value is displayed following the label.
+glodaFacetView.constraints.query.fulltext.label=Αναζήτηση για #1
+glodaFacetView.constraints.query.fulltext.andJoinWord=και
+glodaFacetView.constraints.query.fulltext.orJoinWord=ή
+
+# LOCALIZATION NOTE(glodaFacetView.constraints.query.initial):
+# The label to display to describe when our base query is not a full-text
+# search. Additional labels are appended describing each constraint.
+glodaFacetView.constraints.query.initial=Αναζήτηση για μηνύματα
+
+# LOCALIZATION NOTE(glodaFacetView.constraints.query.involves.label):
+# The label to display to describe when our base query was on messages
+# involving a given contact from the address book. The value is displayed
+# where the #1 is.
+glodaFacetView.constraints.query.involves.label=που περιλαμβάνουν #1
+
+# LOCALIZATION NOTE(glodaFacetView.constraints.query.contact.label):
+# The label to display to describe when our base query was on messages
+# tagged with a specific tag. The tag is displayed following the label.
+glodaFacetView.constraints.query.tagged.label=με ετικέτα:
+
+
+# LOCALIZATION NOTE (glodaFacetView.facets.mode.top.listAllLabel): The label to
+# use when we are only displaying the top entries for a facet. When the
+# label is clicked on, it results in us displaying all of the values for that
+# facet. The value "#1" (if present) is replaced with the total number of
+# values that will be displayed (rather than the number currently hidden).
+# This string supports pluralization. See
+# https://developer.mozilla.org/en/Localization_and_Plurals for details on
+# how this stuff works.
+glodaFacetView.facets.mode.top.listAllLabel=Λίστα όλων #1;Λίστα όλων #1
+
+# LOCALIZATION NOTE (glodaFacetView.facets.included.fallbackLabel): The label to
+# use for groups in a facet that have been explicitly included by the user if
+# there is no explicit attribute "includeLabel" defined. (The explicit label
+# would be named "gloda.message.attr.ATTRIBUTE.includeLabel".)
+glodaFacetView.facets.included.fallbackLabel=που περιλαμβάνουν οτιδήποτε από:
+# LOCALIZATION NOTE (glodaFacetView.facets.excluded.fallbackLabel): The label to
+# use for groups in a facet that have been explicitly excluded by the user if
+# there is no explicit attribute "excludeLabel" defined. (The explicit label
+# would be named "gloda.message.attr.ATTRIBUTE.excludeLabel".)
+glodaFacetView.facets.excluded.fallbackLabel=που δεν περιλαμβάνουν:
+# LOCALIZATION NOTE (glodaFacetView.facets.remainder.fallbackLabel): The label
+# to use for groups in a facet that are neither part of the included group or
+# the excluded group if there is no explicit attribute "remainderLabel"
+# defined. (The explicit label would be named
+# "gloda.message.attr.ATTRIBUTE.remainderLabel".)
+glodaFacetView.facets.remainder.fallbackLabel=άλλο:
+
+# LOCALIZATION NOTE (glodaFacetView.facets.mustMatchLabel.fallbackLabel): The label
+# to use to restrict a facet by a particular value if there is no explicit
+# attribute "mustMatchLabel" defined. (The explicit label would be named
+# "gloda.message.attr.ATTRIBUTE.mustMatchLabel".)
+glodaFacetView.facets.mustMatchLabel.fallbackLabel=που ταιριάζουν #1
+glodaFacetView.facets.mustMatchNoneLabel.fallbackLabel=δεν έχει μια τιμή
+
+# LOCALIZATION NOTE (glodaFacetView.facets.cantMatchLabel.fallbackLabel): The label
+# to use to restrict a facet by the absence of a particular value if there is
+# no explicit attribute "cantMatchLabel" defined. (The explicit label would be
+# named "gloda.message.attr.ATTRIBUTE.cantMatchLabel".)
+glodaFacetView.facets.cantMatchLabel.fallbackLabel=δεν ταιριάζει με #1
+glodaFacetView.facets.mustMatchSomeLabel.fallbackLabel=έχει μια τιμή
+
+# LOCALIZATION NOTE (glodaFacetView.facets.mayMatchLabel.fallbackLabel): The label
+# to use to undo the restriction of a facet by a particular value if there is
+# no explicit attribute "mayMatchLabel" defined. (The explicit label would be
+# named "gloda.message.attr.ATTRIBUTE.mayMatchLabel".)
+glodaFacetView.facets.mayMatchLabel.fallbackLabel=αφαίρεση περιορισμού
+glodaFacetView.facets.mayMatchAnyLabel.fallbackLabel=αφαίρεση περιορισμού
+
+# LOCALIZATION NOTE (glodaFacetView.facets.noneLabel): The text to display when
+# a facet needs to indicate that an attribute omitted a value or was otherwise
+# empty.
+glodaFacetView.facets.noneLabel=Κανένα
+
+# LOCALIZATION NOTE (glodaFacetView.facets.filter.attachmentTypes.allLabel):
+# The label to use when all types of attachments are being displayed.
+glodaFacetView.facets.filter.attachmentTypes.allLabel=Οποιοδήποτε είδος
+
+# LOCALIZATION NOTE (glodaFacetView.result.message.fromLabel): Used in the
+# faceted search message display to indicate the author of a message.
+# An example usage is "from: Bob".
+glodaFacetView.result.message.fromLabel=από:
+
+# LOCALIZATION NOTE (glodaFacetView.result.message.toLabel): Used in the
+# faceted search message display to indicate the recipients of a message.
+# An example usage is "to: Bob, Chuck, Don".
+glodaFacetView.result.message.toLabel=προς:
+
+# LOCALIZATION NOTE (glodaFacetView.result.message.noSubject): Used in the
+# faceted search message display to act as a click target for messages with
+# no subject.
+glodaFacetView.result.message.noSubject=(χωρίς θέμα)
+
+# LOCALIZATION NOTE(glodaFacetView.results.header.countLabel):
+# This label is displayed above the list of result messages; it tells the user
+# how many messages we are displaying in the list out of the total number of
+# messages in the active set (the set of messages remaining after the
+# application of the facet constraints.)
+# The goal of the various sub-parts here is to make a label along the lines of
+# "M of N". Because there are two numbers, this is split into two parts,
+# 'NMessages' for what in English is just the first number and 'ofN' for the
+# "of N" part. We then use 'grouping' to decide how to combine the two. This
+# was suggested by Rimas Kudelis.
+# LOCALIZATION NOTE(glodaFacetView.results.header.countLabel.NMessages):
+# The first part of the countLabel string (although you can change the order
+# in 'grouping'). This is pluralized using the mechanism described at
+# https://developer.mozilla.org/en/Localization_and_Plurals. We replace
+# "#1" with the number of messages being shown in the result list.
+glodaFacetView.results.header.countLabel.NMessages=#1;#1
+# LOCALIZATION NOTE(glodaFacetView.results.header.countLabel.ofN):
+# The second part of the countLabel string (although you can change the order
+# in 'grouping'). This is pluralized using the mechanism described at
+# https://developer.mozilla.org/en/Localization_and_Plurals. We replace
+# "#1" with the total number of messagse in the active set.
+glodaFacetView.results.header.countLabel.ofN=από #1;από #1
+# LOCALIZATION NOTE(glodaFacetView.results.header.countLabel.grouping):
+# Combines the pluralized
+# "glodaFacetView.results.header.countLabel.NMessages" string (as #1) with
+# the pluralized "glodaFacetView.results.header.countLabel.ofN" (as #2)
+# to make a single label.
+glodaFacetView.results.header.countLabel.grouping=#1 #2
+
+glodaFacetView.results.message.timeline.label=Εναλλαγή χρονολογίου
+# LOCALIZATION NOTE(glodaFacetView.results.message.sort.relevance2):
+# a clickable label causing the sort to be done by most relevant messages first.
+glodaFacetView.results.message.sort.relevance2=Ταξινόμηση κατά σχετικότητα
+# LOCALIZATION NOTE(glodaFacetView.results.message.sort.date2):
+# a clickable label causing the sort to be done by most recent messages first.
+glodaFacetView.results.message.sort.date2=Ταξινόμηση κατά ημερομηνία
+
+# LOCALIZATION NOTE(glodaFacetView.results.message.recipientSeparator): This is
+# the string in between the names of recipients (see
+# glodaFacetView.results.message.andOthers for more information). The \u0020
+# character is a Unicode space character, which is needed as otherwise the
+# trailing whitespace is trimmed before it gets to the code.
+glodaFacetView.results.message.recipientSeparator=,\u0020
+
+# LOCALIZATION NOTE(glodaFacetView.results.message.andOthers):
+# When a message has too many recipients, we only show the first few and then
+# display this label to express how many are not displayed. So if a message
+# has 5 recipients, we might only show the first 3, and then use this label
+# to indicate that there are 2 that are not displayed. This string can be
+# pluralized; see https://developer.mozilla.org/en/Localization_and_Plurals
+# for details on how to do that. Note that in English, we use the "serial
+# comma", but other languages may not need a leading separator there.
+glodaFacetView.results.message.andOthers=, και #1 ακόμα;, και #1 ακόμα
diff --git a/l10n-el/mail/chrome/messenger/imAccountWizard.dtd b/l10n-el/mail/chrome/messenger/imAccountWizard.dtd
new file mode 100644
index 0000000000..c9241f2069
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/imAccountWizard.dtd
@@ -0,0 +1,32 @@
+<!-- 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 windowTitle.label "Βοηθός λογαριασμών συνομιλίας">
+
+<!ENTITY accountProtocolTitle.label "Δίκτυο συνομιλιών">
+<!ENTITY accountProtocolInfo.label "Παρακαλώ επιλέξτε το δίκτυο του λογαριασμού συνομιλίας σας.">
+<!ENTITY accountProtocolField.label "Δίκτυο:">
+<!ENTITY accountProtocolGetMore.label "Περισσότερα…">
+
+<!ENTITY accountUsernameTitle.label "Όνομα χρήστη">
+<!ENTITY accountUsernameDuplicate.label "Αυτός ο λογαριασμός έχει ήδη ρυθμιστεί!">
+
+<!ENTITY accountPasswordTitle.label "Κωδικός">
+<!ENTITY accountPasswordInfo.label "Παρακαλώ εισάγετε τον κωδικό σας στο παρακάτω πλαίσιο.">
+<!ENTITY accountPasswordField.label "Κωδικός πρόσβασης:">
+<!ENTITY accountPasswordManager.label "Ο κωδικός που εισαγάγατε εδώ θα αποθηκευτεί στη Διαχείριση κωδικών. Αφήστε αυτό το πλαίσιο κενό αν θέλετε να εισάγετε τον κωδικό σας κάθε φορά που θα συνδέεστε σε αυτόν τον λογαριασμό.">
+
+<!ENTITY accountAdvancedTitle.label "Σύνθετες επιλογές">
+<!ENTITY accountAdvancedInfo.label "Μπορείτε, αν θέλετε, να παρακάμψετε αυτό το βήμα.">
+<!ENTITY accountAdvanced.newMailNotification.label "Ειδοποίηση για νέα email">
+<!ENTITY accountAliasGroupbox.caption "Τοπικό Alias">
+<!ENTITY accountAliasField.label "Ψευδώνυμο:">
+<!ENTITY accountAliasInfo.label "Αυτό θα εμφανίζεται μόνο στις συνομιλίες σας που συμμετέχετε, οι απομακρυσμένες επαφές σας δεν θα το βλέπουν.">
+<!ENTITY accountProxySettings.caption "Ρυθμίσεις διαμεσολαβητή">
+<!ENTITY accountProxySettings.change.label "Αλλαγή…">
+<!ENTITY accountProxySettings.change.accessKey "γ">
+
+<!ENTITY accountSummaryTitle.label "Περίληψη">
+<!ENTITY accountSummaryInfo.label "Μια σύνοψη των πληροφοριών που έχετε εισάγει εμφανίζεται παρακάτω. Ελέγξτε τις πληροφορίες πριν να δημιουργηθεί ο λογαριασμός.">
+<!ENTITY accountSummary.connectNow.label "Σύνδεση τώρα σε αυτόν το λογαριασμό.">
diff --git a/l10n-el/mail/chrome/messenger/imAccounts.properties b/l10n-el/mail/chrome/messenger/imAccounts.properties
new file mode 100644
index 0000000000..7b3999572f
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/imAccounts.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/.
+
+# LOCALIZATION NOTE (protoOptions):
+# %S is replaced by the name of a protocol
+protoOptions=Επιλογές %S
+accountUsername=Όνομα χρήστη:
+# LOCALIZATION NOTE (accountColon):
+# This string is used to append a colon after the label of each
+# option. It's localizable so that the typography can be adapted.
+accountColon=%S:
+# LOCALIZATION NOTE (accountUsernameInfo):
+# %S is replaced by the name of a protocol
+accountUsernameInfo=Παρακαλώ εισάγετε το όνομα χρήστη για το λογαριασμό %S σας.
+# LOCALIZATION NOTE (accountUsernameInfoWithDescription):
+# %1$S is a hint for the expected format of the username
+# %2$S is the name of a protocol
+accountUsernameInfoWithDescription=Παρακαλώ εισάγετε το όνομα χρήστη (%1$S) για το λογαριασμό %2$S σας.
+
+# LOCALIZATION NOTE (account.connection.error):
+# %S is the error message.
+account.connection.error=Σφάλμα: %S
+# LOCALIZATION NOTE (account.connection.errorUnknownPrpl)
+# %S is the id (not very user friendly; hence the quotes) of the missing plugin.
+account.connection.errorUnknownPrpl=Δεν υπάρχει άρθρωμα για το πρωτόκολλο '%S'.
+account.connection.errorEnteringPasswordRequired=Απαιτείται η εισαγωγή ενός κωδικού για τη σύνδεση σε αυτόν το λογαριασμό.
+account.connection.errorCrashedAccount=Προέκυψε μια κατάρρευση κατά την σύνδεση σε αυτόν το λογαριασμό.
+# LOCALIZATION NOTE (account.connection.progress):
+# %S is a message indicating progress of the connection process
+account.connection.progress=Σύνδεση: %S…
+account.connecting=Σύνδεση…
+account.connectedForSeconds=Συνδεδεμένος για λίγα δευτερόλεπτα.
+# LOCALIZATION NOTE (account.connectedFor{Double,Single},
+# account.reconnectIn{Double,Single}):
+# Each pair of %S is a number followed by a unit. The units are
+# already localized in a downloads.properties file of the toolkit.
+account.connectedForDouble=Συνδεδεμένος για %1$S %2$S και %3$S %4$S.
+account.connectedForSingle=Συνδεδεμένος για περίπου %1$S %2$S.
+account.reconnectInDouble=Επανασύνδεση σε %1$S %2$S και %3$S %4$S.
+account.reconnectInSingle=Επανασύνδεση σε %1$S %2$S.
+
+requestAuthorizeTitle=Αίτηση πιστοποίησης
+# LOCALIZATION NOTE (requestAuthorizeAllow, requestAuthorizeDeny):
+# the & symbol indicates the position of the character that should be
+# used as the accesskey for this button.
+requestAuthorizeAllow=&Να επιτρέπεται
+requestAuthorizeDeny=Να &μην επιτρέπεται
+# LOCALIZATION NOTE (requestAuthorizeText):
+# %S is a contact username.
+requestAuthorizeText=Ο %S σας πρόσθεσε στις επαφές του, Θέλετε να του επιτρέπεται να σας βλέπει;
+
+accountsManager.notification.button.accessKey=τ
+accountsManager.notification.button.label=Σύνδεση τώρα
+accountsManager.notification.userDisabled.label=Έχετε απενεργοποιήσει τις αυτόματες συνδέσεις.
+accountsManager.notification.safeMode.label=Οι ρυθμίσεις αυτόματης σύνδεσης αγνοούνται επειδή η εφαρμογή εκτελείται σε ασφαλή λειτουργία.
+accountsManager.notification.startOffline.label=Οι ρυθμίσεις αυτόματης σύνδεσης αγνοούνται επειδή η εφαρμογή εκτελείται σε λειτουργία εργασίας χωρίς σύνδεση.
+accountsManager.notification.crash.label=Η τελευταία εκτέλεση τερματίστηκε απρόσμενα κατά την προσπάθεια σύνδεσης.Οι αυτόματες συνδέσεις απενεργοποιήθηκαν για να μπορείτε να επεξεργαστείτε τις ρυθμίσεις του λογαριασμού σας.
+# LOCALIZATION NOTE (accountsManager.notification.singleCrash.label): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of accounts that are suspected to have caused a crash.
+accountsManager.notification.singleCrash.label=Μια προηγούμενη εκτέλεση τερματίστηκε απρόσμενα κατά την προσπάθεια σύνδεσης σε ένα νέο ή επεξεργασμένο λογαριασμό. Δεν έχει γίνει σύνδεση για να μπορέσετε να επεξεργαστείτε τις ρυθμίσεις.;Μια προηγούμενη εκτέλεση τερματίστηκε απρόσμενα κατά την προσπάθεια σύνδεσης σε #1 νέους ή επεξεργασμένους λογαριασμούς. εν έχει γίνει σύνδεση για να μπορέσετε να επεξεργαστείτε τις ρυθμίσεις τους.
+accountsManager.notification.other.label=Η αυτόματη σύνδεση έχει απενεργοποιηθεί.
diff --git a/l10n-el/mail/chrome/messenger/imapMsgs.properties b/l10n-el/mail/chrome/messenger/imapMsgs.properties
new file mode 100644
index 0000000000..b8a130e755
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/imapMsgs.properties
@@ -0,0 +1,268 @@
+# 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/.
+
+#
+# The following are used by the imap code to display progress/status/error messages
+#
+
+#LOCALIZATION NOTE(imapAlertDialogTile): Do not translate the word "%S"
+# below. Place the word %S where the account name should appear.
+imapAlertDialogTitle=Ειδοποίηση για τον λογαριασμό %S
+
+# Status - opening folder
+imapStatusSelectingMailbox=Άνοιγμα φακέλου %S…
+
+# Status - create folder
+imapStatusCreatingMailbox=Δημιουργία φακέλου…
+
+# Status - deleting a folder
+# LOCALIZATION NOTE (imapStatusDeletingMailbox): The "%S" below should not be translated.
+# Instead, insert "%S" in your translation where you wish to display the name
+# of the folder being deleted.
+imapStatusDeletingMailbox=Διαγραφή φακέλου %S…
+
+# Status - renaming mailbox
+# LOCALIZATION NOTE (imapStatusRenamingMailbox): The "%S" below should not be translated.
+# Instead, insert "%S" in your translation where you wish to display the name
+# of the folder being renamed.
+imapStatusRenamingMailbox=Μετονομασία φακέλου %S…
+
+# Status - looking for mailboxes
+imapStatusLookingForMailbox=Αναζήτηση φακέλων…
+
+# Status - subscribing to mailbox
+# LOCALIZATION NOTE (imapStatusSubscribeToMailbox): The "%S" below should not be translated.
+# Instead, insert "%S" in your translation where you wish to display the name
+# of the folder being subscribed to.
+imapStatusSubscribeToMailbox=Συνδρομή στο φάκελο "%S"…
+
+# Status - unsubscribing from mailbox
+# LOCALIZATION NOTE (imapStatusUnsubscribeMailbox): The "%S" below should not be translated.
+# Instead, insert "%S" in your translation where you wish to display the name
+# of the folder being unsubscribed from.
+imapStatusUnsubscribeMailbox=Κατάργηση συνδρομής στο φάκελο "%S"…
+
+# Status - searching imap folder
+imapStatusSearchMailbox=Αναζήτηση φακέλου…
+
+# Status - closing a folder
+imapStatusCloseMailbox=Κλείσιμο φακέλου...
+
+# Status - compacting a folder
+imapStatusExpungingMailbox=Συμπίεση φακέλου…
+
+# Status - logging out
+imapStatusLoggingOut=Αποσύνδεση…
+
+# Status - checking server capabilities
+imapStatusCheckCompat=Έλεγχος δυνατοτήτων διακομιστή email…
+
+# Status - logging on
+imapStatusSendingLogin=Αποστολή των πληροφοριών σύνδεσης…
+
+# Status - auth logon
+imapStatusSendingAuthLogin=Αποστολή των πληροφοριών σύνδεσης…
+
+imapDownloadingMessage=Λήψη μηνύματος…
+
+# LOCALIZATION NOTE (imapGettingACLForFolder): Do not translate the word "ACL" below.
+imapGettingACLForFolder=Λήψη φακέλου ACL…
+
+imapGettingServerInfo=Λήψη πληροφοριών ρύθμισης διακομιστή…
+
+imapGettingMailboxInfo=Λήψη πληροφοριών ρύθμισης γραμματοκιβωτίου…
+
+imapEmptyMimePart=Αυτό το τμήμα του κυρίως κειμένου θα ληφθεί κατόπιν αιτήσεως.
+
+# LOCALIZATION NOTE (imapReceivingMessageHeaders3): Do not translate the words "%1$S", "%2$S", and "%3$S" below.
+# Place the word %1$S in your translation where the number of the header being downloaded should appear.
+# Place the word %2$S in your translation where the total number of headers to be downloaded should appear.
+# Place the word %3$S in your translation where the name of the folder being processed should appear.
+# Note: The account name and separators (e.g. colon, space) are automatically added to the status message.
+# Example: "Joe's Account: Downloading message header 100 of 1000 in Drafts…"
+imapReceivingMessageHeaders3=Λήψη επικεφαλίδας μηνύματος %1$S από %2$S στο φάκελο %3$S…
+
+# LOCALIZATION NOTE (imapReceivingMessageFlags3): Do not translate the words "%1$S", "%2$S", and "%3$S" below.
+# Place the word %1$S in your translation where the number of the flag being downloaded should appear.
+# Place the word %2$S in your translation where the total number of flags to be downloaded should appear.
+# Place the word %3$S in your translation where the name of the folder being processed should appear.
+# Note: The account name and separators (e.g. colon, space) are automatically added to the status message.
+# Example: "Jim's Account: Downloading message flag 100 of 1000 in INBOX…"
+imapReceivingMessageFlags3=Λήψη σημαίας μηνύματος %1$S από %2$S στο φάκελο %3$S…
+
+imapDeletingMessages=Διαγραφή μηνυμάτων…
+
+imapDeletingMessage=Διαγραφή μηνύματος…
+
+# LOCALIZATION NOTE (imapMovingMessages): Do not translate the word "%S" below.
+# Place the word %S in your translation where the name of the folder should appear.
+imapMovingMessages=Μετακίνηση μηνυμάτων στο %S…
+
+# LOCALIZATION NOTE (imapMovingMessage): Do not translate the word "%S" below.
+# Place the word %S in your translation where the name of the folder should appear.
+imapMovingMessage=Μετακίνηση μηνύματος στο %S…
+
+# LOCALIZATION NOTE (imapCopyingMessages): Do not translate the word "%S" below.
+# Place the word %S in your translation where the name of the folder should appear.
+imapCopyingMessages=Αντιγραφή μηνυμάτων στο %S…
+
+# LOCALIZATION NOTE (imapCopyingMessage): Do not translate the word "%S" below.
+# Place the word %S in your translation where the name of the folder should appear.
+imapCopyingMessage=Αντιγραφή μηνύματος στο %S…
+
+# LOCALIZATION NOTE (imapFolderReceivingMessageOf3): Do not translate the words "%1$S", "%2$S", and "%3$S" below.
+# Place the word %1$S in your translation where the number of the message being downloaded should appear.
+# Place the word %2$S in your translation where the total number of messages to be downloaded should appear.
+# Place the word %3$S in your translation where the name of the folder being processed should appear.
+# Note: The account name and separators (e.g. colon, space) are automatically added to the status message.
+# Example: "Juan's Account: Downloading message 100 of 1000 in Sent…"
+imapFolderReceivingMessageOf3=Λήψη μηνύματος %1$S από %2$S στο φάκελο %3$S…
+
+# LOCALIZATION NOTE (imapDiscoveringMailbox): Do not translate the word "%S" below.
+# Place the word %S in your translation where the name of the folder should appear.
+imapDiscoveringMailbox=Βρέθηκε φάκελος %S
+
+# LOCALIZATION NOTE (imapEnterServerPasswordPrompt): Do not translate the words %1$S and %2$S below.
+# Place the word %1$S in your translation where the username should appear.
+# Place the word %2$S in your translation where the servername should appear.
+imapEnterServerPasswordPrompt=Εισάγετε τον κωδικό πρόσβασής σας για το %1$S στο %2$S:
+
+# LOCALIZATION NOTE (imapServerNotImap4): Do not translate the word "IMAP4" below.
+imapServerNotImap4=Ο διακομιστής αλληλογραφίας %S δεν είναι διακομιστής αλληλογραφίας IMAP4.
+
+# This is intentionally left blank.
+imapDone=
+
+# LOCALIZATION NOTE (imapEnterPasswordPromptTitleWithUsername): Do not translate the
+# word %1$S. Place the word %1$S where the user name should appear.
+imapEnterPasswordPromptTitleWithUsername=Εισάγετε τον κωδικό πρόσβασής σας για %1$S
+
+imapUnknownHostError=Αποτυχία σύνδεσης με διακομιστή %S
+imapOAuth2Error=Σφάλμα ταυτοποίησης κατά τη σύνδεση με τον διακομιστή %S.
+
+imapConnectionRefusedError=Δεν ήταν δυνατή η σύνδεση με τον διακομιστή %S. Υπήρξε άρνηση σύνδεσης.
+
+imapNetTimeoutError=Ο χρόνος σύνδεσης στο διακομιστή %S έληξε.
+
+imapTlsError=Προέκυψε μη παρακάμψιμο σφάλμα TLS. Είτε προέκυψε σφάλμα handshake, είτε η έκδοση TLS ή το πιστοποιητικό του διακομιστή %S δεν είναι συμβατά.
+
+# Status - no messages to download
+imapNoNewMessages=Δεν υπάρχουν νέα μηνύματα στο διακομιστή.
+
+imapDefaultAccountName=Αλληλογραφία για %S
+
+imapSpecialChar2=Ο χαρακτήρας %S είναι δεσμευμένος σε αυτό το διακομιστή imap. Παρακαλώ επιλέξτε κάποιο διαφορετικό.
+
+imapPersonalSharedFolderTypeName=Προσωπικός φάκελλος
+
+imapPublicFolderTypeName=Δημόσιος φάκελος
+
+imapOtherUsersFolderTypeName=Φάκελος άλλου χρήστη
+
+imapPersonalFolderTypeDescription=Αυτός είναι ένας προσωπικός φάκελος αλληλογραφίας. Δεν είναι κοινόχρηστος.
+
+imapPersonalSharedFolderTypeDescription=Αυτός είναι ένας προσωπικός φάκελος αλληλογραφίας. Έχει γίνει κοινόχρηστος..
+
+imapPublicFolderTypeDescription=Αυτός είναι ένας δημόσιος φάκελος.
+
+imapOtherUsersFolderTypeDescription=Αυτός είναι ένας κοινόχρηστος φάκελος αλληλογραφίας με το χρήστη '%S'."
+
+imapAclFullRights=Πλήρης έλεγχος.
+
+imapAclLookupRight=Έρευνα
+
+imapAclReadRight=Ανάγνωση
+
+imapAclSeenRight=Ορισμός κατάστασης αναγνωσμένου/μή αναγνωσμένου
+
+imapAclWriteRight=Σύνταξη
+
+imapAclInsertRight=Εισαγωγή (αντιγραφή σε)
+
+imapAclPostRight=Αποστολή
+
+imapAclCreateRight=Δημιουργία υποφακέλου
+
+imapAclDeleteRight=Διαγραφή μηνυμάτων
+
+imapAclAdministerRight=Διαχείριση φακέλου
+
+imapServerDoesntSupportAcl=Αυτός ο διακομιστής δεν υποστηρίζει κοινόχρηστους φακέλους
+
+imapAclExpungeRight=Εξάλειψη
+
+imapServerDisconnected= Ο διακομιστής %S αποσυνδέθηκε, πιθανό πρόβλημα δικτύου.
+
+# LOCALIZATION NOTE (autoSubscribeText): %1$S is the imap folder.
+imapSubscribePrompt=Θέλετε να εγγραφείτε στο %1$S;
+
+imapServerDroppedConnection=Αδυναμία σύνδεσης στο διακομιστή ΙΜΑΡ. Μπορεί να έχετε υπερβεί το μέγιστο αριθμό \
+συνδέσεων σε αυτόν το διακομιστή. Αν είναι έτσι χρησιμοποιήστε τις προχωρημένες ρυθμίσεις διακομιστή ΙΜΑΡ \
+για να μειώσετε τις συνδέσεις στην cache.
+
+# This will occur when a folder that has never been imap selected or opened
+# (left-clicked) is first right-clicked to access quota properties.
+imapQuotaStatusFolderNotOpen=Οι πληροφορίες ορίων χρήσης δεν είναι διαθέσιμες γιατί ο φάκελος δεν είναι ανοικτός.
+
+# The imap capability response reports that QUOTA is not supported.
+imapQuotaStatusNotSupported=Αυτός ο διακομιστής δεν υποστηρίζει όρια χρήσης.
+
+# The getqutaroot command succeeded but reported no quota information.
+imapQuotaStatusNoQuota2=Αυτός ο φάκελος δεν αναφέρει πληροφορίες ποσοστώσεων.
+
+# Folder properties were requested by the user (right-click) before the getquotaroot
+# command was sent.
+imapQuotaStatusInProgress=Οι πληροφορίες ποσοστώσεων δεν είναι ακόμη διαθέσιμες.
+
+# Out of memory
+imapOutOfMemory=Ανεπάρκεια μνήμης για την εφαρμογή
+
+# LOCALIZATION NOTE (imapCopyingMessageOf2): Do not translate the word "%S" below.
+# Place the word %3$S in your translation where the name of the destination folder should appear.
+# Place the word %1$S where the currently copying message should appear.
+# Place the word %2$S where the total number of messages should appear.
+imapCopyingMessageOf2=Αντιγραφή μηνύματος %1$S από %2$S σε %3$S
+
+# LOCALIZATION NOTE (imapMoveFolderToTrash): Do not translate the word %S below.
+# "%S" is the the name of the folder.
+imapMoveFolderToTrash=Θέλετε σίγουρα να διαγράψετε το φάκελο '%S';
+
+# LOCALIZATION NOTE (imapDeleteNoTrash): Do not translate the word %S below.
+# "%S" is the the name of the folder.
+imapDeleteNoTrash=Η διαγραφή αυτού του φακέλου δεν είναι αναστρέψιμη και θα διαγράψει όλα τα περιεχόμενα μηνύματα και τους υποφακέλους του. Θέλετε σίγουρα να διαγράψετε το φάκελο '%S';
+
+imapDeleteFolderDialogTitle=Διαγραφή φακέλου
+
+imapDeleteFolderButtonLabel=&Διαγραφή φακέλου
+
+# LOCALIZATION NOTE (imapAuthChangeEncryptToPlainSSL): %S is the server hostname
+imapAuthChangeEncryptToPlainSSL=Ο διακομιστής IMAP %S δεν υποστηρίζει κρυπτογραφημένους κωδικούς. Αν μόλις ρυθμίσατε τον λογαριασμό, κάντε αλλαγή σε 'Κανονικός κωδικός' ως 'Μέθοδος πιστοποίησης' στις 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'. Αν λειτουργούσε παλιά και τώρα ξαφνικά δεν λειτουργεί, επικοινωνήστε με τον πάροχο σας.
+
+# LOCALIZATION NOTE (imapAuthChangePlainToEncrypt): %S is the server hostname
+imapAuthChangePlainToEncrypt=Ο διακομιστής IMAP %S δεν υποστηρίζει κωδικούς απλού κειμένου. Αν μόλις ρυθμίσατε τον λογαριασμό, κάντε αλλαγή σε 'Κρυπτογραφημένος κωδικός' ως 'Μέθοδος πιστοποίησης' στις 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'.
+
+# LOCALIZATION NOTE (imapAuthChangeEncryptToPlainNoSSL): %S is the server hostname
+imapAuthChangeEncryptToPlainNoSSL=Ο διακομιστής IMAP %S δεν υποστηρίζει κρυπτογραφημένους κωδικούς. Αν μόλις ρυθμίσατε τον λογαριασμό, κάντε αλλαγή σε 'Κανονικός κωδικός' ως 'Μέθοδος πιστοποίησης' στις 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'. Αν λειτουργούσε παλιά και τώρα ξαφνικά δεν λειτουργεί, επικοινωνήστε με τον πάροχο σας.
+
+# LOCALIZATION NOTE (imapAuthMechNotSupported): %S is the server hostname
+imapAuthMechNotSupported=Ο διακομιστής IMAP %S δεν υποστηρίζει την επιλεγμένη μέθοδο πιστοποίησης. Παρακαλούμε, αλλάξτε την επιλογή 'Μέθοδος πιστοποίησης' στις 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'.
+
+# LOCALIZATION NOTE (imapAuthGssapiFailed): %S is the server hostname
+imapAuthGssapiFailed=Το Kerberos/GSSAPI ticket δεν έγινε δεκτό από τον διακομιστή IMAP %S. Παρακαλώ ελέγξτε την σύνδεση σας στο Kerberos/GSSAPI realm.
+
+# LOCALIZATION NOTE (imapServerCommandFailed):
+# Place the word %1$S in your translation where the name of the account name should appear.
+# Place the word %2$S in your translation where the server response should appear.
+imapServerCommandFailed=Η τρέχουσα εντολή απέτυχε. Ο διακομιστής αλληλογραφίας για το λογαριασμό %1$S αποκρίθηκε: %2$S
+
+# LOCALIZATION NOTE (imapFolderCommandFailed): Do not translate the word %S below.
+# Place the word %1$S in your translation where the name of the account should appear.
+# Place the word %2$S in your translation where the name of the folder should appear.
+# Place the word %3$S in your translation where the server response should appear.
+imapFolderCommandFailed=Η τρέχουσα διεργασία στο'%2$S' απέτυχε. Ο διακομιστής αλληλογραφίας για το λογαριασμό %1$S αποκρίθηκε: %3$S
+
+# LOCALIZATION NOTE (imapServerAlert):
+# Place the word %1$S in your translation where the name of the account should appear.
+# Place the word %2$S in your translation where the alert from the server should appear.
+imapServerAlert=Ειδοποίηση από το λογαριασμό %1$S: %2$S
diff --git a/l10n-el/mail/chrome/messenger/importDialog.dtd b/l10n-el/mail/chrome/messenger/importDialog.dtd
new file mode 100644
index 0000000000..ef2fbf5c09
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/importDialog.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/. -->
+
+<!--
+LOCALIZATION NOTE : 'Communicator 4.x' is the used for previous versions of
+Netscape Communicator, Please translate using the brandname in respective
+languages for Netscape Communicator 4 releases.
+LOCALIZATION NOTE : Do not translate any of the occurrences of the word
+"&brandShortName;" below.
+-->
+
+<!ENTITY importDialog.windowTitle "Εισαγωγή">
+<!ENTITY importAll.label "Εισαγωγή όλων">
+<!ENTITY importAll.accesskey "ι">
+<!ENTITY importMail.label "Αλληλογραφία">
+<!ENTITY importMail.accesskey "λ">
+<!ENTITY importFeeds.label "Συνδρομές ροών">
+<!ENTITY importFeeds.accesskey "ρ">
+<!ENTITY importAddressbook.label "Ευρετήρια">
+<!ENTITY importAddressbook.accesskey "Ε">
+<!ENTITY importSettings.label "Ρυθμίσεις">
+<!ENTITY importSettings.accesskey "θ">
+<!ENTITY importFilters.label "Φίλτρα">
+<!ENTITY importFilters.accesskey "Φ">
+
+<!ENTITY window.width "48em">
+<!ENTITY window.macWidth "50em">
+
+<!ENTITY importTitle.label "Βοηθός εισαγωγής του &brandShortName;">
+<!ENTITY importShortDesc.label "Εισαγωγή αλληλογραφίας, ευρετήριου διευθύνσεων και φίλτρων από άλλα προγράμματα">
+
+<!ENTITY importDescription1.label "Αυτός ο βοηθός θα εισάγει τα email, τις καταχωρήσεις ευρετηρίων διευθύνσεων, τις συνδρομές ροών, τις προτιμήσεις και/ή τα φίλτρα από άλλα προγράμματα email και κοινές μορφές ευρετηρίων διευθύνσεων στο &brandShortName;.">
+<!ENTITY importDescription2.label "Όταν ολοκληρωθεί η εισαγωγή, θα είναι δυνατή η πρόσβαση μέσω του &brandShortName;.">
+
+<!ENTITY selectDescription.label "Επιλέξτε το πρόγραμμα από το οποίο επιθυμείτε να γίνει η εισαγωγή:">
+<!ENTITY selectDescriptionB.label "Επιλέξτε ένα υπάρχοντα λογαριασμό ή δημιουργήστε ένα νέο:">
+<!ENTITY selectDescription.accesskey "ξ">
+<!ENTITY acctName.label "Όνομα:">
+<!ENTITY acctName.accesskey "ν">
+<!ENTITY noModulesFound.label "Δεν βρέθηκε καμία εφαρμογή ή αρχείο για εισαγωγή δεδομένων.">
+
+<!ENTITY back.label "&lt; Πίσω">
+<!ENTITY forward.label "Επόμενο &gt;">
+<!ENTITY finish.label "Τέλος">
+<!ENTITY cancel.label "Ακύρωση">
+
+<!ENTITY select.label "Επιλογή είδους υλικού για εισαγωγή:">
+
+<!ENTITY title.label "Τίτλος">
+<!ENTITY processing.label "Εισαγωγή…">
diff --git a/l10n-el/mail/chrome/messenger/importMsgs.properties b/l10n-el/mail/chrome/messenger/importMsgs.properties
new file mode 100644
index 0000000000..92fda2f362
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/importMsgs.properties
@@ -0,0 +1,304 @@
+# 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/.
+
+# The following are used by the import code to display status/error
+# and informational messages
+
+# Success message when no address books are found to import
+## @name IMPORT_NO_ADDRBOOKS
+## @loc None
+2000=Δε βρέθηκαν ευρετήρια διευθύνσεων προς εισαγωγή
+
+# Error: Address book import not initialized
+## @name IMPORT_ERROR_AB_NOTINITIALIZED
+## @loc None
+2001=Δεν είναι δυνατή η εισαγωγή του ευρετηρίου διευθύνσεων. Σφάλμα κατά την προετοιμασία
+
+# Error: Unable to create the import thread
+## @name IMPORT_ERROR_AB_NOTHREAD
+## @loc None
+2002=Δεν είναι δυνατή η εισαγωγή ευρετηρίων διευθύνσεων· αδυναμία δημιουργίας νήματος εισαγωγής.
+
+# Error: Unable to create the import thread
+## @name IMPORT_ERROR_GETABOOK
+## @loc None
+# LOCALIZATION NOTE (Error 2003): Do not translate the word "%S" below.
+2003=Σφάλμα εισαγωγής %S, δεν είναι δυνατή η δημιουργία ευρετηρίου διευθύνσεων
+
+# Success message when no mailboxes are found to import
+## @name IMPORT_NO_MAILBOXES
+## @loc None
+2004=Δε βρέθηκαν γραμματοκιβώτια προς εισαγωγή
+
+# Error: Mailbox import not initialized
+## @name IMPORT_ERROR_MB_NOTINITIALIZED
+## @loc None
+2005=Λανθασμένη παράμετρος στην εισαγωγή γραμματοκιβωτίων
+
+# Error: Unable to create the import thread
+## @name IMPORT_ERROR_MB_NOTHREAD
+## @loc None
+2006=Δεν είναι δυνατή η εισαγωγή γραμματοκιβωτίων, αδυναμία δημιουργίας νήματος εισαγωγής
+
+# Error: Unable to create the proxy object for importing mailboxes
+## @name IMPORT_ERROR_MB_NOPROXY
+## @loc None
+2007=Αδυναμία εισαγωγής γραμματοκιβωτίων, δεν είναι δυνατή η δημιουργία αντικειμένου μεσολάβησης για τα γραμματοκιβώτια προορισμού
+
+# Error: Error creating destination mailboxes
+## @name IMPORT_ERROR_MB_FINDCHILD
+## @loc None
+# LOCALIZATION NOTE (Error 2008): Do not translate the word "%S" below.
+# Place %S in your translation where the name of the mailbox should appear.
+2008=Σφάλμα κατά τη δημιουργία γραμματοκιβωτίων προορισμού, δεν είναι δυνατή η εύρεση γραμματοκιβωτίου %S
+
+# Error: Error creating destination mailboxes
+## @name IMPORT_ERROR_MB_CREATE
+## @loc None
+# LOCALIZATION NOTE (Error 2009): Do not translate the word "%S" below.
+# Place %S in your translation where the name of the mailbox should appear.
+2009=Σφάλμα εισαγωγής αλληλογραφίας %S , αδυναμία δημιουργίας γραμματοκιβωτίου προορισμού
+
+# Error: No destination folder to import mailboxes
+## @name IMPORT_ERROR_MB_NODESTFOLDER
+## @loc None
+2010=Δεν είναι δυνατή η δημιουργία φακέλου για την εισαγωγή αλληλογραφίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC_START
+## @loc None
+2100=Όνομα
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2101=Επώνυμο
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2102=Όνομα
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2103=Ψευδώνυμο
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2104=Κύριο email
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2105=Δευτερεύον email
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2106=Τηλέφωνο εργασίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2107=Τηλέφωνο οικίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2108=Αριθμός φαξ
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2109=Αριθμός βομβητή
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2110=Αριθμός κινητού
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2111=Διεύθυνση οικίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2112=Διεύθυνση οικίας 2
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2113=Πόλη οικίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2114=Πολιτεία οικίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2115=Ταχ. κώδικας οικίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2116=Χώρα οικίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2117=Διεύθυνση εργασίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2118=Διεύθυνση εργασίας 2
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2119=Πόλη εργασίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2120=Πολιτεία εργασίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2121=Ταχ, κώδικας εργασίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2122=Χώρα εργασίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2123=Τίτλος εργασίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2124=Τμήμα
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2125=Εταιρεία
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2126=Ιστοσελίδα 1
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2127=Ιστοσελίδα 2
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2128=Έτος γέννησης
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2129=Μήνας γέννησης
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2130=Ημέρα γέννησης
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2131=Προσαρμοσμένο 1
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2132=Προσαρμοσμένο 2
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2133=Προσαρμοσμένο 3
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2134=Προσαρμοσμένο 4
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2135=Σημειώσεις
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC_END
+## @loc None
+2136=Εμφανιζόμενο όνομα
+
+#Error strings
+ImportAlreadyInProgress=Μια διαδικασία εισαγωγής είναι σε εξέλιξη. Προσπαθήστε ξανά όταν η τρέχουσα εισαγωγή έχει ολοκληρωθεί.
+
+#Error strings for settings import
+ImportSettingsBadModule=Αδυναμία φόρτωσης λειτουργικής μονάδας ρυθμίσεων αλληλογραφίας
+ImportSettingsNotFound=Δεν εντοπίστηκαν ρυθμίσεις για εισαγωγή. Βεβαιωθείτε αν η εφαρμογή έχει εγκατασταθεί σωστά.
+ImportSettingsFailed=Σφάλμα εισαγωγής ρυθμίσεων. Μπορεί κάποιες ή και όλες οι ρυθμίσεις να μην εισαχθούν.
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+ImportSettingsSuccess=Έγινε εισαγωγή ρυθμίσεων από %S
+
+#Error string for mail import
+ImportMailBadModule=Δεν είναι δυνατή η φόρτωση της λειτουργικής μονάδας εισαγωγής
+ImportMailNotFound=Δεν εντοπίστηκε αλληλογραφία για εισαγωγή. Βεβαιωθείτε αν η εφαρμογή αλληλογραφίας έχει εγκατασταθεί σωστά.
+ImportEmptyAddressBook=Αδυναμία εισαγωγής κενού ευρετηρίου διευθύνσεων %S.
+# LOCALIZATION NOTE: Do not translate the word "%S" below.
+ImportMailFailed=Σφάλμα κατά την εισαγωγή αλληλογραφίας από %S
+# LOCALIZATION NOTE: Do not translate the word "%S" below.
+ImportMailSuccess=Έγινε επιτυχής εισαγωγή αλληλογραφίας από το %S
+
+# Error string for address import
+ImportAddressBadModule=Δεν είναι δυνατή ή φόρτωση λειτουργικής μονάδας εισαγωγής ευρετηρίου
+ImportAddressNotFound=Δεν είναι δυνατή η εύρεση ευρετηρίων διευθύνσεων για εισαγωγή. Ελέγξτε αν η επιλεγμένη εφαρμογή ή τύπος αρχείου έχει εγκατασταθεί σωστά.
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+ImportAddressFailed=Σφάλμα εισαγωγής διευθύνσεων από %S
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+ImportAddressSuccess=Οι διευθύνσεις εισήχθηκαν επιτυχώς από %S
+
+# Error string for filters import
+ImportFiltersBadModule=Αδυναμία φόρτωσης λειτουργικής μονάδας εισαγωγής φίλτρων.
+# LOCALIZATION NOTE : The %S will get replaced by the name of the import module.
+ImportFiltersFailed=Σφάλμα εισαγωγής φίλτρων από %S.
+# LOCALIZATION NOTE : The %S will get replaced by the name of the import module.
+ImportFiltersSuccess=Επιτυχής εισαγωγή φίλτρων από %S.
+# LOCALIZATION NOTE : The %S will get replaced by the name of the import module.
+ImportFiltersPartial=Μερική εισαγωγή φίλτρων από %S. Παρακάτω οι προειδοποιήσεις:
+
+#Progress strings
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+MailProgressMeterText=Μετατροπή γραμματοκιβωτίων από %S
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+AddrProgressMeterText=Μετατροπή ευρετηρίων διευθύνσεων από %S
+
+#Import file dialog strings
+ImportSelectSettings=Επιλογή αρχείου ρυθμίσεων
+ImportSelectMailDir=Επιλογή καταλόγου αλληλογραφίας
+ImportSelectAddrDir=Επιλογή ευρετηρίου διευθύνσεων
+ImportSelectAddrFile=Επιλογή αρχείου ευρετηρίου διευθύνσεων
+
+# Folder Names for imported Mail
+DefaultFolderName=Εισηγμένη αλληλογραφία
+# LOCALIZATION NOTE: Do not translate the word "%S" below.
+ImportModuleFolderName=Εισαγωγή %S
diff --git a/l10n-el/mail/chrome/messenger/joinChat.dtd b/l10n-el/mail/chrome/messenger/joinChat.dtd
new file mode 100644
index 0000000000..d6d010e83e
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/joinChat.dtd
@@ -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/. -->
+
+<!ENTITY joinChatWindow.title "Σύνδεση στο chat">
+<!ENTITY name.label "Δωμάτιο">
+<!ENTITY optional.label "(προαιρετικό)">
+<!ENTITY account.label "Λογαριασμός">
+<!ENTITY autojoin.label "Αυτόματη είσοδος σε αυτό το δωμάτιο Chat">
+<!ENTITY autojoin.accesskey "Α">
diff --git a/l10n-el/mail/chrome/messenger/junkLog.dtd b/l10n-el/mail/chrome/messenger/junkLog.dtd
new file mode 100644
index 0000000000..85c21a16eb
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/junkLog.dtd
@@ -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/. -->
+
+<!ENTITY adaptiveJunkLog.title "Αρχείο καταγραφής προσαρμόσιμης ανεπιθύμητης αλληλογραφίας">
+<!ENTITY adaptiveJunkLogInfo.label "Αρχείο καταγραφής της δραστηριότητας προσαρμόσιμης ανεπιθύμητης αλληλογραφίας.">
+<!ENTITY clearLog.label "Εκκαθάριση καταγραφής">
+<!ENTITY clearLog.accesskey "θ">
+<!ENTITY closeLog.label "Κλείσιμο">
+<!ENTITY closeLog.accesskey "Κ">
diff --git a/l10n-el/mail/chrome/messenger/junkMailInfo.dtd b/l10n-el/mail/chrome/messenger/junkMailInfo.dtd
new file mode 100644
index 0000000000..68c845b0b8
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/junkMailInfo.dtd
@@ -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/. -->
+
+<!ENTITY window.title "Περί της ανεπιθύμητης αλληλογραφίας">
+<!ENTITY window.width "450">
+<!ENTITY info1a.label "Το &brandShortName; εντοπίζει αυτόματα τα εισερχόμενα μηνύματα που φαίνεται να είναι ανεπιθύμητα (spam). Τα μηνύματα που θεωρούνται ανεπιθύμητα από το &brandShortName; θα εμφανίζουν το αντίστοιχο εικονίδιο">
+<!ENTITY info1b.label ".">
+<!ENTITY info2.label "Αρχικά, θα πρέπει να εκπαιδεύσετε το &brandShortName; ώστε να αναγνωρίζει τα ανεπιθύμητα email, επισημαίνοντας τα μηνύματα ως ανεπιθύμητα ή μη, με το κουμπί ανεπιθύμητων στη γραμμή εργαλείων.">
+<!ENTITY info3.label "Όταν το &brandShortName; αναγνωρίζει σωστά τα ανεπιθύμητα email, μπορείτε να χρησιμοποιήσετε τον Έλεγχο ανεπιθύμητης αλληλογραφίας για αυτόματη μετακίνηση ανεπιθύμητων email στο φάκελο ανεπιθύμητων.">
+<!ENTITY info4.label "Για περισσότερες πληροφορίες, πατήστε Βοήθεια">
diff --git a/l10n-el/mail/chrome/messenger/localMsgs.properties b/l10n-el/mail/chrome/messenger/localMsgs.properties
new file mode 100644
index 0000000000..855d294720
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/localMsgs.properties
@@ -0,0 +1,149 @@
+# 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/.
+
+#
+# The following are used by the local mail code to display progress/status/error messages
+#
+
+# LOCALIZATION NOTE(pop3ErrorDialogTitle): Do not translate the word "%S"
+# below. Place the word %S where the account name should appear.
+pop3ErrorDialogTitle=Σφάλμα με τον λογαριασμό %S
+
+# LOCALIZATION NOTE (pop3EnterPasswordPromptTitleWithUsername): Do not translate the
+# word %1$S. Place the word %1$S where the user name should appear.
+pop3EnterPasswordPromptTitleWithUsername=Εισάγετε τον κωδικό πρόσβασής σας για το %1$S
+
+# LOCALIZATION NOTE(pop3EnterPasswordPrompt): Do not translate the words "%1$S"
+# and "%2$S" below. Place the word %1$S where the user name should appear, and
+# %2$S where the host name should appear.
+pop3EnterPasswordPrompt=Εισάγετε τον κωδικό πρόσβασής σας για το %1$S στο %2$S:
+
+# LOCALIZATION NOTE(pop3PreviouslyEnteredPasswordIsInvalidPrompt): Do not
+# translate the words "%1$S" and "%2$S" below. Place the word %1$S where the
+# user name should appear, and %2$S where the host name should appear.
+pop3PreviouslyEnteredPasswordIsInvalidPrompt=Παρακαλώ εισάγετε ένα νέο κωδικό για τον χρήστη %1$S σε %2$S:
+
+# Status - Downloading message n of m
+# LOCALIZATION NOTE (receivingMessages): Do not translate %1$S or %2$S in the following lines.
+# Place the word %1$S where the number of messages downloaded so far should appear.
+# Place the word %2$S where the total number of messages to receive should appear;
+receivingMessages=Λήψη μηνύματος %1$S από %2$S…
+
+# Status - connecting to host
+hostContact=Έγινε επαφή με κεντρικό υπολογιστή, αποστέλλονται πληροφορίες σύνδεσης…
+
+# Status - no messages to download
+noNewMessages=Δεν υπάρχουν νέα μηνύματα.
+
+# Status - messages received after the download
+#LOCALIZATION NOTE : Do not translate %1$S or %2$S in the following line.
+# %1$S will receive the number of messages received
+# %2$S will receive the total number of messages
+receivedMsgs=Ελήφθησαν %1$S από %2$S μηνύματα
+
+# Status - parsing folder
+#LOCALIZATION NOTE (buildingSummary): Do not translate %S in the following line.
+# Place the word %S where the name of the mailbox should appear
+buildingSummary=Δημιουργία αρχείου περίληψης για %S…
+
+# Status - parsing folder
+localStatusDocumentDone=Τέλος
+
+# Status - pop3 server error
+#LOCALIZATION NOTE (pop3ServerError): Do not translate POP3 in the following line.
+pop3ServerError=Προέκυψε σφάλμα στο διακομιστή αλληλογραφίας POP3.
+
+# Status - pop3 user name failed
+pop3UsernameFailure=Σφάλμα κατά την αποστολή του ονόματος χρήστη.
+
+# Status - password failed
+#LOCALIZATION NOTE (pop3PasswordFailed): Do not translate "%1$S" below.
+# Place the word %1$S where the user name should appear.
+pop3PasswordFailed=Σφάλμα κατά την αποστολή του κωδικού πρόσβασης του χρήστη %1$S.
+
+# Status - write error occurred
+pop3MessageWriteError=Το πρόγραμμα δε μπορεί να αποθηκεύσει το μήνυμα στο γραμματοκιβώτιο. Βεβαιωθείτε ότι έχετε δικαίωμα πρόσβασης στο σύστημα αρχείων και αρκετό χώρο στο δίσκο για την αντιγραφή.
+
+# Status - retr failure from the server
+pop3RetrFailure=Η εντολή RETR απέτυχε. Σφάλμα κατά τη λήψη μηνύματος.
+
+# Status - password undefined
+pop3PasswordUndefined=Σφάλμα κατά τη λήψη του κωδικού πρόσβασης για την αλληλογραφία.
+
+# Status - username undefined
+pop3UsernameUndefined=Δεν έχετε καταχωρίσει ένα όνομα χρήστη για αυτόν τον διακομιστή. Εισάγετε ένα όνομα στις ρυθμίσεις λογαριασμού και προσπαθήστε ξανά.
+
+# Status - list failure
+pop3ListFailure=Η εντολή LIST απέτυχε. Σφάλμα κατά τη λήψη της ταυτότητας και του μεγέθους του μηνύματος.
+
+# Status - delete error
+pop3DeleFailure=Η εντολή DELE απέτυχε. Σφάλμα κατά την επισήμανση του μηνύματος ως διεγραμμένο.
+
+# Status - stat failed
+pop3StatFail=Η εντολή STAT απέτυχε. Σφάλμα κατά την λήψη του αριθμού και του μεγέθους του μηνύματος.
+
+#LOCALIZATION NOTE (pop3ServerSaid): Do not remove the leading space during translation.
+pop3ServerSaid= Ο διακομιστής αλληλογραφίας %S αποκρίθηκε:
+
+copyingMessagesStatus=Αντιγραφή %S από %S μηνύματα σε %S
+
+movingMessagesStatus=Μετακίνηση %S από %S μηνύματα σε %S
+
+# Status - pop3 server or folder busy
+# LOCALIZATION NOTE (pop3ServerBusy): Do not translate the word "%S" below.
+# Place %S where the account name should appear.
+pop3ServerBusy=Ο λογαριασμός %S είναι υπό επεξεργασία. Παρακαλούμε περιμένετε μέχρι να τελειώσει η διαδικασία για να λάβετε μηνύματα.
+
+movemailCantOpenSpoolFile=Αδυναμία ανοίγματος αρχείου mail spool %S.
+
+movemailCantCreateLock=Αδυναμία δημιουργίας αρχείου κλειδώματος %S. Για να λειτουργήσει το movemail, είναι αναγκαία η δημιουργία αρχείων κλειδώματος στον κατάλογο mail spool. Σε πολλά συστήματα αυτό επιτυγχάνεται με τη δημιουργία ενός καταλόγου spool σε κατάσταση 01777.
+
+movemailCantDeleteLock=Αδυναμία διαγραφής αρχείου κλειδώματος %S.
+
+movemailCantTruncateSpoolFile=Αδυναμία truncate spool file %S.
+
+movemailSpoolFileNotFound=Αδυναμία εντοπισμού mail spool file.
+
+#LOCALIZATION NOTE (movemailCantParseSpool): %S is file name
+movemailCantParseSpool=Δεν ήταν δυνατή η ανάλυση του αρχείου ουράς %S. Το αρχείο ενδέχεται να είναι κατεστραμμένο ή μη έγκυρο.
+
+pop3TmpDownloadError=Σφάλμα κατά τη λήψη του ακόλουθου μηνύματος: \nΑπό: %S\n Θέμα: %S\n Αυτό το μήνυμα μπορεί να περιέχει ένα ιό ή μπορεί να μη υπάρχει αρκετός ελεύθερος χώρος στο δίσκο. Παράκαμψη αυτού του μηνύματος;
+
+# Status - the server doesn't support UIDL…
+# LOCALIZATION NOTE(pop3ServerDoesNotSupportUidlEtc): The following sentence should be translated in this way:
+# Do not translate "POP3"
+# Do not translate "%S". Place %S in your translation where the name of the server should appear.
+# Do not translate "UIDL"
+pop3ServerDoesNotSupportUidlEtc=Ο διακομιστής αλληλογραφίας POP3 (%S) δεν υποστηρίζει UIDL ή XTND XLST, τα οποία απαιτούνται για τις επιλογές "Διατήρηση στο διακομιστή", "Μέγιστο μέγεθος μηνύματος" ή "Λήψη μόνο κεφαλίδων". Για τη λήψη των email σας, απενεργοποιήστε τις επιλογές αυτές στις ρυθμίσεις διακομιστή στο παράθυρο ρυθμίσεων λογαριασμού.
+
+# Status - the server doesn't support the top command
+# LOCALIZATION NOTE(pop3ServerDoesNotSupportTopCommand): The following sentence should be translated in this way:
+# Do not translate "POP3"
+# Do not translate "%S". Place %S in your translation where the name of the server should appear.
+# Do not translate "TOP"
+pop3ServerDoesNotSupportTopCommand=Ο διακομιστής αλληλογραφίας POP3 (%S) δεν υποστηρίζει την εντολή TOP. Χωρίς αυτή την εντολή δεν είναι δυνατή η εφαρμογή της προτίμησης ``Μέγιστο μέγεθος μηνύματος'' ή ``Λήψη μόνο κεφαλίδων''. Αυτή επιλογή απενεργοποιήθηκε και θα γίνεται λήψη όλων των μηνυμάτων ανεξάρτητα από το μέγεθος τους.
+
+nsErrorCouldNotConnectViaTls=Αδυναμία δημιουργίας σύνδεσης TLS με το διακομιστή POP3. Ο διακομιστής μπορεί να είναι εκτός λειτουργίας ή να μην έχει ρυθμιστεί σωστά. Παρακαλούμε επαληθεύστε την ορθότητα των ρυθμίσεων του διακομιστή email στο παράθυρο ρυθμίσεων λογαριασμού και δοκιμάστε ξανά.
+
+# LOCALIZATION NOTE (pop3MoveFolderToTrash): Do not translate the word %S below.
+# "%S" is the the name of the folder.
+pop3MoveFolderToTrash=Θέλετε σίγουρα να διαγράψετε το φάκελο '%S';
+
+pop3DeleteFolderDialogTitle=Διαγραφή φακέλου
+
+pop3DeleteFolderButtonLabel=&Διαγραφή φακέλου
+
+pop3AuthInternalError=Σφάλμα εσωτερικής κατάστασης κατά την πιστοποίηση διακομιστή POP3. Αυτό είναι ένα εσωτερικό σφάλμα της εφαρμογής και θα πρέπει να αναφερθεί ως bug.
+
+pop3AuthChangeEncryptToPlainNoSSL=Αυτός ο διακομιστής POP3 δεν υποστηρίζει κρυπτογραφημένους κωδικούς. Αν μόλις ρυθμίσατε τον λογαριασμό, κάντε αλλαγή σε 'Κωδικός με μη ασφαλή μετάδοση' ως 'Μέθοδος πιστοποίησης' στις 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'. Αν λειτουργούσε παλιά και τώρα ξαφνικά δεν λειτουργεί, μάλλον κάποιος κλέβει τον κωδικό σας.
+
+pop3AuthChangeEncryptToPlainSSL=Αυτός ο διακομιστής POP3 δεν υποστηρίζει κρυπτογραφημένους κωδικούς. Αν μόλις ρυθμίσατε τον λογαριασμό, κάντε αλλαγή σε 'Κανονικός κωδικός' ως 'Μέθοδος πιστοποίησης' στις 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'. Αν λειτουργούσε παλιά και τώρα ξαφνικά δεν λειτουργεί, επικοινωνήστε με τον πάροχο σας.
+
+pop3AuthChangePlainToEncrypt=Αυτός ο διακομιστής POP3 δεν υποστηρίζει κωδικούς απλού κειμένου. Παρακαλούμε κάντε αλλαγή σε 'Κρυπτογραφημένος κωδικός' ως 'Μέθοδος πιστοποίησης' στις 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'.
+
+# Authentication server caps and pref don't match
+pop3AuthMechNotSupported=Ο διακομιστής δεν υποστηρίζει την επιλεγμένη μέθοδο πιστοποίησης. Παρακαλούμε, αλλάξτε την επιλογή 'Μέθοδος πιστοποίησης' στις 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'.
+
+# Status - Could not log in to GSSAPI, and it was the only method
+pop3GssapiFailure=Το Kerberos/GSSAPI ticket δεν έγινε δεκτό από τον διακομιστή POP. Παρακαλώ ελέγξτε την σύνδεση σας στο Kerberos/GSSAPI realm.
diff --git a/l10n-el/mail/chrome/messenger/mailEditorOverlay.dtd b/l10n-el/mail/chrome/messenger/mailEditorOverlay.dtd
new file mode 100644
index 0000000000..f224698f9c
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/mailEditorOverlay.dtd
@@ -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/. -->
+
+<!ENTITY sendPage.label "Αποστολή σελίδας…">
+<!ENTITY sendPage.accesskey "δ">
diff --git a/l10n-el/mail/chrome/messenger/mailOverlay.dtd b/l10n-el/mail/chrome/messenger/mailOverlay.dtd
new file mode 100644
index 0000000000..40268955ee
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/mailOverlay.dtd
@@ -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/. -->
+
+<!ENTITY newMessageCmd2.key "N">
+<!ENTITY newMessageCmd.key "M">
+<!ENTITY newMessageCmd.label "Μήνυμα">
+<!ENTITY newMessageCmd.accesskey "Μ">
+
+<!ENTITY newContactCmd.label "Επαφή ευρετηρίου…">
+<!ENTITY newContactCmd.accesskey "φ">
diff --git a/l10n-el/mail/chrome/messenger/mailViewList.dtd b/l10n-el/mail/chrome/messenger/mailViewList.dtd
new file mode 100644
index 0000000000..fa9f7b831c
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/mailViewList.dtd
@@ -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/. -->
+
+<!--LOCALIZATION NOTE msgViewPickerOverlay.dtd UI for showing various views on a folder -->
+
+<!ENTITY mailViewListTitle.label "Προσαρμογή προβολών μηνύματος">
+
diff --git a/l10n-el/mail/chrome/messenger/mailViewSetup.dtd b/l10n-el/mail/chrome/messenger/mailViewSetup.dtd
new file mode 100644
index 0000000000..85e94f8232
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/mailViewSetup.dtd
@@ -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/. -->
+
+<!--LOCALIZATION NOTE msgViewPickerOverlay.dtd UI for showing various views on a folder -->
+
+<!ENTITY mailViewSetupTitle.label "Ρύθμιση προβολής μηνύματος">
+<!ENTITY mailViewHeading.label "Όνομα προβολής μηνύματος:">
+<!ENTITY mailViewHeading.accesskey "ρ">
+<!ENTITY searchTermCaption.label "Οταν επιλεχθεί αυτή η προβολή, να εμφανίζονται μόνο τα μηνύματα που ταιριάζουν:">
+
diff --git a/l10n-el/mail/chrome/messenger/mailviews.properties b/l10n-el/mail/chrome/messenger/mailviews.properties
new file mode 100644
index 0000000000..dd8138b5be
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/mailviews.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/.
+
+#
+# Mail Views
+#
+
+mailViewPeopleIKnow=Γνωστοί μου
+mailViewRecentMail=Πρόσφατη αλληλογραφία
+mailViewLastFiveDays=Τελευταίες 5 ημέρες
+mailViewNotJunk=Επιθυμητή αλληλογραφία
+mailViewHasAttachments=Έχει συνημμένα
diff --git a/l10n-el/mail/chrome/messenger/markByDate.dtd b/l10n-el/mail/chrome/messenger/markByDate.dtd
new file mode 100644
index 0000000000..41710c1dd2
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/markByDate.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 messageMarkByDate.label "Επισήμανση μηνυμάτων ως αναγνωσμένων κατά ημερομηνία">
+<!ENTITY markByDateLower.label "Από:">
+<!ENTITY markByDateLower.accesskey "π">
+<!ENTITY markByDateUpper.label "Προς:">
+<!ENTITY markByDateUpper.accesskey "ρ">
diff --git a/l10n-el/mail/chrome/messenger/messenger.dtd b/l10n-el/mail/chrome/messenger/messenger.dtd
new file mode 100644
index 0000000000..4e38d87f41
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messenger.dtd
@@ -0,0 +1,971 @@
+<!-- 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 titledefault.label "&brandFullName;">
+<!ENTITY titleSeparator.label " - ">
+
+<!-- File Menu -->
+<!ENTITY newFolderCmd.label "Φάκελος…">
+<!ENTITY newFolderCmd.accesskey "Φ">
+<!ENTITY closeTabCmd2.label "Κλείσιμο καρτέλας">
+<!ENTITY closeTabCmd2.accesskey "Κ">
+<!ENTITY closeOtherTabsCmd2.label "Κλείσιμο των άλλων καρτελών">
+<!ENTITY closeOtherTabsCmd2.accesskey "λ">
+<!ENTITY recentlyClosedTabsCmd.label "Πρόσφατα κλεισμένες καρτέλες">
+<!ENTITY recentlyClosedTabsCmd.accesskey "Π">
+
+<!ENTITY undoCloseTabCmd.commandkey "T">
+<!-- LOCALIZATION NOTE (moveToNewWindow.label):
+ Menu option to cause the current tab to be migrated to a new Thunderbird
+ window.
+ -->
+<!ENTITY moveToNewWindow.label "Μετακίνηση σε νέο παράθυρο">
+<!ENTITY moveToNewWindow.accesskey "θ">
+<!ENTITY newVirtualFolderCmd.label "Αποθηκευμένη αναζήτηση…">
+<!ENTITY newVirtualFolderCmd.accesskey "θ">
+<!ENTITY newOtherAccountsCmd.label "Άλλοι λογαριασμοί…">
+<!ENTITY newOtherAccountsCmd.accesskey "λ">
+<!ENTITY newCreateEmailAccountCmd.label "Απόκτηση νέου λογαριασμού email…">
+<!ENTITY newCreateEmailAccountCmd.accesskey "γ">
+<!ENTITY newExistingEmailAccountCmd.label "Υπάρχων λογαριασμός email…">
+<!ENTITY newExistingEmailAccountCmd.accesskey "Υ">
+<!ENTITY newIMAccountCmd.label "Λογαριασμός συνομιλίας…">
+<!ENTITY newIMAccountCmd.accesskey "σ">
+<!ENTITY newFeedAccountCmd.label "Λογαριασμός ροής…">
+<!ENTITY newFeedAccountCmd.accesskey "ρ">
+<!ENTITY newIMContactCmd.label "Επαφή συνομιλίας…">
+<!ENTITY newIMContactCmd.accesskey "σ">
+<!ENTITY newMessageCmd2.key "N">
+<!ENTITY newMessageCmd.key "M">
+<!ENTITY newMessageCmd.label "Μήνυμα">
+<!ENTITY newMessageCmd.accesskey "μ">
+<!ENTITY newContactCmd.label "Επαφή ευρετηρίου…">
+<!ENTITY newContactCmd.accesskey "Ε">
+<!ENTITY openMenuCmd.label "Άνοιγμα">
+<!ENTITY openMenuCmd.accesskey "Ά">
+<!ENTITY openMessageFileCmd.label "Αποθηκευμένο μήνυμα…">
+<!ENTITY openMessageFileCmd.accesskey "ν">
+<!ENTITY saveAsMenu.label "Αποθήκευση ως">
+<!ENTITY saveAsMenu.accesskey "θ">
+<!ENTITY saveAsFileCmd.label "Αρχείο">
+<!ENTITY saveAsFileCmd.accesskey "χ">
+<!ENTITY saveAsFileCmd.key "s">
+<!ENTITY saveAsTemplateCmd.label "Πρότυπο">
+<!ENTITY saveAsTemplateCmd.accesskey "Π">
+<!ENTITY getNewMsgForCmd.label "Λήψη νέων μηνυμάτων για">
+<!ENTITY getNewMsgForCmd.accesskey "ψ">
+<!ENTITY getAllNewMsgCmdPopupMenu.label "Όλους τους λογαριασμούς">
+<!ENTITY getAllNewMsgCmdPopupMenu.accesskey "λ">
+<!ENTITY getNewMsgCurrentAccountCmdPopupMenu.label "Τον τρέχοντα λογαριασμό">
+<!ENTITY getNewMsgCurrentAccountCmdPopupMenu.accesskey "Τ">
+<!ENTITY getNextNMsgCmd2.label "Λήψη νέων μηνυμάτων ειδήσεων">
+<!ENTITY getNextNMsgCmd2.accesskey "ω">
+<!ENTITY sendUnsentCmd.label "Αποστολή μη απεσταλμένων μηνυμάτων">
+<!ENTITY sendUnsentCmd.accesskey "π">
+<!ENTITY subscribeCmd.label "Συνδρομή…">
+<!ENTITY subscribeCmd.accesskey "δ">
+<!ENTITY deleteFolder.label "Διαγραφή φακέλου">
+<!ENTITY deleteFolder.accesskey "ι">
+<!ENTITY renameFolder.label "Μετονομασία φακέλου…">
+<!ENTITY renameFolder.accesskey "Μ">
+<!ENTITY renameFolder.key "VK_F2">
+<!ENTITY compactFolders.label "Σύμπτυξη φακέλων">
+<!ENTITY compactFolders.accesskey "φ">
+<!ENTITY emptyTrashCmd.label "Άδειασμα απορριμμάτων">
+<!ENTITY emptyTrashCmd.accesskey "δ">
+<!ENTITY offlineMenu.label "Εκτός σύνδεσης">
+<!ENTITY offlineMenu.accesskey "κ">
+<!ENTITY offlineGoOfflineCmd.label "Εργασία εκτός σύνδεσης">
+<!ENTITY offlineGoOfflineCmd.accesskey "ρ">
+<!ENTITY synchronizeOfflineCmd.label "Λήψη/Συγχρονισμός τώρα…">
+<!ENTITY synchronizeOfflineCmd.accesskey "σ">
+<!ENTITY settingsOfflineCmd2.label "Ρυθμίσεις εκτός σύνδεσης">
+<!ENTITY settingsOfflineCmd2.accesskey "θ">
+<!ENTITY downloadSelectedCmd.label "Λήψη επιλεγμένων μηνυμάτων">
+<!ENTITY downloadSelectedCmd.accesskey "λ">
+<!ENTITY downloadStarredCmd.label "Λήψη μηνυμάτων με αστέρι">
+<!ENTITY downloadStarredCmd.accesskey "α">
+<!ENTITY printCmd.label "Εκτύπωση…">
+<!ENTITY printCmd.accesskey "Ε">
+<!ENTITY printCmd.key "p">
+<!ENTITY printPreviewCmd.label "Προεπισκόπηση εκτύπωσης">
+<!ENTITY printPreviewCmd.accesskey "π">
+<!ENTITY printSetupCmd.label "Διαμόρφωση σελίδας…">
+<!ENTITY printSetupCmd.accesskey "μ">
+
+<!-- Edit Menu -->
+<!ENTITY deleteMsgCmd.label "Διαγραφή μηνύματος">
+<!ENTITY deleteMsgCmd.accesskey "Δ">
+<!ENTITY undeleteMsgCmd.label "Αναίρεση διαγραφής μηνύματος">
+<!ENTITY undeleteMsgCmd.accesskey "ν">
+<!ENTITY deleteMsgsCmd.label "Διαγραφή επιλεγμένων μηνυμάτων">
+<!ENTITY deleteMsgsCmd.accesskey "Δ">
+<!ENTITY undeleteMsgsCmd.label "Αναίρεση διαγραφής επιλεγμένων μηνυμάτων">
+<!ENTITY undeleteMsgsCmd.accesskey "ν">
+<!ENTITY deleteFolderCmd.label "Διαγραφή φακέλου">
+<!ENTITY deleteFolderCmd.accesskey "Δ">
+<!ENTITY unsubscribeNewsgroupCmd.label "Κατάργηση εγγραφής">
+<!ENTITY unsubscribeNewsgroupCmd.accesskey "ρ">
+<!ENTITY selectMenu.label "Επιλογή">
+<!ENTITY selectMenu.accesskey "Ε">
+<!ENTITY all.label "Όλα">
+<!ENTITY all.accesskey "λ">
+<!ENTITY selectThreadCmd.label "Νήμα">
+<!ENTITY selectThreadCmd.accesskey "Ν">
+<!ENTITY selectThreadCmd.key "a">
+<!ENTITY selectFlaggedCmd.label "Μηνύματα με αστέρι">
+<!ENTITY selectFlaggedCmd.accesskey "σ">
+<!ENTITY menuFavoriteFolder.label "Αγαπημένος φάκελος">
+<!ENTITY menuFavoriteFolder.accesskey "γ">
+<!ENTITY folderPropsCmd2.label "Ιδιότητες">
+<!ENTITY folderPropsFolderCmd2.label "Ιδιότητες φακέλου">
+<!ENTITY folderPropsNewsgroupCmd2.label "Ιδιότητες ομάδας ειδήσεων">
+<!ENTITY folderPropsCmd.accesskey "δ">
+<!ENTITY undoDeleteMsgCmd.label "Αναίρεση διαγραφής μηνύματος">
+<!ENTITY redoDeleteMsgCmd.label "Επανάληψη διαγραφής μηνύματος">
+<!ENTITY undoMoveMsgCmd.label "Αναίρεση μετακίνησης μηνύματος">
+<!ENTITY redoMoveMsgCmd.label "Επανάληψη μετακίνησης μηνύματος">
+<!ENTITY undoCopyMsgCmd.label "Αναίρεση αντιγραφής μηνύματος">
+<!ENTITY redoCopyMsgCmd.label "Επανάληψη αντιγραφής μηνύματος">
+<!ENTITY undoMarkAllCmd.label "Αναίρεση επισήμανσης όλων ως αναγνωσμένων">
+<!ENTITY redoMarkAllCmd.label "Επανάληψη επισήμανσης όλων ως αναγνωσμένων">
+<!ENTITY undoDefaultCmd.label "Αναίρεση">
+<!ENTITY undoDefaultCmd.accesskey "ρ">
+<!ENTITY redoDefaultCmd.label "Επανάληψη">
+<!ENTITY redoDefaultCmd.accesskey "Ε">
+
+<!-- View Menu -->
+<!ENTITY menubarCmd.label "Γραμμή μενού">
+<!ENTITY menubarCmd.accesskey "Γ">
+<!ENTITY showMessengerToolbarCmd.label "Γραμμή εργαλείων αλληλογραφίας">
+<!ENTITY showMessengerToolbarCmd.accesskey "ο">
+<!ENTITY customizeToolbar.label "Προσαρμογή…">
+<!ENTITY customizeToolbar.accesskey "Π">
+
+<!ENTITY messagePaneLayoutStyle.label "Διάταξη">
+<!ENTITY messagePaneLayoutStyle.accesskey "Δ">
+<!ENTITY messagePaneClassic.label "Κλασσική προβολή">
+<!ENTITY messagePaneClassic.accesskey "Κ">
+<!ENTITY messagePaneWide.label "Ευρεία προβολή">
+<!ENTITY messagePaneWide.accesskey "Ε">
+<!ENTITY messagePaneVertical.label "Κάθετη προβολή">
+<!ENTITY messagePaneVertical.accesskey "θ">
+<!ENTITY showFolderPaneCmd.label "Προβολή φακέλων">
+<!ENTITY showFolderPaneCmd.accesskey "φ">
+<!ENTITY showFolderPaneColsCmd.label "Στήλες προβολής φακέλων">
+<!ENTITY showFolderPaneColsCmd.accesskey "Φ">
+<!ENTITY showMessageCmd.label "Περιοχή μηνύματος">
+<!ENTITY showMessageCmd.accesskey "μ">
+
+<!ENTITY folderView.label "Φάκελοι">
+<!ENTITY folderView.accesskey "Φ">
+<!ENTITY unifiedFolders.label "Ενοποιημένοι">
+<!ENTITY unifiedFolders.accesskey "ν">
+<!ENTITY allFolders.label "Όλοι">
+<!ENTITY allFolders.accesskey "λ">
+<!ENTITY unreadFolders.label "Μη αναγνωσμένοι">
+<!ENTITY unreadFolders.accesskey "Μ">
+<!ENTITY favoriteFolders.label "Αγαπημένοι">
+<!ENTITY favoriteFolders.accesskey "γ">
+<!ENTITY recentFolders.label "Πρόσφατοι">
+<!ENTITY recentFolders.accesskey "ρ">
+<!ENTITY compactVersion.label "Συμπτυγμένη όψη">
+<!ENTITY compactVersion.accesskey "Σ">
+<!ENTITY folderPaneBar.label "Γραμμή εργαλείων προβολής φακέλων">
+<!ENTITY folderPaneBar.accesskey "φ">
+
+<!-- Sort Menu -->
+<!ENTITY sortMenu.label "Ταξινόμηση κατά">
+<!ENTITY sortMenu.accesskey "Τ">
+<!ENTITY sortByDateCmd.label "Ημερομηνία">
+<!ENTITY sortByDateCmd.accesskey "μ">
+<!ENTITY sortByReceivedCmd.label "Ληφθέντα">
+<!ENTITY sortByReceivedCmd.accesskey "θ">
+<!ENTITY sortByStarCmd.label "Αστέρι">
+<!ENTITY sortByStarCmd.accesskey "σ">
+<!ENTITY sortByAttachmentsCmd.label "Συνημμένα">
+<!ENTITY sortByAttachmentsCmd.accesskey "υ">
+<!ENTITY sortByPriorityCmd.label "Προτεραιότητα">
+<!ENTITY sortByPriorityCmd.accesskey "Π">
+<!ENTITY sortBySizeCmd.label "Μέγεθος">
+<!ENTITY sortBySizeCmd.accesskey "θ">
+<!ENTITY sortByStatusCmd.label "Κατάσταση">
+<!ENTITY sortByStatusCmd.accesskey "τ">
+<!ENTITY sortByTagsCmd.label "Ετικέτες">
+<!ENTITY sortByTagsCmd.accesskey "κ">
+<!ENTITY sortByJunkStatusCmd.label "Κατάσταση ανεπιθύμητων">
+<!ENTITY sortByJunkStatusCmd.accesskey "θ">
+<!ENTITY sortBySubjectCmd.label "Θέμα">
+<!ENTITY sortBySubjectCmd.accesskey "μ">
+<!ENTITY sortByFromCmd.label "Από">
+<!ENTITY sortByFromCmd.accesskey "π">
+<!ENTITY sortByRecipientCmd.label "Παραλήπτη">
+<!ENTITY sortByRecipientCmd.accesskey "ρ">
+<!ENTITY sortByCorrespondentCmd.label "Ανταποκριτές">
+<!ENTITY sortByCorrespondentCmd.accesskey "ν">
+<!ENTITY sortByUnreadCmd.label "Αναγνωσμένα">
+<!ENTITY sortByUnreadCmd.accesskey "γ">
+<!ENTITY sortByOrderReceivedCmd.label "Κατά σειρά παραλαβής">
+<!ENTITY sortByOrderReceivedCmd.accesskey "ε">
+<!ENTITY sortAscending.label "Αύξουσα">
+<!ENTITY sortAscending.accesskey "ξ">
+<!ENTITY sortDescending.label "Φθίνουσα">
+<!ENTITY sortDescending.accesskey "θ">
+<!ENTITY sortThreaded.label "Σε νήμα">
+<!ENTITY sortThreaded.accesskey "Σ">
+<!ENTITY sortUnthreaded.label "Εκτός νήματος">
+<!ENTITY sortUnthreaded.accesskey "κ">
+<!ENTITY groupBySort.label "Ομαδοποιημένα κατά ταξινόμηση">
+<!ENTITY groupBySort.accesskey "δ">
+<!ENTITY msgsMenu.label "Μηνύματα">
+<!ENTITY msgsMenu.accesskey "ν">
+<!ENTITY threads.label "Νήματα">
+<!ENTITY threads.accesskey "μ">
+<!ENTITY allMsgsCmd.label "Όλα">
+<!ENTITY allMsgsCmd.accesskey "α">
+<!ENTITY expandAllThreadsCmd.label "Ανάπτυξη όλων των νημάτων">
+<!ENTITY expandAllThreadsCmd.accesskey "π">
+<!ENTITY expandAllThreadsCmd.key "*">
+<!ENTITY collapseAllThreadsCmd.label "Σύμπτυξη όλων των νημάτων">
+<!ENTITY collapseAllThreadsCmd.accesskey "μ">
+<!ENTITY collapseAllThreadsCmd.key "\">
+<!ENTITY unreadMsgsCmd.label "Μη αναγνωσμένα">
+<!ENTITY unreadMsgsCmd.accesskey "Μ">
+<!ENTITY threadsWithUnreadCmd.label "Νήματα με μη αναγνωσμένα">
+<!ENTITY threadsWithUnreadCmd.accesskey "Ν">
+<!ENTITY watchedThreadsWithUnreadCmd.label "Παρακολουθούμενα νήματα με μη αναγνωσμένα">
+<!ENTITY watchedThreadsWithUnreadCmd.accesskey "Π">
+<!ENTITY ignoredThreadsCmd.label "Αγνοημένα νήματα">
+<!ENTITY ignoredThreadsCmd.accesskey "α">
+
+<!ENTITY headersMenu.label "Κεφαλίδες">
+<!ENTITY headersMenu.accesskey "φ">
+<!ENTITY headersAllCmd.label "Όλες">
+<!ENTITY headersAllCmd.accesskey "λ">
+<!ENTITY headersNormalCmd.label "Κανονικές">
+<!ENTITY headersNormalCmd.accesskey "ν">
+<!ENTITY bodyMenu.label "Κυρίως κείμενο μηνύματος ως">
+<!ENTITY bodyMenu.accesskey "ρ">
+<!ENTITY bodyAllowHTML.label "Πρωτότυπο HTML">
+<!ENTITY bodyAllowHTML.accesskey "H">
+<!ENTITY bodySanitized.label "Απλό HTML">
+<!ENTITY bodySanitized.accesskey "L">
+<!ENTITY bodyAsPlaintext.label "Απλό κείμενο">
+<!ENTITY bodyAsPlaintext.accesskey "π">
+<!ENTITY bodyAllParts.label "Όλα τα μέρη του κυρίως κειμένου">
+<!ENTITY bodyAllParts.accesskey "λ">
+
+<!ENTITY bodyMenuFeed.label "Σώμα μηνύματος αρχείου ροής ως">
+<!ENTITY bodyMenuFeed.accesskey "η">
+<!ENTITY viewFeedWebPage.label "Ιστοσελίδα">
+<!ENTITY viewFeedWebPage.accesskey "σ">
+<!ENTITY viewFeedSummary.label "Περίληψη">
+<!ENTITY viewFeedSummary.accesskey "ψ">
+<!ENTITY viewFeedSummaryFeedPropsPref.label "Προεπιλεγμένη μορφή">
+<!ENTITY viewFeedSummaryFeedPropsPref.accesskey "μ">
+
+<!ENTITY viewAttachmentsInlineCmd.label "Εμφάνιση συνημμένων στο κυρίως κείμενο">
+<!ENTITY viewAttachmentsInlineCmd.accesskey "φ">
+
+<!ENTITY pageSourceCmd.label "Κώδικας μηνύματος">
+<!ENTITY pageSourceCmd.accesskey "κ">
+<!ENTITY pageSourceCmd.key "u">
+<!ENTITY getNewMessagesCmd.key "y">
+<!ENTITY getAllNewMessagesCmd.key "Y">
+
+<!-- Search Menu -->
+<!ENTITY findMenu.label "Εύρεση">
+<!ENTITY findMenu.accesskey "Ε">
+<!ENTITY findCmd.label "Εύρεση στο μήνυμα…">
+<!ENTITY findCmd.accesskey "σ">
+<!ENTITY findCmd.key "f">
+<!ENTITY findAgainCmd.label "Εύρεση ξανά">
+<!ENTITY findAgainCmd.accesskey "ξ">
+<!ENTITY findAgainCmd.key "g">
+<!ENTITY findAgainCmd.key2 "VK_F3">
+<!ENTITY findPrevCmd.key "g">
+<!ENTITY findPrevCmd.key2 "VK_F3">
+<!ENTITY searchMailCmd.label "Αναζήτηση μηνυμάτων…">
+<!ENTITY searchMailCmd.accesskey "μ">
+<!ENTITY searchMailCmd.key "f">
+<!ENTITY glodaSearchCmd.label "Καθολική αναζήτηση…">
+<!ENTITY glodaSearchCmd.accesskey "Κ">
+<!ENTITY searchAddressesCmd.label "Αναζήτηση διευθύνσεων…">
+<!ENTITY searchAddressesCmd.accesskey "ζ">
+
+<!-- Go Menu -->
+<!ENTITY goMenu.label "Μετάβαση">
+<!ENTITY goMenu.accesskey "σ">
+<!ENTITY nextMenu.label "Επόμενο">
+<!ENTITY nextMenu.accesskey "ν">
+<!ENTITY nextMsgCmd.label "Μήνυμα">
+<!ENTITY nextMsgCmd.accesskey "Μ">
+<!ENTITY nextMsgCmd.key "f">
+<!ENTITY nextUnreadMsgCmd.label "Μη αναγνωσμένο μήνυμα">
+<!ENTITY nextUnreadMsgCmd.accesskey "ν">
+<!ENTITY nextUnreadMsgCmd.key "n">
+<!ENTITY nextStarredMsgCmd.label "Μήνυμα με αστέρι">
+<!ENTITY nextStarredMsgCmd.accesskey "σ">
+<!ENTITY nextUnreadThread.label "Μη αναγνωσμένο νήμα">
+<!ENTITY nextUnreadThread.accesskey "γ">
+<!ENTITY nextUnreadThread.key "t">
+<!ENTITY prevMenu.label "Προηγούμενο">
+<!ENTITY prevMenu.accesskey "Π">
+<!ENTITY prevMsgCmd.label "Μήνυμα">
+<!ENTITY prevMsgCmd.accesskey "Μ">
+<!ENTITY prevMsgCmd.key "b">
+<!ENTITY prevUnreadMsgCmd.label "Μη αναγνωσμένο μήνυμα">
+<!ENTITY prevUnreadMsgCmd.accesskey "η">
+<!ENTITY prevUnreadMsgCmd.key "p">
+<!ENTITY goForwardCmd.label "Μπροστά">
+<!ENTITY goForwardCmd.accesskey "Μ">
+<!ENTITY goForwardCmd.commandKey "]">
+<!ENTITY goBackCmd.label "Πίσω">
+<!ENTITY goBackCmd.accesskey "Π">
+<!ENTITY goBackCmd.commandKey "[">
+<!ENTITY goChatCmd.label "Συνομιλία">
+<!ENTITY goChatCmd.accesskey "σ">
+<!ENTITY goChatCmd2.key "H">
+<!ENTITY prevStarredMsgCmd.label "Μήνυμα με αστέρι">
+<!ENTITY prevStarredMsgCmd.accesskey "σ">
+<!ENTITY folderMenu.label "Φάκελος">
+<!ENTITY folderMenu.accesskey "κ">
+<!ENTITY goRecentlyClosedTabs.label "Πρόσφατα κλεισμένες καρτέλες">
+<!ENTITY goRecentlyClosedTabs.accesskey "ι">
+<!ENTITY startPageCmd.label "Αρχική σελίδα αλληλογραφίας">
+<!ENTITY startPageCmd.accesskey "χ">
+
+<!-- Message Menu -->
+<!ENTITY msgMenu.label "Μήνυμα">
+<!ENTITY msgMenu.accesskey "Μ">
+<!ENTITY newMsgCmd.label "Νέο μήνυμα">
+<!ENTITY newMsgCmd.accesskey "Ν">
+<!ENTITY newNewMsgCmd.label "Μήνυμα">
+<!ENTITY newNewMsgCmd.accesskey "Μ">
+<!ENTITY archiveMsgCmd.label "Αρχειοθέτηση">
+<!ENTITY archiveMsgCmd.accesskey "χ">
+<!ENTITY archiveMsgCmd.key "a">
+<!ENTITY cancelNewsMsgCmd.label "Ακύρωση μηνύματος">
+<!ENTITY cancelNewsMsgCmd.accesskey "κ">
+<!ENTITY replyMsgCmd.label "Απάντηση">
+<!ENTITY replyMsgCmd.accesskey "π">
+<!ENTITY replyMsgCmd.key "r">
+<!ENTITY replySenderCmd.label "Απάντηση μόνο στον αποστολέα">
+<!ENTITY replySenderCmd.accesskey "μ">
+<!ENTITY replyNewsgroupCmd2.label "Απάντηση στην ομάδα συζήτησης">
+<!ENTITY replyNewsgroupCmd2.accesskey "ζ">
+<!ENTITY replyToAllMsgCmd.label "Απάντηση σε όλους">
+<!ENTITY replyToAllMsgCmd.accesskey "λ">
+<!ENTITY replyToAllMsgCmd.key "r">
+<!ENTITY replyToListMsgCmd.label "Απάντηση στη λίστα">
+<!ENTITY replyToListMsgCmd.accesskey "λ">
+<!ENTITY replyToListMsgCmd.key "l">
+<!ENTITY forwardMsgCmd.label "Προώθηση">
+<!ENTITY forwardMsgCmd.accesskey "ο">
+<!ENTITY forwardMsgCmd.key "l">
+<!ENTITY forwardAsMenu.label "Προώθηση ως">
+<!ENTITY forwardAsMenu.accesskey "θ">
+<!ENTITY forwardAsInline.label "Εντός μηνύματος">
+<!ENTITY forwardAsInline.accesskey "τ">
+<!ENTITY forwardAsAttachmentCmd.label "Συνημμένο">
+<!ENTITY forwardAsAttachmentCmd.accesskey "μ">
+<!ENTITY editAsNewMsgCmd.label "Επεξεργασία ως νέο μήνυμα">
+<!ENTITY editAsNewMsgCmd.accesskey "ν">
+<!ENTITY editAsNewMsgCmd.key "e">
+<!ENTITY editDraftMsgCmd.label "Επεξεργασία πρόχειρου μηνύματος">
+<!ENTITY editDraftMsgCmd.accesskey "χ">
+<!ENTITY editTemplateMsgCmd.label "Επεξεργασία πρότυπου">
+<!ENTITY editTemplateMsgCmd.accesskey "Π">
+<!ENTITY newMsgFromTemplateCmd.label "Νέο μήνυμα από πρότυπο">
+<!ENTITY newMsgFromTemplateCmd.keycode "VK_RETURN"><!-- do not change "VK_RETURN" -->
+<!ENTITY createFilter.label "Δημιουργία φίλτρου από μήνυμα…">
+<!ENTITY createFilter.accesskey "α">
+<!ENTITY moveMsgToMenu.label "Μετακίνηση σε">
+<!ENTITY moveMsgToMenu.accesskey "Μ">
+<!ENTITY moveCopyMsgRecentMenu.label "Πρόσφατα">
+<!ENTITY moveCopyMsgRecentMenu.accesskey "Π">
+<!ENTITY copyMessageLocation.label "Αντιγραφή τοποθεσίας μηνύματος">
+<!ENTITY copyMessageLocation.accesskey "τ">
+<!ENTITY copyMsgToMenu.label "Αντιγραφή σε">
+<!ENTITY copyMsgToMenu.accesskey "γ">
+<!ENTITY moveToFolderAgain.label "Μετακίνηση ξανά">
+<!ENTITY moveToFolderAgain.accesskey "ξ">
+<!ENTITY moveToFolderAgainCmd.key "m">
+<!ENTITY killThreadMenu.label "Παράβλεψη νήματος">
+<!ENTITY killThreadMenu.accesskey "β">
+<!ENTITY killThreadMenu.key "k">
+<!ENTITY killSubthreadMenu.label "Παράβλεψη υπονήματος">
+<!ENTITY killSubthreadMenu.accesskey "π">
+<!ENTITY killSubthreadMenu.key "k">
+<!ENTITY watchThreadMenu.label "Παρακολούθηση νήματος">
+<!ENTITY watchThreadMenu.accesskey "θ">
+<!ENTITY watchThreadMenu.key "w">
+<!ENTITY tagMenu.label "Ετικέτα">
+<!ENTITY tagMenu.accesskey "κ">
+<!ENTITY tagCmd0.key "0">
+<!ENTITY tagCmd1.key "1">
+<!ENTITY tagCmd2.key "2">
+<!ENTITY tagCmd3.key "3">
+<!ENTITY tagCmd4.key "4">
+<!ENTITY tagCmd5.key "5">
+<!ENTITY tagCmd6.key "6">
+<!ENTITY tagCmd7.key "7">
+<!ENTITY tagCmd8.key "8">
+<!ENTITY tagCmd9.key "9">
+<!ENTITY markMenu.label "Επισήμανση">
+<!ENTITY markMenu.accesskey "μ">
+<!ENTITY toggleReadCmd.key "m">
+<!ENTITY markAsReadCmd.label "Ως αναγνωσμένο">
+<!ENTITY markAsReadCmd.accesskey "σ">
+<!ENTITY markAsUnreadCmd.label "Ως μη αναγνωσμένο">
+<!ENTITY markAsUnreadCmd.accesskey "μ">
+<!ENTITY markThreadAsReadCmd.label "Νήμα ως αναγνωσμένο">
+<!ENTITY markThreadAsReadCmd.accesskey "Ν">
+<!ENTITY markThreadAsReadCmd.key "r">
+<!ENTITY markReadByDateCmd.label "Ως αναγνωσμένα κατά ημερομηνία…">
+<!ENTITY markReadByDateCmd.accesskey "μ">
+<!ENTITY markReadByDateCmd.key "c">
+<!ENTITY markAllReadCmd.label "Όλων ως αναγνωσμένων">
+<!ENTITY markAllReadCmd.accesskey "γ">
+<!ENTITY markAllReadCmd.key "c">
+<!ENTITY markStarredCmd.label "Προσθήκη αστεριού">
+<!ENTITY markStarredCmd.accesskey "σ">
+<!ENTITY markStarredCmd.key "S">
+<!ENTITY markAsJunkCmd.label "Ως ανεπιθύμητο">
+<!ENTITY markAsJunkCmd.accesskey "ν">
+<!ENTITY markAsJunkCmd.key "j">
+<!ENTITY markAsNotJunkCmd.label "Ως επιθυμητή αλληλογραφία">
+<!ENTITY markAsNotJunkCmd.accesskey "θ">
+<!ENTITY markAsNotJunkCmd.key "j">
+<!ENTITY recalculateJunkScoreCmd.label "Εκτέλεση ελέγχων ανεπιθύμητης αλληλογραφίας">
+<!ENTITY recalculateJunkScoreCmd.accesskey "κ">
+<!ENTITY openMessageWindowCmd.label "Άνοιγμα μηνύματος">
+<!ENTITY openMessageWindowCmd.accesskey "ν">
+<!ENTITY openMessageWindowCmd.key "o">
+<!ENTITY openInConversationCmd.label "Άνοιγμα στις συζητήσεις">
+<!ENTITY openInConversationCmd.accesskey "ζ">
+<!ENTITY openInConversationCmd.key "o">
+<!ENTITY openAttachmentListCmd.label "Συνημμένα">
+<!ENTITY openAttachmentListCmd.accesskey "Σ">
+<!ENTITY openFeedMessage1.label "Άνοιγμα μηνύματος ροής">
+<!ENTITY openFeedMessage1.accesskey "ν">
+<!ENTITY openFeedWebPage.label "Άνοιγμα ως ιστοσελίδα">
+<!ENTITY openFeedWebPage.accesskey "σ">
+<!ENTITY openFeedSummary.label "Άνοιγμα ως περίληψη">
+<!ENTITY openFeedSummary.accesskey "ψ">
+<!ENTITY openFeedWebPageInMP.label "Εναλλαγή ιστοσελίδας και περίληψης στα μηνύματα">
+<!ENTITY openFeedWebPageInMP.accesskey "γ">
+
+<!-- Windows Menu -->
+<!ENTITY windowMenu.label "Παράθυρο">
+
+<!-- Tools Menu -->
+<!ENTITY tasksMenu.label "Εργαλεία">
+<!ENTITY tasksMenu.accesskey "γ">
+<!ENTITY messengerCmd.label "Αλληλογραφία &amp; ομάδες συζήτησης">
+<!ENTITY messengerCmd.accesskey "Α">
+<!ENTITY addressBookCmd.label "Ευρετήριο">
+<!ENTITY addressBookCmd.accesskey "ρ">
+<!ENTITY addressBookCmd.key "B">
+<!ENTITY addons.label "Πρόσθετα">
+<!ENTITY addons.accesskey "θ">
+<!ENTITY addonPrefs.label "Επιλογές προσθέτου">
+<!ENTITY addonPrefs.accesskey "Ε">
+<!ENTITY addonPrefsUnix.label "Προτιμήσεις προσθέτου">
+<!ENTITY addonPrefsUnix.accesskey "Π">
+<!ENTITY addonNoPrefs.label "Δεν βρέθηκαν ρυθμίσεις προσθέτου.">
+<!ENTITY activitymanager.label "Διαχείριση δραστηριότητας">
+<!ENTITY activitymanager.accesskey "χ">
+<!ENTITY imAccountsStatus.label "Κατάσταση συνομιλίας">
+<!ENTITY imAccountsStatus.accesskey "Κ">
+<!ENTITY imStatus.available "Διαθέσιμος">
+<!ENTITY imStatus.unavailable "Μη διαθέσιμος">
+<!ENTITY imStatus.offline "Εκτός σύνδεσης">
+<!ENTITY imStatus.showAccounts "Εμφάνιση λογαριασμών…">
+<!ENTITY joinChatCmd.label "Συμμετοχή στη συνομιλία…">
+<!ENTITY joinChatCmd.accesskey "σ">
+<!ENTITY savedFiles.label "Αποθηκευμένα αρχεία">
+<!ENTITY savedFiles.accesskey "θ">
+<!ENTITY savedFiles.key "j">
+<!ENTITY filtersCmd2.label "Φίλτρα μηνυμάτων">
+<!ENTITY filtersCmd2.accesskey "Φ">
+<!ENTITY filtersApply.label "Εκτέλεση φίλτρων στο φάκελο">
+<!ENTITY filtersApply.accesskey "κ">
+<!ENTITY filtersApplyToSelection.label "Εκτέλεση φίλτρων στα επιλεγμένα μηνύματα">
+<!ENTITY filtersApplyToSelection.accesskey "κ">
+<!ENTITY filtersApplyToMessage.label "Εκτέλεση φίλτρων στο μήνυμα">
+<!ENTITY filtersApplyToMessage.accesskey "σ">
+<!ENTITY runJunkControls.label "Εκτέλεση ελέγχων ανεπιθύμητης αλληλογραφίας στα επιλεγμένα μηνύματα">
+<!ENTITY runJunkControls.accesskey "κ">
+<!ENTITY deleteJunk.label "Διαγραφή σημειωμένου μηνύματος ως ανεπιθύμητο στο φάκελο">
+<!ENTITY deleteJunk.accesskey "ι">
+<!ENTITY importCmd.label "Εισαγωγή…">
+<!ENTITY importCmd.accesskey "γ">
+<!ENTITY clearRecentHistory.label "Εκκαθάριση πρόσφατου ιστορικού…">
+<!ENTITY clearRecentHistory.accesskey "Ι">
+<!ENTITY accountManagerCmd2.label "Ρυθμίσεις λογαριασμού">
+<!ENTITY accountManagerCmd2.accesskey "θ">
+<!-- LOCALIZATION NOTE (accountManagerCmdUnix.accesskey):
+ Belongs to accountManagerCmd.label, which is placed under the Edit menu
+ on Unix systems
+ -->
+<!ENTITY accountManagerCmdUnix2.accesskey "θ">
+
+<!-- Developer Tools Submenu -->
+<!ENTITY devtoolsMenu.label "Εργαλεία προγραμματιστή">
+<!ENTITY devtoolsMenu.accesskey "ρ">
+<!ENTITY devToolboxCmd.label "Γραμμή εργαλείων προγραμματιστή">
+<!ENTITY devToolboxCmd.accesskey "λ">
+<!ENTITY devToolboxCmd.commandkey "i">
+<!ENTITY debugAddonsCmd.label "Εντοπισμός σφαλμάτων προσθέτων">
+<!ENTITY debugAddonsCmd.accesskey "Α">
+<!ENTITY tabsDebugCmd.label "Εντοπισμός σφαλμάτων πλαισίου περιεχομένου">
+<!ENTITY tabsDebugCmd.accesskey "Π">
+<!ENTITY errorConsoleCmd.label "Κονσόλα σφαλμάτων">
+<!ENTITY errorConsoleCmd.accesskey "ν">
+<!ENTITY errorConsoleCmd.commandkey "j">
+
+<!-- Mail Toolbar -->
+<!ENTITY getMsgButton1.label "Λήψη μηνυμάτων">
+<!ENTITY newMsgButton.label "Σύνταξη">
+<!ENTITY replyButton.label "Απάντηση">
+<!ENTITY replyAllButton.label "Απάντηση σε όλους">
+<!ENTITY replyListButton.label "Απάντηση στη λίστα">
+<!ENTITY forwardButton.label "Προώθηση">
+<!ENTITY fileButton.label "Αρχείο">
+<!ENTITY archiveButton.label "Αρχειοθέτηση">
+<!ENTITY openConversationButton.label "Συζήτηση">
+<!ENTITY nextButton.label "Επόμενο">
+<!ENTITY nextButtonToolbarItem.label "Επόμενο μη αναγνωσμένο">
+<!ENTITY nextMsgButton.label "Επόμενο">
+<!ENTITY previousButton.label "Προηγούμενο">
+<!ENTITY previousButtonToolbarItem.label "Προηγούμενο μη αναγνωσμένο">
+<!ENTITY previousMsgButton.label "Προηγούμενο">
+<!ENTITY backButton1.label "Πίσω">
+<!ENTITY goForwardButton1.label "Μπροστά">
+<!ENTITY deleteItem.title "Διαγραφή">
+<!ENTITY deleteButton.label "Διαγραφή">
+<!ENTITY undeleteButton.label "Ακύρωση διαγραφής">
+<!ENTITY markButton.label "Επισήμανση">
+<!ENTITY printButton.label "Εκτύπωση">
+<!ENTITY stopButton.label "Διακοπή">
+<!ENTITY throbberItem.title "Επισήμανση ενέργειας">
+<!ENTITY junkItem.title "Ανεπιθύμητα">
+<!ENTITY junkButton.label "Ανεπιθύμητο">
+<!ENTITY notJunkButton.label "Επιθυμητά">
+<!ENTITY addressBookButton.label "Ευρετήριο">
+<!ENTITY chatButton.label "Συνομιλία">
+<!ENTITY glodaSearch.title "Γενική αναζήτηση">
+<!ENTITY searchItem.title "Γρήγορη αναζήτηση">
+<!ENTITY mailViewsToolbarItem.title "Προβολές αλληλογραφίας">
+<!ENTITY folderLocationToolbarItem.title "Τοποθεσία φακέλου">
+<!ENTITY tagButton.label "Ετικέτα">
+<!ENTITY compactButton.label "Σύμπτυξη">
+<!ENTITY appmenuButton.label "AppMenu">
+
+<!-- Mail Toolbar Tooltips-->
+<!ENTITY advancedButton.tooltip "Σύνθετη αναζήτηση μηνυμάτων">
+<!ENTITY getMsgButton.tooltip "Λήψη νέων μηνυμάτων">
+<!ENTITY getAllNewMsgCmd.label "Λήψη όλων των νέων μηνυμάτων">
+<!ENTITY getAllNewMsgCmd.accesskey "Λ">
+<!ENTITY newMsgButton.tooltip "Δημιουργία νέου μηνύματος">
+<!ENTITY replyButton.tooltip "Απάντηση στο μήνυμα">
+<!ENTITY replyAllButton.tooltip "Απάντηση στον αποστολέα και σε όλους τους παραλήπτες">
+<!ENTITY replyListButton.tooltip "Απάντηση στη λίστα αλληλογραφίας">
+<!ENTITY forwardButton.tooltip "Προώθηση επιλεγμένου μηνύματος">
+<!ENTITY forwardAsInline.tooltip "Προώθηση επιλεγμένου μηνύματος ως κείμενο μέσα στο σώμα">
+<!ENTITY forwardAsAttachment.tooltip "Προώθηση επιλεγμένου μηνύματος ως συνημμένο">
+<!ENTITY fileButton.tooltip "Αρχειοθέτηση επιλεγμένου μηνύματος">
+<!ENTITY archiveButton.tooltip "Αρχειοθέτηση επιλεγμένων μηνυμάτων">
+<!ENTITY openMsgConversationButton.tooltip "Εμφάνιση συζήτησης για το επιλεγμένο μήνυμα">
+<!ENTITY nextButton.tooltip "Μετάβαση στο επόμενο μη αναγνωσμένο μήνυμα">
+<!ENTITY nextMsgButton.tooltip "Μετάβαση στο επόμενο μήνυμα">
+<!ENTITY previousButton.tooltip "Μετάβαση στο προηγούμενο μη αναγνωσμένο">
+<!ENTITY previousMsgButton.tooltip "Μετάβαση στο προηγούμενο μήνυμα">
+<!ENTITY goForwardButton.tooltip "Μετάβαση μπροστά ένα μήνυμα">
+<!ENTITY goBackButton.tooltip "Μετάβαση πίσω κατά ένα μήνυμα">
+<!ENTITY deleteButton.tooltip "Διαγραφή επιλεγμένου μηνύματος ή φακέλου">
+<!ENTITY undeleteButton.tooltip "Ακύρωση διαγραφής επιλεγμένου μηνύματος">
+<!ENTITY markButton.tooltip "Επισήμανση μηνυμάτων">
+<!ENTITY printButton.tooltip "Εκτύπωση μηνύματος">
+<!ENTITY stopButton.tooltip "Διακοπή της τρέχουσας μεταφοράς">
+<!ENTITY junkButton.tooltip "Επισήμανση επιλεγμένων μηνυμάτων ως ανεπιθύμητων">
+<!ENTITY notJunkButton.tooltip "Επισήμανση επιλεγμένων μηνυμάτων ως μη ανεπιθύμητων">
+<!ENTITY addressBookButton.tooltip "Μετάβαση στο ευρετήριο διευθύνσεων">
+<!ENTITY chatButton.tooltip "Εμφάνιση της καρτέλας Συνομιλίας">
+<!ENTITY tagButton.tooltip "Ετικέτα σε μηνύματα">
+<!ENTITY compactButton.tooltip "Αφαίρεση διαγραμμένων μηνυμάτων από τον επιλεγμένο φάκελο">
+<!ENTITY appmenuButton1.tooltip "Προβολή του μενού του &brandShortName;">
+<!ENTITY addonsButton.tooltip "Διαχείριση των προσθέτων σας">
+
+<!-- Toolbar Button Popup -->
+<!ENTITY buttonMenuForwardAsInline.label "Προώθηση ως κείμενο στο σώμα">
+<!ENTITY buttonMenuForwardAsAttachment.label "Προώθηση ως συνημμένο">
+
+<!-- Remote Content Button Popup -->
+<!ENTITY remoteContentOptionsAllowForMsg.label "Εμφάνιση απομακρυσμένου περιεχομένου στο μήνυμα">
+<!ENTITY remoteContentOptionsAllowForMsg.accesskey "Μ">
+<!ENTITY editRemoteContentSettings.label "Επεξεργασία επιλογών απομακρυσμένου περιεχομένου…">
+<!ENTITY editRemoteContentSettings.accesskey "Ε">
+<!ENTITY editRemoteContentSettingsUnix.label "Επεξεργασία προτιμήσεων απομακρυσμένου περιεχομένου…">
+<!ENTITY editRemoteContentSettingsUnix.accesskey "Ο">
+
+<!-- Phishing Button Popup -->
+<!ENTITY phishingOptionIgnore.label "Αγνόηση προειδοποίησης για το μήνυμα">
+<!ENTITY phishingOptionIgnore.accesskey "ν">
+<!ENTITY phishingOptionSettings.label "Επεξεργασία επιλογών ανίχνευσης απάτης…">
+<!ENTITY phishingOptionSettings.accesskey "π">
+<!ENTITY phishingOptionSettingsUnix.label "Επεξεργασία προτιμήσεων ανίχνευσης απάτης…">
+<!ENTITY phishingOptionSettingsUnix.accesskey "π">
+
+<!-- AppMenu Popup -->
+<!ENTITY appmenuNewMsgCmd.label "Νέο μήνυμα">
+<!ENTITY appmenuNewContactCmd.label "Επαφή ευρετηρίου…">
+<!ENTITY appmenuEditMenu.label "Επεξεργασία">
+<!ENTITY appmenuToolbarLayout.label "Διάταξη γραμμής εργαλείων…">
+<!ENTITY appmenuSelectThread.label "Επιλογή νήματος">
+<!ENTITY appmenuSelectFlagged.label "Επιλέξτε μηνύματα με αστέρι">
+
+<!-- Tags Menu Popup -->
+<!ENTITY addNewTag.label "Νέα ετικέτα…">
+<!ENTITY addNewTag.accesskey "Ν">
+<!ENTITY manageTags.label "Διαχείριση των ετικετών…">
+<!ENTITY manageTags.accesskey "Τ">
+
+<!-- Folder Pane -->
+<!ENTITY folderNameColumn.label "Όνομα">
+<!ENTITY folderUnreadColumn.label "Μη αναγνωσμένο">
+<!ENTITY folderTotalColumn.label "Σύνολο">
+<!ENTITY folderSizeColumn.label "Μέγεθος">
+
+<!-- Folder Pane Context Menu -->
+<!ENTITY folderContextGetMessages.label "Λήψη μηνυμάτων">
+<!ENTITY folderContextGetMessages.accesskey "Λ">
+<!ENTITY folderContextMarkAllFoldersRead.label "Επισήμανση όλων των φακέλων ως αναγνωσμένων">
+<!ENTITY folderContextPauseAllUpdates.label "Παύση όλων των ενημερώσεων">
+<!ENTITY folderContextPauseUpdates.label "Παύση ενημερώσεων">
+<!ENTITY folderContextPauseUpdates.accesskey "Ε">
+<!ENTITY folderContextOpenInNewWindow.label "Άνοιγμα σε νέο παράθυρο">
+<!ENTITY folderContextOpenInNewWindow.accesskey "ο">
+<!ENTITY folderContextOpenNewTab.label "Άνοιγμα σε νέα καρτέλα">
+<!ENTITY folderContextOpenNewTab.accesskey "τ">
+<!ENTITY folderContextNew.label "Νέος υποφάκελος…">
+<!ENTITY folderContextNew.accesskey "Ν">
+<!ENTITY folderContextRename.label "Μετονομασία">
+<!ENTITY folderContextRename.accesskey "τ">
+<!ENTITY folderContextRemove.label "Διαγραφή">
+<!ENTITY folderContextRemove.accesskey "φ">
+<!ENTITY folderContextCompact.label "Σύμπτυξη">
+<!ENTITY folderContextCompact.accesskey "Σ">
+<!ENTITY folderContextEmptyTrash.label "Άδειασμα του κάδου απορριμμάτων">
+<!ENTITY folderContextEmptyTrash.accesskey "μ">
+<!ENTITY folderContextEmptyJunk.label "Διαγραφή ανεπιθύμητων">
+<!ENTITY folderContextEmptyJunk.accesskey "θ">
+<!ENTITY folderContextSendUnsentMessages.label "Αποστολή εκκρεμών μηνυμάτων...">
+<!ENTITY folderContextSendUnsentMessages.accesskey "κ">
+<!ENTITY folderContextUnsubscribe.label "Κατάργηση εγγραφής">
+<!ENTITY folderContextUnsubscribe.accesskey "Κ">
+<!ENTITY folderContextMarkNewsgroupRead.label "Επισήμανση ομάδας συζητήσεων ως αναγνωσμένης">
+<!ENTITY folderContextMarkNewsgroupRead.accesskey "γ">
+<!ENTITY folderContextMarkMailFolderRead.label "Επισήμανση φακέλου ως αναγνωσμένου">
+<!ENTITY folderContextMarkMailFolderRead.accesskey "κ">
+<!ENTITY folderContextSubscribe.label "Συνδρομή…">
+<!ENTITY folderContextSubscribe.accesskey "μ">
+<!ENTITY folderContextSearchForMessages.label "Αναζήτηση μηνυμάτων…">
+<!ENTITY folderContextSearchForMessages.accesskey "ζ">
+<!ENTITY folderContextProperties2.label "Ιδιότητες">
+<!ENTITY folderContextProperties2.accesskey "δ">
+<!ENTITY folderContextFavoriteFolder.label "Αγαπημένος φάκελος">
+<!ENTITY folderContextFavoriteFolder.accesskey "π">
+<!ENTITY folderContextSettings2.label "Ρυθμίσεις">
+<!ENTITY folderContextSettings2.accesskey "θ">
+
+<!-- Search Bar -->
+<!ENTITY SearchNameOrEmail.label "Το όνομα ή το email περιέχει:">
+<!ENTITY SearchNameOrEmail.accesskey "ν">
+
+<!-- Gloda Search Bar -->
+<!ENTITY glodaSearchBar.placeholder "Αναζήτηση μηνυμάτων…">
+
+<!-- Quick Search Menu Bar -->
+<!ENTITY searchSubjectMenu.label "Θέμα">
+<!ENTITY searchFromMenu.label "Από">
+<!ENTITY searchSubjectOrFromMenu.label "Θέμα ή Από">
+<!ENTITY searchRecipient.label "Προς ή Κοιν.">
+<!ENTITY searchSubjectOrRecipientMenu.label "Θέμα, Προς ή Κοιν.">
+<!ENTITY searchMessageBody.label "Ολόκληρο μήνυμα">
+<!ENTITY saveAsVirtualFolderMenu.label "Αποθήκευση αναζήτησης ως φάκελο…">
+
+<!-- Thread Pane -->
+<!ENTITY selectColumn.label "Επιλογή μηνυμάτων">
+<!ENTITY threadColumn.label "Νήμα">
+<!ENTITY fromColumn.label "Από">
+<!ENTITY recipientColumn.label "Παραλήπτης">
+<!ENTITY correspondentColumn.label "Επιστολογράφοι">
+<!ENTITY subjectColumn.label "Θέμα">
+<!ENTITY dateColumn.label "Ημερομηνία">
+<!ENTITY priorityColumn.label "Προτεραιότητα">
+<!ENTITY tagsColumn.label "Ετικέτα">
+<!ENTITY accountColumn.label "Λογαριασμός">
+<!ENTITY statusColumn.label "Κατάσταση">
+<!ENTITY sizeColumn.label "Μέγεθος">
+<!ENTITY junkStatusColumn.label "Κατάσταση ανεπιθύμητων">
+<!ENTITY unreadColumn.label "Μη αναγνωσμένα">
+<!ENTITY totalColumn.label "Σύνολο">
+<!ENTITY readColumn.label "Αναγνωσμένα">
+<!ENTITY receivedColumn.label "Ληφθέντα">
+<!ENTITY starredColumn.label "Με αστέρι">
+<!ENTITY locationColumn.label "Τοποθεσία">
+<!ENTITY idColumn.label "Σειρά παραλαβής">
+<!ENTITY attachmentColumn.label "Συνημμένα">
+<!ENTITY deleteColumn.label "Διαγραφή">
+
+<!-- Thread Pane Tooltips -->
+<!ENTITY columnChooser2.tooltip "Επιλογή στηλών για προβολή">
+<!ENTITY selectColumn.tooltip "Εναλλαγή επιλογής όλων των μηνυμάτων">
+<!ENTITY threadColumn2.tooltip "Προβολή νημάτων μηνυμάτων">
+<!ENTITY fromColumn2.tooltip "Ταξινόμηση κατά αποστολέα">
+<!ENTITY recipientColumn2.tooltip "Ταξινόμηση κατά παραλήπτη">
+<!ENTITY correspondentColumn2.tooltip "Ταξινόμηση κατά των επιστολογράφων">
+<!ENTITY subjectColumn2.tooltip "Ταξινόμηση κατά θέμα">
+<!ENTITY dateColumn2.tooltip "Ταξινόμηση κατά ημερομηνία">
+<!ENTITY priorityColumn2.tooltip "Ταξινόμηση κατά προτεραιότητα">
+<!ENTITY tagsColumn2.tooltip "Ταξινόμηση κατά ετικέτα">
+<!ENTITY accountColumn2.tooltip "Ταξινόμηση κατά λογαριασμό">
+<!ENTITY statusColumn2.tooltip "Ταξινόμηση κατά κατάσταση">
+<!ENTITY sizeColumn2.tooltip "Ταξινόμηση κατά μέγεθος">
+<!ENTITY junkStatusColumn2.tooltip "Ταξινόμηση κατά κατάσταση ανεπιθύμητων">
+<!ENTITY unreadColumn2.tooltip "Αριθμός μη αναγνωσμένων μηνυμάτων στο νήμα">
+<!ENTITY totalColumn2.tooltip "Συνολικός αριθμός μηνυμάτων στο νήμα">
+<!ENTITY readColumn2.tooltip "Ταξινόμηση κατά αναγνωσμένο">
+<!ENTITY receivedColumn2.tooltip "Ταξινόμηση κατά ημερομηνία παραλαβής">
+<!ENTITY starredColumn2.tooltip "Ταξινόμηση κατά αστέρι">
+<!ENTITY locationColumn2.tooltip "Ταξινόμηση κατά τοποθεσία">
+<!ENTITY idColumn2.tooltip "Ταξινόμηση κατά σειρά παραλαβής">
+<!ENTITY attachmentColumn2.tooltip "Ταξινόμηση κατά συνημμένο">
+<!ENTITY deleteColumn.tooltip "Διαγραφή μηνύματος">
+
+<!-- Thread Pane Context Menu -->
+<!ENTITY contextNewMsgFromTemplate.label "Νέο μήνυμα από πρότυπο">
+<!ENTITY contextOpenNewWindow.label "Άνοιγμα μηνύματος σε νέο παράθυρο">
+<!ENTITY contextOpenNewWindow.accesskey "ν">
+<!-- The contextOpenNewTab.accesskey ("T") potentially conflicts with
+ cutCmd.accessKey which is defined in textcontext.dtd from toolkit. Right
+ now, both menu items can't be visible at the same time, but should someone
+ enable copy/paste of message, this key would probably need to be changed. -->
+<!ENTITY contextOpenNewTab.label "Άνοιγμα μηνύματος σε νέα καρτέλα">
+<!ENTITY contextOpenNewTab.accesskey "τ">
+<!ENTITY contextOpenConversation.label "Άνοιγμα μηνύματος σε συζήτηση">
+<!ENTITY contextOpenConversation.accesskey "ν">
+<!ENTITY contextOpenContainingFolder.label "Άνοιγμα μηνύματος στο φάκελο αποθήκευσης">
+<!ENTITY contextOpenContainingFolder.accesskey "φ">
+<!ENTITY contextEditMsgAsNew.label "Επεξεργασία ως νέο μήνυμα">
+<!ENTITY contextEditMsgAsNew.accesskey "ω">
+<!ENTITY contextEditDraftMsg.label "Επεξεργασία πρόχειρου μηνύματος">
+<!ENTITY contextEditTemplate.label "Επεξεργασία πρότυπου">
+<!ENTITY contextEditTemplate.accesskey "Π">
+<!ENTITY contextArchive.label "Αρχειοθέτηση">
+<!ENTITY contextArchive.accesskey "χ">
+<!ENTITY contextReplySender.label "Απάντηση μόνο στον αποστολέα">
+<!ENTITY contextReplySender.accesskey "ο">
+<!ENTITY contextReplyNewsgroup2.label "Απάντηση στην ομάδα συζήτησης">
+<!ENTITY contextReplyNewsgroup2.accesskey "ζ">
+<!ENTITY contextReplyAll.label "Απάντηση σε όλους">
+<!ENTITY contextReplyAll.accesskey "υ">
+<!ENTITY contextReplyList.label "Απάντηση στη λίστα">
+<!ENTITY contextReplyList.accesskey "λ">
+<!ENTITY contextForward.label "Προώθηση">
+<!ENTITY contextForward.accesskey "θ">
+<!ENTITY contextForwardAsMenu.label "Προώθηση ως">
+<!ENTITY contextForwardAsMenu.accesskey "ο">
+<!ENTITY contextForwardAsInline.label "Μέσα στο σώμα">
+<!ENTITY contextForwardAsInline.accesskey "Μ">
+<!ENTITY contextForwardAsAttachmentItem.label "Συνημμένο">
+<!ENTITY contextForwardAsAttachmentItem.accesskey "Σ">
+<!ENTITY contextMultiForwardAsAttachment.label "Προώθηση ως συνημμένα">
+<!ENTITY contextMultiForwardAsAttachment.accesskey "σ">
+<!ENTITY contextMoveMsgMenu.label "Μετακίνηση σε">
+<!ENTITY contextMoveMsgMenu.accesskey "Μ">
+<!ENTITY contextMoveCopyMsgRecentMenu.label "Πρόσφατα">
+<!ENTITY contextMoveCopyMsgRecentMenu.accesskey "φ">
+<!ENTITY contextMoveCopyMsgFavoritesMenu.label "Αγαπημένα">
+<!ENTITY contextMoveCopyMsgFavoritesMenu.accesskey "Α">
+<!ENTITY contextCopyMsgMenu.label "Αντιγραφή σε">
+<!ENTITY contextCopyMsgMenu.accesskey "ι">
+<!ENTITY contextKillThreadMenu.label "Παράβλεψη νήματος">
+<!ENTITY contextKillSubthreadMenu.accesskey "β">
+<!ENTITY contextKillThreadMenu.accesskey "Π">
+<!ENTITY contextKillSubthreadMenu.label "Παράβλεψη υπονήματος">
+<!ENTITY contextWatchThreadMenu.label "Παρακολούθηση νήματος">
+<!-- LOCALIZATION NOTE (contextWatchThreadMenu.accesskey):
+ In the en-US locale we ran out of access keys, so there is an empty access key for
+ Watch Thread. Localizers can pick a suitable key
+ -->
+<!ENTITY contextWatchThreadMenu.accesskey "">
+<!ENTITY contextSaveAs.label "Αποθήκευση ως…">
+<!ENTITY contextSaveAs.accesskey "σ">
+<!ENTITY contextPrint.label "Εκτύπωση…">
+<!ENTITY contextPrint.accesskey "π">
+<!ENTITY contextPrintPreview.label "Προεπισκόπηση εκτύπωσης">
+<!ENTITY contextPrintPreview.accesskey "ε">
+
+<!-- LOCALIZATION NOTE (columnPicker.applyTo.label):
+ This option in the thread pane column picker pops up a sub-menu containing
+ the "columnPicker.applyToFolder.label" and
+ "columnPicker.applyToFolderAndChildren.label" options. This item indicates
+ a desire to apply the currently displayed set of columns to some other
+ folder(s). The sub-menu items indicate whether we want to apply it to just
+ a folder or also its children.
+ -->
+<!ENTITY columnPicker.applyTo.label "Εφαρμογή στηλών σε…">
+<!-- LOCALIZATION NOTE (columnPicker.applyToFolder.label):
+ This option in the thread pane column picker is found on a sub-menu beneath
+ the "columnPicker.applyTo.label" alongside
+ "columnPicker.applyToFolderAndChildren.label". It indicates a desire to
+ apply the currently display thread pane column settings to a single folder
+ that the user selects using the same widget as the move to/copy to
+ mechanism (via a series of popups).
+ -->
+<!ENTITY columnPicker.applyToFolder.label "Φάκελο…">
+<!-- LOCALIZATION NOTE (columnPicker.applyToFolderAndChildren.label):
+ This option in the thread pane column picker is found on a sub-menu beneath
+ the "columnPicker.applyTo.label" alongside
+ "columnPicker.applyToFolder.label". It indicates a desire to
+ apply the currently display thread pane column settings to a folder and all
+ of its descendents. The user selects the folder using the same widget as the
+ move to/copy to mechanism (via a series of popups).
+ -->
+<!ENTITY columnPicker.applyToFolderAndChildren.label "Φάκελο και υποφακέλους…">
+<!-- LOCALIZATION NOTE (columnPicker.thisFolder.label):
+ This is used in the folder selection widget for the
+ "columnPicker.applyToFolder.label" and
+ "columnPicker.applyToFolderAndChildren.label" menu options. Whenever
+ a folder has children, it results in a menu popup; the first menu item
+ in that popup is given this label to indicate that that folder should be
+ selected. For example, if folder "A" has two children, "B" and "C", then
+ when the user hovers over "A", a new popup menu will be displayed whose
+ items are "This folder", "B", and "C". This is the equivalent of the
+ "File here" option for the move to/copy to widget.
+ -->
+<!ENTITY columnPicker.thisFolder.label "Αυτό τον φάκελο">
+
+<!-- Media (video/audio) controls -->
+<!ENTITY contextPlay.label "Αναπαραγωγή">
+<!ENTITY contextPlay.accesskey "π">
+<!ENTITY contextPause.label "Παύση">
+<!ENTITY contextPause.accesskey "σ">
+<!ENTITY contextMute.label "Σίγαση">
+<!ENTITY contextMute.accesskey "γ">
+<!ENTITY contextUnmute.label "Άρση σίγασης">
+<!ENTITY contextUnmute.accesskey "ρ">
+
+<!-- Quick Search Bar -->
+<!-- LOCALIZATION NOTE (quickSearchCmd.key):
+ This is actually the key used for the global message search box; we have
+ not changed
+ -->
+<!ENTITY quickSearchCmd.key "k">
+<!-- LOCALIZATION NOTE (search.label.base1):
+ This is the base of the empty text for the global search box. We replace
+ #1 with the contents of the appropriate search.keyLabel.* value for the
+ platform.
+ The goal is to convey to the user that typing in the box will allow them
+ to search for messages globally and that there is a hotkey they can press
+ to get to the box faster. If the global indexer is disabled, the search
+ box will be collapsed and the user will never see this message.
+ -->
+<!ENTITY search.label.base1 "Αναζήτηση #1">
+<!-- LOCALIZATION NOTE (search.keyLabel.nonmac):
+ The description of the key-binding to get into the global search box on
+ windows and linux (which use the control key). We use the key defined in
+ the quickSearchCmd.key entity defined above, the letter should match it.
+ -->
+<!ENTITY search.keyLabel.nonmac "&lt;Ctrl+K&gt;">
+<!-- LOCALIZATION NOTE (search.keyLabel.mac):
+ The description of the key-binding to get into the global search box on mac
+ systems. We use the key defined in the quickSearchCmd.key entity defined
+ above, the letter should match it.
+ -->
+<!ENTITY search.keyLabel.mac "&lt;&#x2318;K&gt;">
+
+<!-- Message Header Context Menu -->
+<!ENTITY AddToAddressBook.label "Προσθήκη στο ευρετήριο διευθύνσεων…">
+<!ENTITY AddToAddressBook.accesskey "σ">
+<!ENTITY AddDirectlyToAddressBook.label "Προσθήκη στο ευρετήριο">
+<!ENTITY AddDirectlyToAddressBook.accesskey "υ">
+<!ENTITY EditContact1.label "Επεξεργασία επαφής">
+<!ENTITY EditContact1.accesskey "Ε">
+<!ENTITY ViewContact.label "Προβολή επαφής">
+<!ENTITY ViewContact.accesskey "β">
+<!ENTITY SubscribeToNewsgroup.label "Συνδρομή στην ομάδα συζήτησης">
+<!ENTITY SubscribeToNewsgroup.accesskey "δ">
+<!ENTITY SendMessageTo.label "Σύνταξη μηνύματος προς">
+<!ENTITY SendMessageTo.accesskey "Σ">
+<!ENTITY CopyEmailAddress.label "Αντιγραφή διεύθυνσης email">
+<!ENTITY CopyEmailAddress.accesskey "γ">
+<!ENTITY CopyNameAndEmailAddress.label "Αντιγραφή ονόματος και διεύθυνσης email">
+<!ENTITY CopyNameAndEmailAddress.accesskey "ο">
+<!ENTITY CopyNewsgroupName.label "Αντιγραφή ονόματος ομάδας">
+<!ENTITY CopyNewsgroupName.accesskey "γ">
+<!ENTITY CopyNewsgroupURL.label "Αντιγραφή URL ομάδας συζητήσεων">
+<!ENTITY CopyNewsgroupURL.accesskey "Τ">
+<!ENTITY CreateFilterFrom.label "Δημιουργία φίλτρου από…">
+<!ENTITY CreateFilterFrom.accesskey "φ">
+<!ENTITY reportPhishingURL.label "Αναφορά email απάτης">
+<!ENTITY reportPhishingURL.accesskey "φ">
+
+<!-- Spell checker context menu items -->
+<!ENTITY spellAddDictionaries.label "Προσθήκη λεξικών…">
+<!ENTITY spellAddDictionaries.accesskey "θ">
+
+<!-- Content Pane Context Menu -->
+<!ENTITY saveLinkAsCmd.label "Αποθήκευση συνδέσμου ως…">
+<!ENTITY saveLinkAsCmd.accesskey "δ">
+<!ENTITY saveImageAsCmd.label "Αποθήκευση εικόνας ως…">
+<!ENTITY saveImageAsCmd.accesskey "ω">
+<!ENTITY copyLinkCmd.label "Αντιγραφή τοποθεσίας συνδέσμου">
+<!ENTITY copyLinkCmd.accesskey "δ">
+<!ENTITY copyImageAllCmd.label "Αντιγραφή εικόνας">
+<!ENTITY copyImageAllCmd.accesskey "ι">
+<!ENTITY copyEmailCmd.label "Αντιγραφή διεύθυνσης email">
+<!ENTITY copyEmailCmd.accesskey "Ε">
+<!ENTITY stopCmd.label "Διακοπή">
+<!ENTITY stopCmd.accesskey "Δ">
+<!ENTITY reloadCmd.label "Ανανέωση">
+<!ENTITY reloadCmd.accesskey "ν">
+<!ENTITY openInBrowser.label "Άνοιγμα στον περιηγητή">
+<!ENTITY openInBrowser.accesskey "ο">
+<!ENTITY openLinkInBrowser.label "Άνοιγμα δεσμού στον περιηγητή">
+<!ENTITY openLinkInBrowser.accesskey "δ">
+
+<!-- Statusbar -->
+<!ENTITY statusText.label "Τέλος">
+
+<!-- Mac OS X Window Menu -->
+<!ENTITY minimizeWindow.label "Ελαχιστοποίηση">
+<!ENTITY minimizeWindow.key "m">
+<!ENTITY bringAllToFront.label "Μεταφορά όλων μπροστά">
+<!ENTITY zoomWindow.label "Ζουμ">
+
+<!-- Mac OS X Application Menu (Cocoa widgets) -->
+<!ENTITY preferencesCmdMac2.label "Προτιμήσεις">
+<!ENTITY preferencesCmdMac.commandkey ",">
+<!ENTITY preferencesCmdMac.modifiers "accel">
+<!ENTITY servicesMenuMac.label "Υπηρεσίες">
+<!ENTITY hideThisAppCmdMac.label "Απόκρυψη &brandShortName;">
+<!ENTITY hideThisAppCmdMac.commandkey "H">
+<!ENTITY hideThisAppCmdMac.modifiers "accel">
+<!ENTITY hideOtherAppsCmdMac.label "Απόκρυψη άλλων">
+<!ENTITY hideOtherAppsCmdMac.commandkey "H">
+<!ENTITY hideOtherAppsCmdMac.modifiers "accel,alt">
+<!ENTITY showAllAppsCmdMac.label "Προβολή όλων">
+
+<!-- Mac OS X Dock Icon pop-up menu -->
+<!ENTITY dockOptions.label "Επιλογές εικονιδίου εφαρμογής…">
+<!ENTITY writeNewMessageDock.label "Σύνταξη νέου μηνύματος">
+<!ENTITY openAddressBookDock.label "Άνοιγμα βιβλίου διευθύνσεων">
+
+<!-- Content tab Navigation buttons -->
+<!ENTITY browseBackButton.tooltip "Μετάβαση μια σελίδα πίσω">
+<!ENTITY browseForwardButton.tooltip "Μετάβαση μια σελίδα μπροστά">
diff --git a/l10n-el/mail/chrome/messenger/messenger.properties b/l10n-el/mail/chrome/messenger/messenger.properties
new file mode 100644
index 0000000000..b050885f87
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messenger.properties
@@ -0,0 +1,801 @@
+# 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/.
+
+# The following are used by the messenger application
+#
+
+# LOCALIZATION NOTE(statusMessage):
+# Do not translate the words %1$S and %2$S below. Place the word %1$S where the
+# account name should appear and %2$S where the status message should appear.
+# EXAMPLE: Jim's Account: Downloading messages...
+statusMessage=%1$S: %2$S
+
+removeAccount=Διαγραφή λογαριασμού…
+newFolderMenuItem=Φάκελος…
+newSubfolderMenuItem=Υποφάκελος…
+newFolder=Νέος φάκελος…
+newSubfolder=Νέος υποφάκελος…
+markFolderRead=Επισήμανση φακέλου ως αναγνωσμένου;Επισήμανση φακέλων ως αναγνωσμένων
+markNewsgroupRead=Σημείωση ομάδας συζήτησης ως αναγνωσμένης;Σημείωση ομάδων συζήτησης φακέλων ως αναγνωσμένες
+folderProperties=Ιδιότητες φακέλου
+newTag=Νέα ετικέτα…
+# LOCALIZATION NOTE (getNextNewsMessages): Semi-colon list of plural forms.
+# #1 is the number of news messages to get.
+getNextNewsMessages=Λήψη επόμενου #1 μηνύματος συζήτησης;Λήψη επόμενων %S μηνυμάτων συζήτησης
+advanceNextPrompt=Μετάβαση στο επόμενο μη αναγνωσμένο μήνυμα σε %S;
+titleNewsPreHost=σε
+replyToSender=Απάντηση στον αποστολέα
+reply=Απάντηση
+EMLFiles=Αρχεία email
+OpenEMLFiles=Άνοιγμα μηνύματος
+# LOCALIZATION NOTE(defaultSaveMessageAsFileName): Do not translate ".eml"
+# in the line below. Also, the complete file name should be 8.3.
+defaultSaveMessageAsFileName=message.eml
+# LOCALIZATION NOTE(longMsgSubjectTruncator): A suffix string appended to the filename
+# (created from message subject) if it needed to be truncated due to length.
+longMsgSubjectTruncator=...
+SaveMailAs=Αποθήκευση μηνύματος ως
+SaveAttachment=Αποθήκευση συνημμένου
+SaveAllAttachments=Αποθήκευση όλων των συνημμένων
+DetachAttachment=Αφαίρεση συνημμένου
+DetachAllAttachments=Αφαίρεση όλων των συνημμένων
+ChooseFolder=Επιλογή φακέλου
+LoadingMessageToPrint=Φόρτωση μηνύματος για εκτύπωση…
+MessageLoaded=Το μήνυμα φορτώθηκε…
+PrintingMessage=Εκτύπωση μηνύματος…
+PrintPreviewMessage=Προεπισκόπηση εκτύπωσης μηνύματος…
+PrintingContact=Εκτύπωση επαφής…
+PrintPreviewContact=Προεπισκόπηση εκτύπωσης επαφής…
+PrintingAddrBook=Εκτύπωση ευρετηρίου…
+PrintPreviewAddrBook=Προεπισκόπηση εκτύπωσης ευρετηρίου…
+PrintingComplete=Ολοκληρώθηκε.
+PreviewTitle=%S - %S
+LoadingMailMsgForPrint=(Φόρτωση περιεχομένου για εκτύπωση)
+LoadingMailMsgForPrintPreview=(Φόρτωση περιεχομένου για προεπισκόπηση εκτύπωσης)
+saveAttachmentFailed=Αδυναμία αποθήκευσης συνημμένου. Ελέγξτε το όνομα αρχείου και προσπαθήστε ξανά.
+saveMessageFailed=Αδυναμία αποθήκευσης μηνύματος. Ελέγξτε το όνομα αρχείου και προσπαθήστε ξανά.
+fileExists=Το %S υπάρχει ήδη. Θέλετε να το αντικαταστήσετε;
+# LOCALIZATION NOTE(failedToReadFile): %1$S is replaced by the file name, %2$S is replaced by the reason the file load failed.
+failedToReadFile=Αποτυχία ανάγνωσης αρχείου: %1$S λόγος: %2$S
+
+downloadingNewsgroups=Λήψη ομάδων συζήτησης για εργασία χωρίς σύνδεση
+downloadingMail=Λήψη αλληλογραφίας για εργασία χωρίς σύνδεση
+sendingUnsent=Αποστολή μη απεσταλμένων μηνυμάτων
+
+folderExists=Υπάρχει ήδη ένας φάκελος με αυτό το όνομα. Επιλέξτε ένα διαφορετικό όνομα.
+# LOCALIZATION NOTE(confirmDuplicateFolderRename): %1$S is name of folder being moved, %2$S is parent folder name, %3$S is proposed new folder name
+confirmDuplicateFolderRename=Ένας υποφάκελος με το όνομα '%1$S' υπάρχει ήδη στον φάκελο '%2$S'. Θέλετε να μετακινήσετε το φάκελο χρησιμοποιώντας το νέο όνομα '%3$S';
+folderCreationFailed=Ο φάκελος δεν μπορεί να δημιουργηθεί επειδή το όνομα φακέλου περιέχει ένα άγνωστο χαρακτήρα. Εισάγετε ένα διαφορετικό όνομα και προσπαθήστε ξανά.
+
+compactingFolder=Συμπίεση φακέλου %S…
+# LOCALIZATION NOTE(compactingDone): %1$S is the compaction gain.
+compactingDone=Η συμπίεση ολοκληρώθηκε (εξοικονομήθηκαν περίπου %1$S).
+autoCompactAllFoldersTitle=Συμπίεση φακέλων
+# LOCALIZATION NOTE(autoCompactAllFoldersMsg): %1$S will be replaced by size gain of the compaction (including the unit), %2$S will be replaced by application name
+autoCompactAllFoldersMsg=Τα μηνύματα που διαγράψατε μπορούν να διαγραφούν οριστικά από το δίσκο. Η λειτουργία αυτή θα εξοικονομήσει περίπου %1$S χώρο στο δίσκο. Επιλέξτε την παρακάτω επιλογή ώστε το %2$S να το κάνει αυτόματα χωρίς να σας ρωτάει.
+autoCompactNeverAskCheckbox=Οριστική διαγραφή των διαγραμμένων μηνυμάτων αυτόματα χωρίς ερώτηση.
+proceedButton=&Συνέχεια
+
+confirmFolderDeletionForFilter=Η διαγραφή του φακέλου '%S' θα απενεργοποιήσει τα σχετικά φίλτρα. Θέλετε σίγουρα να διαγράψετε το φάκελο;
+alertFilterChanged=Τα σχετικά με αυτόν το φάκελο φίλτρα θα ενημερωθούν.
+filterDisabled=Ο φάκελος '%S' δεν μπορεί να βρεθεί και έτσι τα σχετικά με αυτόν φίλτρα θα απενεργοποιηθούν. Βεβαιωθείτε ότι ο φάκελος υπάρχει και ότι τα φίλτρα σκοπεύουν σε μια έγκυρη τοποθεσία φακέλου.
+filterFolderDeniedLocked=Τα μηνύματα δεν μπορούν να φιλτραριστούν στο φάκελο '%S' επειδή μια άλλη διεργασία είναι σε εξέλιξη. .
+parsingFolderFailed=Αδυναμία ανοίγματος φακέλου %S επειδή είναι σε χρήση από κάποια άλλη διεργασία. Περιμένετε να τελειώσει η διεργασία και προσπαθήστε ξανά.
+deletingMsgsFailed=Αδυναμία διαγραφής μηνυμάτων στο φάκελο %S επειδή είναι σε χρήση από κάποια άλλη διεργασία. Περιμένετε να τελειώσει η διεργασία και προσπαθήστε ξανά.
+alertFilterCheckbox=Να μην εμφανιστεί η προειδοποίηση ξανά
+compactFolderDeniedLock=Ο φάκελος '%S' δεν μπορεί να συμπτυχθεί επειδή μια άλλη διεργασία είναι σε εξέλιξη, Παρακαλώ προσπαθήστε αργότερα.
+compactFolderWriteFailed=Ο φάκελος '%S' δεν μπορεί να συμπτυχθεί επειδή απέτυχε η εγγραφή στο φάκελο. Βεβαιωθείτε ότι υπάρχει χώρος στο δίσκο και εχετε δικαιώματα εγγραφής και προσπαθήστε αργότερα.
+compactFolderInsufficientSpace=Δεν ήταν δυνατή η συμπίεση ορισμένων φακέλων (πχ. '%S') επειδή δεν υπάρχει αρκετός ελεύθερος χώρος στο δίσκο. Παρακαλούμε διαγράψτε κάποια αρχεία και ξαναδοκιμάστε.
+filterFolderHdrAddFailed=Τα μηνύματα δεν ήταν δυνατό να φιλτραριστούν στον φάκελο '%S' επειδή η προσθήκη μηνύματος σε αυτό απέτυχε. Βεβαιωθείτε ότι ο φάκελος εμφανίζεται σωστά ή δοκιμάστε να τον επιδιορθώσετε από τις ιδιότητες φακέλου.
+filterFolderWriteFailed=Τα μηνύματα δεν μπορούν να φιλτραριστούν στο φάκελο '%S' επειδή απέτυχε ή εγγραφή στο φάκελο. Βεβαιωθείτε ότι υπάρχει ελεύθερος χώρος στο δίσκο και έχετε δικαιώματα εγγραφής στο φάκελο και προσπαθήστε ξανά.
+copyMsgWriteFailed=Δεν είναι δυνατή η μετακίνηση ή η αντιγραφή των μηνυμάτων στο φάκελο %S' επειδή η εγγραφή στο φάκελο απέτυχε. Για να κερδίσετε χώρο στο δίσκο, επιλέξτε από το μενού Αρχείο> άδειασμα κάδου και μετά σύμπτυξη φακέλων και προσπαθήστε ξανά.
+cantMoveMsgWOBodyOffline=Κατά την εργασία χωρίς σύνδεση δεν είναι δυνατή η μετακίνηση ή η αντιγραφή των μηνυμάτων που δεν λήφθηκαν για εργασία χωρίς σύνδεση. Από το παράθυρο της Αλληλογραφία επιλέξτε Αρχείο> Χωρίς σύνδεση> εργασία με σύνδεση και προσπαθήστε ξανά.
+operationFailedFolderBusy=TΗ διεργασία απέτυχε επειδή μια άλλη διεργασία χρησιμοποιεί το φάκελο. Παρακαλώ περιμένετε να ολοκληρωθεί η διεργασία και προσπαθήστε ξανά.
+folderRenameFailed=Δεν είναι δυνατή η μετονομασία του φακέλου. Πιθανόν ο φάκελος να μην υπάρχει, ή το νέο όνομα να μην είναι έγκυρο.
+# LOCALIZATION NOTE(verboseFolderFormat): %1$S is folder name, %2$S is server name
+verboseFolderFormat=%1$S σε %2$S
+# LOCALIZATION NOTE(filterFolderTruncateFailed): %1$S is replaced by the folder name, %2$S is replaced by the brandShortName
+filterFolderTruncateFailed=Υπήρξε ένα σφάλμα κατά τη σύμπτυξη του φακέλου εισερχομένων μετά το φιλτράρισμα ενός μηνύματος στο φάκελο '%1$S'. Θα χρειαστεί να τερματίσετε τον %2$S και να διαγράψετε το INBOX.msf.
+
+mailboxTooLarge=Ο φάκελος %S είναι πλήρης, και δεν χωράει άλλα μηνύματα. Για να ελευθερώσετε χώρο, διαγράψτε παλιά ή ανεπιθύμητα μηνύματα και συμπιέστε στο φάκελο.
+outOfDiskSpace=Δεν υπάρχει αρκετός ελεύθερος χώρος στο δίσκο για το κατέβασμα νέων μηνυμάτων. Δοκιμάστε να διαγράψετε παλιά αλληλογραφία, να αδειάσετε τον κάδο ή να συμπιέσετε τους φακέλους αλληλογραφίας και να ξαναδοκιμάσετε πάλι.
+errorGettingDB=Αδυναμία ανοίγματος το αρχείου περίληψης για το %S. Πιθανώς να υπάρχει σφάλμα στο δίσκο, ή η πλήρης διαδρομή να είναι μακροσκελής.
+defaultServerTag=(Προεπιλογή)
+
+# Used in message database list view to provide a text value for graphic based cells.
+messageUnread=Μη αναγνωσμένα
+messageHasFlag=Με αστέρι
+messageHasAttachment=Έχει συνημμένο
+messageJunk=Ανεπιθύμητα
+messageExpanded=Σε ανάπτυξη
+messageCollapsed=Σε σύμπτυξη
+
+# Used in the SMTP Account Settings panel when a server value has no properties
+smtpServerList-NotSpecified=<δεν καθορίστηκε>
+smtpServer-ConnectionSecurityType-0=Όχι
+smtpServer-ConnectionSecurityType-1=STARTTLS, αν είναι διαθέσιμη
+smtpServer-ConnectionSecurityType-2=STARTTLS
+smtpServer-ConnectionSecurityType-3=SSL/TLS
+smtpServers-confirmServerDeletionTitle=Διαγραφή διακομιστή
+smtpServers-confirmServerDeletion=Θέλετε σίγουρα να διαγράψετε το διακομιστή: \n %S;
+
+# Account Settings - Both Incoming and SMTP server
+authNo=Χωρίς ταυτοποίηση
+authOld=Κωδικός, αρχική μέθοδος (μη ασφαλές)
+authPasswordCleartextInsecurely=Κωδικός με μη ασφαλή μετάδοση
+authPasswordCleartextViaSSL=Κανονικός κωδικός πρόσβασης
+authPasswordEncrypted=Κρυπτογραφημένος κωδικός
+authKerberos=Kerberos / GSSAPI
+authExternal=Πιστοποιητικό TLS
+authNTLM=NTLM
+authOAuth2=OAuth2
+authAnySecure=Οποιαδήποτε ασφαλή μέθοδο (παρωχημένο)
+authAny=Οποιαδήποτε μέθοδο (μη ασφαλές)
+
+# OAuth2 window title
+# LOCALIZATION NOTE(oauth2WindowTitle):
+# %1$S is the username (or full email address) used for authentication.
+# %2$S is the hostname of the account being authenticated.
+oauth2WindowTitle=Εισάγετε τα διαπιστευτήρια για %1$S στο %2$S
+
+# LOCALIZATION NOTE(serverType-nntp): Do not translate "NNTP" in the line below
+serverType-nntp=Διακομιστής συζητήσεων (NNTP)
+# LOCALIZATION NOTE(serverType-pop3): Do not translate "POP" in the line below
+serverType-pop3=Διακομιστής αλληλογραφίας POP
+# LOCALIZATION NOTE(serverType-imap): Do not translate "IMAP" in the line below
+serverType-imap=Διακομιστής αλληλογραφίας IMAP
+serverType-none=Τοπική αποθήκευση μηνυμάτων
+# LOCALIZATION NOTE(serverType-movemail): DONT_TRANSLATE
+serverType-movemail=Unix Movemail
+
+sizeColumnTooltip2=Ταξινόμηση κατά μέγεθος
+sizeColumnHeader=Μέγεθος
+linesColumnTooltip2=Ταξινόμηση κατά γραμμές
+linesColumnHeader=Γραμμές
+
+# LOCALIZATION NOTE (getMsgButtonTooltip): Do not translate the word "%S" below.
+# Place the word "%S" in your translation where the name of the comma separated accounts should appear.
+getMsgButtonTooltip=Λήψη νέων μηνυμάτων για %S
+# Used to separate email addresses in a list. Note the trailing space ', '
+getMsgButtonTooltip.listSeparator=,\u0020
+
+# status feedback stuff
+documentDone=
+documentLoading=Φόρτωση μηνύματος…
+
+# LOCALIZATION NOTE (autosyncProgress): Do not translate the word "%1$S" or "%2$S" below.
+# Place the word %1$S in your translation where the name of the comma separated folders should appear.
+# Place the word %2$S in your translation where the name of the comma separated accounts should appear.
+autosyncProgress=Συγχρονισμός μηνυμάτων σε %1$S από %2$S…
+
+unreadMsgStatus=Μη αναγνωσμένα: %S
+selectedMsgStatus=Επιλέχθηκε: %S
+totalMsgStatus=Σύνολο: %S
+
+# localized folder names
+
+localFolders=Τοπικοί φάκελοι
+
+# LOCALIZATION NOTE (inboxFolderName): OK to translate all foldernames, bugzilla #57440 & bugzilla #23625 fixed
+inboxFolderName=Εισερχόμενα
+trashFolderName=Απορρίμματα
+sentFolderName=Απεσταλμένα
+draftsFolderName=Προσχέδια
+templatesFolderName=Πρότυπα
+outboxFolderName=Εξερχόμενα
+junkFolderName=Ανεπιθύμητα
+archivesFolderName=Αρχείο
+
+# "Normal" priority is often blank,
+# depending on the consumers of these strings
+priorityLowest=Πολύ χαμηλή
+priorityLow=Χαμηλή
+priorityNormal=Κανονική
+priorityHigh=Υψηλή
+priorityHighest=Πολύ υψηλή
+
+#Group by date thread pane titles
+today=Σήμερα
+yesterday=Χθες
+lastWeek=Τελευταία εβδομάδα
+last7Days=Τις τελευταίες 7 ημέρες
+twoWeeksAgo=Δύο εβδομάδες πριν
+last14Days=Τις τελευταίες 14 ημέρες
+older=Παλιότερα
+futureDate=Μελλοντικά
+
+#Grouped By Tags
+untaggedMessages=Μηνύματα χωρίς ετικέτα
+
+# Grouped by status
+messagesWithNoStatus=Χωρίς κατάσταση
+
+#Grouped by priority
+noPriority=Χωρίς προτεραιότητα
+
+#Grouped by has attachments
+noAttachments=Χωρίς συνημμένα
+attachments=Συνημμένα
+
+#Grouped by starred
+notFlagged=Χωρίς αστέρι
+groupFlagged=Με αστέρι
+
+# defaults descriptions for tag prefs listed in mailnews.js
+# (we keep the .labels. names for backwards compatibility)
+mailnews.tags.remove=Αφαίρεση όλων των ετικετών
+mailnews.labels.description.1=Σημαντικό
+mailnews.labels.description.2=Εργασία
+mailnews.labels.description.3=Προσωπικό
+mailnews.labels.description.4=Εκκρεμότητα
+mailnews.labels.description.5=Αργότερα
+
+# Format definition tag menu texts.
+# This is necessary in order to get the accesskeys to be the on the first
+# character of the menu text instead of after the menu text.
+# If a key definition exists for the tag at index n, that key's key will be
+# taken as the accesskey, eg.
+# <key id="key_tag3" key="&tagCmd3.key;" oncommand="ToggleMessageTagKey(3);"/>
+# makes the third tag have the accesskey &tagCmd3.key;.
+# In the menuitem's label, this accesskey appears at %1$S below; %2$S will be
+# replaced by the tag label.
+mailnews.tags.format=%1$S %2$S
+
+replied=Απαντήθηκε
+forwarded=Προωθήθηκε
+new=Νέο
+read=Αναγνωσμένο
+flagged=Με αστέρι
+
+# for junk status picker in search and mail views
+junk=Ανεπιθύμητα
+
+# for junk score origin picker in search and mail views
+junkScoreOriginPlugin=Άρθρωμα
+junkScoreOriginFilter=Φίλτρο
+junkScoreOriginWhitelist=Λευκή λίστα
+junkScoreOriginUser=Χρήστης
+junkScoreOriginImapFlag=Σημαία IMAP
+
+# for the has attachment picker in search and mail views
+hasAttachments=Έχει συνημμένα
+
+# for the Tag picker in search and mail views.
+tag=Ετικέτες
+
+# LOCALIZATION NOTE(andOthers):
+# for multiple authors, add this abbreviation to the first author to indicate
+# there are more; for the From column in the threadpane message list.
+andOthers=κ.ά.
+
+# mailnews.js
+mailnews.send_default_charset=UTF-8
+mailnews.view_default_charset=ISO-8859-1
+
+# whether to generate display names in last first order
+# LOCALIZATION NOTE(mail.addr_book.displayName.lastnamefirst):
+# the only valid values are: true OR false (choose from the untranslated English words)
+mail.addr_book.displayName.lastnamefirst=false
+
+# whether to also show phonetic fields in the addressbook
+# LOCALIZATION NOTE(mail.addr_book.show_phonetic_fields):
+# the only valid values are: true OR false (choose from the untranslated English words)
+mail.addr_book.show_phonetic_fields=false
+
+# valid format options are:
+# 1: yyyy/mm/dd
+# 2: yyyy/dd/mm
+# 3: mm/dd/yyyy
+# 4: mm/yyyy/dd
+# 5: dd/mm/yyyy
+# 6: dd/yyyy/mm
+#
+# 0: auto-detect the current locale format
+# a separator has to be either '/', '-', '.' and the year in Christian year
+# otherwise mm/dd/yyyy (option 3) is used
+#
+mailnews.search_date_format=0
+# separator for search date (e.g. "/", "-"), or empty when search_date_format is zero
+mailnews.search_date_separator=
+# leading zeros for day and month values, not used if mailnews.search_date_format is not zero
+mailnews.search_date_leading_zeros=αληθές
+
+# offline msg
+nocachedbodybody2=Το κύριο σώμα του μηνύματος δεν έχει μεταφορτωθεί από \
+τον διακομιστή για ανάγνωση χωρίς σύνδεση. Για να διαβάσετε αυτό το μήνυμα, \
+θα πρέπει να επανασυνδεθείτε στο δίκτυο, να επιλέξετε Εργασία χωρίς σύνδεση \
+από το μενού Αρχείο και μετά να επιλέξετε Εργασία με σύνδεση. \
+Στο μέλλον, μπορείτε να επιλέγετε τα μηνύματα και τους φακέλους για ανάγνωση χωρίς σύνδεση. Για να \
+κάνετε αυτό, επιλέξτε Χωρίς σύνδεση από το μενού Αρχείο και επιλέξτε Συγχρονισμός. \
+Μπορείτε ακόμα να ρυθμίσετε τον Αποθηκευτικό χώρο, ώστε να μη λαμβάνετε μεγάλα σε μέγεθος \
+μηνύματα.
+
+# LOCALIZATION NOTE(acctCentralTitleFormat): %1$S is brand, %2$S is account type, %3$S is account name
+acctCentralTitleFormat=%1$S %2$S - %3$S
+mailAcctType=Αλληλογραφία
+newsAcctType=Ειδήσεις
+feedsAcctType=Ροές
+
+# LOCALIZATION NOTE(nocachedbodytitle): Do not translate "<TITLE>" or "</TITLE>" in the line below
+nocachedbodytitle=<TITLE>Σύνδεση για να δείτε αυτό το μήνυμα</TITLE>\n
+
+# mailWindowOverlay.js
+confirmUnsubscribeTitle=Επιβεβαίωση ακύρωσης συνδρομής
+confirmUnsubscribeText=Θέλετε σίγουρα να ακυρώσετε τη συνδρομή σας στο %S;
+confirmUnsubscribeManyText=Θέλετε σίγουρα να αποχωρήσετε από αυτές τις ομάδες συζήτησης;
+restoreAllTabs=Επαναφορά όλων των καρτελών
+
+confirmMarkAllFoldersReadTitle=Επισήμανση όλων των φακέλων ως αναγνωσμένων
+confirmMarkAllFoldersReadMessage=Θέλετε σίγουρα να επισημάνετε όλα τα μηνύματα σε όλους τους φακέλους αυτού του λογαριασμού ως αναγνωσμένα;
+
+# LOCALIZATION NOTE(junkBarMessage): %S is brand
+junkBarMessage=Το %S θεωρεί αυτό το μήνυμα ανεπιθύμητο.
+junkBarButton=Όχι ανεπιθύμητη
+junkBarButtonKey=Ο
+junkBarInfoButton=Μάθετε περισσότερα
+junkBarInfoButtonKey=Μ
+
+# LOCALIZATION NOTE(remoteContentBarMessage): %S is brand
+remoteContentBarMessage=Για την προστασία του απορρήτου σας, το %S έχει αποκλείσει το απομακρυσμένο περιεχόμενο του μηνύματος.
+remoteContentPrefLabel=Επιλογές
+remoteContentPrefAccesskey=Ε
+remoteContentPrefLabelUnix=Προτιμήσεις
+remoteContentPrefAccesskeyUnix=Π
+
+# LOCALIZATION NOTE(remoteAllowResource): %S is origin
+remoteAllowResource=Αποδοχή απομακρυσμένου περιεχομένου από %S
+# LOCALIZATION NOTE(remoteAllowAll): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# #1 is the number of origins
+remoteAllowAll=Αποδοχή απομακρυσμένου περιεχομένου από την #1 πηγή που εμφανίζεται παραπάνω;Αποδοχή απομακρυσμένου περιεχομένου και από τις #1 πηγές που εμφανίζονται παραπάνω
+
+phishingBarMessage=Το μήνυμα μπορεί να αποτελεί απάτη.
+phishingBarPrefLabel=Επιλογές
+phishingBarPrefAccesskey=Ε
+phishingBarPrefLabelUnix=Προτιμήσεις
+phishingBarPrefAccesskeyUnix=Π
+
+mdnBarIgnoreButton=Αγνόηση αίτησης
+mdnBarIgnoreButtonKey=ν
+mdnBarSendReqButton=Αποστολή αποδεικτικού
+mdnBarSendReqButtonKey=Δ
+
+draftMessageMsg=Αυτό είναι ένα πρόχειρο μήνυμα.
+draftMessageButton=Επεξεργασία
+draftMessageButtonKey=Ε
+
+# msgHdrViewOverlay.js
+openLabel=Άνοιγμα
+openLabelAccesskey=Ά
+saveLabel=Αποθήκευση ως…
+saveLabelAccesskey=θ
+detachLabel=Απόσπαση…
+detachLabelAccesskey=σ
+deleteLabel=Διαγραφή
+deleteLabelAccesskey=γ
+openFolderLabel=Άνοιγμα φακέλου αποθήκευσης
+openFolderLabelAccesskey=φ
+deleteAttachments=Τα ακόλουθα συνημμένα θα διαγραφούν οριστικά από αυτό το μήνυμα:\n%S\nΑυτή η ενέργεια δεν είναι αναστρέψιμη. Θέλετε να συνεχίσετε;
+detachAttachments=Τα ακόλουθα συνημμένα αποθηκεύτηκαν με επιτυχία και τώρα θα διαγραφούν μόνιμα από αυτό το μήνυμα:\n%S\nΑυτή η ενέργεια δεν είναι αναστρέψιμη. Θέλετε να συνεχίσετε;
+deleteAttachmentFailure=Αποτυχία διαγραφής των επιλεγμένων συνημμένων.
+emptyAttachment=Αυτό το συνημμένο φαίνεται να είναι κενό. Παρακαλώ ελέγξτε αν ο αποστολέας το έστειλε σωστά..\nΣυχνά οι εταιρικοί firewalls ή τα προγράμματα προστασίας ιών καταστρέφουν τα συνημμένα.
+externalAttachmentNotFound=Αυτό το απεσταλμένο συνημμένο αρχείο ή σύνδεσμος δεν βρίσκεται ή δεν είναι προσβάσιμο σε αυτή την τοποθεσία πλέον.
+
+# LOCALIZATION NOTE (attachmentCount): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# #1 number of attachments
+attachmentCount=#1 συνημμένο;#1 συνημμένα
+
+# LOCALIZATION NOTE (attachmentCountSingle): This is the format for the
+# attachment header when a message has only one attachment. This is separate
+# from attachmentCount above, since attachmentCountSingle typically ends with a
+# colon.
+attachmentCountSingle=1 συνημμένο:
+
+# LOCALIZATION NOTE (attachmentSizeUnknown): The string to show for the total
+# size of all attachments when none of the attachments' sizes can be detected.
+attachmentSizeUnknown=άγνωστο μέγεθος
+
+# LOCALIZATION NOTE (attachmentSizeAtLeast): The string to show for the total
+# size of all attachments when at least one (but not all) of the attachments'
+# sizes can't be detected. %1$S is the formatted size.
+attachmentSizeAtLeast=τουλάχιστον %1$S
+
+# This is the format for prepending accesskeys to the
+# each of the attachments in the file|attachments menu:
+# ie: 1 file.txt
+# 2 another file.txt
+attachmentDisplayNameFormat=%S %S
+
+# This is the heading for the attachment summary when printing an email
+attachmentsPrintHeader=Συνημμένα:
+
+# Connection Error Messages
+# LOCALIZATION NOTE(unknownHostError): %S is the server name
+unknownHostError=Αποτυχία σύνδεσης με το διακομιστή %S.
+# LOCALIZATION NOTE(connectionRefusedError): %S is the server name
+connectionRefusedError=Δεν ήταν δυνατή η σύνδεση με το διακομιστή %S. Η σύνδεση απορρίφθηκε.
+# LOCALIZATION NOTE(netTimeoutError): %S is the server name
+netTimeoutError=Έληξε ο χρόνος σύνδεσης με το διακομιστή %S.
+# LOCALIZATION NOTE(netResetError): %S is the server name
+netResetError=Η σύνδεση με το διακομιστή %S επαναρχικοποιήθηκε.
+# LOCALIZATION NOTE(netInterruptError): %S is the server name
+netInterruptError=Η σύνδεση με το διακομιστή %S διακόπηκε.
+
+recipientSearchCriteria=Θέμα ή Παραλήπτης περιέχει:
+fromSearchCriteria=Θέμα ή αποστολέας περιέχει
+
+# LOCALIZATION NOTE(biffNotification): %1$S is the number of new messages
+biffNotification_message=έχει %1$S νέο μήνυμα
+biffNotification_messages=έχει %1$S νέα μηνύματα
+
+# LOCALIZATION NOTE(newMailNotification_message): %1$S is the name of the account %2$S is the number of new messages
+newMailNotification_message=%1$S έχει %2$S νέο μήνυμα
+
+# LOCALIZATION NOTE(newMailNotification_messages): %1$S is the name of the account %2$S is the number of new messages
+newMailNotification_messages=%1$S έχει %2$S νέα μηνύματα
+
+# LOCALIZATION NOTE(newMailNotification_messagetitle): %1$S is subject of new message and %2$S is sender of new message.
+# This is UNIX only
+newMailNotification_messagetitle=%1$S από %2$S
+
+# LOCALIZATION NOTE(newMailAlert_message):
+# Semi-colon list of plural forms. See:
+# https://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the name of the account, #2 is the number of new messages
+newMailAlert_message=Ελήφθη #2 νέο μήνυμα στο #1;Ελήφθησαν #2 νέα μηνύματα στο #1
+
+# LOCALIZATION NOTE(macBiffNotification is Mac only):
+# %1$S is the number of new messages
+# %2$S is a list of names and/or email addresses separated by biffNotification_separator
+# %3$S is the number of new messages not displayed in the biff alert
+macBiffNotification_message=%1$S νέο μήνυμα από %2$S.
+macBiffNotification_messages=%1$S νέα μηνύματα από %2$S.
+macBiffNotification_messages_extra=%1$S νέα μηνύματα από %2$S και %3$S.
+# Used to separate names/email addresses in a list. Note the trailing space ', '
+macBiffNotification_separator=,\u0020
+
+# For the Quota tab in the mail folder properties dialog
+quotaPercentUsed=%S%% πληρότητα
+# for quota in main window (commandglue.js)
+percent=%S%%
+quotaTooltip2=Όριο IMAP: %S σε χρήση από %S συνολικά. Κάντε κλικ για λεπτομέρειες.
+
+# for message views
+confirmViewDeleteTitle=Επιβεβαίωση
+confirmViewDeleteMessage=Θέλετε σίγουρα να διαγράψετε αυτή την προβολή;
+
+# for virtual folders
+confirmSavedSearchTitle=Επιβεβαίωση διαγραφής
+confirmSavedSearchDeleteMessage=Θέλετε σίγουρα να διαγράψετε αυτή την αποθηκευμένη αναζήτηση;
+
+## @name ENTER_PASSWORD_PROMPT
+## @loc None
+# LOCALIZATION NOTE (passwordPrompt): Do not translate the word %S below.
+# Place the word "%S" in your translation where the email address
+# or the username should appear
+passwordPrompt=Εισάγετε τον κωδικό πρόσβασής σας για το %1$S στο %2$S:
+
+## @name ENTER_PASSWORD_PROMPT_TITLE
+## @loc None
+passwordTitle=Απαιτείται κωδικός διακομιστή αλληλογραφίας
+
+# for checking if the user really wants to open lots of messages in separate windows.
+openWindowWarningTitle=Επιβεβαίωση
+# LOCALIZATION NOTE (openWindowWarningConfirmation): Semi-colon list of plural forms.
+# #1 is the number of messages the user is attempting to open.
+openWindowWarningConfirmation=Το άνοιγμα #1 μηνυμάτος μπορεί να καθυστερήσει. Συνέχεια?; Το άνοιγμα #1 μηνυμάτων μπορεί να καθυστερήσει. Συνέχεια?
+
+# for checking if the user really wants to open lots of messages in tabs.
+openTabWarningTitle=Επιβεβαίωση
+# LOCALIZATION NOTE (openTabWarningConfirmation): Semi-colon list of plural forms.
+# #1 is the number of messages the user is attempting to open.
+openTabWarningConfirmation=Το άνοιγμα #1 μηνύματος μπορεί να καθυστερήσει. Θέλετε να συνεχίσετε;;Το άνοιγμα #1 μηνυμάτων μπορεί να καθυστερήσει. Θέλετε να συνεχίσετε;
+
+# for warning the user that a tag they're trying to create already exists
+tagExists=Υπάρχει ήδη ετικέτα με αυτό το όνομα.
+
+# title of the edit tag dialog
+editTagTitle=Επεξεργασία ετικέτας
+
+# for the virtual folder list dialog title
+# %S is the name of the saved search folder
+editVirtualFolderPropertiesTitle=Επεξεργασία ιδιοτήτων αποθηκευμένης αναζήτησης για %S
+# LOCALIZATION NOTE (foldersChosen): #1 number of chosen folders
+virtualFolderSourcesChosen=Επιλέχθηκε #1 φάκελος;Επιλέχθηκαν #1 φάκελοι
+
+#alert to inform the user to choose one or more folders to search for a saved search folder
+alertNoSearchFoldersSelected=Θα πρέπει να επιλέξετε τουλάχιστον έναν φάκελο για να κάνετε αναζήτηση για τον αποθηκευμένο φάκελο αναζήτησης.
+
+# These are displayed in the message and folder pane windows
+# LOCALIZATION NOTE %.*f is the abbreviated size in the appropriate units
+byteAbbreviation2=%.*f bytes
+kiloByteAbbreviation2=%.*f KB
+megaByteAbbreviation2=%.*f MB
+gigaByteAbbreviation2=%.*f GB
+teraByteAbbreviation2=%.*f TB
+petaByteAbbreviation2=%.*f PB
+
+## LOCALIZATION NOTE(folderWithAccount):
+## This is used to show folder name together with an account name.
+## %1$S = folder name
+## %2$S = account name
+folderWithAccount=%1$S - %2$S
+## LOCALIZATION NOTE(folderWithUnreadMsgs):
+## This is a concatenation of two strings to compose a folder label with unread messages.
+## %1$S = folder name
+## %2$S = count of unread messages
+folderWithUnreadMsgs=%1$S (%2$S)
+## LOCALIZATION NOTE(summarizedValue):
+## This string shows an indication that the value shown is actually a summary
+## accumulated from all subfolders.
+## %S = summarized value from all subfolders
+folderSummarizedSymbolValue=▾%S
+## LOCALIZATION NOTE(subfoldersExplanation):
+## This is a tooltip message shown on the values in the numeric folder pane columns.
+## %1$S = is the count of messages having the respective property, found in the folder under mouse cursor
+## %2$S = is the count of messages having the respective property, found in subfolders of the folder under mouse cursor
+subfoldersExplanation=%1$S σε αυτόν τον φάκελο, %2$S στους υποφακέλους
+
+# Error message if message for a message id wasn't found
+errorOpenMessageForMessageIdTitle=Σφάλμα ανοίγματος message-id
+errorOpenMessageForMessageIdMessage=Μήνυμα για message-id %S δεν βρέθηκε
+
+# Warnings to alert users about phishing urls
+confirmPhishingTitle=Προειδοποίηση απάτης μέσω email
+linkMismatchTitle=Ανιχνεύθηκε μη αντιστοιχία συνδέσμου
+#LOCALIZATION NOTE %1$S is the brand name, %2$S is the host name of the url being visited
+confirmPhishingUrl=Το %1$S πιστεύει ότι αυτό το μήνυμα είναι απάτη. Οι σύνδεσμοι του μηνύματος ίσως προσπαθήσουν να μιμηθούν ιστοσελίδες που θέλετε να επισκεφθείτε. Θέλετε σίγουρα να επισκεφθείτε το %2$S;
+#LOCALIZATION NOTE %1$S is the host name of indicated host, %2$S is the host name of the actual host.
+confirmPhishingUrlAlternate=Ο σύνδεσμος που μόλις επιλέξατε φαίνεται ότι οδηγεί σε μια άλλη ιστοσελίδα από αυτή που υποδεικνύει το κείμενό του. Αυτό χρησιμοποιείται μερικές φορές για να διαπιστωθεί αν κάνατε κλικ στο σύνδεσμο, αλλά θα μπορούσε να είναι απάτη.\n\nΤο κείμενο του συνδέσμου υποδεικνύει ότι ο σύνδεσμος οδηγεί στο %1$S, αλλά οδηγεί στο %2$S.
+#LOCALIZATION NOTE $1$S is the host name of the indicated host.
+confirmPhishingGoAhead=Μετάβαση στο %1$S ούτως ή άλλως
+#LOCALIZATION NOTE %1$S is the host name that was displayed to the user.
+confirmPhishingGoDirect=Μετάβαση στο %1$S
+
+# Check for Updates
+# LOCALIZATION NOTE (updatesItem_*): these are alternative labels for Check for Update item in Help menu.
+# Which one is used depends on Update process state.
+updatesItem_default=Έλεγχος για ενημερώσεις…
+updatesItem_defaultFallback=Έλεγχος για ενημερώσεις…
+updatesItem_default.accesskey=γ
+updatesItem_downloading=Λήψη %S…
+updatesItem_downloadingFallback=Λήψη ενημέρωσης…
+updatesItem_downloading.accesskey=ψ
+updatesItem_resume=Συνέχιση λήψης %S…
+updatesItem_resumeFallback=Συνέχιση λήψης ενημέρωσης…
+updatesItem_resume.accesskey=Σ
+updatesItem_pending=Εφαρμογή ληφθείσας ενημέρωσης τώρα…
+updatesItem_pendingFallback=Εφαρμογή ληφθείσας ενημέρωσης τώρα…
+updatesItem_pending.accesskey=φ
+
+# Folder Pane Header Title Strings
+folderPaneModeHeader_all=Όλοι οι φάκελοι
+folderPaneModeHeader_unread=Μη αναγνωσμένοι φάκελοι
+folderPaneModeHeader_unread_compact=Μη αναγνωσμένοι φάκελοι - Συμπτυγμένη όψη
+folderPaneModeHeader_favorite=Αγαπημένοι φάκελοι
+folderPaneModeHeader_favorite_compact=Αγαπημένοι φάκελοι - Συμπτυγμένη όψη
+folderPaneModeHeader_recent=Πρόσφατοι φάκελοι
+folderPaneModeHeader_recent_compact=Πρόσφατοι φάκελοι - Συμπτυγμένη όψη
+folderPaneModeHeader_smart=Ενοποιημένοι φάκελοι
+unifiedAccountName=Ενοποιημένοι φάκελοι
+
+# Copy / Move to Folder Again
+#LOCALIZATION NOTE %1$S is the name of the folder we will move to. moveToFolderAgainAccessKey
+# should have the same value as copyToFolderAgainAccessKey as they are the same menu item in the UI
+# moveToFolderAgainAccessKey should also be a letter that occurs before %1$S
+moveToFolderAgain=Μετακίνηση στο "%1$S" ξανά
+moveToFolderAgainAccessKey=τ
+#LOCALIZATION NOTE %1$S is the name of the folder we will copy to
+# copyToFolderAgainAccessKey
+# should have the same value as moveToFolderAgainAccessKey as they are the same menu item in the UI
+# copyToFolderAgainAccessKey should also be a letter that occurs before %1$S
+copyToFolderAgain=Αντιγραφή στο "%1$S" ξανά
+copyToFolderAgainAccessKey=γ
+
+#LOCALIZATION NOTE(mdnBarMessageNormal) %1$S is the name of the sender
+mdnBarMessageNormal=Ο %1$S έχει ζητήσει να ειδοποιηθεί όταν διαβάσετε το μήνυμα.
+#LOCALIZATION NOTE(mdnBarMessageAddressDiffers) %1$S is the name of the sender, %2$S is the address(es) to send return receipt to
+mdnBarMessageAddressDiffers=Ο %1$S έχει ζητήσει να ειδοποιηθεί (σε %2$S) όταν διαβάσετε το μήνυμα.
+
+# mailCommands.js
+emptyJunkFolderTitle=Διαγραφή «%S»
+emptyJunkFolderMessage=Διαγραφή όλων των μηνυμάτων και των υποφακέλων του φακέλου "Ανεπιθύμητα";
+emptyJunkDontAsk=Να μην ερωτηθώ ξανά.
+emptyTrashFolderTitle=Διαγραφή «%S»
+emptyTrashFolderMessage=Διαγραφή όλων των μηνυμάτων και των υποφακέλων του φακέλου "Απορρίμματα";
+emptyTrashDontAsk=Να μην ερωτηθώ ξανά.
+
+# junkCommands.js
+junkAnalysisPercentComplete=%S Ολοκλήρωση ανάλυσης ανεπιθύμητων
+processingJunkMessages=Διεργασία ανεπιθύμητης αλληλογραφίας
+
+# Messenger bootstrapping messages
+fileNotFoundTitle = Το αρχείο δεν βρέθηκε
+#LOCALIZATION NOTE(fileNotFoundMsg): %S is the filename
+fileNotFoundMsg = Το αρχείο %S δεν υπάρχει.
+
+fileEmptyTitle = Κενό αρχείο
+#LOCALIZATION NOTE(fileEmptyMsg): %S is the filename
+fileEmptyMsg = Το αρχείο %S είναι κενό.
+
+# LOCALIZATION NOTE (headerMoreAddrs): semicolon separated list of plural
+# forms of the word "more" as used after the number of addresses
+# currently hidden while displaying a header such as "to", "cc", or "bcc"
+# in the message header box. English has two identical forms here, so it will
+# construct strings that look like (for example) "1 more" or "20 more".
+# <https://developer.mozilla.org/en/Localization_and_Plurals> has details
+# on this mechanism.
+headerMoreAddrs=#1 ακόμα;#1 ακόμα
+
+# LOCALIZATION NOTE (headerMoreAddrsTooltip): semicolon separated list of
+# plural forms of the phrase ", and #1 more" as used in the tooltip text
+# of the more widget displayed in the header pane (see headerMoreAddrs).
+# English has two identical forms here, so it will construct strings that
+# look like (for example) ", and 1 more" or ", and 20 more".
+# <https://developer.mozilla.org/en/Localization_and_Plurals> has details
+# on this mechanism.
+headerMoreAddrsTooltip=και #1 περισσότερο; και #1 περισσότερα
+
+# LOCALIZATION NOTE (headertoFieldMe): first person prepositional object
+# pronoun used in the "to" header of the message header pane. This is also
+# used for the fallback case if a header-specific localization is not
+# available.
+headertoFieldMe=Εμένα
+
+# LOCALIZATION NOTE (headerfromFieldMe): first person prepositional object
+# pronoun used in the "from" header of the message header pane.
+headerfromFieldMe=Εμένα
+
+# LOCALIZATION NOTE (headerreply-toFieldMe): first person prepositional
+# object pronoun used in the "reply-to" header of the message header pane.
+headerreply-toFieldMe=Εμένα
+
+# LOCALIZATION NOTE (headerccFieldMe): first person prepositional object
+# pronoun used in the "cc" header of the message header pane.
+headerccFieldMe=Εμένα
+
+# LOCALIZATION NOTE (headerbccFieldMe): first person prepositional object
+# pronoun used in the "bcc" header of the message header pane.
+headerbccFieldMe=Εμένα
+
+expandAttachmentPaneTooltip=Εμφάνιση του πίνακα συνημμένων
+collapseAttachmentPaneTooltip=Απόκρυψη του πίνακα συνημμένων
+
+# Shown when content tabs are being loaded.
+loadingTab=Φόρτωση…
+
+confirmMsgDelete.title=Επιβεβαίωση διαγραφής
+confirmMsgDelete.collapsed.desc=Θα γίνει διαγραφή των μηνυμάτων στα συμπτυγμένα νήματα. Θέλετε σίγουρα να συνεχίσετε;
+confirmMsgDelete.deleteNoTrash.desc=Θα γίνει άμεσα διαγραφή των μηνυμάτων, χωρίς αποθήκευση αντιγράφου στα Απορρίμματα. Θέλετε σίγουρα να συνεχίσετε;
+confirmMsgDelete.deleteFromTrash.desc=Θα γίνει οριστική διαγραφή των μηνυμάτων από τα Απορρίμματα. Θέλετε σίγουρα να συνεχίσετε;
+confirmMsgDelete.dontAsk.label=Να μην ερωτηθώ ξανά.
+confirmMsgDelete.delete.label=Διαγραφή
+
+mailServerLoginFailedTitle=Αποτυχία σύνδεσης
+# LOCALIZATION NOTE (mailServerLoginFailedTitleWithAccount):
+# "%S" is the account name.
+mailServerLoginFailedTitleWithAccount=Η είσοδος στο λογαριασμό "%S" απέτυχε
+# LOCALIZATION NOTE (mailServerLoginFailed2):
+# %1$S is the host name of the server, %2$S is the user name.
+mailServerLoginFailed2=Η είσοδος στο διακομιστή %1$S με το όνομα χρήστη %2$S απέτυχε.
+mailServerLoginFailedRetryButton=&Επανάληψη
+mailServerLoginFailedEnterNewPasswordButton=&Εισαγωγή νέου κωδικού πρόσβασης
+
+# LOCALIZATION NOTE (threadPane.columnPicker.confirmFolder.noChildren.title):
+# When the user selects a folder to apply the currently displayed columns to
+# via the "columnPicker.applyToFolder.label" menu option, this is the title of
+# the confirmation dialog used to verify they selected the correct folder. This
+# is the case in which we apply the columns only to the folder and not to any of
+# its children.
+threadPane.columnPicker.confirmFolder.noChildren.title=Εφαρμογή των αλλαγών;
+# LOCALIZATION NOTE (threadPane.columnPicker.confirmFolder.noChildren.message):
+# When the user selects a folder to apply the currently displayed columns to
+# via the "columnPicker.applyToFolder.label" menu option, this is the text of
+# the confirmation dialog used to verify they selected the correct folder. The
+# string '%S' is replaced with the name of the folder the user selected in
+# order to help them confirm they picked what they thought they picked. This
+# is the case in which we apply the columns only to the folder and not to any of
+# its children.
+threadPane.columnPicker.confirmFolder.noChildren.message=Εφαρμογή των στηλών του τρέχοντος φακέλου στον %S;
+
+# LOCALIZATION NOTE (threadPane.columnPicker.confirmFolder.withChildren.title):
+# When the user selects a folder to apply the currently displayed columns to via
+# the "columnPicker.applyToFolderAndChildren.label" menu option, this is the
+# title of the confirmation dialog used to verify they selected the correct
+# folder. This is the case in which we apply the columns to the folder and all
+# of its children.
+threadPane.columnPicker.confirmFolder.withChildren.title=Εφαρμογή των αλλαγών;
+# LOCALIZATION NOTE (threadPane.columnPicker.confirmFolder.withChildren.message):
+# When the user selects a folder to apply the currently displayed columns to via
+# the "columnPicker.applyToFolderAndChildren.label" menu option, this is the
+# text of the confirmation dialog used to verify they selected the correct
+# folder. The string '%S' is replaced with the name of the folder the user
+# selected in order to help them confirm they picked what they thought they
+# picked. This is the case in which we apply the columns to the folder and all
+# of its children.
+threadPane.columnPicker.confirmFolder.withChildren.message=Εφαρμογή των στηλών του τρέχοντος φακέλου στον %S και τους υποφακέλους του;
+
+# LOCALIZATION NOTE (lwthemeInstallRequest.message): %S will be replaced with
+# the host name of the site.
+lwthemeInstallRequest.message=Αυτή η σελίδα (%S) προσπάθησε να εγκαταστήσει ένα θέμα.
+lwthemeInstallRequest.allowButton=Να επιτρέπεται
+lwthemeInstallRequest.allowButton.accesskey=ε
+
+lwthemePostInstallNotification.message=Εγκαταστάθηκε ένα νέο θέμα.
+lwthemePostInstallNotification.undoButton=Αναίρεση
+lwthemePostInstallNotification.undoButton.accesskey=ν
+lwthemePostInstallNotification.manageButton=Διαχείριση θεμάτων…
+lwthemePostInstallNotification.manageButton.accesskey=χ
+
+# safeModeRestart
+safeModeRestartPromptTitle=Επανεκκίνηση με ανενεργά πρόσθετα
+safeModeRestartPromptMessage=Θέλετε σίγουρα να απενεργοποιήσετε όλα τα πρόσθετα και να κάνετε επανεκκίνηση;
+safeModeRestartButton=Επανεκκίνηση
+
+# LOCALIZATION NOTE (downloadAndInstallButton.label): %S is replaced by the
+# version of the update: "Update to 28.0".
+update.downloadAndInstallButton.label=Ενημέρωση σε %S
+update.downloadAndInstallButton.accesskey=Η
+
+# Sanitize
+# LOCALIZATION NOTE (sanitizeDialog2.everything.title): When "Time range to
+# clear" is set to "Everything", the Clear Recent History dialog's title is
+# changed to this. See UI mockup and comment 11 at bug 480169 -->
+sanitizeDialog2.everything.title=Εκκαθάριση όλου του ιστορικού
+sanitizeButtonOK=Εκκαθάριση τώρα
+# LOCALIZATION NOTE (sanitizeEverythingWarning2): Warning that appears when
+# "Time range to clear" is set to "Everything" in Clear Recent History dialog,
+# provided that the user has not modified the default set of history items to clear.
+sanitizeEverythingWarning2=Όλο το ιστορικό θα διαγραφεί.
+# LOCALIZATION NOTE (sanitizeSelectedWarning): Warning that appears when
+# "Time range to clear" is set to "Everything" in Clear Recent History dialog,
+# provided that the user has modified the default set of history items to clear.
+sanitizeSelectedWarning=Θα διαγραφούν όλα τα επιλεγμένα στοιχεία.
+
+learnMoreAboutIgnoreThread=Μάθετε περισσότερα…
+learnMoreAboutIgnoreThreadAccessKey = Μ
+undoIgnoreThread=Αναίρεση παράβλεψης νήματος
+undoIgnoreThreadAccessKey=Α
+undoIgnoreSubthread=Αναίρεση παράβλεψης υπονήματος
+undoIgnoreSubthreadAccessKey=Α
+# LOCALIZATION NOTE (ignoredThreadFeedback): #1 is the message thread title
+ignoredThreadFeedback=Δεν θα εμφανίζονται οι απαντήσεις στο νήμα "#1".
+# LOCALIZATION NOTE (ignoredSubthreadFeedback): #1 is the message subthread title
+ignoredSubthreadFeedback=Δεν θα εμφανίζονται οι απαντήσεις στο υπονήμα "#1".
+# LOCALIZATION NOTE (ignoredThreadsFeedback): Semi-colon list of plural forms.
+# #1 is the number of threads
+ignoredThreadsFeedback=Δεν θα εμφανίζονται οι απαντήσεις στο επιλεγμένο νήμα.;Δεν θα εμφανίζονται οι απαντήσεις στα #1 επιλεγμένα νήματα.
+# LOCALIZATION NOTE (ignoredSubthreadsFeedback): Semi-colon list of plural forms.
+# #1 is number of subthreads
+ignoredSubthreadsFeedback=Δεν θα εμφανίζονται οι απαντήσεις στο επιλεγμένο υπονήμα.;Δεν θα εμφανίζονται οι απαντήσεις στα #1 επιλεγμένα υπονήματα.
+# LOCALIZATION NOTE (saveAsType): replace %S with the extension of the file to be saved.
+saveAsType=Αρχείο %S
+
+# LOCALIZATION NOTE (openSearch.label): The label used in the autocomplete
+# widget to refer to a search on the web for a short string containing at most
+# 15 characters. %1$S is the search provider to use. %2$S is the string to
+# search for.
+openSearch.label=Αναζήτηση στο %1$S για "%2$S"
+
+# LOCALIZATION NOTE (openSearch.label.truncated): The label used in the
+# autocomplete widget to refer to a search on the web for a short string
+# containing more than 15 characters. %1$S is the search provider to use. %2$S
+# is the string to search for, truncated to 15 characters.
+openSearch.label.truncated=Αναζήτηση στο %1$S για "%2$S…"
+
+# LOCALIZATION NOTE (aboutDialog.architecture.*):
+# The sixtyFourBit and thirtyTwoBit strings describe the architecture of the
+# current Thunderbird build: 32-bit or 64-bit. These strings are used in parentheses
+# after the Thunderbird version in the About dialog,
+# e.g.: "48.0.2 (32-bit)" or "51.0a1 (2016-09-05) (64-bit)".
+aboutDialog.architecture.sixtyFourBit = 64-bit
+aboutDialog.architecture.thirtyTwoBit = 32-bit
+
+errorConsoleTitle = Κονσόλα σφαλμάτων
+
+# LOCALIZATION NOTE (panel.back):
+# This is used by screen readers to label the "back" button in various browser
+# popup panels, including the sliding subviews of the appmenu.
+panel.back = Πίσω
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EdAdvancedEdit.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EdAdvancedEdit.dtd
new file mode 100644
index 0000000000..a640b76247
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EdAdvancedEdit.dtd
@@ -0,0 +1,18 @@
+<!-- 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 WindowTitle.label "Επεξεργασία προηγμένων ιδιοτήτων">
+<!ENTITY AttName.label "Όνομα:">
+<!ENTITY AttValue.label "Τιμή: ">
+<!ENTITY PropertyName.label "Ιδιότητα:">
+<!ENTITY currentattributesfor.label "Τρέχουσες ιδιότητες για:">
+<!ENTITY tree.attributeHeader.label "Ιδιότητα">
+<!ENTITY tree.propertyHeader.label "Ιδιότητα">
+<!ENTITY tree.valueHeader.label "Τιμή">
+<!ENTITY tabHTML.label "Ιδιότητες HTML">
+<!ENTITY tabCSS.label "Ενσωματωμένο στυλ">
+<!ENTITY tabJSE.label "Γεγονότα JavaScript">
+
+<!ENTITY editAttribute.label "Κάντε κλικ σε ένα στοιχείο από τα παραπάνω για να επεξεργαστείτε την τιμή του">
+<!ENTITY removeAttribute.label "Αφαίρεση">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EdColorPicker.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EdColorPicker.dtd
new file mode 100644
index 0000000000..674ecfdf46
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EdColorPicker.dtd
@@ -0,0 +1,22 @@
+<!-- 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 windowTitle.label "Χρώμα">
+<!ENTITY lastPickedColor.label "Τελευταίο επιλεγμένο χρώμα">
+<!ENTITY lastPickedColor.accessKey "λ">
+<!ENTITY chooseColor1.label "Επιλέξτε χρώμα:">
+<!ENTITY chooseColor2.label "Εισάγετε μια συμβολοσειρά χρώματος HTML">
+<!ENTITY chooseColor2.accessKey "H">
+<!ENTITY setColorExample.label "(π.χ.: &quot;#0000ff&quot; ή &quot;blue&quot;):">
+<!ENTITY default.label "Προεπιλογή">
+<!ENTITY default.accessKey "λ">
+<!ENTITY palette.label "Παλέτα:">
+<!ENTITY standardPalette.label "Κανονική">
+<!ENTITY webPalette.label "Όλα τα χρώματα web">
+<!ENTITY background.label "Φόντο για:">
+<!ENTITY background.accessKey "Φ">
+<!ENTITY table.label "Πίνακας">
+<!ENTITY table.accessKey "π">
+<!ENTITY cell.label "Κελί(α)">
+<!ENTITY cell.accessKey "Κ">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EdConvertToTable.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EdConvertToTable.dtd
new file mode 100644
index 0000000000..08c5b4d5fe
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EdConvertToTable.dtd
@@ -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/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Μετατροπή σε πίνακα">
+<!ENTITY instructions1.label "O composer θα δημιουργεί μια νέα γραμμή πίνακα για κάθε παράγραφο στην επιλογή.">
+<!ENTITY instructions2.label "Επιλέξτε το χαρακτήρα που θα χωρίζει την επιλογή σε στήλες:">
+<!ENTITY commaRadio.label "Κόμμα">
+<!ENTITY spaceRadio.label "Διάστημα">
+<!ENTITY otherRadio.label "Άλλος χαρακτήρας:">
+<!ENTITY deleteCharCheck.label "Διαγραφή διαχωριστικού χαρακτήρα">
+<!ENTITY collapseSpaces.label "Παράβλεψη επιπλέον κενών">
+<!ENTITY collapseSpaces.tooltip "Μετατροπή συνεχόμενων κενών σε ένα διαχωριστικό">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EdDialogOverlay.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EdDialogOverlay.dtd
new file mode 100644
index 0000000000..27c28fcb40
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EdDialogOverlay.dtd
@@ -0,0 +1,18 @@
+<!-- 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 AdvancedEditButton.label "Σύνθετη επεξεργασία…">
+<!ENTITY AdvancedEditButton.accessKey "π">
+<!ENTITY AdvancedEditButton.tooltip "Προσθήκη ή μετατροπή HTML attributes, style attributes, και JavaScript">
+<!ENTITY chooseFileButton.label "Επιλογή αρχείου...">
+<!ENTITY chooseFileButton.accessKey "χ">
+<!ENTITY chooseFileLinkButton.label "Επιλογή αρχείου...">
+<!ENTITY chooseFileLinkButton.accessKey "λ">
+<!ENTITY makeUrlRelative.label "Το URL είναι σχετικό με την τοποθεσία της σελίδας">
+<!ENTITY makeUrlRelative.accessKey "χ">
+<!ENTITY makeUrlRelative.tooltip "Αλλαγή μεταξύ σχετικού και απόλυτου URL. Πρέπει να αποθηκεύσετε πρώτα τη σελίδα για να γίνουν οι αλλαγές.">
+
+<!-- Shared by Link and Image dialogs -->
+<!ENTITY LinkURLEditField2.label "Εισάγετε μια ιστοσελίδα, ένα τοπικό αρχείο, ή επιλέξτε μια επώνυμη άγκυρα ή επικεφαλίδα από το μενού επιλογών του πεδίου:">
+<!ENTITY LinkURLEditField2.accessKey "ι">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EdNamedAnchorProperties.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EdNamedAnchorProperties.dtd
new file mode 100644
index 0000000000..bc784717b8
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EdNamedAnchorProperties.dtd
@@ -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/. -->
+
+<!ENTITY windowTitle.label "Ιδιότητες επώνυμης άγκυρας">
+<!ENTITY anchorNameEditField.label "Όνομα άγκυρας:">
+<!ENTITY anchorNameEditField.accessKey "μ">
+<!ENTITY nameInput.tooltip "Καταχωρίστε ένα μοναδικό όνομα για αυτόν το named anchor (προορισμό)">
+
+
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EditorColorProperties.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EditorColorProperties.dtd
new file mode 100644
index 0000000000..7e16fb7423
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EditorColorProperties.dtd
@@ -0,0 +1,29 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Χρώματα και φόντο σελίδας">
+<!ENTITY pageColors.label "Χρώματα σελίδας">
+<!ENTITY defaultColorsRadio.label "Προεπιλεγμένα χρώματα">
+<!ENTITY defaultColorsRadio.accessKey "γ">
+<!ENTITY defaultColorsRadio.tooltip "Χρήση των ρυθμίσεων χρώματος από το περιηγητή του αναγνώστη μόνο">
+<!ENTITY customColorsRadio.label "Χρήση προσαρμοσμένων χρωμάτων:">
+<!ENTITY customColorsRadio.accessKey "π">
+<!ENTITY customColorsRadio.tooltip "Αυτές οι ρυθμίσεις χρωμάτων υποκαθιστούν τις ρυθμίσεις του περιηγητή">
+
+<!ENTITY normalText.label "Κανονικό κείμενο">
+<!ENTITY normalText.accessKey "ν">
+<!ENTITY linkText.label "Κείμενο διασύνδεσης">
+<!ENTITY linkText.accessKey "δ">
+<!ENTITY activeLinkText.label "Χρώμα ενεργής διασύνδεσης">
+<!ENTITY activeLinkText.accessKey "ε">
+<!ENTITY visitedLinkText.label "Χρώμα αναγνωσμένης διασύνδεσης">
+<!ENTITY visitedLinkText.accessKey "σ">
+<!ENTITY background.label "Φόντο:">
+<!ENTITY background.accessKey "Φ">
+<!ENTITY colon.character ":">
+<!ENTITY backgroundImage.label "Εικόνα φόντου:">
+<!ENTITY backgroundImage.accessKey "κ">
+<!ENTITY backgroundImage.tooltip "Χρήση αρχείου εικόνας ως φόντο για τη σελίδα">
+<!ENTITY backgroundImage.shortenedDataURI "Σύντομα δεδομένα URI (η αντιγραφή θα τοποθετήσει το πλήρες URI στο πρόχειρο)">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EditorHLineProperties.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EditorHLineProperties.dtd
new file mode 100644
index 0000000000..cf655093a9
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EditorHLineProperties.dtd
@@ -0,0 +1,27 @@
+<!-- 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/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Ιδιότητες οριζόντιας γραμμής">
+
+<!ENTITY dimensionsBox.label "Διαστάσεις">
+<!ENTITY heightEditField.label "Ύψος:">
+<!ENTITY heightEditField.accessKey "ψ">
+<!ENTITY widthEditField.label "Πλάτος:">
+<!ENTITY widthEditField.accessKey "Π">
+<!ENTITY pixelsPopup.value "εικονοστοιχεία">
+<!ENTITY alignmentBox.label "Στοίχιση">
+<!ENTITY leftRadio.label "Αριστερά">
+<!ENTITY leftRadio.accessKey "ρ">
+<!ENTITY centerRadio.label "Κέντρο">
+<!ENTITY centerRadio.accessKey "Κ">
+<!ENTITY rightRadio.label "Δεξιά">
+<!ENTITY rightRadio.accessKey "Δ">
+
+<!ENTITY threeDShading.label "Σκίαση 3-D">
+<!ENTITY threeDShading.accessKey "Σ">
+<!ENTITY saveSettings.label "Χρήση ως προεπιλεγμένων">
+<!ENTITY saveSettings.accessKey "ρ">
+<!ENTITY saveSettings.tooltip "Αποθήκευση αυτών των ρυθμίσεων προς χρήση όταν γίνεται εισαγωγή νέων οριζοντίων γραμμών">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EditorImageProperties.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EditorImageProperties.dtd
new file mode 100644
index 0000000000..e40cffeb8e
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EditorImageProperties.dtd
@@ -0,0 +1,79 @@
+<!-- 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/. -->
+
+<!-- These strings are for use specifically in the editor's image and form image dialogs. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Ιδιότητες εικόνας">
+
+<!ENTITY pixelsPopup.value "εικονοστοιχεία">
+
+<!-- These are in the Location tab panel -->
+<!ENTITY locationEditField.label "Τοποθεσία εικόνας:">
+<!ENTITY locationEditField.accessKey "Τ">
+<!ENTITY locationEditField.tooltip "Καταχωρίστε το όνομα αρχείου εικόνας ή την τοποθεσία">
+<!ENTITY locationEditField.shortenedDataURI "Τα δεδομένα URI περικόπηκαν (η αντιγραφή θα αντιγράψει το πλήρες URI στο Πρόχειρο)">
+<!ENTITY title.label "Υπόδειξη:">
+<!ENTITY title.accessKey "β">
+<!ENTITY title.tooltip "Η html ιδιότητα 'title' που προβάλλεται ως υπόδειξη">
+<!ENTITY altText.label "Εναλλακτικό κείμενο:">
+<!ENTITY altText.accessKey "λ">
+<!ENTITY altTextEditField.tooltip "Εισάγετε κείμενο για εμφάνιση στη θέση της εικόνας">
+<!ENTITY noAltText.label "Χωρίς τη χρήση εναλλακτικού κειμένου">
+<!ENTITY noAltText.accessKey "Χ">
+
+<!ENTITY previewBox.label "Προεπισκόπηση εικόνας">
+
+<!-- These controls are in the Dimensions tab panel -->
+<!-- actualSize.label should be same as actualSizeRadio.label + ":" -->
+<!ENTITY actualSize.label "Πραγματικό μέγεθος:">
+<!ENTITY actualSizeRadio.label "Πραγματικό μέγεθος">
+<!ENTITY actualSizeRadio.accessKey "γ">
+<!ENTITY actualSizeRadio.tooltip "Επιστροφή στο πραγματικό μέγεθος της εικόνας.">
+<!ENTITY customSizeRadio.label "Προσαρμοσμένο μέγεθος">
+<!ENTITY customSizeRadio.accessKey "σ">
+<!ENTITY customSizeRadio.tooltip "Αλλαγή του μεγέθους της εικόνας όπως φαίνεται στη σελίδα">
+<!ENTITY heightEditField.label "Ύψος:">
+<!ENTITY heightEditField.accessKey "ψ">
+<!ENTITY widthEditField.label "Πλάτος:">
+<!ENTITY widthEditField.accessKey "Π">
+<!ENTITY constrainCheckbox.label "Περιορισμός">
+<!ENTITY constrainCheckbox.accessKey "ε">
+<!ENTITY constrainCheckbox.tooltip "Διατήρηση των αναλογιών της εικόνας">
+
+<!-- These controls are in the Image Map box of the expanded area -->
+<!ENTITY imagemapBox.label "Χάρτης εικόνας">
+<!ENTITY removeImageMapButton.label "Αφαίρεση">
+<!ENTITY removeImageMapButton.accessKey "φ">
+
+<!-- These are the options for image alignment -->
+<!ENTITY alignment.label "Στοίχιση κειμένου στην εικόνα">
+<!ENTITY bottomPopup.value "Από κάτω">
+<!ENTITY topPopup.value "Πρός τα πάνω">
+<!ENTITY centerPopup.value "Στο μέσο">
+<!ENTITY wrapRightPopup.value "Αναδίπλωση στα δεξιά">
+<!ENTITY wrapLeftPopup.value "Αναδίπλωση στα αριστερά">
+
+<!-- These controls are in the Spacing Box -->
+<!ENTITY spacingBox.label "Διάταξη">
+<!ENTITY leftRightEditField.label "Αριστερά και δεξιά:">
+<!ENTITY leftRightEditField.accessKey "ρ">
+<!ENTITY topBottomEditField.label "Πάνω και κάτω:">
+<!ENTITY topBottomEditField.accessKey "ω">
+<!ENTITY borderEditField.label "Μαύρο πλαίσιο:">
+<!ENTITY borderEditField.accessKey "Μ">
+
+<!-- These controls are in the Link Box -->
+<!ENTITY showImageLinkBorder.label "Προβολή πλαισίου γύρω από εικόνα με δεσμό">
+<!ENTITY showImageLinkBorder.accessKey "β">
+<!ENTITY LinkAdvancedEditButton.label "Προηγμένη επεξεργασία συνδέσμου…">
+<!ENTITY LinkAdvancedEditButton.accessKey "δ">
+<!ENTITY LinkAdvancedEditButton.tooltip "Προσθήκη ή τροποποίηση γνωρισμάτων στυλ, HTML και JavaScript">
+
+<!-- These tabs are currently used in the image input dialog -->
+<!ENTITY imageInputTab.label "Φόρμα">
+<!ENTITY imageLocationTab.label "Τοποθεσία">
+<!ENTITY imageDimensionsTab.label "Διαστάσεις">
+<!ENTITY imageAppearanceTab.label "Εμφάνιση">
+<!ENTITY imageLinkTab.label "Σύνδεσμος">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EditorInsertChars.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EditorInsertChars.dtd
new file mode 100644
index 0000000000..94f3ed3f81
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EditorInsertChars.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/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Εισαγωγή χαρακτήρα">
+<!ENTITY category.label "Κατηγορία">
+<!ENTITY letter.label "Γράμμα:">
+<!ENTITY letter.accessKey "Γ">
+<!ENTITY character.label "Χαρακτήρας:">
+<!ENTITY character.accessKey "Χ">
+<!ENTITY accentUpper.label "Κεφαλαία με τόνο">
+<!ENTITY accentLower.label "Πεζά με τόνο">
+<!ENTITY otherUpper.label "Άλλα κεφαλαία">
+<!ENTITY otherLower.label "Άλλα πεζά">
+<!ENTITY commonSymbols.label "Κοινά σύμβολα">
+<!ENTITY insertButton.label "Εισαγωγή">
+<!ENTITY closeButton.label "Κλείσιμο">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EditorInsertMath.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EditorInsertMath.dtd
new file mode 100644
index 0000000000..47f5be72af
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EditorInsertMath.dtd
@@ -0,0 +1,21 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Εισαγωγή μαθηματικού τύπου">
+
+<!ENTITY sourceEditField.label "Εισάγετε πηγαίο κώδικα LaTeX:">
+
+<!ENTITY options.label "Επιλογές">
+<!ENTITY optionInline.label "Λειτουργία εντός γραμμής">
+<!ENTITY optionInline.accesskey "γ">
+<!ENTITY optionDisplay.label "Λειτουργία προβολής">
+<!ENTITY optionDisplay.accesskey "Λ">
+<!ENTITY optionLTR.label "Κατεύθυνση αριστερά προς δεξιά">
+<!ENTITY optionLTR.accesskey "α">
+<!ENTITY optionRTL.label "Κατεύθυνση δεξιά προς αριστερά">
+<!ENTITY optionRTL.accesskey "Κ">
+
+<!ENTITY insertButton.label "Εισαγωγή">
+<!ENTITY insertButton.accesskey "Ε">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EditorInsertSource.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EditorInsertSource.dtd
new file mode 100644
index 0000000000..1833096797
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EditorInsertSource.dtd
@@ -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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Εισαγωγή HTML">
+<!ENTITY sourceEditField.label "Εισάγετε HTML tags και κείμενο:">
+<!ENTITY example.label "Παράδειγμα: ">
+<!-- LOCALIZATION NOTE (exampleOpenTag.label): DONT_TRANSLATE: they are text for HTML tagnames: "<i>" and "</i>" -->
+<!ENTITY exampleOpenTag.label "&lt;i&gt;">
+<!-- LOCALIZATION NOTE (exampleCloseTag.label): DONT_TRANSLATE: they are text for HTML tagnames: "<i>" and "</i>" -->
+<!ENTITY exampleCloseTag.label "&lt;/i&gt;">
+<!ENTITY exampleText.label "Γεια σου, κόσμε!">
+<!ENTITY insertButton.label "Εισαγωγή">
+<!ENTITY insertButton.accesskey "σ">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EditorInsertTOC.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EditorInsertTOC.dtd
new file mode 100644
index 0000000000..b990c8622c
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EditorInsertTOC.dtd
@@ -0,0 +1,16 @@
+<!-- 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 Window.title "Πίνακας περιεχομένων">
+<!ENTITY buildToc.label "Δημιουργία πίνακα περιεχομένων από:">
+<!ENTITY tag.label "Ετικέτα:">
+<!ENTITY class.label "Κλάση:">
+<!ENTITY header1.label "Επίπεδο 1">
+<!ENTITY header2.label "Επίπεδο 2">
+<!ENTITY header3.label "Επίπεδο 3">
+<!ENTITY header4.label "Επίπεδο 4">
+<!ENTITY header5.label "Επίπεδο 5">
+<!ENTITY header6.label "Επίπεδο 6">
+<!ENTITY makeReadOnly.label "Δημιουργία πίνακα περιεχομένων μόνο για ανάγνωση">
+<!ENTITY orderedList.label "Αριθμός όλων των καταχωρήσεων στον πίνακα περιεχομένων">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EditorInsertTable.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EditorInsertTable.dtd
new file mode 100644
index 0000000000..2a1654e83f
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EditorInsertTable.dtd
@@ -0,0 +1,18 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Εισαγωγή πίνακα">
+
+<!ENTITY size.label "Μέγεθος">
+<!ENTITY numRowsEditField.label "Σειρές:">
+<!ENTITY numRowsEditField.accessKey "ρ">
+<!ENTITY numColumnsEditField.label "Στήλες:">
+<!ENTITY numColumnsEditField.accessKey "τ">
+<!ENTITY widthEditField.label "Πλάτος:">
+<!ENTITY widthEditField.accessKey "Π">
+<!ENTITY borderEditField.label "Πλαίσιο:">
+<!ENTITY borderEditField.accessKey "λ">
+<!ENTITY borderEditField.tooltip "Εισάγετε ένα μέγεθος για το πλαίσιο πίνακα, ή εισάγετε μηδέν (0) για χωρίς πλαίσιο">
+<!ENTITY pixels.label "εικονοστοιχεία">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EditorLinkProperties.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EditorLinkProperties.dtd
new file mode 100644
index 0000000000..70efd874c2
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EditorLinkProperties.dtd
@@ -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/. -->
+
+<!ENTITY windowTitle.label "Ιδιότητες συνδέσμου">
+<!ENTITY LinkURLBox.label "Τοποθεσία συνδέσμου">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EditorListProperties.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EditorListProperties.dtd
new file mode 100644
index 0000000000..b9bf9b6f4c
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EditorListProperties.dtd
@@ -0,0 +1,20 @@
+<!-- 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/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Ιδιότητες λίστας">
+
+<!ENTITY ListType.label "Είδος λίστας">
+<!ENTITY bulletStyle.label "Μορφή κουκίδων:">
+<!ENTITY startingNumber.label "Έναρξη σε:">
+<!ENTITY startingNumber.accessKey "ξ">
+<!ENTITY none.value "Κανένα">
+<!ENTITY bulletList.value "Μη αριθμημένη λίστα (με κουκίδες)">
+<!ENTITY numberList.value "Αριθμημένη λίστα">
+<!ENTITY definitionList.value "Λίστα ορισμών">
+<!ENTITY changeEntireListRadio.label "Αλλαγή όλης της λίστας">
+<!ENTITY changeEntireListRadio.accessKey "λ">
+<!ENTITY changeSelectedRadio.label "Αλλαγή μόνο των επιλεγμένων αντικειμένων">
+<!ENTITY changeSelectedRadio.accessKey "π">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EditorPersonalDictionary.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EditorPersonalDictionary.dtd
new file mode 100644
index 0000000000..5781b04c6f
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EditorPersonalDictionary.dtd
@@ -0,0 +1,18 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Προσωπικό λεξικό">
+
+<!ENTITY wordEditField.label "Νέα λέξη:">
+<!ENTITY wordEditField.accessKey "Ν">
+<!ENTITY AddButton.label "Προσθήκη">
+<!ENTITY AddButton.accessKey "θ">
+<!ENTITY DictionaryList.label "Λέξεις στο λεξικό:">
+<!ENTITY DictionaryList.accessKey "Λ">
+<!ENTITY RemoveButton.label "Αφαίρεση">
+<!ENTITY RemoveButton.accessKey "φ">
+
+<!ENTITY CloseButton.label "Κλείσιμο">
+<!ENTITY CloseButton.accessKey "Κ">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EditorReplace.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EditorReplace.dtd
new file mode 100644
index 0000000000..253ca8f58b
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EditorReplace.dtd
@@ -0,0 +1,29 @@
+<!-- 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/. -->
+
+<!-- extracted from EdReplace.xul -->
+
+<!-- extracted from EdReplace.xhtml -->
+
+<!ENTITY replaceDialog.title "Εύρεση και αντικατάσταση">
+<!ENTITY findField.label "Εύρεση του κειμένου:">
+<!ENTITY findField.accesskey "κ">
+<!ENTITY replaceField.label "Αντικατάσταση με:">
+<!ENTITY replaceField.accesskey "κ">
+<!ENTITY caseSensitiveCheckbox.label "Ταίριασμα πεζών/κεφαλαίων">
+<!ENTITY caseSensitiveCheckbox.accesskey "Τ">
+<!ENTITY wrapCheckbox.label "Αναδίπλωση γύρω">
+<!ENTITY wrapCheckbox.accesskey "δ">
+<!ENTITY backwardsCheckbox.label "Αναζήτηση προς τα πίσω">
+<!ENTITY backwardsCheckbox.accesskey "π">
+<!ENTITY findNextButton.label "Εύρεση επόμενου">
+<!ENTITY findNextButton.accesskey "π">
+<!ENTITY replaceButton.label "Αντικατάσταση">
+<!ENTITY replaceButton.accesskey "Α">
+<!ENTITY replaceAndFindButton.label "Εύρεση και αντικατάσταση">
+<!ENTITY replaceAndFindButton.accesskey "κ">
+<!ENTITY replaceAllButton.label "Αντικατάσταση όλων">
+<!ENTITY replaceAllButton.accesskey "λ">
+<!ENTITY closeButton.label "Κλείσιμο">
+<!ENTITY closeButton.accesskey "Κ">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EditorSpellCheck.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EditorSpellCheck.dtd
new file mode 100644
index 0000000000..da8d6c626c
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EditorSpellCheck.dtd
@@ -0,0 +1,38 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Ορθογραφικός έλεγχος">
+
+<!ENTITY misspelledWord.label "Λάθος λέξη:">
+<!ENTITY wordEditField.label "Αντικατάσταση με:">
+<!ENTITY wordEditField.accessKey "κ">
+<!ENTITY checkwordButton.label "Έλεγχος λέξης">
+<!ENTITY checkwordButton.accessKey "γ">
+<!ENTITY suggestions.label "Προτάσεις:">
+<!ENTITY suggestions.accessKey "τ">
+<!ENTITY ignoreButton.label "Παράβλεψη">
+<!ENTITY ignoreButton.accessKey "β">
+<!ENTITY ignoreAllButton.label "Παράβλεψη όλων">
+<!ENTITY ignoreAllButton.accessKey "λ">
+<!ENTITY replaceButton.label "Αντικατάσταση ">
+<!ENTITY replaceButton.accessKey "ν">
+<!ENTITY replaceAllButton.label "Αντικατάσταση όλων">
+<!ENTITY replaceAllButton.accessKey "ω">
+<!ENTITY stopButton.label "Διακοπή">
+<!ENTITY stopButton.accessKey "κ">
+<!ENTITY userDictionary.label "Προσωπικό λεξικό:">
+<!ENTITY moreDictionaries.label "Λήψη περισσότερων λεξικών…">
+<!ENTITY addToUserDictionaryButton.label "Προσθήκη λέξης">
+<!ENTITY addToUserDictionaryButton.accessKey "θ">
+<!ENTITY editUserDictionaryButton.label "Επεξεργασία…">
+<!ENTITY editUserDictionaryButton.accessKey "ξ">
+<!ENTITY recheckButton2.label "Επανέλεγχος κειμένου">
+<!ENTITY recheckButton2.accessKey "ε">
+<!ENTITY closeButton.label "Κλείσιμο">
+<!ENTITY closeButton.accessKey "Κ">
+<!ENTITY sendButton.label "Αποστολή">
+<!ENTITY sendButton.accessKey "σ">
+<!ENTITY languagePopup.label "Γλώσσα:">
+<!ENTITY languagePopup.accessKey "Γ">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/EditorTableProperties.dtd b/l10n-el/mail/chrome/messenger/messengercompose/EditorTableProperties.dtd
new file mode 100644
index 0000000000..e20a52e68c
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/EditorTableProperties.dtd
@@ -0,0 +1,75 @@
+<!-- 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 tableWindow.title "Ιδιότητες πίνακα">
+<!ENTITY applyButton.label "Εφαρμογή">
+<!ENTITY applyButton.accesskey "φ">
+<!ENTITY closeButton.label "Κλείσιμο">
+<!ENTITY tableTab.label "Πίνακας">
+<!ENTITY cellTab.label "Κελιά">
+<!ENTITY tableRows.label "Σειρές:">
+<!ENTITY tableRows.accessKey "ρ">
+<!ENTITY tableColumns.label "Στήλες:">
+<!ENTITY tableColumns.accessKey "τ">
+<!ENTITY tableHeight.label "Ύψος:">
+<!ENTITY tableHeight.accessKey "ψ">
+<!ENTITY tableWidth.label "Πλάτος:">
+<!ENTITY tableWidth.accessKey "Π">
+<!ENTITY tableBorderSpacing.label "Πλαίσια και διάστιχο">
+<!ENTITY tableBorderWidth.label "Πλαίσιο:">
+<!ENTITY tableBorderWidth.accessKey "σ">
+<!ENTITY tableSpacing.label "Διάστιχο:">
+<!ENTITY tableSpacing.accessKey "χ">
+<!ENTITY tablePadding.label "Γέμισμα:">
+<!ENTITY tablePadding.accessKey "Γ">
+<!ENTITY tablePxBetwCells.label "εικονοστοιχεία μεταξύ κελιών">
+<!ENTITY tablePxBetwBrdrCellContent.label "εικονοστοιχεία μεταξύ πλαισίου κελιών και περιεχομένου">
+<!ENTITY tableAlignment.label "Στοίχιση πίνακα:">
+<!ENTITY tableAlignment.accessKey "ο">
+<!ENTITY tableCaption.label "Λεζάντα:">
+<!ENTITY tableCaption.accessKey "ζ">
+<!ENTITY tableCaptionAbove.label "Πάνω από τον πίνακα">
+<!ENTITY tableCaptionBelow.label "Κάτω από τον πίνακα">
+<!ENTITY tableCaptionLeft.label "Αριστερά του πίνακα">
+<!ENTITY tableCaptionRight.label "Δεξιά του πίνακα">
+<!ENTITY tableCaptionNone.label "Κανένα">
+<!ENTITY tableInheritColor.label "(Εμφάνιση χρώματος σελίδας)">
+
+<!ENTITY cellSelection.label "Επιλογή">
+<!ENTITY cellSelectCell.label "Κελί">
+<!ENTITY cellSelectRow.label "Γραμμή">
+<!ENTITY cellSelectColumn.label "Στήλη">
+<!ENTITY cellSelectNext.label "Επόμενο">
+<!ENTITY cellSelectNext.accessKey "ν">
+<!ENTITY cellSelectPrevious.label "Προηγούμενο">
+<!ENTITY cellSelectPrevious.accessKey "π">
+<!ENTITY applyBeforeChange.label "Οι τρέχουσες αλλαγές θα εφαρμοσθούν πριν να γίνει αλλαγή στην επιλογή.">
+<!ENTITY cellContentAlignment.label "Στοίχιση περιεχομένου">
+<!ENTITY cellHorizontal.label "Οριζόντια:">
+<!ENTITY cellHorizontal.accessKey "ζ">
+<!ENTITY cellVertical.label "Κάθετη:">
+<!ENTITY cellVertical.accessKey "θ">
+<!ENTITY cellStyle.label "Διαμόρφωση Κελιού:">
+<!ENTITY cellStyle.accessKey "φ">
+<!ENTITY cellNormal.label "Κανονικό">
+<!ENTITY cellHeader.label "Κεφαλίδα">
+<!ENTITY cellTextWrap.label "Αναδίπλωση κειμένου:">
+<!ENTITY cellTextWrap.accessKey "δ">
+<!ENTITY cellWrap.label "Αναδίπλωση">
+<!ENTITY cellNoWrap.label "Χωρίς αναδίπλωση">
+<!ENTITY cellAlignTop.label "Πάνω">
+<!ENTITY cellAlignMiddle.label "Μέση">
+<!ENTITY cellAlignBottom.label "Κάτω">
+<!ENTITY cellAlignJustify.label "Στοίχιση">
+<!ENTITY cellInheritColor.label "(Να φαίνεται το χρώμα του πίνακα)">
+<!ENTITY cellUseCheckboxHelp.label "Xρήση κουμπιών επιλογής για να ρυθμίσετε ποιες ιδιότητες θα εφαρμοστούν σε όλα τα επιλεγμένα κελιά">
+
+<!-- Used in both Table and Cell panels -->
+<!ENTITY size.label "Μέγεθος">
+<!ENTITY pixels.label "εικονοστοιχεία">
+<!ENTITY backgroundColor.label "Χρώμα παρασκηνίου:">
+<!ENTITY backgroundColor.accessKey "χ">
+<!ENTITY AlignLeft.label "Αριστερά">
+<!ENTITY AlignCenter.label "Μέσο">
+<!ENTITY AlignRight.label "Δεξιά">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/askSendFormat.dtd b/l10n-el/mail/chrome/messenger/messengercompose/askSendFormat.dtd
new file mode 100644
index 0000000000..6b191634b2
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/askSendFormat.dtd
@@ -0,0 +1,20 @@
+<!-- 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 askSendFormat.dtd UI for dialog that asks the user, which format to use for sending a message -->
+<!ENTITY windowTitle.label "Ερώτηση Αλληλογραφίας HTML ">
+
+<!ENTITY recipient.label "Μερικοί από τους παραλήπτες δεν είναι καταγεγραμμένοι ως ικανοί να λαμβάνουν HTML">
+
+<!ENTITY question.label "Θέλετε να μετατραπεί το μήνυμα σε μορφή απλού κειμένου, ή θέλετε να το στείλετε ως HTML οπωσδήποτε;">
+
+<!ENTITY plainTextAndHtml.label "Αποστολή σε μορφή απλού κειμένου και HTML.">
+<!ENTITY plainTextAndHtml.accesskey "π">
+<!ENTITY plainTextOnly.label "Αποστολή μόνο σε απλό κείμενο">
+<!ENTITY plainTextOnly.accesskey "λ">
+<!ENTITY htmlOnly.label "Aποστολή μόνο σε HTML">
+<!ENTITY htmlOnly.accesskey "τ">
+
+<!ENTITY send.label "Αποστολή">
+<!ENTITY send.accesskey "σ">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/askSendFormat.properties b/l10n-el/mail/chrome/messenger/messengercompose/askSendFormat.properties
new file mode 100644
index 0000000000..a6d548686d
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/askSendFormat.properties
@@ -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/.
+
+convertibleYes=Το μήνυμα σας μπορεί να μετατραπεί σε απλό κείμενο χωρίς καμιά απώλεια πληροφοριών.
+convertibleAltering=Το μήνυμα σας μπορεί να μετατραπεί σε απλό κείμενο χωρίς καμιά απώλεια σημαντικών πληροφοριών. Όμως, η έκδοση απλού κειμένου θα δείχνει διαφορετική από την έκδοση html.
+convertibleNo=Χρησιμοποιήσατε μορφοποίηση (π.χ. χρώματα) που δεν θα μετατραπούν σε απλό κείμενο.
+recommended=(προτείνεται)
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/composeMsgs.properties b/l10n-el/mail/chrome/messenger/messengercompose/composeMsgs.properties
new file mode 100644
index 0000000000..10e0fae07b
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/composeMsgs.properties
@@ -0,0 +1,493 @@
+# 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/.
+
+#
+# The following are used by the compose back end
+#
+## LOCALIZATION NOTE (unableToOpenFile, unableToOpenTmpFile):
+## %S will be replaced with the name of file that could not be opened
+unableToOpenFile=Δεν είναι δυνατό το άνοιγμα του αρχείου %S.
+unableToOpenTmpFile=Δεν είναι δυνατό το άνοιγμα του προσωρινού αρχείου %S. Ελέγξτε τις ρυθμίσεις του "Προσωρινού καταλόγου".
+unableToSaveTemplate=Αδυναμία αποθήκευσης του μηνύματος σας ως πρότυπο.
+unableToSaveDraft=Αδυναμία αποθήκευσης του μηνύματος σας ως προσχέδιο.
+couldntOpenFccFolder=Δεν μπορεί να ανοιχθεί ο φάκελος Απεσταλμένα. Βεβαιωθείτε ότι οι προτιμήσεις αλληλογραφίας σας είναι σωστές και προσπαθήστε ξανά.
+noSender=Δεν έχει οριστεί αποστολέας. Παρακαλούμε προσθέστε τη διεύθυνση email σας στις ρυθμίσεις λογαριασμού.
+noRecipients=Δεν ορίστηκαν παραλήπτες. Ορίστε έναν παραλήπτη σε ένα πεδίο 'Προς:' ή μια ομάδα συζήτησης σε ένα πεδίο 'Ομάδα:'.
+errorWritingFile=Σφάλμα κατά την εγγραφή του προσωρινού αρχείου.
+
+## LOCALIZATION NOTE (errorSendingFromCommand): argument %s is the Outgoing server (SMTP) response
+errorSendingFromCommand=Προέκυψε σφάλμα κατά την αποστολή email. Ο διακομιστής ηλεκτρονικού ταχυδρομείου απάντησε: %s. Παρακαλούμε βεβαιωθείτε ότι η διεύθυνση email σας είναι σωστή στις ρυθμίσεις λογαριασμού και δοκιμάστε ξανά.
+
+## LOCALIZATION NOTE (errorSendingDataCommand): argument %s is the Outgoing server (SMTP) response
+errorSendingDataCommand=Σφάλμα (SMTP) κατά την αποστολή αλληλογραφίας. Ο διακομιστής αποκρίθηκε: %s
+
+## LOCALIZATION NOTE (errorSendingMessage): argument %s is the Outgoing server (SMTP) response
+errorSendingMessage=Σφάλμα κατά την αποστολή αλληλογραφίας. Ο διακομιστής αλληλογραφίας αποκρίθηκε: %s. Ελέγξτε το μήνυμα και προσπαθήστε ξανά.
+postFailed=Το μήνυμα δεν μπορεί να δημοσιευθεί επειδή απέτυχε η επικοινωνία με τον διακομιστή συζητήσεων. Ίσως ο διακομιστής να μην είναι διαθέσιμος ή να αρνείται συνδέσεις. Ελέγξτε αν οι ρυθμίσεις σας είναι σωστές και προσπαθείστε ξανά.
+errorQueuedDeliveryFailed=Σφάλμα κατά την αποστολή εκκρεμών εξερχομένων μηνυμάτων.
+sendFailed=Η αποστολή του μηνύματος απέτυχε.
+
+## LOCALIZATION NOTE (sendFailedUnexpected): argument %X is a hex error code value
+sendFailedUnexpected=Απέτυχε λόγω μη αναμενόμενου σφάλματος %X. Δεν υπάρχει διαθέσιμη περιγραφή.
+
+## LOCALIZATION NOTE (smtpSecurityIssue): argument %S is the Outgoing server (SMTP) response
+smtpSecurityIssue=Η ρύθμιση που σχετίζεται με το %S θα πρέπει να διορθωθεί.
+
+## LOCALIZATION NOTE (smtpServerError): argument %s is the Outgoing server (SMTP) response
+smtpServerError=Σφάλμα κατά την αποστολή αλληλογραφίας: Σφάλμα στο διακομιστή SMTP. Ο διακομιστής αποκρίθηκε: %s.
+unableToSendLater=Δεν είναι δυνατή η αποθήκευση του μηνύματος για αποστολή αργότερα.
+
+## LOCALIZATION NOTE (communicationsError): argument %d is the error code
+communicationsError=Σφάλμα επικοινωνίας: %d. Προσπαθήστε ξανά.
+dontShowAlert=THIS IS JUST A PLACEHOLDER. YOU SHOULD NEVER SEE THIS STRING.
+
+couldNotGetUsersMailAddress2=Συνέβη ένα σφάλμα κατά την αποστολή του μηνύματος: η διεύθυνση του αποστολέα (From:) δεν ήταν έγκυρη. Επιβεβαιώστε ότι η διεύθυνση ηλεκτρονικού ταχυδρομείου είναι σωστή και δοκιμάστε πάλι.
+couldNotGetSendersIdentity=Συνέβη ένα σφάλμα κατά την αποστολή του μηνύματος: η ταυτότητα του αποστολέα δεν ήταν έγκυρη. Επιβεβαιώστε την παραμετροποίηση της ταυτότητάς σας και δοκιμάστε πάλι.
+
+mimeMpartAttachmentError=Σφάλμα συνημμένου.
+failedCopyOperation=Η αποστολή ήταν επιτυχής, αλλά απέτυχε η αντιγραφή του μηνύματος στο φάκελο Απεσταλμένα.
+nntpNoCrossPosting=Μπορείτε να στείλετε μήνυμα σε ένα μόνο διακομιστή συζητήσεων τη φορά.
+msgCancelling=Ακύρωση…
+sendFailedButNntpOk=Το μήνυμα σας δημοσιεύθηκε στην ομάδα συζήτησης αλλά δεν στάλθηκε στον άλλο παραλήπτη.
+errorReadingFile=Σφάλμα ανάγνωσης αρχείου.
+followupToSenderMessage=Ο συγγραφέας αυτού του μηνύματος έχει ζητήσει να στέλνονται όλες οι απαντήσεις μόνο σε αυτόν. Αν θέλετε να απαντήσετε και στην ομάδα συζήτησης, προσθέστε μια νέα γραμμή στη διευθυνσιοδότηση επιλέξτε Ομάδα συζήτησης από τη λίστα παραληπτών και εισάγετε το όνομα της ομάδας.
+
+## LOCALIZATION NOTE (errorAttachingFile): argument %S is the file name/URI of the object to be attached
+errorAttachingFile=Σφάλμα κατα την επισύναψη του %S. Ελέγξτε αν έχετε πρόσβαση στο αρχείο.
+
+## LOCALIZATION NOTE (incorrectSmtpGreeting): argument %s is the Outgoing server (SMTP) greeting
+incorrectSmtpGreeting=Δημιουργήθηκε σφάλμα κατά την αποστολή αλληλογραφίας: Ο διακομιστής αλληλογραφίας έστειλε μη έγκυρο χαιρετισμό: %s.
+
+## LOCALIZATION NOTE (errorSendingRcptCommand): argument %1$S is the Outgoing server (SMTP) response, argument %2$S is the intended message recipient.
+errorSendingRcptCommand=Σφάλμα κατά την αποστολή αλληλογραφίας. Ο διακομιστής αλληλογραφίας αποκρίθηκε: %1$S. Βεβαιωθείτε για τον παραλήπτη %2$S και προσπαθήστε ξανά.
+
+## LOCALIZATION NOTE (startTlsFailed): argument %S is the Outgoing server (SMTP)
+startTlsFailed=Σφάλμα κατά την αποστολή αλληλογραφίας. Αδυναμία δημιουργίας μιας ασφαλούς σύνδεσης με τον διακομιστή SMTP %S με χρήση STARTTLS, επειδή φάινεται ότι δεν χρησιμοποιεί αυτή την υπηρεσία. Απενεργοποιήστε το STARTTLS για αυτόν τον διακομιστή ή επικοινωνήστε με τον πάροχο της υπηρεσίας.
+
+## LOCALIZATION NOTE (smtpPasswordUndefined): argument %S is the Outgoing server (SMTP) account
+smtpPasswordUndefined=Σφάλμα κατά την αποστολή αλληλογραφίας: Αδυναμία λήψης συνθηματικού για %S. Το μήνυμα δεν στάλθηκε.
+
+## LOCALIZATION NOTE (smtpSendNotAllowed): argument %s is the Outgoing server (SMTP) response
+smtpSendNotAllowed=Προέκυψε σφάλμα κατά την αποστολή email. Ο διακομιστής αλληλογραφίας απάντησε:\n%s.\nΠαρακαλώ βεβαιωθείτε ότι χρησιμοποιείτε τη σωστή ταυτότητα για αποστολή και ότι η τρέχουσα μέθοδος ταυτοποίησης είναι σωστή. Επαληθεύστε ότι επιτρέπεται να στείλετε μέσω αυτού του διακομιστή SMTP με τα τρέχοντα διαπιστευτήριά σας, από το τρέχον δίκτυό σας.
+
+## LOCALIZATION NOTE (smtpTempSizeExceeded): argument %s is the Outgoing server (SMTP) response
+smtpTempSizeExceeded=Το μέγεθος του μηνύματος που προσπαθείτε να στείλετε υπερβαίνει το όριο προσωρινού μεγέθους του διακομιστή. Το μήνυμα δεν στάλθηκε: Προσπαθήστε να μειώσετε το μέγεθος του μηνύματος ή περιμένετε λίγο και προσπαθήστε ξανά. Ο διακομιστής αποκρίθηκε: %s.
+
+## LOCALIZATION NOTE (smtpClientid): argument %s is the Outgoing server (SMTP) response
+smtpClientid=Ο διακομιστής εξερχομένων (SMTP) ανίχνευσε σφάλμα στην εντολή CLIENTID. Το μήνυμα δεν απεστάλη. Ο διακομιστής απάντησε: %s
+
+## LOCALIZATION NOTE (smtpClientidPermission): argument %s is the Outgoing server (SMTP) response
+smtpClientidPermission=Η απάντηση του διακομιστή εξερχομένων (SMTP) στην εντολή CLIENTID υποδεικνύει ότι η συσκευή σας δεν επιτρέπεται να αποστείλει αλληλογραφία. Ο διακομιστής απάντησε: %s
+
+## LOCALIZATION NOTE (smtpPermSizeExceeded1): argument %d is the Outgoing server (SMTP) size limit
+smtpPermSizeExceeded1=Το μέγεθος του μηνύματος που προσπαθείτε να στείλετε υπερβαίνει το όριο μεγέθους (%d bytes) του διακομιστή. Το μήνυμα δεν στάλθηκε: Προσπαθήστε να μειώσετε το μέγεθος του μηνύματος και προσπαθήστε ξανά.
+
+## LOCALIZATION NOTE (smtpPermSizeExceeded2): argument %s is the Outgoing server (SMTP) response
+smtpPermSizeExceeded2=Το μέγεθος του μηνύματος που προσπαθείτε να στείλετε υπερβαίνει το όριο μεγέθους του διακομιστή. Το μήνυμα δεν στάλθηκε: Προσπαθήστε να μειώσετε το μέγεθος του μηνύματος και προσπαθήστε ξανά. Ο διακομιστής αποκρίθηκε: %s.
+
+## LOCALIZATION NOTE (smtpSendFailedUnknownServer): argument %S is the Outgoing server (SMTP)
+smtpSendFailedUnknownServer=Σφάλμα κατά την αποστολή αλληλογραφίας. Ο διακομιστής SMTP %S είναι άγνωστος. Βεβαιωθείτε ότι έχετε εισάγει σωστά τις ρυθμίσεις SMTP και προσπαθήστε ξανά.
+
+## LOCALIZATION NOTE (smtpSendRequestRefused): argument %S is the Outgoing server (SMTP)
+smtpSendRequestRefused=Αδυναμία αποστολής μηνύματος λόγω αποτυχίας σύνδεσης με τον διακομιστή SMTP %S. Ο διακομιστής μπορεί να είναι εκτός λειτουργίας, ή να αρνείται συνδέσεις SMTP. Βεβαιωθείτε ότι έχετε εισάγει σωστά τις ρυθμίσεις SMTP και προσπαθήστε ξανά.
+
+## LOCALIZATION NOTE (smtpSendInterrupted): argument %S is the Outgoing server (SMTP)
+smtpSendInterrupted=Το μήνυμα δεν στάλθηκε επειδή χάθηκε η σύνδεση με τον διακομιστή SMTP %S. Προσπαθήστε ξανά.
+
+## LOCALIZATION NOTE (smtpSendTimeout): argument %S is the Outgoing server (SMTP)
+smtpSendTimeout=Το μήνυμα δεν στάλθηκε επειδή έληξε το όριο χρόνου σύνδεσης με τον διακομιστή SMTP %S. Προσπαθήστε ξανά.
+
+## LOCALIZATION NOTE (smtpSendFailedUnknownReason): argument %S is the Outgoing server (SMTP)
+smtpSendFailedUnknownReason=Σφάλμα κατά την αποστολή αλληλογραφίας. Αδυναμία σύνδεσης με τον διακομιστή SMTP %S για άγνωστο λόγο. Βεβαιωθείτε ότι έχετε εισάγει σωστά τις ρυθμίσεις SMTP και προσπαθήστε ξανά.
+
+# LOCALIZATION NOTE (smtpHintAuthEncryptToPlainNoSsl): %S is the server hostname
+smtpHintAuthEncryptToPlainNoSsl=Αυτός ο διακομιστής SMTP %S δεν υποστηρίζει κρυπτογραφημένους κωδικούς. Αν μόλις ρυθμίσατε τον λογαριασμό, κάντε αλλαγή σε 'Κωδικός με μη ασφαλή μετάδοση' ως 'Μέθοδος πιστοποίησης' στις 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'. Αν λειτουργούσε παλιά και τώρα ξαφνικά δεν λειτουργεί, μάλλον κάποιος προσπαθεί να κλέψει τον κωδικό σας.
+
+# LOCALIZATION NOTE (smtpHintAuthEncryptToPlainSsl): %S is the server hostname
+smtpHintAuthEncryptToPlainSsl=Αυτός ο διακομιστής SMTP %S δεν υποστηρίζει κρυπτογραφημένους κωδικούς. Αν μόλις ρυθμίσατε τον λογαριασμό, κάντε αλλαγή σε 'Κανονικός κωδικός' ως 'Μέθοδος πιστοποίησης' στις 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'.
+
+# LOCALIZATION NOTE (smtpHintAuthPlainToEncrypt): %S is the server hostname
+smtpHintAuthPlainToEncrypt=Αυτός ο διακομιστής SMTP %S δεν υποστηρίζει κωδικούς απλού κειμένου. Αν μόλις ρυθμίσατε τον λογαριασμό, κάντε αλλαγή σε 'Κρυπτογραφημένος κωδικός' ως 'Μέθοδος πιστοποίησης' στις 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'.
+
+# LOCALIZATION NOTE (smtpAuthFailure): %S is the server hostname
+smtpAuthFailure=Αδυναμία πιστοποίησης στο διακομιστή SMTP %S. Ελέγξτε τον κωδικό σας τον και επιβεβαιώστε την 'Μέθοδο πιστοποίησης' στις 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή εξερχομένων (SMTP)'.
+
+# LOCALIZATION NOTE (smtpAuthGssapi): %S is the server hostname
+smtpAuthGssapi=Το Kerberos/GSSAPI ticket δεν έγινε δεκτό από τον διακομιστή SMTP %S. Παρακαλώ ελέγξτε την σύνδεση σας στο Kerberos/GSSAPI realm.
+
+# LOCALIZATION NOTE (smtpAuthMechNotSupported): %S is the server hostname
+smtpAuthMechNotSupported=Ο διακομιστής SMTP %S δεν υποστηρίζει την επιλεγμένη μέθοδο πιστοποίησης. Παρακαλούμε, αλλάξτε την επιλογή 'Μέθοδος πιστοποίησης' στις 'Ρυθμίσεις διακομιστή εξερχομένων (SMTP)'.
+
+# LOCALIZATION NOTE (errorIllegalLocalPart): %s is an email address with an illegal localpart
+errorIllegalLocalPart=Υπάρχουν μη-ASCII χαρακτήρες στο τοπικό μέρος της διεύθυνσης παραλήπτη %s. Αυτό δεν υποστηρίζεται ακόμη. Παρακαλώ αλλάξτε αυτή τη διεύθυνση και δοκιμάστε ξανά.
+
+# LOCALIZATION NOTE (errorIllegalLocalPart2): %s is an email address with an illegal localpart
+errorIllegalLocalPart2=Υπάρχουν μη-ASCII χαρακτήρες στο τοπικό μέρος της διεύθυνσης παραλήπτη %s και ο διακομιστής σας δεν υποστηρίζει SMTPUTF8. Παρακαλούμε αλλάξτε αυτή τη διεύθυνση και δοκιμάστε ξανά.
+
+## Strings used for the save message dialog shown when the user closes a message compose window
+saveDlogTitle=Αποθήκευση μηνύματος
+
+## LOCALIZATION NOTE (saveDlogMessages3): Do not translate the words %1$S and \n.
+## %1$S is replaced by the folder name configured for saving drafts (typically the "Drafts" folder).
+## Translate "Write" to match the translation of item "windowTitleWrite" below.
+saveDlogMessages3=Αποθήκευση μηνύματος στο φάκελο προχείρων σας (%1$S) και κλείσιμο παραθύρου σύνταξης;
+discardButtonLabel=&Απόρριψη αλλαγών
+
+## generics string
+defaultSubject=(χωρίς θέμα)
+chooseFileToAttach=Επισύναψη αρχείων
+genericFailureExplanation=Βεβαιωθείτε ότι οι Προτιμήσεις αλληλογραφίας σας είναι σωστές και προσπαθήστε ξανά.
+
+## LOCALIZATION NOTE (undisclosedRecipients): this string must use only US_ASCII characters
+undisclosedRecipients=undisclosed-recipients
+
+# LOCALIZATION NOTE (chooseFileToAttachViaCloud): %1$S is the cloud
+# provider to save the file to.
+chooseFileToAttachViaCloud=Επισύναψη αρχείου(ων) μέσω %1$S
+
+## Window titles
+# LOCALIZATION NOTE (windowTitleWrite):
+# %1$S is the message subject.
+# %2$S is the application name.
+# Example: Write: Re: Invitation - Thunderbird
+windowTitleWrite=Σύνταξη: %1$S - %2$S
+# LOCALIZATION NOTE (windowTitlePrintPreview):
+# %1$S is the message subject.
+# %2$S is the application name.
+# Example: Print Preview: Re: Invitation - Thunderbird
+windowTitlePrintPreview=Προεπισκόπηση εκτύπωσης: %1$S - %2$S
+
+## From field
+msgIdentityPlaceholder=Εισάγετε προσαρμοσμένη διεύθυνση Αποστολέα για χρήση αντί του %S
+customizeFromAddressTitle=Προσαρμογή Διεύθυνσης Αποστολέα
+customizeFromAddressWarning=Αν ο πάροχος ηλεκτρονικού ταχυδρομείου σας το υποστηρίζει, η προσαρμογή διεύθυνσης αποστολέα σας επιτρέπει να κάνετε μια μικρή αλλαγή στη διεύθυνση αποστολέα, χωρίς να χρειάζεται να δημιουργήσετε νέα ταυτότητα στις ρυθμίσεις λογαριασμού. Για παράδειγμα, αν η διεύθυνση αποστολέα σας είναι John Doe <john@example.com>, μπορείτε να την αλλάξετε σε John Doe <john+doe@example.com> ή John <john@example.com>.
+customizeFromAddressIgnore=Να μην ειδοποιηθώ για αυτό ξανά
+
+## Strings used by the empty subject dialog
+subjectEmptyTitle=Υπενθύμιση θέματος
+subjectEmptyMessage=Το μήνυμά σας δεν έχει θέμα.
+sendWithEmptySubjectButton=&Αποστολή χωρίς θέμα
+cancelSendingButton=Α&κύρωση αποστολής
+
+## Strings used by the dialog that informs about the lack of newsgroup support.
+noNewsgroupSupportTitle=Δεν υποστηρίζονται οι ομάδες συζήτησης
+recipientDlogMessage=Αυτός ο λογαριασμός υποστηρίζει μόνο παραλήπτες email. Αν συνεχίσετε θα αγνοηθούν οι ομάδες συζήτησης.
+
+## Strings used by the alert that tells the user that an e-mail address is invalid.
+addressInvalidTitle=Μη έγκυρη διεύθυνση παραλήπτη
+addressInvalid=Το %1$S δεν είναι έγκυρη διεύθυνση email, επειδή δεν είναι της μορφής user@host. Πρέπει να το διορθώσετε πριν στείλετε το email.
+
+## String used by the dialog that asks the user to attach a web page
+attachPageDlogTitle=Καθορίστε μια τοποθεσία για επισύναψη
+attachPageDlogMessage=Ιστοσελίδα
+
+## String used for attachment pretty name, when the attachment is a message
+messageAttachmentSafeName=Συνημμένο μήνυμα
+
+## String used for attachment pretty name, when the attachment is a message part
+partAttachmentSafeName=Συνημμένο μέρος μηνύματος
+
+# LOCALIZATION NOTE (attachmentBucketAttachFilesTooltip):
+# This tooltip should be same as attachFile.label in messengercompose.dtd,
+# but without ellipsis (…).
+attachmentBucketAttachFilesTooltip=Επισύναψη αρχείου(ων)
+attachmentBucketClearSelectionTooltip=Ακύρωση Επιλογής
+attachmentBucketHeaderShowTooltip=Εμφάνιση πίνακα συνημμένων
+attachmentBucketHeaderMinimizeTooltip=Απόκρυψη πίνακα συνημμένων
+attachmentBucketHeaderRestoreTooltip=Επαναφορά πίνακα συνημμένων
+
+## String used by the Initialization Error dialog
+initErrorDlogTitle=Σύνταξη μηνύματος
+initErrorDlgMessage=Σφάλμα κατά τη δημιουργία παραθύρου σύνταξης μηνύματος. Προσπαθήστε ξανά.
+
+## String used if a file to attach does not exist when passed as
+## a command line argument
+errorFileAttachTitle=Επισύναψη αρχείου
+
+## LOCALIZATION NOTE (errorFileAttachMessage): %1$S will be replaced by the non-existent file name.
+errorFileAttachMessage=Το αρχείο %1$S δεν υπάρχει και έτσι δεν μπορεί να επισυναφθεί στο μήνυμα.
+
+## String used if a file to serve as message body does not exist or cannot be loaded when passed
+## as a command line argument
+errorFileMessageTitle=Αρχείο Μηνύματος
+
+## LOCALIZATION NOTE (errorFileMessageMessage): %1$S will be replaced by the non-existent file name.
+errorFileMessageMessage=Το αρχείο %1$S δεν υπάρχει και δεν είναι δυνατή η χρήση του σε σώμα μηνύματος.
+
+## LOCALIZATION NOTE (errorLoadFileMessageMessage): %1$S will be replaced by the name of the file that can't be loaded.
+errorLoadFileMessageMessage=Το αρχείο %1$S δεν είναι δυνατό να φορτωθεί για χρήση σε σώμα μηνύματος.
+
+## Strings used by the Save as Draft/Template dialog
+SaveDialogTitle=Αποθήκευση μηνύματος
+
+## LOCALIZATION NOTE (SaveDialogMsg): %1$S is the folder name, %2$S is the host name
+SaveDialogMsg=Το μήνυμα σας αποθηκεύτηκε στο φάκελο %1$S στο %2$S.
+CheckMsg=Να μην εμφανιστεί ξανά αυτό το μήνυμα
+
+## Strings used by the prompt when Quitting while in progress
+quitComposeWindowTitle=Αποστολή μηνύματος
+
+## LOCALIZATION NOTE (quitComposeWindowMessage2): don't translate \n
+quitComposeWindowMessage2=Ο %1$S στέλνει ένα μήνυμα.\nΘέλετε να περιμένετε μέχρι να σταλεί το μήνυμα ή θέλετε να κλείσετε την εφαρμογή άμεσα;
+quitComposeWindowQuitButtonLabel2=Έ&ξοδος
+quitComposeWindowWaitButtonLabel2=&Αναμονή
+quitComposeWindowSaveTitle=Αποθήκευση μηνύματος
+
+## LOCALIZATION NOTE (quitComposeWindowSaveMessage): don't translate \n
+quitComposeWindowSaveMessage=Το %1$S είναι σε διαδικασία αποθήκευσης ενός μηνύματος.\nΘέλετε να περιμένετε μέχρι το μήνυμα να αποθηκευτεί προτού κλείσετε την εφαρμογή ή θέλετε να την κλείσετε τώρα;
+
+## Strings used by the prompt for Ctrl-Enter check before sending message
+sendMessageCheckWindowTitle=Αποστολή μηνύματος
+sendMessageCheckLabel=Θέλετε σίγουρα να κάνετε αποστολή αυτού του μηνύματος;
+sendMessageCheckSendButtonLabel=Αποστολή
+assemblingMessageDone=Συμβολομετάφραση μηνύματος…Ολοκληρώθηκε
+assemblingMessage=Συμβολομετάφραση μηνύματος...
+smtpDeliveringMail=Παράδοση email…
+smtpMailSent=Επιτυχής αποστολή email
+assemblingMailInformation=Συμβολομετάφραση πληροφοριών μηνύματος...
+
+## LOCALIZATION NOTE (gatheringAttachment): argument %S is the file name/URI of attachment
+gatheringAttachment=Επισύναψη %S…
+creatingMailMessage=Δημιουργία μηνύματος email…
+
+## LOCALIZATION NOTE (copyMessageStart): argument %S is the folder name
+copyMessageStart=Αντιγραφή μηνύματος στο φάκελο %S…
+copyMessageComplete=Η αντιγραφή ολοκληρώθηκε.
+copyMessageFailed=Η αντιγραφή απέτυχε.
+filterMessageComplete=Το φιλτράρισμα ολοκληρώθηκε.
+filterMessageFailed=Αποτυχία φιλτραρίσματος.
+
+## LOCALIZATION NOTE (largeMessageSendWarning):
+## Do not translate %S. It is the size of the message in user-friendly notation.
+largeMessageSendWarning=Προειδοποίηση! Πρόκειται να στείλετε ένα μήνυμα μεγέθους %S. Είστε βέβαιοι για αυτό;
+sendingMessage=Αποστολή μηνύματος…
+sendMessageErrorTitle=Σφάλμα αποστολής μηνύματος
+postingMessage=Καταχώρηση μηνύματος…
+sendLaterErrorTitle=Σφάλμα αργοπορημένης αποστολής
+saveDraftErrorTitle=Σφάλμα αποθήκευσης προσχεδίου
+saveTemplateErrorTitle=Σφάλμα αποθήκευσης προτύπου
+
+## LOCALIZATION NOTE (failureOnObjectEmbeddingWhileSaving): argument %.200S is the file name/URI of object to be embedded
+failureOnObjectEmbeddingWhileSaving=Υπήρξε πρόβλημα με το αρχείο %.200S στο μήνυμα. Θέλετε να συνεχίσετε με την αποθήκευση του μηνύματος χωρίς αυτό το αρχείο;
+
+## LOCALIZATION NOTE (failureOnObjectEmbeddingWhileSending): argument %.200S is the file name/URI of object to be embedded
+failureOnObjectEmbeddingWhileSending=Υπήρξε ένα πρόβλημα στο συμπεριλαμβανόμενο αρχείο %.200S στο μήνυμα. Θέλετε να συνεχίσετε την αποστολή χωρίς αυτό το αρχείο;
+returnToComposeWindowQuestion=Θέλετε να επιστρέψετε στο παράθυρο σύνταξης;
+
+## reply header in composeMsg
+## LOCALIZATION NOTE (mailnews.reply_header_authorwrotesingle): #1 is the author (name of the person replying to)
+mailnews.reply_header_authorwrotesingle=Ο/Η #1 έγραψε:
+
+## LOCALIZATION NOTE (mailnews.reply_header_ondateauthorwrote): #1 is the author, #2 is the date, #3 is the time
+mailnews.reply_header_ondateauthorwrote=Στις #2 #3, ο/η #1 έγραψε:
+
+## LOCALIZATION NOTE (mailnews.reply_header_authorwroteondate): #1 is the author, #2 is the date, #3 is the time
+mailnews.reply_header_authorwroteondate=Ο/Η #1 έγραψε στις #2 #3:
+
+## reply header in composeMsg
+## user specified
+mailnews.reply_header_originalmessage=-------- Αρχικό μήνυμα --------
+
+## forwarded header in composeMsg
+## user specified
+mailnews.forward_header_originalmessage=-------- Προωθημένο μήνυμα --------
+
+## Strings used by the rename attachment dialog
+renameAttachmentTitle=Μετονομασία συνημμένου
+renameAttachmentMessage=Νέο όνομα συνημμένου:
+
+## Attachment Reminder
+## LOCALIZATION NOTE (mail.compose.attachment_reminder_keywords): comma separated
+## words that should trigger an attachment reminder.
+mail.compose.attachment_reminder_keywords=attachment,attached,.doc,.pdf,επισυνάπτω,φωτογραφία,αρχείο,βιογραφικό,συνημμένο
+
+addAttachmentButton=Προσθήκη συνημμένου…
+addAttachmentButton.accesskey=θ
+remindLaterButton=Υπενθύμιση αργότερα
+remindLaterButton.accesskey=θ
+disableAttachmentReminderButton=Να απενεργοποιηθεί η υπενθύμιση συνημμένου για το τρέχον μήνυμα
+attachmentReminderTitle=Υπενθύμιση συνημμένου
+attachmentReminderMsg=Μήπως ξεχάσατε να προσθέσετε συνημμένο αρχείο;
+
+# LOCALIZATION NOTE (attachmentReminderKeywordsMsgs): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# #1 number of keywords
+attachmentReminderKeywordsMsgs=Βρέθηκε μια λέξη-κλειδί συνημμένου:;Βρέθηκαν #1 λέξεις-κλειδιά συνημμένου:
+attachmentReminderOptionsMsg=Οι λέξεις-κλειδιά υπενθύμισης συνημμένων μπορούν να ρυθμιστούν στις προτιμήσεις σας
+attachmentReminderYesIForgot=Ωχ, ναι. Το ξέχασα!
+attachmentReminderFalseAlarm=Όχι, να γίνει αποστολή
+
+# Strings used by the Filelink offer notification bar.
+learnMore.label=Μάθετε περισσότερα…
+learnMore.accesskey=π
+
+# LOCALIZATION NOTE (bigFileDescription): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# #1 number of big attached files
+bigFileDescription=Αυτό είναι ένα μεγάλο αρχείο. Ίσως να είναι καλύτερα να χρησιμοποιήσετε το Filelink.;Αυτά είναι μεγάλα αρχεία. Ίσως να είναι καλύτερα να χρησιμοποιήσετε το Filelink.
+bigFileShare.label=Σύνδεσμος
+bigFileShare.accesskey=δ
+bigFileAttach.label=Παράβλεψη
+bigFileAttach.accesskey=ψ
+bigFileChooseAccount.title=Επιλογή λογαριασμού
+bigFileChooseAccount.text=Επιλέξτε ένα λογαριασμό στο σύννεφο για να ανεβάσετε το συνημμένο
+bigFileHideNotification.title=Να μην ανεβούν τα αρχεία μου
+bigFileHideNotification.text=Δε θα ειδοποιηθείτε αν επισυνάψετε περισσότερα μεγάλα αρχεία στο μήνυμα.
+bigFileHideNotification.check=Να μην ειδοποιηθώ ξανά για αυτό.
+
+# LOCALIZATION NOTE(cloudFileUploadingTooltip): Do not translate the string
+# %S. %S is the display name for the cloud account the attachment is being
+# uploaded to.
+cloudFileUploadingTooltip=Γίνεται ανέβασμα στο %S…
+
+# LOCALIZATION NOTE(cloudFileUploadedTooltip): Do not translate the string
+# %S. %S is the display name for the cloud account the attachment was uploaded
+# to.
+cloudFileUploadedTooltip=Μεταφορτώθηκε στο %S
+cloudFileUploadingNotification=Γίνεται σύνδεση με το αρχείο σας. Θα εμφανιστεί στο σώμα του μηνύματός σας όταν αυτή ολοκληρωθεί.;Γίνεται σύνδεση με τα αρχεία σας. Θα εμφανιστούν στο σώμα του μηνύματος όταν αυτή ολοκληρωθεί.
+cloudFileUploadingCancel.label=Ακύρωση
+cloudFileUploadingCancel.accesskey=κ
+cloudFilePrivacyNotification=Η σύνδεση έχει ολοκληρωθεί. Πρέπει να σημειωθεί ότι τα συνδεδεμένα επισυναπτόμενα θα είναι διαθέσιμα μόνο από τους ανθρώπους που θα βλέπουν ή μαντεύουν τους συνδέσμους.
+
+## LOCALIZATION NOTE(smtpEnterPasswordPrompt): Do not translate the
+## word %S. Place the word %S where the host name should appear.
+smtpEnterPasswordPrompt=Εισάγετε τον κωδικό πρόσβασής σας για %S:
+
+## LOCALIZATION NOTE(smtpEnterPasswordPromptWithUsername): Do not translate the
+## words %1$S and %2$S. Place the word %1$S where the host name should appear,
+## and %2$S where the user name should appear.
+smtpEnterPasswordPromptWithUsername=Εισάγετε τον κωδικό σας για %2$S σε %1$S:
+## LOCALIZATION NOTE(smtpEnterPasswordPromptTitleWithHostname): Do not translate the
+## word %1$S. Place the word %1$S where the server host name should appear.
+smtpEnterPasswordPromptTitleWithHostname=Απαιτείται κωδικός πρόσβασης για διακομιστή εξερχόμενων (SMTP) %1$S
+
+# LOCALIZATION NOTE (removeAttachmentMsgs): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+removeAttachmentMsgs=Αφαίρεση συνημμένου;Αφαίρεση συνημμένων
+
+## LOCALIZATION NOTE(promptToSaveSentLocally2): Do not translate the strings %1$S, %2$S, %3$S and \n.
+## %2$S will be replaced with the account name. $1$S will be replaced by the folder name
+## configured to contain saved sent messages (typically the "Sent" folder).
+## %3$S will be replaced with the local folders account name (typically "Local Folders").
+## Translate "Write" to match the translation of item "windowTitleWrite" above.
+promptToSaveSentLocally2=Το μήνυμά σας απεστάλη αλλά δεν αποθηκεύτηκε αντίγραφο στον φάκελο απεσταλμένων (%1$S) λόγω σφάλματος δικτύου ή προβλήματος πρόσβασης αρχείου.\nΜπορείτε να δοκιμάσετε ξανά ή να αποθηκεύσετε το μήνυμα τοπικά στο %3$S/%1$S-%2$S.
+errorFilteringMsg=Το μήνυμά σας έχει αποσταλεί και αποθηκευτεί, αλλά υπήρξε πρόβλημα στην εκτέλεση των φίλτρων μηνυμάτων σε αυτό.
+errorCloudFileAuth.title=Σφάλμα ταυτοποίησης
+
+## LOCALIZATION NOTE(promptToSaveDraftLocally2): Do not translate the strings %1$S, %2$S, %3$S and \n.
+## %2$S will be replaced with the account name. $1$S will be replaced by the folder name
+## configured to contain saved draft messages (typically the "Drafts" folder).
+## %3$S will be replaced with the local folders account name (typically "Local Folders").
+promptToSaveDraftLocally2=Το μήνυμά σας δεν αποθηκεύτηκε στον φάκελο πρόχειρων (%1$S) λόγω σφάλματος δικτύου ή προβλήματος πρόσβασης αρχείου.\nΜπορείτε να δοκιμάσετε ξανά ή να αποθηκεύσετε το πρόχειρο τοπικά στο %3$S/%1$S-%2$S.
+buttonLabelRetry2=&Επανάληψη
+
+## LOCALIZATION NOTE(promptToSaveTemplateLocally2): Do not translate the strings %1$S, %2$S, %3$S and \n.
+## %2$S will be replaced with the account name. $1$S will be replaced by the folder name
+## configured to contain saved templates (typically the "Templates" folder).
+## %3$S will be replaced with the local folders account name (typically "Local Folders").
+promptToSaveTemplateLocally2=Το πρότυπό σας δεν αποθηκεύτηκε στον φάκελο προτύπων (%1$S) λόγω σφάλματος δικτύου ή προβλήματος πρόσβασης αρχείου.\nΜπορείτε να δοκιμάσετε ξανά ή να αποθηκεύσετε το πρότυπο τοπικά στο %3$S/%1$S-%2$S.
+
+## LOCALIZATION NOTE(saveToLocalFoldersFailed): Message appears after normal
+## save fails (e.g., to Sent) and save to Local Folders also fails. This could
+## occur if network is down and filesystem problems are present such as disk
+## full, permission issues or hardware failure.
+saveToLocalFoldersFailed=Αδυναμία αποθήκευσης του μηνύματός σας σε τοπικούς φακέλους. Ενδεχομένως να μην υπάρχει χώρος αποθήκευσης αρχείων.
+
+## LOCALIZATION NOTE(errorCloudFileAuth.message):
+## %1$S is the name of the online storage service against which the authentication failed.
+errorCloudFileAuth.message=Δεν ήταν δυνατή η αυθεντικοποίηση στο %1$S.
+errorCloudFileUpload.title=Σφάλμα μεταφόρτωσης
+
+## LOCALIZATION NOTE(errorCloudFileUpload.message):
+## %1$S is the name of the online storage service against which the uploading failed.
+## %2$S is the name of the file that failed to upload.
+errorCloudFileUpload.message=Δεν ήταν δυνατή η αποστολή του %2$S στο %1$S.
+errorCloudFileQuota.title=Σφάλμα ποσόστωσης αποθηκευτικού χώρου
+
+## LOCALIZATION NOTE(errorCloudFileQuota.message):
+## %1$S is the name of the online storage service being uploaded to.
+## %2$S is the name of the file that could not be uploaded due to exceeding the storage limit.
+errorCloudFileQuota.message=Η αποστολή του %2$S στο %1$S θα ξεπεράσει τον επιτρεπόμενο χώρο δίσκου.
+errorCloudFileNameLimit.title=Σφάλμα Ονόματος Αρχείου
+
+## LOCALIZATION NOTE(errorCloudFileNameLimit.message):
+## %1$S is the name of the online storage service being uploaded to.
+## %2$S is the name of the file that could not be uploaded due to the excess file name length
+errorCloudFileNameLimit.message=Το %2$S περιέχει περισσότερους από 120 χαρακτήρες στο όνομά του που είναι περισσότεροι από του μέγιστο μέγεθος ονόματος αρχείου για %1$S. Παρακαλώ μετονομάστε το αρχείο ώστε να έχει το πολύ 120 χαρακτήρες στο όνομά του και ανεβάστε το πάλι.
+errorCloudFileLimit.title=Σφάλμα μεγέθους αρχείου
+
+## LOCALIZATION NOTE(errorCloudFileLimit.message):
+## %1$S is the name of the online storage service being uploaded to.
+## %2$S is the name of the file that could not be uploaded due to size restrictions.
+errorCloudFileLimit.message=Το %2$S ξεπερνά το μέγιστο μέγεθος για %1$S.
+errorCloudFileOther.title=Άγνωστο σφάλμα
+
+## LOCALIZATION NOTE(errorCloudFileOther.message):
+## %1$S is the name of the online storage service that cannot be communicated with.
+errorCloudFileOther.message=Προέκυψε άγνωστο σφάλμα κατά την επικοινωνία με το %1$S.
+errorCloudFileDeletion.title=Σφάλμα διαγραφής
+
+## LOCALIZATION NOTE(errorCloudFileDeletion.message):
+## %1$S is the name of the online storage service that the file is to be deleted from.
+## %2$S is the name of the file that failed to be deleted.
+errorCloudFileDeletion.message=Προέκυψε πρόβλημα κατά τη διαγραφή %2$S από %1$S.
+errorCloudFileUpgrade.label=Αναβάθμιση
+
+## LOCALIZATION NOTE(cloudAttachmentCountHeader): A line of text describing how
+## many uploaded files have been appended to this message. Emphasis should be
+## on sharing as opposed to attaching. This item is used as a header to a list,
+## hence the colon. This header is only displayed in HTML emails.
+## Using PluralForm (so don't replace the #1).
+cloudAttachmentCountHeader=Έχω συνδέσει #1 αρχείο σε αυτό το email:;Έχω συνδέσει #1 αρχεία σε αυτό το email:
+
+## LOCALIZATION NOTE(cloudAttachmentListFooter): %1$S is a link, whose text
+## contents are the brandFullName of this application.
+cloudAttachmentListFooter=Το %1$S διευκολύνει την κοινή χρήση μεγάλων αρχείων μέσω email.
+
+## LOCALIZATION NOTE(cloudAttachmentListItem): A line of text describing a cloud
+## attachment to be inserted into the message body. Do not translate the words
+## %1$S, %2$S, %3$S, or %4$S. %1$S is the attachment name, %2$S is its size,
+## %3$S is the name of the cloud storage service, and %4$S is the link to the
+## attachment.
+cloudAttachmentListItem=* Το %1$S (%2$S) φιλοξενείται στο %3$S: %4$S
+
+## LOCALIZATION NOTE(stopShowingUploadingNotification): This string is used in the Filelink
+## upload notification bar to allow the user to dismiss the notification permanently.
+stopShowingUploadingNotification.accesskey=Ν
+stopShowingUploadingNotification.label=Να μην εμφανιστεί ξανά
+replaceButton.label=Αντικατάσταση…
+replaceButton.accesskey=κ
+replaceButton.tooltip=Εμφάνιση του διαλόγου εύρεσης και αντικατάστασης
+
+## LOCALIZATION NOTE(blockedAllowResource): %S is the URL to load.
+blockedAllowResource=Απεμπλοκή %S
+## LOCALIZATION NOTE (blockedContentMessage): Semi-colon list of plural forms.
+## See: https://developer.mozilla.org/en/docs/Localization_and_Plurals
+## %S will be replaced by brandShortName.
+## Files must be unblocked individually, therefore the plural form reads:
+## Unblocking a file (one of several) will include it (that one file) in your sent message.
+## In other words:
+## Unblocking one/several file(s) will include it/them in your message.
+blockedContentMessage=Το %S έχει αποκλείσει τη φόρτωση ενός αρχείου μέσα στο μήνυμα. Η απεμπλοκή θα συμπεριλάβει το αρχείο στο απεσταλμένο μήνυμά σας.;Το %S έχει αποκλείσει τη φόρτωση ορισμένων αρχείων μέσα στο μήνυμα. Η απεμπλοκή θα συμπεριλάβει το αρχείο στο απεσταλμένο μήνυμά σας.
+
+blockedContentPrefLabel=Επιλογές
+blockedContentPrefAccesskey=Ε
+
+blockedContentPrefLabelUnix=Προτιμήσεις
+blockedContentPrefAccesskeyUnix=Π
+
+## Identity matching warning notification bar.
+## LOCALIZATION NOTE(identityWarning): %S will be replaced with the identity name.
+identityWarning=Δεν βρέθηκε μια μοναδική ταυτότητα, που να αντιστοιχεί στη διεύθυνση "Από". Το μήνυμα θα αποσταλεί χρησιμοποιώντας το τρέχον πεδίο "Από" και τις ρυθμίσεις από την ταυτότητα %S.
+
+## Recipient pills fields.
+## LOCALIZATION NOTE(confirmRemoveRecipientRowTitle2): %S will be replaced with the field name.
+confirmRemoveRecipientRowTitle2=Αφαίρεση %S διευθύνσεων
+## LOCALIZATION NOTE(confirmRemoveRecipientRowBody2): %S will be replaced with the field name.
+confirmRemoveRecipientRowBody2=Θέλετε σίγουρα να αφαιρέσετε τις διευθύνσεις %S;
+confirmRemoveRecipientRowButton=Αφαίρεση
+
+## LOCALIZATION NOTE headersSpaceStyle is for aligning label of a newly create recipient row.
+## It should be larger than the largest Header label and identical to &headersSpace2.style;
+headersSpaceStyle=width: 8em
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/editor.properties b/l10n-el/mail/chrome/messenger/messengercompose/editor.properties
new file mode 100644
index 0000000000..fe05ad3f99
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/editor.properties
@@ -0,0 +1,208 @@
+# 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 FILE: embedded "\n" represent HTML breaks (<br>)
+# Don't translate embedded "\n".
+# Don't translate strings like this: %variable%
+# as they will be replaced using JavaScript
+#
+No=Όχι
+Save=Αποθήκευση
+More=Περισσότερα
+Less=Λιγότερα
+MoreProperties=Περισσότερα γνωρίσματα
+FewerProperties=Λιγότερες ιδιότητες
+PropertiesAccessKey=γ
+None=Κανένα
+none=Κανένα
+OpenHTMLFile=Άνοιγμα αρχείου HTML
+OpenTextFile=Άνοιγμα αρχείου κειμένου
+SelectImageFile=Επιλογή αρχείου εικόνας
+SaveDocument=Αποθήκευση σελίδας
+SaveDocumentAs=Αποθήκευση σελίδας ως
+SaveTextAs=Αποθήκευση κειμένου ως
+EditMode=Λειτουργία επεξεργασίας
+Preview=Προεπισκόπηση
+Publish=Δημοσίευση
+PublishPage=Δημοσίευση σελίδας
+DontPublish=Να μη δημοσιευθεί
+SavePassword=Χρήση διαχείρισης κωδικών για την αποθήκευση του κωδικού
+CorrectSpelling=(σωστή ορθογραφία)
+NoSuggestedWords=(δεν υπάρχουν προτεινόμενες λέξεις)
+NoMisspelledWord=Κανένα ορθογραφικό λάθος
+CheckSpellingDone=Ο ορθογραφικός έλεγχος ολοκληρώθηκε.
+CheckSpelling=Ορθογραφικός έλεγχος
+InputError=Σφάλμα
+Alert=Προειδοποίηση
+CantEditFramesetMsg=Αυτό το πρόγραμμα δε μπορεί να επεξεργαστεί HTML framesets ή εσωτερικά πλαίσια. Προσπαθήστε να επεξεργαστείτε το κάθε πλαίσιο ξεχωριστά. Για σελίδες με iframes αποθηκεύστε ένα αντίγραφο της σελίδας και αφαιρέστε το <iframe> tag.
+CantEditMimeTypeMsg=Δεν είναι δυνατή η επεξεργασία αυτού του τύπου σελίδας.
+CantEditDocumentMsg=Δεν είναι δυνατή η επεξεργασία αυτού του τύπου σελίδας.
+BeforeClosing=πριν από το κλείσιμο
+BeforePreview=πριν την επισκόπηση στο Navigator
+BeforeValidate=πρίν την επικύρωση του εγγράφου
+# LOCALIZATION NOTE (SaveFilePrompt, PublishPrompt): Don't translate %title% and %reason% (this is the reason for asking user to close, such as "before closing")
+SaveFilePrompt=Να αποθηκευτούν οι αλλαγές στο "%title%" %reason%;
+PublishPrompt=Αποθήκευση αλλαγών στο "%title%" %reason%;
+SaveFileFailed=Η αποθήκευση αρχείου απέτυχε!
+
+# Publishing error strings:
+# LOCALIZATION NOTE Don't translate %dir% or %file% in the Publishing error strings:
+FileNotFound=Το %file% δεν βρέθηκε.
+SubdirDoesNotExist=Ο υποκατάλογος"%dir%" δεν υπάρχει σε αυτήν τη διεύθυνση ή το όνομα αρχείου "%file%" χρησιμοποιείται ήδη από άλλο υποκατάλογο.
+FilenameIsSubdir=ο όνομα αρχείου "%file%." χρησιμοποιείται ήδη από άλλο υποκατάλογο.
+ServerNotAvailable=Ο διακομιστής δεν είναι διαθέσιμος. Ελέγξτε τη σύνδεσή σας και προσπαθήστε αργότερα.
+Offline=Εργάζεστε χωρίς σύνδεση. Κάντε κλικ στην κάτω δεξιά πλευρά του παραθύρου για να συνδεθείτε.
+DiskFull=Δεν υπάρχει αρκετός διαθέσιμος ελεύθερος χώρος για την αποθήκευση του αρχείου "%file%."
+NameTooLong=Το όνομα αρχείου ή του υποκαταλόγου είναι πολύ μεγάλο.
+AccessDenied=Δεν έχετε δικαίωμα δημοσίευσης σε αυτήν την τοποθεσία.
+UnknownPublishError=Παρουσιάστηκε ένα άγνωστο σφάλμα δημοσίευσης.
+PublishFailed=Αποτυχία δημοσίευσης.
+PublishCompleted=Η δημοσίευση ολοκληρώθηκε.
+AllFilesPublished='Ολα τα αρχεία δημοσιεύθηκαν
+# LOCALIZATION NOTE Don't translate %x% or %total%
+FailedFileMsg=Αποτυχία δημοσίευσης %x% από %total% αρχείων
+# End-Publishing error strings
+Prompt=Ειδοποίηση
+# LOCALIZATION NOTE (PromptFTPUsernamePassword): Don't translate %host%
+PromptFTPUsernamePassword=Εισάγετε χρήστη και κωδικό για τον διακομιστή FTP σε %host%
+RevertCaption=Επαναφορά στην τελευταία αποθήκευση
+Revert=Επαναφορά
+SendPageReason=πριν την αποστολή της σελίδας
+Send=Αποστολή
+## LOCALIZATION NOTE (PublishProgressCaption, PublishToSite, AbandonChanges): Don't translate %title%
+PublishProgressCaption=Δημοσίευση: %title%
+PublishToSite=Δημοσίευση σε ιστοδιεύθυνση: %title%
+AbandonChanges=Θέλετε να εγκαταλείψετε τις μη αποθηκευμένες αλλαγές στο %title% και να επαναφορτώσετε τη σελίδα;
+DocumentTitle=Τίτλος σελίδας
+NeedDocTitle=Εισάγετε έναν τίτλο για την τρέχουσα σελίδα
+DocTitleHelp=Ο τίτλος της σελίδας εμφανίζεται στον τίτλο του παραθύρου και στους σελιδοδείκτες
+CancelPublishTitle=Ακύρωση δημοσίευσης;
+## LOCALIZATION NOTE: "Continue" in this sentence must match the text for
+## the CancelPublishContinue key below
+CancelPublishMessage=Η ακύρωση κατά τη διάρκεια δημοσίευσης μπορεί να έχει σαν αποτέλεσμα τη μη ολοκληρωμένη μεταφορά των αρχείων σας. Θέλετε να συνεχίσετε ή να ακυρώσετε;
+CancelPublishContinue=Συνέχεια
+MissingImageError=Εισάγετε ή επιλέξτε ένα όνομα για την εικόνα τύπου gif, jpg, ή png.
+EmptyHREFError=Πρέπει να να εισάγετε ή να επιλέξετε μια τοποθεσία για να δημιουργήσετε μια καινούργια διασύνδεση.
+LinkText=Κείμενο διασύνδεσης
+LinkImage=Εικόνα διασύνδεσης
+MixedSelection=[Μικτή επιλογή]
+Mixed=(μικτό)
+# LOCALIZATION NOTE (NotInstalled): %S is the name of the font
+NotInstalled=%S (δεν έχει εγκατασταθεί)
+EnterLinkText=Εισάγετε κείμενο για εμφάνιση στη διασύνδεση
+EnterLinkTextAccessKey=κ
+EmptyLinkTextError=Θα πρέπει να εισάγετε κάποιο κείμενο για αυτήν τη διασύνδεση.
+EditTextWarning=Αυτό θα αντικαταστήσει το υπάρχον περιεχόμενο
+#LOCALIZATION NOTE (ValidateNumber):Don't translate: %n% %min% %max%
+ValidateRangeMsg=Ο αριθμός που καταχωρίσατε (%n%) είναι έξω από την επιτρεπόμενη κλίμακα.
+ValidateNumberMsg=Καταχωρίστε έναν αριθμό μεταξύ %min% και %max%.
+MissingAnchorNameError=Εισάγετε ένα όνομα για αυτήν την άγκυρα
+#LOCALIZATION NOTE (DuplicateAnchorNameError): Don't translate %name%
+DuplicateAnchorNameError="%name%" υπάρχει. Επιλέξτε ένα άλλο όνομα.
+BulletStyle=Μορφή κουκίδων
+SolidCircle=Συμπαγής κύκλος
+OpenCircle=Ανοιχτός κύκλος
+SolidSquare=Συμπαγές τετράγωνο
+NumberStyle=Τρόπος αρίθμησης:
+Automatic=Αυτόματο
+Style_1=1, 2, 3…
+Style_I=I, II, III…
+Style_i=i, ii, iii…
+Style_A=A, B, C…
+Style_a=a, b, c…
+Pixels=εικονοστοιχεία
+Percent=ποσοστό
+PercentOfCell=% του κελιού
+PercentOfWindow=% του παραθύρου
+PercentOfTable=% του πίνακα
+#LOCALIZATION NOTE (untitledTitle): %S is the window #. No plural handling needed.
+untitledTitle=χωρίς τίτλο-%S
+untitledDefaultFilename=χωρίς τίτλο
+ShowToolbar=Εμφάνιση γραμμής εργαλείων
+HideToolbar=Απόκρυψη γραμμής εργαλείων
+ImapError=Δεν είναι δυνατό το φόρτωμα της εικόνας
+ImapCheck=\nΕπιλέξτε μια καινούργια τοποθεσία (URL) και προσπαθήστε ξανά.
+SaveToUseRelativeUrl=Τα σχετικά URLs μπορούν μόνο να χρησιμοποιηθούν για τις σελίδες για τις οποίες αποθηκεύτηκαν
+NoNamedAnchorsOrHeadings=(δεν υπάρχουν άγκυρες με όνομα ή κεφαλίδες στη σελίδα)
+TextColor=Χρώμα κειμένου
+HighlightColor=Χρώμα επισήμανσης
+PageColor=Χρώμα φόντου σελίδας
+BlockColor=Μπλοκάρισμα χρώματος φόντου
+TableColor=Χρώμα φόντου πίνακα
+CellColor=Χρώμα φόντου κελιού
+TableOrCellColor=Χρώμα Πίνακα ή Κελιού
+LinkColor=Χρώμα κειμένου διασύνδεσης
+ActiveLinkColor=Χρώμα ενεργής διασύνδεσης
+VisitedLinkColor=Χρώμα αναγνωσμένης διασύνδεσης
+NoColorError=Επιλέξτε ένα χρώμα ή εισάγετε ένα έγκυρο HTML color string.
+Table=Πίνακας
+TableCell=Κελί Πίνακα
+NestedTable=Ενσωματωμένος Πίνακας
+HLine=Οριζόντια γραμμή
+Link=Διασύνδεση
+Image=Εικόνα
+ImageAndLink=Εικόνα και σύνδεσμος
+NamedAnchor=Επώνυμη Άγκυρα
+List=Λίστα
+ListItem=Στοιχείο λίστας
+Form=Φόρμα
+InputTag=Πεδίο φόρμας
+InputImage=Εικόνα Φόρμας
+TextArea=Πεδίο κειμένου
+Select=Λίστα επιλογής
+Button=Κουμπί
+Label=Ετικέτα
+FieldSet=Ορισμός πεδίου
+Tag=Ετικέτα
+MissingSiteNameError=Καταχωρίστε ένα όνομα για την υπό δημοσίευση σελίδα
+MissingPublishUrlError=Καταχωρίστε μια τοποθεσία για τη δημοσίευση αυτής της σελίδας.
+MissingPublishFilename=Καταχωρίστε ένα όνομα αρχείου για την τρέχουσα σελίδα.
+#LOCALIZATION NOTE (DuplicateSiteNameError): Don't translate %name%
+DuplicateSiteNameError="%name%" υπάρχει ήδη. Εισάγετε ένα διαφορετικό όνομα σελίδας
+AdvancedProperties=Προηγμένες ιδιότητες…
+AdvancedEditForCellMsg=Η προηγμένη επεξεργασία δεν είναι διαθέσιμη όταν είναι επιλεγμένα πολλαπλά κελιά
+# LOCALIZATION NOTE (ObjectProperties):Don't translate "%obj%" it will be replaced with one of above object nouns
+ObjectProperties=Ιδιότητες %obj%…
+# LOCALIZATION NOTE This character must be in the above string and not conflict with other accesskeys in Format menu
+ObjectPropertiesAccessKey=ο
+# LOCALIZATION NOTE (JoinSelectedCells): This variable should contain the "tableJoinCells.accesskey"
+# letter as defined in editorOverlay.dtd
+JoinSelectedCells=Συγχώνευση επιλεγμένων κελιών
+# LOCALIZATION NOTE (JoinCellToRight): This variable should contain the "tableJoinCells.accesskey"
+# letter as defined in editorOverlay.dtd
+JoinCellToRight=Συγχώνευση με κελί στα δεξιά
+JoinCellAccesskey=χ
+# LOCALIZATION NOTE (TableSelectKey): Ctrl key on a keyboard
+TableSelectKey=Ctrl+
+# LOCALIZATION NOTE (XulKeyMac): Command key on a Mac keyboard
+XulKeyMac=Cmd+
+# LOCALIZATION NOTE (Del): Del key on a keyboard
+Del=Del
+Delete=Διαγραφή
+DeleteCells=Διαγραφή κελιών
+DeleteTableTitle=Διαγραφή σειρών ή στηλών
+DeleteTableMsg=Η μείωση του αριθμού σειρών θα επιφέρει διαγραφή των κελιών και των περιεχομένων τους. Είστε σίγουροι για αυτό;
+Clear=Εκκαθάριση
+#Mouse actions
+Click=Κλικ
+Drag=Σύρετε
+Unknown=Άγνωστο
+#
+# LOCALIZATION NOTE "RemoveTextStylesAccesskey" is used for both
+# menu items: "RemoveTextStyles" and "StopTextStyles"
+RemoveTextStylesAccesskey=ρ
+RemoveTextStyles=Αφαίρεση όλων των μορφοποιήσεων κειμένου
+StopTextStyles=Διακοπή διαμόρφωσης κειμένου
+#
+# LOCALIZATION NOTE "RemoveLinksAccesskey" is used for both
+# menu items: "RemoveLinks" and "StopLinks"
+RemoveLinksAccesskey=δ
+RemoveLinks=Αφαίρεση συνδέσμων
+StopLinks=Διακοπή δεσμών
+#
+NoFormAction=Προτείνεται να εισάγετε μια ενέργεια για αυτήν τη φόρμα. Οι αυτό-αναφερόμενες φόρμες δεν λειτουργούν σε όλους τους περιηγητές.
+NoAltText=Αν η εικόνα είναι σχετική με το έγγραφο θα πρέπει να εισάγετε ένα εναλλακτικό κείμενο το οποίο θα εμφανίζεται σε περιηγητές που βλέπουν μόνο κείμενο (η έχουν απενεργοποιημένη τη φόρτωση εικόνων) και κατά τη φόρτωση της εικόνας.
+#
+Malformed=Δεν είναι δυνατή η μετατροπή του πηγαίου κώδικα πίσω στο έγγραφο επειδή το XΗML δεν είναι έγκυρο.
+NoLinksToCheck=Δεν υπάρχουν στοιχεία με δεσμούς για έλεγχο
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/editorOverlay.dtd b/l10n-el/mail/chrome/messenger/messengercompose/editorOverlay.dtd
new file mode 100644
index 0000000000..c232a40faa
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/editorOverlay.dtd
@@ -0,0 +1,304 @@
+<!-- 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/. -->
+
+<!-- Attn: Localization - some of the menus in this dialog directly affect mail also. -->
+
+<!-- Edit menu items -->
+<!ENTITY pasteNoFormatting.label "Επικόλληση χωρίς μορφοποίηση">
+<!ENTITY pasteNoFormatting.accesskey "κ">
+<!ENTITY pasteNoFormatting.key "V">
+<!ENTITY pasteAsQuotationCmd.label "Επικόλληση ως παράθεση">
+<!ENTITY pasteAsQuotationCmd.accesskey "ρ">
+
+<!-- Insert menu items -->
+<!ENTITY insertMenu.label "Εισαγωγή">
+<!ENTITY insertMenu.accesskey "ι">
+<!ENTITY insertLinkCmd2.label "Σύνδεσμος…">
+<!ENTITY insertLinkCmd2.accesskey "Σ">
+<!ENTITY insertLinkCmd2.key "K">
+<!ENTITY insertAnchorCmd.label "Άγκυρα με όνομα…">
+<!ENTITY insertAnchorCmd.accesskey "α">
+<!ENTITY insertImageCmd.label "Εικόνα…">
+<!ENTITY insertImageCmd.accesskey "Ε">
+<!ENTITY insertHLineCmd.label "Οριζόντια γραμμή">
+<!ENTITY insertHLineCmd.accesskey "ζ">
+<!ENTITY insertTableCmd.label "Πίνακας…">
+<!ENTITY insertTableCmd.accesskey "κ">
+<!ENTITY insertHTMLCmd.label "HTML…">
+<!ENTITY insertHTMLCmd.accesskey "H">
+<!ENTITY insertMathCmd.label "Μαθηματικά…">
+<!ENTITY insertMathCmd.accesskey "Μ">
+<!ENTITY insertCharsCmd.label "Χαρακτήρες και σύμβολα…">
+<!ENTITY insertCharsCmd.accesskey "Χ">
+<!ENTITY insertBreakAllCmd.label "Αλλαγή γραμμής κάτω από εικόνα(ες)">
+<!ENTITY insertBreakAllCmd.accesskey "κ">
+
+<!-- Used just in context popup. -->
+<!ENTITY createLinkCmd.label "Δημιουργία συνδέσμου…">
+<!ENTITY createLinkCmd.accesskey "Δ">
+<!ENTITY editLinkCmd.label "Επεξεργασία συνδέσμου σε νέα σύνταξη">
+<!ENTITY editLinkCmd.accesskey "μ">
+
+<!-- Font Face SubMenu -->
+<!ENTITY FontFaceSelect.tooltip "Επιλογή γραμματοσειράς">
+<!ENTITY fontfaceMenu.label "Γραμματοσειρά">
+<!ENTITY fontfaceMenu.accesskey "Γ">
+<!ENTITY fontVarWidth.label "Μεταβλητού πλάτους">
+<!ENTITY fontVarWidth.accesskey "β">
+<!ENTITY fontFixedWidth.label "Σταθερού πλάτους">
+<!ENTITY fontFixedWidth.accesskey "θ">
+<!ENTITY fontFixedWidth.key "T">
+<!ENTITY fontHelvetica.label "Helvetica, Arial">
+<!ENTITY fontHelvetica.accesskey "l">
+<!ENTITY fontTimes.label "Times">
+<!ENTITY fontTimes.accesskey "T">
+<!ENTITY fontCourier.label "Courier">
+<!ENTITY fontCourier.accesskey "C">
+
+<!-- Font Size SubMenu -->
+<!ENTITY FontSizeSelect.tooltip "Επιλογή μεγέθους γραμματοσειράς">
+<!ENTITY decreaseFontSize.label "Μικρότερα">
+<!ENTITY decreaseFontSize.accesskey "ρ">
+<!ENTITY decrementFontSize.key "&lt;">
+<!ENTITY decrementFontSize.key2 ","> <!-- < is above this key on many keyboards -->
+<!ENTITY increaseFontSize.label "Μεγαλύτερα">
+<!ENTITY increaseFontSize.accesskey "γ">
+<!ENTITY incrementFontSize.key "&gt;">
+<!ENTITY incrementFontSize.key2 "."> <!-- > is above this key on many keyboards -->
+
+<!ENTITY fontSizeMenu.label "Μέγεθος">
+<!ENTITY fontSizeMenu.accesskey "θ">
+<!ENTITY size-tinyCmd.label "Μικροσκοπικά">
+<!ENTITY size-tinyCmd.accesskey "ι">
+<!ENTITY size-smallCmd.label "Μικρά">
+<!ENTITY size-smallCmd.accesskey "μ">
+<!ENTITY size-mediumCmd.label "Μεσαία">
+<!ENTITY size-mediumCmd.accesskey "σ">
+<!ENTITY size-largeCmd.label "Μεγάλα">
+<!ENTITY size-largeCmd.accesskey "λ">
+<!ENTITY size-extraLargeCmd.label "Πολύ μεγάλα">
+<!ENTITY size-extraLargeCmd.accesskey "π">
+<!ENTITY size-hugeCmd.label "Τεράστια">
+<!ENTITY size-hugeCmd.accesskey "ρ">
+
+<!-- Font Style SubMenu -->
+<!ENTITY fontStyleMenu.label "Στυλ κειμένου">
+<!ENTITY fontStyleMenu.accesskey "Σ">
+<!ENTITY styleBoldCmd.label "Έντονα">
+<!ENTITY styleBoldCmd.accesskey "ν">
+<!ENTITY styleBoldCmd.key "B">
+<!ENTITY styleItalicCmd.label "Πλάγια">
+<!ENTITY styleItalicCmd.accesskey "λ">
+<!ENTITY styleItalicCmd.key "I">
+<!ENTITY styleUnderlineCmd.label "Υπογράμμιση">
+<!ENTITY styleUnderlineCmd.accesskey "Υ">
+<!ENTITY styleUnderlineCmd.key "U">
+<!ENTITY styleStrikeThruCmd.label "Διαγράμμιση">
+<!ENTITY styleStrikeThruCmd.accesskey "Δ">
+<!ENTITY styleSuperscriptCmd.label "Εκθέτης">
+<!ENTITY styleSuperscriptCmd.accesskey "θ">
+<!ENTITY styleSubscriptCmd.label "Δείκτης">
+<!ENTITY styleSubscriptCmd.accesskey "κ">
+<!ENTITY styleNonbreakingCmd.label "Χωρίς αλλαγή">
+<!ENTITY styleNonbreakingCmd.accesskey "λ">
+<!ENTITY styleEm.label "Έμφαση">
+<!ENTITY styleEm.accesskey "φ">
+<!ENTITY styleStrong.label "Ισχυρότερη έμφαση">
+<!ENTITY styleStrong.accesskey "χ">
+<!ENTITY styleCite.label "Παράθεση">
+<!ENTITY styleCite.accesskey "θ">
+<!ENTITY styleAbbr.label "Σύντμηση">
+<!ENTITY styleAbbr.accesskey "ν">
+<!ENTITY styleAcronym.label "Ακρωνύμιο">
+<!ENTITY styleAcronym.accesskey "ω">
+<!ENTITY styleCode.label "Κώδικας">
+<!ENTITY styleCode.accesskey "δ">
+<!ENTITY styleSamp.label "Δείγμα αποτελέσματος">
+<!ENTITY styleSamp.accesskey "μ">
+<!ENTITY styleVar.label "Μεταβλητό">
+<!ENTITY styleVar.accesskey "β">
+
+<!ENTITY formatFontColor.label "Χρώμα κειμένου…">
+<!ENTITY formatFontColor.accesskey "Χ">
+<!ENTITY tableOrCellColor.label "Χρώμα παρασκηνίου πίνακα ή κελιού…">
+<!ENTITY tableOrCellColor.accesskey "κ">
+
+<!ENTITY formatRemoveStyles.key "Y">
+<!ENTITY formatRemoveLinks.key "K">
+<!ENTITY formatRemoveNamedAnchors.label "Αφαίρεση αγκυρών με όνομα">
+<!ENTITY formatRemoveNamedAnchors.accesskey "ρ">
+<!ENTITY formatRemoveNamedAnchors2.key "R">
+
+<!ENTITY paragraphMenu.label "Παράγραφος">
+<!ENTITY paragraphMenu.accesskey "γ">
+<!ENTITY paragraphParagraphCmd.label "Παράγραφος">
+<!ENTITY paragraphParagraphCmd.accesskey "φ">
+<!ENTITY heading1Cmd.label "Κεφαλίδα 1">
+<!ENTITY heading1Cmd.accesskey "1">
+<!ENTITY heading2Cmd.label "Κεφαλίδα 2">
+<!ENTITY heading2Cmd.accesskey "2">
+<!ENTITY heading3Cmd.label "Κεφαλίδα 3">
+<!ENTITY heading3Cmd.accesskey "3">
+<!ENTITY heading4Cmd.label "Κεφαλίδα 4">
+<!ENTITY heading4Cmd.accesskey "4">
+<!ENTITY heading5Cmd.label "Κεφαλίδα 5">
+<!ENTITY heading5Cmd.accesskey "5">
+<!ENTITY heading6Cmd.label "Κεφαλίδα 6">
+<!ENTITY heading6Cmd.accesskey "6">
+<!ENTITY paragraphAddressCmd.label "Διεύθυνση">
+<!ENTITY paragraphAddressCmd.accesskey "θ">
+<!ENTITY paragraphPreformatCmd.label "Προ-μορφοποίηση">
+<!ENTITY paragraphPreformatCmd.accesskey "ρ">
+
+<!-- List menu items -->
+<!ENTITY formatlistMenu.label "Λίστα">
+<!ENTITY formatlistMenu.accesskey "Λ">
+<!ENTITY noneCmd.label "Κανένα">
+<!ENTITY noneCmd.accesskey "ν">
+<!ENTITY listBulletCmd.label "Κουκίδες">
+<!ENTITY listBulletCmd.accesskey "Κ">
+<!ENTITY listNumberedCmd.label "Αριθμημένη">
+<!ENTITY listNumberedCmd.accesskey "μ">
+<!ENTITY listTermCmd.label "Όρος">
+<!ENTITY listTermCmd.accesskey "ρ">
+<!ENTITY listDefinitionCmd.label "Ορισμός">
+<!ENTITY listDefinitionCmd.accesskey "μ">
+<!ENTITY listPropsCmd.label "Ιδιότητες λίστας…">
+<!ENTITY listPropsCmd.accesskey "δ">
+
+<!ENTITY ParagraphSelect.tooltip "Επιλέξτε μια μορφή λίστας">
+<!-- Shared in Paragraph, and Toolbar menulist -->
+<!ENTITY bodyTextCmd.label "Κύριος μέρος κειμένου">
+<!ENTITY bodyTextCmd.accesskey "μ">
+
+<!-- Align menu items -->
+<!ENTITY alignMenu.label "Στοίχιση">
+<!ENTITY alignMenu.accesskey "Σ">
+<!ENTITY alignLeft.label "Αριστερά">
+<!ENTITY alignLeft.accesskey "Α">
+<!ENTITY alignLeft.tooltip "Στοίχιση αριστερά">
+<!ENTITY alignCenter.label "Κέντρο">
+<!ENTITY alignCenter.accesskey "Κ">
+<!ENTITY alignCenter.tooltip "Στοίχιση στο κέντρο">
+<!ENTITY alignRight.label "Δεξιά">
+<!ENTITY alignRight.accesskey "Δ">
+<!ENTITY alignRight.tooltip "Στοίχιση δεξιά">
+<!ENTITY alignJustify.label "Πλήρης στοίχιση">
+<!ENTITY alignJustify.accesskey "Π">
+<!ENTITY alignJustify.tooltip "Πλήρης στοίχιση">
+
+<!ENTITY increaseIndent.label "Αύξηση εσοχής">
+<!ENTITY increaseIndent.accesskey "Α">
+<!ENTITY increaseIndent.key "]">
+<!ENTITY decreaseIndent.label "Μείωση εσοχής">
+<!ENTITY decreaseIndent.accesskey "Μ">
+<!ENTITY decreaseIndent.key "[">
+
+<!ENTITY colorsAndBackground.label "Χρώματα και παρασκήνιο σελίδας…">
+<!ENTITY colorsAndBackground.accesskey "ρ">
+
+<!-- Table Menu -->
+<!ENTITY tableMenu.label "Πίνακας">
+<!ENTITY tableMenu.accesskey "ν">
+
+<!-- Select Submenu -->
+<!ENTITY tableSelectMenu.label "Επιλογή">
+<!ENTITY tableSelectMenu.accesskey "Ε">
+
+<!ENTITY tableSelectMenu2.label "Επιλογή πίνακα">
+<!ENTITY tableSelectMenu2.accesskey "Ε">
+<!ENTITY tableInsertMenu2.label "Εισαγωγή πίνακα">
+<!ENTITY tableInsertMenu2.accesskey "ι">
+<!ENTITY tableDeleteMenu2.label "Διαγραφή πίνακα">
+<!ENTITY tableDeleteMenu2.accesskey "Δ">
+
+<!-- Insert SubMenu -->
+<!ENTITY tableInsertMenu.label "Εισαγωγή">
+<!ENTITY tableInsertMenu.accesskey "ι">
+<!ENTITY tableTable.label "Πίνακας">
+<!ENTITY tableTable.accesskey "Π">
+<!ENTITY tableRow.label "Γραμμή">
+<!ENTITY tableRows.label "Γραμμές">
+<!ENTITY tableRow.accesskey "Γ">
+<!ENTITY tableRowAbove.label "Γραμμή πάνω">
+<!ENTITY tableRowAbove.accesskey "Γ">
+<!ENTITY tableRowBelow.label "Γραμμή κάτω">
+<!ENTITY tableRowBelow.accesskey "κ">
+<!ENTITY tableColumn.label "Στήλη">
+<!ENTITY tableColumns.label "Στήλες">
+<!ENTITY tableColumn.accesskey "Σ">
+<!ENTITY tableColumnBefore.label "Στήλη πριν">
+<!ENTITY tableColumnBefore.accesskey "τ">
+<!ENTITY tableColumnAfter.label "Στήλη μετά">
+<!ENTITY tableColumnAfter.accesskey "μ">
+<!ENTITY tableCell.label "Κελί">
+<!ENTITY tableCells.label "Κελιά">
+<!ENTITY tableCell.accesskey "Κ">
+<!ENTITY tableCellContents.label "Περιεχόμενα κελιού">
+<!ENTITY tableCellContents.accesskey "χ">
+<!ENTITY tableAllCells.label "Όλα τα κελιά">
+<!ENTITY tableAllCells.accesskey "λ">
+<!ENTITY tableCellBefore.label "Κελί πριν">
+<!ENTITY tableCellBefore.accesskey "Κ">
+<!ENTITY tableCellAfter.label "Κελί μετά">
+<!ENTITY tableCellAfter.accesskey "τ">
+<!-- Delete SubMenu -->
+<!ENTITY tableDeleteMenu.label "Διαγραφή">
+<!ENTITY tableDeleteMenu.accesskey "Δ">
+
+<!-- text for "Join Cells" is in editor.properties
+ ("JoinSelectedCells" and "JoinCellToRight")
+ the access key must exist in both of those strings
+ But value must be set here for accesskey to draw properly
+-->
+<!ENTITY tableJoinCells.label "σ">
+<!ENTITY tableJoinCells.accesskey "σ">
+<!ENTITY tableSplitCell.label "Διαίρεση κελιού">
+<!ENTITY tableSplitCell.accesskey "κ">
+<!ENTITY convertToTable.label "Δημιουργία πίνακα από επιλογή">
+<!ENTITY convertToTable.accesskey "Δ">
+<!ENTITY tableProperties.label "Ιδιότητες πίνακα…">
+<!ENTITY tableProperties.accesskey "δ">
+
+<!-- Toolbar-only items -->
+<!ENTITY imageToolbarCmd.label "Εικόνα">
+<!ENTITY imageToolbarCmd.tooltip "Εισαγωγή νέας εικόνας ή επεξεργασία ιδιοτήτων επιλεγμένης εικόνας">
+<!ENTITY hruleToolbarCmd.label "Οριζ. γραμμή">
+<!ENTITY hruleToolbarCmd.tooltip "Εισαγωγή νέας οριζόντιας γραμμής ή επεξεργασία ιδιοτήτων επιλεγμένης γραμμής">
+<!ENTITY tableToolbarCmd.label "Πίνακας">
+<!ENTITY tableToolbarCmd.tooltip "Εισαγωγή νέου πίνακα ή επεξεργασία ιδιοτήτων επιλεγμένου πίνακα">
+<!ENTITY linkToolbarCmd.label "Σύνδεσμος">
+<!ENTITY linkToolbarCmd.tooltip "Εισαγωγή νέου ή επεξεργασία ιδιοτήτων επιλεγμένου δεσμού">
+<!ENTITY anchorToolbarCmd.label "Άγκυρα">
+<!ENTITY anchorToolbarCmd.tooltip "Εισαγωγή νέας άγκυρας ή επεξεργασία ιδιοτήτων επιλεγμένης άγκυρας">
+<!ENTITY TextColorButton.tooltip "Επιλογή χρώματος κειμένου">
+<!ENTITY BackgroundColorButton.tooltip "Επιλογή χρώματος παρασκηνίου">
+
+<!-- Editor toolbar -->
+<!ENTITY absoluteFontSizeToolbarCmd.tooltip "Ορισμός μεγέθους γραμματοσειράς">
+<!ENTITY decreaseFontSizeToolbarCmd.tooltip "Μικρότερο μέγεθος γραμματοσειράς">
+<!ENTITY increaseFontSizeToolbarCmd.tooltip "Μεγαλύτερο μέγεθος γραμματοσειράς">
+<!ENTITY boldToolbarCmd.tooltip "Έντονα">
+<!ENTITY italicToolbarCmd.tooltip "Πλάγια">
+<!ENTITY underlineToolbarCmd.tooltip "Υπογράμμιση">
+<!ENTITY bulletListToolbarCmd.tooltip "Εφαρμογή ή αφαίρεση λίστας με κουκίδες">
+<!ENTITY numberListToolbarCmd.tooltip "Εφαρμογή ή αφαίρεση αριθμημένης λίστας">
+<!ENTITY outdentToolbarCmd.tooltip "Εξοχή κειμένου (μετακίνηση αριστερά)">
+<!ENTITY indentToolbarCmd.tooltip "Εσοχή κειμένου (μετακίνηση δεξιά)">
+<!ENTITY AlignPopupButton.tooltip "Επιλογή στοίχισης κειμένου">
+<!ENTITY InsertPopupButton.tooltip "Εισαγωγή συνδέσμου, άγκυρας, εικόνας, οριζόντιας γραμμής ή πίνακα">
+<!ENTITY alignLeftButton.tooltip "Στοίχιση κειμένου μαζί με αριστερό περιθώριο">
+<!ENTITY alignCenterButton.tooltip "Στοίχιση κειμένου στο κέντρο">
+<!ENTITY alignRightButton.tooltip "Στοίχιση κειμένου μαζί με δεξιό περιθώριο">
+<!ENTITY alignJustifyButton.tooltip "Στοίχιση κειμένου μαζί με δεξιό και αριστερό περιθώριο">
+
+<!-- TOC manipulation -->
+<!ENTITY insertTOC.label "Εισαγωγή">
+<!ENTITY insertTOC.accesskey "ι">
+<!ENTITY updateTOC.label "Ενημέρωση">
+<!ENTITY updateTOC.accesskey "ν">
+<!ENTITY removeTOC.label "Αφαίρεση">
+<!ENTITY removeTOC.accesskey "ρ">
+<!ENTITY tocMenu.label "Πίνακας περιεχομένων…">
+<!ENTITY tocMenu.accesskey "Π">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/mailComposeEditorOverlay.dtd b/l10n-el/mail/chrome/messenger/messengercompose/mailComposeEditorOverlay.dtd
new file mode 100644
index 0000000000..afa95c1070
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/mailComposeEditorOverlay.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 attachImageSource.label "Επισύναψη εικόνας στο μήνυμα">
+<!ENTITY attachImageSource.accesskey "ψ">
+
+<!ENTITY attachLinkSource.label "Επισύναψη πηγής συνδέσμου στο μήνυμα">
+<!ENTITY attachLinkSource.accesskey "σ">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/messengercompose.dtd b/l10n-el/mail/chrome/messenger/messengercompose/messengercompose.dtd
new file mode 100644
index 0000000000..dfefd221f5
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/messengercompose.dtd
@@ -0,0 +1,345 @@
+<!-- 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 messengercompose.dtd Main UI for message composition -->
+<!ENTITY msgComposeWindow.title "Σύνταξη μηνύματος">
+
+<!-- File Menu -->
+<!ENTITY fileMenu.label "Αρχείο">
+<!ENTITY fileMenu.accesskey "χ">
+<!ENTITY newMenu.label "Νέο">
+<!ENTITY newMenu.accesskey "Ν">
+<!ENTITY newMessage.label "Μήνυμα">
+<!ENTITY newMessage.key "M">
+<!ENTITY newMessageCmd2.key "N">
+<!ENTITY newMessage.accesskey "Μ">
+<!ENTITY newContact.label "Επαφή ευρετηρίου…">
+<!ENTITY newContact.accesskey "Ε">
+<!ENTITY attachMenu.label "Επισύναψη">
+<!ENTITY attachMenu.accesskey "ψ">
+<!ENTITY attachFileCmd.label "Αρχείο(α)…">
+<!ENTITY attachFileCmd.accesskey "Α">
+<!ENTITY attachFileCmd.key "A">
+<!ENTITY attachCloudCmd.label "Filelink">
+<!ENTITY attachCloudCmd.accesskey "i">
+<!ENTITY attachPageCmd.label "Ιστοσελίδα…">
+<!ENTITY attachPageCmd.accesskey "σ">
+<!--LOCALIZATION NOTE attachVCardCmd.label Don't translate the term 'vCard' -->
+<!ENTITY attachVCardCmd.label "Προσωπική κάρτα (vCard)">
+<!ENTITY attachVCardCmd.accesskey "ο">
+<!ENTITY remindLater.label "Υπενθύμιση αργότερα">
+<!ENTITY remindLater.accesskey "Υ">
+<!ENTITY closeCmd.label "Κλείσιμο">
+<!ENTITY closeCmd.key "W">
+<!ENTITY closeCmd.accesskey "λ">
+<!ENTITY saveCmd.label "Αποθήκευση">
+<!ENTITY saveCmd.key "s">
+<!ENTITY saveCmd.accesskey "θ">
+<!ENTITY saveAsCmd.label "Αποθήκευση ως">
+<!ENTITY saveAsCmd.accesskey "θ">
+<!ENTITY saveAsFileCmd.label "Αρχείο…">
+<!ENTITY saveAsFileCmd.accesskey "ρ">
+<!ENTITY saveAsDraftCmd.label "Προσχέδιο">
+<!ENTITY saveAsDraftCmd.accesskey "χ">
+<!ENTITY saveAsTemplateCmd.label "Πρότυπο">
+<!ENTITY saveAsTemplateCmd.accesskey "τ">
+<!ENTITY sendNowCmd.label "Άμεση αποστολή">
+<!ENTITY sendCmd.keycode "VK_RETURN">
+<!ENTITY sendNowCmd.accesskey "π">
+<!ENTITY sendLaterCmd.label "Αναβολή αποστολής">
+<!ENTITY sendLaterCmd.keycode "VK_RETURN">
+<!ENTITY sendLaterCmd.accesskey "β">
+<!ENTITY printSetupCmd.label "Διαμόρφωση σελίδας…">
+<!ENTITY printSetupCmd.accesskey "φ">
+<!ENTITY printPreviewCmd.label "Προεπισκόπηση εκτύπωσης">
+<!ENTITY printPreviewCmd.accesskey "ρ">
+<!ENTITY printCmd.label "Εκτύπωση…">
+<!ENTITY printCmd.key "P">
+<!ENTITY printCmd.accesskey "Ε">
+
+<!-- Edit Menu -->
+<!ENTITY editMenu.label "Επεξεργασία">
+<!ENTITY editMenu.accesskey "ξ">
+<!ENTITY undoCmd.label "Αναίρεση">
+<!ENTITY undoCmd.key "Z">
+<!ENTITY undoCmd.accesskey "ν">
+<!ENTITY redoCmd.label "Επανάληψη">
+<!ENTITY redoCmd.key "Y">
+<!ENTITY redoCmd.accesskey "λ">
+<!ENTITY cutCmd.key "X">
+<!ENTITY copyCmd.key "C">
+<!ENTITY pasteCmd.key "V">
+<!ENTITY pasteNoFormattingCmd.key "V">
+<!ENTITY pasteAsQuotationCmd.key "o">
+<!ENTITY editRewrapCmd.accesskey "δ">
+<!ENTITY deleteCmd.label "Διαγραφή">
+<!ENTITY deleteCmd.accesskey "Δ">
+<!ENTITY editRewrapCmd.label "Aναδίπλωση">
+<!ENTITY editRewrapCmd.key "R">
+<!ENTITY renameAttachmentCmd.label "Μετονομασία συνημμένου…">
+<!ENTITY renameAttachmentCmd.accesskey "τ">
+<!ENTITY reorderAttachmentsCmd.label "Αναδιάταξη συνημμένων…">
+<!ENTITY reorderAttachmentsCmd.accesskey "δ">
+<!ENTITY reorderAttachmentsCmd.key "x">
+<!ENTITY toggleAttachmentPaneCmd.label "Πίνακας συνημμένων">
+<!ENTITY toggleAttachmentPaneCmd.accesskey "μ">
+<!ENTITY selectAllCmd.accesskey "λ">
+<!ENTITY findBarCmd.label "Εύρεση…">
+<!ENTITY findBarCmd.accesskey "Ε">
+<!ENTITY findBarCmd.key "F">
+<!ENTITY findReplaceCmd.label "Εύρεση και αντικατάσταση…">
+<!ENTITY findReplaceCmd.accesskey "ρ">
+<!ENTITY findReplaceCmd.key "H">
+<!ENTITY findAgainCmd.label "Εύρεση ξανά">
+<!ENTITY findAgainCmd.accesskey "ρ">
+<!ENTITY findAgainCmd.key "G">
+<!ENTITY findAgainCmd.key2 "VK_F3">
+<!ENTITY findPrevCmd.label "Εύρεση προηγούμενου">
+<!ENTITY findPrevCmd.accesskey "ν">
+<!ENTITY findPrevCmd.key "G">
+<!ENTITY findPrevCmd.key2 "VK_F3">
+
+<!-- Reorder Attachment Panel -->
+<!ENTITY reorderAttachmentsPanel.label "Ανακατάταξη συνημμένων">
+<!ENTITY moveAttachmentTopPanelBtn.label "Μετακίνηση στην κορυφή">
+<!ENTITY moveAttachmentUpPanelBtn.label "Μετακίνηση πάνω">
+<!ENTITY moveAttachmentBundleUpPanelBtn.label "Μετακίνηση μαζί">
+<!ENTITY moveAttachmentDownPanelBtn.label "Μετακίνηση κάτω">
+<!ENTITY moveAttachmentBottomPanelBtn.label "Μετακίνηση στο κάτω μέρος">
+
+<!-- LOCALIZATION NOTE (sortAttachmentsPanelBtn.Sort.AZ.label):
+ Please ensure that this translation matches
+ sortAttachmentsPanelBtn.Sort.ZA.label, except for the sort direction. -->
+<!ENTITY sortAttachmentsPanelBtn.Sort.AZ.label "Ταξινόμηση: Α - Ω">
+<!ENTITY sortAttachmentsPanelBtn.Sort.ZA.label "Ταξινόμηση: Ω - Α">
+<!-- LOCALIZATION NOTE (sortAttachmentsPanelBtn.SortSelection.AZ.label):
+ Please ensure that this translation matches
+ sortAttachmentsPanelBtn.SortSelection.ZA.label, except for the sort direction. -->
+<!ENTITY sortAttachmentsPanelBtn.SortSelection.AZ.label "Ταξινόμηση επιλεγμένων: Α - Ω">
+<!ENTITY sortAttachmentsPanelBtn.SortSelection.ZA.label "Ταξινόμηση επιλεγμένων: Ω - Α">
+<!ENTITY sortAttachmentsPanelBtn.key "y">
+
+<!-- View Menu -->
+<!ENTITY viewMenu.label "Προβολή">
+<!ENTITY viewMenu.accesskey "β">
+<!ENTITY viewToolbarsMenuNew.label "Γραμμές εργαλείων">
+<!ENTITY viewToolbarsMenuNew.accesskey "λ">
+<!ENTITY menubarCmd.label "Γραμμή μενού">
+<!ENTITY menubarCmd.accesskey "μ">
+<!ENTITY showCompositionToolbarCmd.label "Γραμμή εργαλείων σύνταξης">
+<!ENTITY showCompositionToolbarCmd.accesskey "ξ">
+<!ENTITY showFormattingBarCmd.label "Γραμμή εργαλείων μορφοποίησης">
+<!ENTITY showFormattingBarCmd.accesskey "φ">
+<!ENTITY showTaskbarCmd.label "Γραμμή κατάστασης">
+<!ENTITY showTaskbarCmd.accesskey "μ">
+<!ENTITY customizeToolbar.label "Προσαρμογή…">
+<!ENTITY customizeToolbar.accesskey "μ">
+
+<!ENTITY addressSidebar.label "Πλευρική στήλη επαφών">
+<!ENTITY addressSidebar.accesskey "λ">
+
+<!-- Format Menu -->
+<!ENTITY formatMenu.label "Μορφοποίηση">
+<!ENTITY formatMenu.accesskey "φ">
+
+<!-- Options Menu -->
+<!ENTITY optionsMenu.label "Επιλογές">
+<!ENTITY optionsMenu.accesskey "π">
+<!ENTITY checkSpellingCmd2.label "Ορθογραφικός έλεγχος…">
+<!ENTITY checkSpellingCmd2.key "p">
+<!ENTITY checkSpellingCmd2.key2 "VK_F7">
+<!ENTITY checkSpellingCmd2.accesskey "θ">
+<!ENTITY enableInlineSpellChecker.label "Αυτόματος ορθογραφικός έλεγχος">
+<!ENTITY enableInlineSpellChecker.accesskey "Α">
+<!ENTITY quoteCmd.label "Παράθεση μηνύματος">
+<!ENTITY quoteCmd.accesskey "θ">
+
+<!--LOCALIZATION NOTE attachVCard.label Don't translate the term 'vCard' -->
+<!ENTITY attachVCard.label "Επισύναψη προσωπικής κάρτας (vCard)">
+<!ENTITY attachVCard.accesskey "v">
+
+<!ENTITY returnReceiptMenu.label "Βεβαίωση ανάγνωσης">
+<!ENTITY returnReceiptMenu.accesskey "Β">
+<!ENTITY dsnMenu.label "Ειδοποίηση παράδοσης">
+<!ENTITY dsnMenu.accesskey "δ">
+<!ENTITY deliveryFormatMenu.label "Μορφή παράδοσης">
+<!ENTITY deliveryFormatMenu.accesskey "Μ">
+<!ENTITY autoFormatCmd.label "Αυτόματος εντοπισμός">
+<!ENTITY autoFormatCmd.accesskey "τ">
+<!ENTITY plainTextFormatCmd.label "Μόνο απλό κείμενο">
+<!ENTITY plainTextFormatCmd.accesskey "α">
+<!ENTITY htmlFormatCmd.label "Μόνο εμπλουτισμένο κείμενο (HTML)">
+<!ENTITY htmlFormatCmd.accesskey "π">
+<!ENTITY bothFormatCmd.label "Απλό και HTML κείμενο">
+<!ENTITY bothFormatCmd.accesskey "κ">
+<!ENTITY priorityMenu.label "Προτεραιότητα">
+<!ENTITY priorityMenu.accesskey "ρ">
+<!ENTITY priorityButton.title "Προτεραιότητα">
+<!ENTITY priorityButton.tooltiptext "Αλλαγή προτεραιότητας του μηνύματος">
+<!ENTITY priorityButton.label "Προτεραιότητα:">
+<!ENTITY lowestPriorityCmd.label "Πολύ χαμηλή">
+<!ENTITY lowestPriorityCmd.accesskey "λ">
+<!ENTITY lowPriorityCmd.label "Χαμηλή">
+<!ENTITY lowPriorityCmd.accesskey "Χ">
+<!ENTITY normalPriorityCmd.label "Κανονική">
+<!ENTITY normalPriorityCmd.accesskey "κ">
+<!ENTITY highPriorityCmd.label "Υψηλή">
+<!ENTITY highPriorityCmd.accesskey "ψ">
+<!ENTITY highestPriorityCmd.label "Πολύ υψηλή">
+<!ENTITY highestPriorityCmd.accesskey "η">
+<!ENTITY fileCarbonCopyCmd.label "Αποστολή αντιγράφου σε">
+<!ENTITY fileCarbonCopyCmd.accesskey "γ">
+<!ENTITY fileHereMenu.label "Αποθήκευση εδώ">
+
+<!-- Tools Menu -->
+<!ENTITY tasksMenu.label "Εργαλεία">
+<!ENTITY tasksMenu.accesskey "γ">
+<!ENTITY messengerCmd.label "Αλληλογραφία &amp; ομάδες συζήτησης">
+<!ENTITY messengerCmd.accesskey "γ">
+<!ENTITY messengerCmd.commandkey "1">
+<!ENTITY addressBookCmd.label "Ευρετήριο">
+<!ENTITY addressBookCmd.accesskey "ρ">
+<!ENTITY addressBookCmd.key "B">
+<!ENTITY accountManagerCmd2.label "Ρυθμίσεις λογαριασμού">
+<!ENTITY accountManagerCmd2.accesskey "θ">
+<!ENTITY accountManagerCmdUnix2.accesskey "μ">
+<!ENTITY preferencesCmd2.label "Επιλογές">
+<!ENTITY preferencesCmd2.accesskey "λ">
+<!ENTITY preferencesCmdUnix.label "Προτιμήσεις">
+<!ENTITY preferencesCmdUnix.accesskey "ρ">
+
+<!-- Mac OS X Window Menu -->
+<!ENTITY minimizeWindow.key "m">
+<!ENTITY minimizeWindow.label "Ελαχιστοποίηση">
+<!ENTITY bringAllToFront.label "Μεταφορά όλων μπροστά">
+<!ENTITY zoomWindow.label "Ζουμ">
+<!ENTITY windowMenu.label "Παράθυρο">
+
+<!-- Mail Toolbar -->
+<!ENTITY sendButton.label "Αποστολή">
+<!ENTITY quoteButton.label "Σε παράθεση">
+<!ENTITY addressButton.label "Επαφές">
+<!ENTITY attachButton.label "Επισύναψη">
+<!ENTITY spellingButton.label "Ορθογραφία">
+<!ENTITY saveButton.label "Αποθήκευση">
+<!ENTITY printButton.label "Εκτύπωση">
+
+<!-- Mail Toolbar Tooltips -->
+<!ENTITY sendButton.tooltip "Άμεση αποστολή μηνύματος">
+<!ENTITY sendlaterButton.tooltip "Αποστολή του μηνύματος αργότερα">
+<!ENTITY quoteButton.tooltip "Παράθεση προηγούμενου μηνύματος">
+<!ENTITY addressButton.tooltip "Επιλογή παραλήπτη από το Ευρετήριο Διευθύνσεων">
+<!ENTITY attachButton.tooltip2 "Προσθήκη ενός συνημμένου">
+<!ENTITY spellingButton.tooltip "Ορθογραφικός έλεγχος επιλογής ή ολόκληρου του μηνύματος">
+<!ENTITY saveButton.tooltip "Αποθήκευση μηνύματος">
+<!ENTITY cutButton.tooltip "Αποκοπή">
+<!ENTITY copyButton.tooltip "Αντιγραφή">
+<!ENTITY pasteButton.tooltip "Επικόλληση">
+<!ENTITY printButton.tooltip "Εκτύπωση μηνύματος">
+
+<!-- Headers -->
+<!--LOCALIZATION NOTE headersSpaces.style is for aligning the From:, To: and
+ Subject: rows. It should be larger than the largest Header label -->
+<!ENTITY headersSpace2.style "width: 8em;">
+<!ENTITY extraRecipients.tooltip "Άλλοι τύποι πεδίων διευθυνσιοδότησης">
+<!ENTITY fromAddr2.label "Από">
+<!ENTITY fromAddr.accesskey "π">
+<!ENTITY toAddr2.label "Προς">
+<!ENTITY ccAddr2.label "Κοιν.">
+<!ENTITY bccAddr2.label "Κρυφή Κοιν.">
+<!ENTITY replyAddr2.label "Απάντηση προς">
+<!ENTITY newsgroupsAddr2.label "Ομάδα ειδήσεων">
+<!ENTITY followupAddr2.label "Σε συνέχεια του ">
+<!ENTITY subject2.label "Θέμα">
+<!ENTITY subject.accesskey "Θ">
+<!ENTITY attachmentBucketCloseButton.tooltip "Απόκρυψη του πίνακα συνημμένων">
+
+<!-- Format Toolbar, imported from editorAppShell.xhtml -->
+<!ENTITY SmileButton.tooltip "Εισαγωγή φατσούλας">
+<!ENTITY smiley1Cmd.label "Χαμόγελο">
+<!ENTITY smiley2Cmd.label "Κατσούφιασμα">
+<!ENTITY smiley3Cmd.label "Κλείσιμο ματιού">
+<!ENTITY smiley4Cmd.label "Γλώσσα έξω">
+<!ENTITY smiley5Cmd.label "Γέλιο">
+<!ENTITY smiley6Cmd.label "Ντροπή">
+<!ENTITY smiley7Cmd.label "Αναποφασιστηκότητα">
+<!ENTITY smiley8Cmd.label "Έκπληξη">
+<!ENTITY smiley9Cmd.label "Φιλί">
+<!ENTITY smiley10Cmd.label "Κραυγή">
+<!ENTITY smiley11Cmd.label "Κουλ">
+<!ENTITY smiley12Cmd.label "Λεφτά στο στόμα">
+<!ENTITY smiley13Cmd.label "Πόδι στο στόμα">
+<!ENTITY smiley14Cmd.label "Αθωότητα">
+<!ENTITY smiley15Cmd.label "Κλάμα">
+<!ENTITY smiley16Cmd.label "Σφραγισμένα χείλη">
+
+<!-- Message Pane Context Menu -->
+<!ENTITY spellCheckNoSuggestions.label "Δεν βρέθηκαν προτάσεις">
+<!ENTITY spellCheckIgnoreWord.label "Παράβλεψη λέξης">
+<!ENTITY spellCheckIgnoreWord.accesskey "ψ">
+<!ENTITY spellCheckAddToDictionary.label "Προσθήκη στο λεξικό">
+<!ENTITY spellCheckAddToDictionary.accesskey "ξ">
+<!ENTITY undo.label "Αναίρεση">
+<!ENTITY undo.accesskey "ν">
+<!ENTITY cut.label "Αποκοπή">
+<!ENTITY cut.accesskey "κ">
+<!ENTITY copy.label "Αντιγραφή">
+<!ENTITY copy.accesskey "γ">
+<!ENTITY paste.label "Επικόλληση">
+<!ENTITY paste.accesskey "κ">
+<!ENTITY pasteQuote.label "Επικόλληση ως παράθεση">
+<!ENTITY pasteQuote.accesskey "θ">
+
+<!-- Attachment Item and List Context Menus -->
+<!ENTITY openAttachment.label "Άνοιγμα">
+<!ENTITY openAttachment.accesskey "γ">
+<!ENTITY delete.label "Διαγραφή">
+<!ENTITY delete.accesskey "Δ">
+<!ENTITY removeAttachment.label "Αφαίρεση συνημμένου">
+<!ENTITY removeAttachment.accesskey "ρ">
+<!ENTITY renameAttachment.label "Μετονομασία…">
+<!ENTITY renameAttachment.accesskey "τ">
+<!ENTITY reorderAttachments.label "Αναδιάταξη συνημμένων…">
+<!ENTITY reorderAttachments.accesskey "ν">
+<!ENTITY removeAllAttachments.label "Αφαίρεση όλων των συνημμένων">
+<!ENTITY removeAllAttachments.accesskey "ρ">
+<!ENTITY selectAll.label "Επιλογή όλων">
+<!ENTITY selectAll.accesskey "λ">
+<!ENTITY attachFile.label "Επισύναψη αρχείου(ων)…">
+<!ENTITY attachFile.accesskey "σ">
+<!ENTITY attachCloud.label "Filelink…">
+<!ENTITY attachCloud.accesskey "i">
+<!ENTITY convertCloud.label "Μετατροπή σε…">
+<!ENTITY convertCloud.accesskey "Μ">
+<!ENTITY cancelUpload.label "Ακύρωση αποστολής">
+<!ENTITY cancelUpload.accesskey "ρ">
+<!ENTITY convertRegularAttachment.label "Κανονικό συνημμένο">
+<!ENTITY convertRegularAttachment.accesskey "Κ">
+<!ENTITY attachPage.label "Επισύναψη ιστοσελίδας…">
+<!ENTITY attachPage.accesskey "ι">
+
+<!-- Attachment Pane Header Bar Context Menu -->
+<!-- LOCALIZATION NOTE (initiallyShowAttachmentPane.label):
+ Should use the same wording as startExpandedCmd.label
+ in msgHdrViewOverlay.dtd. -->
+<!ENTITY initiallyShowAttachmentPane.label "Εμφάνιση παραθύρου συνημμένων αρχικά">
+<!ENTITY initiallyShowAttachmentPane.accesskey "Ε">
+
+<!-- Spell checker context menu items -->
+<!ENTITY spellAddDictionaries.label "Προσθήκη λεξικών…">
+<!ENTITY spellAddDictionaries.accesskey "θ">
+
+<!-- Title for the address picker panel -->
+<!ENTITY addressesSidebarTitle.label "Επαφές">
+
+<!-- Identity popup customize menuitem -->
+<!ENTITY customizeFromAddress.label "Προσαρμογή διεύθυνσης αποστολής…">
+<!ENTITY customizeFromAddress.accesskey "δ">
+
+<!-- Accessibility name for the document -->
+<!ENTITY aria.message.bodyName "Κύριο μέρος μηνύματος">
+
+<!-- Status Bar -->
+<!ENTITY languageStatusButton.tooltip "Γλώσσα ορθογραφικού ελέγχου">
+<!ENTITY encodingStatusPanel.tooltip "Κωδικοποίηση κειμένου">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/sendProgress.dtd b/l10n-el/mail/chrome/messenger/messengercompose/sendProgress.dtd
new file mode 100644
index 0000000000..fadb628a15
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/sendProgress.dtd
@@ -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/. -->
+
+<!--LOCALIZATION NOTE sendprogress.dtd Main UI for Send Message Progress Dialog -->
+<!ENTITY sendDialog.title "Αποστολή μηνυμάτων">
+<!ENTITY status.label "Κατάσταση:">
+<!ENTITY progress.label "Πρόοδος:">
diff --git a/l10n-el/mail/chrome/messenger/messengercompose/sendProgress.properties b/l10n-el/mail/chrome/messenger/messengercompose/sendProgress.properties
new file mode 100644
index 0000000000..8377755f67
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/messengercompose/sendProgress.properties
@@ -0,0 +1,21 @@
+# 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 (titleSendMsgSubject):
+# %S will be replaced by the message subject.
+titleSendMsgSubject=Αποστολή μηνύματος - %S
+titleSendMsg=Αποστολή μηνύματος
+# LOCALIZATION NOTE (titleSaveMsgSubject):
+# %S will be replaced by the message subject.
+titleSaveMsgSubject=Αποθήκευση μηνύματος - %S
+titleSaveMsg=Αποθήκευση μηνύματος
+
+# LOCALIZATION NOTE (percentMsg):
+# This string is used to format the text to the right of the progress meter.
+# %S will be replaced by the percentage of the file that has been saved.
+# %% will be replaced a single % sign.
+percentMsg=%S%%
+
+messageSent=Το μήνυμά σας έχει αποσταλεί.
+messageSaved=Το μήνυμά σας έχει αποθηκευτεί.
diff --git a/l10n-el/mail/chrome/messenger/migration/migration.dtd b/l10n-el/mail/chrome/messenger/migration/migration.dtd
new file mode 100644
index 0000000000..708d957509
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/migration/migration.dtd
@@ -0,0 +1,30 @@
+<!-- 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 migrationWizard.title "Βοηθός εισαγωγής">
+
+<!ENTITY importFromWin.label "Εισαγωγή επιλογών, ρυθμίσεων, ευρετηρίων, φίλτρων και άλλων δεδομένων από:">
+<!ENTITY importFromNonWin.label "Εισαγωγή προτιμήσεων, ρυθμίσεων, ευρετηρίων, φίλτρων και άλλων δεδομένων από:">
+<!ENTITY importSourceNotFound.label "Δεν βρέθηκε εφαρμογή από την οποία να μπορεί να γίνει εισαγωγή δεδομένων.">
+
+<!ENTITY importFromNothing.label "Να μην εισαχθεί τίποτα">
+<!ENTITY importFromNothing.accesskey "τ">
+<!ENTITY importFromSeamonkey3.label "SeaMonkey 2 ή μεταγενέστερη">
+<!ENTITY importFromSeamonkey3.accesskey "S">
+<!ENTITY importFromOutlook.label "Outlook">
+<!ENTITY importFromOutlook.accesskey "O">
+
+<!ENTITY importSource.title "Εισαγωγή ρυθμίσεων και δεδομένων">
+<!ENTITY importItems.title "Στοιχεία προς εισαγωγή">
+<!ENTITY importItems.label "Επιλέξτε ποια στοιχεία θα εισαχθούν:">
+
+<!ENTITY migrating.title "Εισαγωγή…">
+<!ENTITY migrating.label "Τα ακόλουθα στοιχεία εισάγονται αυτή τη στιγμή…">
+
+<!ENTITY selectProfile.title "Επιλογή προφίλ">
+<!ENTITY selectProfile.label "Τα ακόλουθα προφίλ είναι διαθέσιμα για εισαγωγή από:">
+
+<!ENTITY done.title "Η εισαγωγή ολοκληρώθηκε">
+<!ENTITY done.label "Τα ακόλουθα στοιχεία εισήχθησαν επιτυχώς:">
diff --git a/l10n-el/mail/chrome/messenger/migration/migration.properties b/l10n-el/mail/chrome/messenger/migration/migration.properties
new file mode 100644
index 0000000000..a562d38254
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/migration/migration.properties
@@ -0,0 +1,25 @@
+# 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/.
+
+profileName_format=%S %S
+
+# Import Sources
+1_seamonkey=Προτιμήσεις
+
+2_seamonkey=Ρυθμίσεις λογαριασμού
+2_outlook=Ρυθμίσεις λογαριασμού
+
+4_seamonkey=Ευρετήρια
+4_outlook=Ευρετήριο
+
+8_seamonkey=Εκμάθηση ανεπιθύμητης αλληλογραφίας
+
+16_seamonkey=Αποθηκευμένοι κωδικοί
+
+32_seamonkey=Άλλα δεδομένα
+
+64_seamonkey=Φάκελοι ομάδων συζήτησης
+
+128_seamonkey=Φάκελοι email
+128_outlook=Φάκελοι email
diff --git a/l10n-el/mail/chrome/messenger/mime.properties b/l10n-el/mail/chrome/messenger/mime.properties
new file mode 100644
index 0000000000..36164aed7b
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/mime.properties
@@ -0,0 +1,154 @@
+# 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/.
+
+#
+# The following are used by libmime to emit header display in HTML
+#
+
+# Mail subject
+## @name MIME_MHTML_SUBJECT
+## @loc None
+1000=Θέμα
+
+# Resent-Comments
+## @name MIME_MHTML_RESENT_COMMENTS
+## @loc
+1001=Σχόλια εκ νέου αποστολής
+
+# Resent-Date
+## @name MIME_MHTML_RESENT_DATE
+## @loc
+1002=Ημερομηνία εκ νέου αποστολής
+
+# Resent-Sender
+## @name MIME_MHTML_RESENT_SENDER
+## @loc
+1003=Αποστολέας εκ νέου αποστολής
+
+# Resent-From
+## @name MIME_MHTML_RESENT_FROM
+## @loc
+1004=Εκ νέου αποστολή από
+
+# Resent-To
+## @name MIME_MHTML_RESENT_TO
+## @loc
+1005=Εκ νέου αποστολή προς
+
+# Resent-CC
+## @name MIME_MHTML_RESENT_CC
+## @loc
+1006=Εκ νέου αποστολή κοινοποίησης
+
+# Date
+## @name MIME_MHTML_DATE
+## @loc
+1007=Ημερομηνία
+
+# Sender
+## @name MIME_MHTML_SENDER
+## @loc
+1008=Αποστολέας
+
+# From
+## @name MIME_MHTML_FROM
+## @loc
+1009=Από
+
+# Reply-To
+## @name MIME_MHTML_REPLY_TO
+## @loc
+1010=Απάντηση
+
+# Organization
+## @name MIME_MHTML_ORGANIZATION
+## @loc
+1011=Εταιρεία
+
+# To
+## @name MIME_MHTML_TO
+## @loc
+1012=Προς
+
+# CC
+## @name MIME_MHTML_CC
+## @loc
+1013=Κοινοποίηση
+
+# Newsgroups
+## @name MIME_MHTML_NEWSGROUPS
+## @loc
+1014=Ομάδες συζήτησης
+
+# Followup-To
+## @name MIME_MHTML_FOLLOWUP_TO
+## @loc
+1015=Συνέχεια
+
+# References
+## @name MIME_MHTML_REFERENCES
+## @loc
+1016=Αναφορές
+
+# Message ID
+## @name MIME_MHTML_MESSAGE_ID
+## @loc
+1021=Ταυτότητα μηνύματος
+
+# BCC
+## @name MIME_MHTML_BCC
+## @loc
+1023=Κρυφή Κοινοποίηση
+
+# Link to doc
+## @name MIME_MSG_LINK_TO_DOCUMENT
+## @loc
+1026=Διασύνδεση σε έγγραφο
+
+# Get Doc info
+## @name MIME_MSG_DOCUMENT_INFO
+## @loc
+1027=<B>Πληροφορίες εγγράφου:</B>
+
+# Msg Attachment
+## @name MIME_MSG_ATTACHMENT
+## @loc
+1028=Συνημμένο
+
+# default attachment name
+## @name MIME_MSG_DEFAULT_ATTACHMENT_NAME
+## @loc
+# LOCALIZATION NOTE (1040): Do not translate "%s" below.
+# Place the %s where you wish the part number of the attachment to appear
+1040=Μέρος %s
+
+# default forwarded message prefix
+## @name MIME_FORWARDED_MESSAGE_HTML_USER_WROTE
+## @loc
+1041=-------- Αρχικό μήνυμα --------
+
+# Partial Message Truncated
+## @name MIME_MSG_PARTIAL_TRUNCATED
+## @loc
+MIME_MSG_PARTIAL_TRUNCATED=Έχει περικοπεί!
+
+# Partial Message Truncated Explanation
+## @name MIME_MSG_PARTIAL_TRUNCATED_EXPLANATION
+## @loc
+MIME_MSG_PARTIAL_TRUNCATED_EXPLANATION=Το μήνυμα αυτό υπερβαίνει το μέγιστο μέγεθος μηνυμάτων που έχει οριστεί στις προτιμήσεις. Λήφθηκαν από τον διακομιστή αλληλογραφίας μόνο οι πρώτες γραμμές.
+
+# Partial Message Not Downloaded
+## @name MIME_MSG_PARTIAL_NOT_DOWNLOADED
+## @loc
+MIME_MSG_PARTIAL_NOT_DOWNLOADED=Δεν έγινε λήψη
+
+# Partial Message Not Downloaded Explanation
+## @name MIME_MSG_PARTIAL_NOT_DOWNLOADED_EXPLANATION
+## @loc
+MIME_MSG_PARTIAL_NOT_DOWNLOADED_EXPLANATION=Λήφθηκαν μόνο οι κεφαλίδες για αυτό το μήνυμα από το διακομιστή αλληλογραφίας.
+
+# MIME_MSG_PARTIAL_CLICK_FOR_REST
+## @name MIME_MSG_PARTIAL_CLICK_FOR_REST
+## @loc
+MIME_MSG_PARTIAL_CLICK_FOR_REST=Λήψη του υπόλοιπου μηνύματος.
diff --git a/l10n-el/mail/chrome/messenger/mimeheader.properties b/l10n-el/mail/chrome/messenger/mimeheader.properties
new file mode 100644
index 0000000000..043176e676
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/mimeheader.properties
@@ -0,0 +1,35 @@
+# 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/.
+
+#
+# The following are used by libmime for header display in XML & HTML
+#
+TO=Προς
+BCC=Κρυφή Κοινοποίηση
+CC=Κοινοποίηση
+DATE=Ημερομηνία
+DISTRIBUTION=Διανομή
+FCC=Κοινοποίηση
+FOLLOWUP-TO=Συνέχεια
+FROM=Από
+STATUS=Κατάσταση
+LINES=Γραμμές
+MESSAGE-ID=Ταυτότητα μηνύματος
+MIME-VERSION=Έκδοση-MIME
+NEWSGROUPS=Ομάδες συζήτησης
+ORGANIZATION=Εταιρεία
+REFERENCES=Αναφορές
+REPLY-TO=Απάντηση
+RESENT-COMMENTS=Σχόλια εκ νέου αποστολής
+RESENT-DATE=Ημερομηνία εκ νέου αποστολής
+RESENT-FROM=Εκ νέου αποστολή από
+RESENT-MESSAGE-ID=Ταυτότητα εκ νέου απεσταλμένου μηνύματος
+RESENT-SENDER=Αποστολέας εκ νέου αποστολής
+RESENT-TO=Εκ νέου αποστολή προς
+RESENT-CC=Εκ νέου αποστολή κοινοποίησης
+SENDER=Αποστολέας
+SUBJECT=Θέμα
+APPROVED-BY=Εγκρίθηκε από
+USER-AGENT=Πράκτορας χρήστη
+FILENAME=Όνομα αρχείου
diff --git a/l10n-el/mail/chrome/messenger/morkImportMsgs.properties b/l10n-el/mail/chrome/messenger/morkImportMsgs.properties
new file mode 100644
index 0000000000..29bbedfa32
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/morkImportMsgs.properties
@@ -0,0 +1,18 @@
+# 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/.
+
+#
+# The following are used by the Mork import code to display status/error
+# and informational messages.
+#
+
+MABFiles = Ευρετήρια διευθύνσεων Mork
+
+# Short name of import module
+morkImportName = Βάση δεδομένων Mork (.mab)
+
+# Description of import module
+morkImportDescription = Εισαγωγή ευρετηρίου διευθύνσεων από το SeaMonkey ή παλαιότερες εκδόσεις του Thunderbird.
+
+morkImportSuccess = Επιτυχία!
diff --git a/l10n-el/mail/chrome/messenger/msgAccountCentral.dtd b/l10n-el/mail/chrome/messenger/msgAccountCentral.dtd
new file mode 100644
index 0000000000..5550f12c76
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/msgAccountCentral.dtd
@@ -0,0 +1,27 @@
+<!-- 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 emailSectionHdr.label "Email">
+<!ENTITY readMsgsLink.label "Ανάγνωση μηνυμάτων">
+<!ENTITY composeMsgLink.label "Σύνταξη νέου μηνύματος">
+
+<!ENTITY newsSectionHdr.label "Ομάδες συζήτησης">
+<!ENTITY subscribeNewsLink.label "Διαχείριση συνδρομών ομάδων συζήτησης">
+
+<!ENTITY feedsSectionHdr.label "Ροές">
+<!ENTITY subscribeFeeds.label "Διαχείριση συνδρομών">
+
+<!ENTITY chat.label "Συνομιλία">
+<!ENTITY movemail.label "Movemail">
+
+<!ENTITY accountsSectionHdr.label "Λογαριασμοί">
+<!ENTITY subscribeImapFolders.label "Διαχείριση συνδρομών φακέλων">
+<!ENTITY settingsLink.label "Προβολή ρυθμίσεων λογαριασμού">
+<!ENTITY setupNewAcct.label "Ρύθμιση λογαριασμού:">
+
+<!ENTITY advFeaturesSectionHdr.label "Προηγμένες λειτουργίες">
+<!ENTITY searchMsgsLink.label "Αναζήτηση μηνυμάτων">
+<!ENTITY filtersLink.label "Διαχείριση φίλτρων μηνυμάτων">
+<!ENTITY junkSettings.label "Ρυθμίσεις ανεπιθύμητης αλληλογραφίας">
+<!ENTITY offlineLink.label "Ρυθμίσεις για εργασία χωρίς σύνδεση">
diff --git a/l10n-el/mail/chrome/messenger/msgHdrViewOverlay.dtd b/l10n-el/mail/chrome/messenger/msgHdrViewOverlay.dtd
new file mode 100644
index 0000000000..251ea81019
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/msgHdrViewOverlay.dtd
@@ -0,0 +1,114 @@
+<!-- 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 toField4.label "Προς">
+<!ENTITY fromField4.label "Από">
+<!ENTITY senderField4.label "Αποστολέας">
+<!ENTITY author.label "Συντάκτης">
+<!ENTITY organizationField4.label "Εταιρεία">
+<!ENTITY replyToField4.label "Απάντηση σε">
+
+<!ENTITY subjectField4.label "Θέμα">
+<!ENTITY ccField4.label "Κοιν ">
+<!ENTITY bccField4.label "Κρ.κοιν ">
+<!ENTITY newsgroupsField4.label "Ομάδες συζήτησης">
+<!ENTITY followupToField4.label "Σε συνέχεια του">
+<!ENTITY tagsHdr4.label "Ετικέτες">
+<!ENTITY dateField4.label "Ημερομηνία">
+<!ENTITY userAgentField4.label "User agent ">
+<!ENTITY referencesField4.label "Αναφορές">
+<!ENTITY messageIdField4.label "ID μηνύματος ">
+<!ENTITY inReplyToField4.label "Σε απάντηση στο">
+<!ENTITY originalWebsite4.label "Ιστοσελίδα">
+
+<!ENTITY hdrArchiveButton1.label "Αρχειοθέτηση">
+<!ENTITY hdrArchiveButton1.tooltip "Αρχειοθέτηση μηνύματος">
+<!ENTITY hdrSmartReplyButton1.label "Έξυπνη απάντηση">
+<!ENTITY hdrReplyButton1.label "Απάντηση">
+<!ENTITY hdrReplyButton2.tooltip "Απάντηση στον αποστολέα αυτού του μηνύματος">
+<!ENTITY hdrReplyAllButton1.label "Απάντηση σε όλους">
+<!ENTITY hdrReplyAllButton1.tooltip "Απάντηση στον αποστολέα και σε όλους τους παραλήπτες">
+<!ENTITY hdrReplyListButton1.label "Απάντηση στη λίστα">
+<!ENTITY hdrReplyListButton1.tooltip "Απάντηση στη λίστα αλληλογραφίας">
+<!ENTITY hdrFollowupButton1.label "Σε συνέχεια">
+<!ENTITY hdrFollowupButton1.tooltip "Σύνταξη μηνύματος ως συνέχεια κάποιου στην ομάδα συζητήσεων">
+<!ENTITY hdrForwardButton1.label "Προώθηση">
+<!ENTITY hdrForwardButton1.tooltip "Προώθηση μηνύματος">
+<!ENTITY hdrJunkButton1.label "Ανεπιθύμητα">
+<!ENTITY hdrJunkButton1.tooltip "Επισήμανση μηνύματος ως ανεπιθύμητο">
+<!ENTITY hdrTrashButton1.label "Διαγραφή">
+<!ENTITY hdrTrashButton1.tooltip "Διαγραφή μηνύματος">
+
+<!ENTITY hdrViewToolbarShowFull.label "Προβολή εικονιδίων και κειμένου">
+<!ENTITY hdrViewToolbarShowFull.accesskey "δ">
+<!ENTITY hdrViewToolbarShowIcons.label "Προβολή μόνο εικονιδίων">
+<!ENTITY hdrViewToolbarShowIcons.accesskey "ι">
+<!ENTITY hdrViewToolbarShowText.label "Προβολή μόνο κειμένου">
+<!ENTITY hdrViewToolbarShowText.accesskey "κ">
+<!ENTITY hdrViewToolbarAlwaysReplySender.label "Πάντα προβολή του Απάντηση στον αποστολέα">
+<!ENTITY hdrViewToolbarAlwaysReplySender.accesskey "β">
+
+<!ENTITY otherActionsButton2.label "Περισσότερα">
+<!ENTITY otherActionsButton.tooltip "Περισσότερες ενέργειες">
+<!ENTITY otherActionsOpenConversation1.label "Άνοιγμα σε λειτουργία συζήτησης">
+<!ENTITY otherActionsOpenConversation1.accesskey "ζ">
+<!ENTITY otherActionsOpenInNewWindow1.label "Άνοιγμα σε νέο παράθυρο">
+<!ENTITY otherActionsOpenInNewWindow1.accesskey "θ">
+<!ENTITY otherActionsOpenInNewTab1.label "Άνοιγμα σε νέα καρτέλα">
+<!ENTITY otherActionsOpenInNewTab1.accesskey "τ">
+<!ENTITY markAsReadMenuItem1.label "Επισήμανση ως αναγνωσμένο">
+<!ENTITY markAsReadMenuItem1.accesskey "γ">
+<!ENTITY markAsUnreadMenuItem1.label "Επισήμανση ως μη αναγνωσμένο">
+<!ENTITY markAsUnreadMenuItem1.accesskey "μ">
+<!ENTITY saveAsMenuItem1.label "Αποθήκευση ως…">
+<!ENTITY saveAsMenuItem1.accesskey "ς">
+<!ENTITY viewSourceMenuItem1.label "Προβολή κώδικα">
+<!ENTITY viewSourceMenuItem1.accesskey "δ">
+<!ENTITY otherActionsPrint1.label "Εκτύπωση…">
+<!ENTITY otherActionsPrint1.accesskey "π">
+
+<!-- Attachment bar context menu items -->
+<!ENTITY startExpandedCmd.label "Εμφάνιση από την αρχή του πίνακα με τα συνημμένα">
+<!ENTITY startExpandedCmd.accesskey "ε">
+
+<!-- Attachment context menu items -->
+<!ENTITY openAttachmentCmd.label "Άνοιγμα">
+<!ENTITY openAttachmentCmd.accesskey "ο">
+<!ENTITY saveAsAttachmentCmd.label "Αποθήκευση ως…">
+<!ENTITY saveAsAttachmentCmd.accesskey "ς">
+<!ENTITY detachAttachmentCmd.label "Απόσπαση…">
+<!ENTITY detachAttachmentCmd.accesskey "π">
+<!ENTITY deleteAttachmentCmd.label "Διαγραφή">
+<!ENTITY deleteAttachmentCmd.accesskey "Δ">
+<!ENTITY openAllAttachmentsCmd.label "Άνοιγμα όλων…">
+<!ENTITY openAllAttachmentsCmd.accesskey "λ">
+<!ENTITY saveAllAttachmentsCmd.label "Αποθήκευση όλων…">
+<!ENTITY saveAllAttachmentsCmd.accesskey "θ">
+<!ENTITY detachAllAttachmentsCmd.label "Απόσπαση όλων…">
+<!ENTITY detachAllAttachmentsCmd.accesskey "σ">
+<!ENTITY deleteAllAttachmentsCmd.label "Διαγραφή όλων…">
+<!ENTITY deleteAllAttachmentsCmd.accesskey "φ">
+
+<!ENTITY openAttachment.tooltip "Άνοιγμα του επισυναπτόμενου αρχείου">
+
+<!ENTITY detachedAttachmentFolder.show.label "Άνοιγμα φακέλου αποθήκευσης">
+<!ENTITY detachedAttachmentFolder.show.accesskey "φ">
+<!ENTITY detachedAttachmentFolder.showMac.label "Εμφάνιση στο Finder">
+<!ENTITY detachedAttachmentFolder.showMac.accesskey "F">
+
+<!-- Attachment toolbar items -->
+<!ENTITY saveAttachmentButton1.label "Αποθήκευση">
+<!ENTITY saveAttachmentButton1.tooltip "Αποθήκευση του συνημμένου αρχείου">
+<!ENTITY saveAllAttachmentsButton1.label "Αποθήκευση όλων">
+<!ENTITY saveAllAttachmentsButton1.tooltip "Αποθήκευση όλων των συνημμένων αρχείων">
+
+<!ENTITY copyLinkCmd.label "Αντιγραφή τοποθεσίας συνδέσμου">
+<!ENTITY copyLinkCmd.accesskey "τ">
+
+<!ENTITY CopyMessageId.label "Αντιγραφή Message-ID">
+<!ENTITY CopyMessageId.accesskey "γ">
+<!ENTITY OpenMessageForMsgId.label "Άνοιγμα μηνύματος για ID">
+<!ENTITY OpenMessageForMsgId.accesskey "ο">
+<!ENTITY OpenBrowserWithMsgId.label "Άνοιγμα περιηγητή με Message-ID">
+<!ENTITY OpenBrowserWithMsgId.accesskey "π">
diff --git a/l10n-el/mail/chrome/messenger/msgPrintEngine.dtd b/l10n-el/mail/chrome/messenger/msgPrintEngine.dtd
new file mode 100644
index 0000000000..9ccc3ccb86
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/msgPrintEngine.dtd
@@ -0,0 +1,16 @@
+<!-- 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 (printCmd.key, closeCmd.key):
+ As defined in msgPrintEngine.xul, Ctrl plus the command keys defined here
+ will be the keyboard shortcuts effective in print preview, e.g. Ctrl+P
+ -->
+
+<!-- LOCALIZATION NOTE (printCmd.key, closeCmd.key):
+ As defined in msgPrintEngine.xhtml, Ctrl plus the command keys defined here
+ will be the keyboard shortcuts effective in print preview, e.g. Ctrl+P
+ -->
+
+<!ENTITY printCmd.key "P">
+<!ENTITY closeCmd.key "W">
diff --git a/l10n-el/mail/chrome/messenger/msgSynchronize.dtd b/l10n-el/mail/chrome/messenger/msgSynchronize.dtd
new file mode 100644
index 0000000000..6516e49219
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/msgSynchronize.dtd
@@ -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/. -->
+
+<!-- extracted from MsgSynchronize.xhtml and msgSelectOfflineFolders.xhtml-->
+
+<!ENTITY MsgSynchronize.label "Λήψη και συγχρονισμός μηνυμάτων">
+<!ENTITY MsgSelect.label "Στοιχεία για χρήση εκτός σύνδεσης">
+<!ENTITY MsgSyncDesc.label "Αν έχετε ήδη επιλέξει φακέλους αλληλογραφίας και συζητήσεων για εργασία χωρίς σύνδεση, μπορείτε να κάνετε λήψη ή και να τους συγχρονίσετε τώρα.Αλλιώς χρησιμοποιήστε το κουμπί &quot;Επιλογή&quot; για να επιλέξετε φακέλους. ">
+<!ENTITY MsgSyncDirections.label "Λήψη ή/και συγχρονισμός των ακόλουθων:">
+<!ENTITY syncTypeMail.label "Μηνύματα email">
+<!ENTITY syncTypeMail.accesskey "Μ">
+<!ENTITY syncTypeNews.label "Μηνύματα ομάδων συζήτησης">
+<!ENTITY syncTypeNews.accesskey "ζ">
+<!ENTITY sendMessage.label "Αποστολή μη απεσταλμένων μηνυμάτων">
+<!ENTITY sendMessage.accesskey "μ">
+<!ENTITY workOffline.label "Να γίνει αποσύνδεση όταν ολοκληρωθεί η λήψη ή/και ο συγχρονισμός ολοκληρωθεί">
+<!ENTITY workOffline.accesskey "γ">
+<!ENTITY selectButton.label "Επιλογή…">
+<!ENTITY selectButton.accesskey "λ">
+<!ENTITY MsgSelectDesc.label "Επιλέξτε τους φακέλους αλληλογραφίας και συζητήσεων που θέλετε να χρησιμοποιείτε εκτός σύνδεσης.">
+<!ENTITY MsgSelectInd.label "Λήψη">
+<!ENTITY MsgSelectItems.label "Φάκελοι και ομάδες ειδήσεων">
diff --git a/l10n-el/mail/chrome/messenger/msgViewPickerOverlay.dtd b/l10n-el/mail/chrome/messenger/msgViewPickerOverlay.dtd
new file mode 100644
index 0000000000..89959a2ada
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/msgViewPickerOverlay.dtd
@@ -0,0 +1,22 @@
+<!-- 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 msgViewPickerOverlay.dtd UI for showing various views on a folder -->
+
+<!ENTITY viewPicker.label "Προβολή:">
+<!ENTITY viewPicker.accesskey "β">
+<!ENTITY viewAll.label "Όλα">
+<!ENTITY viewAll.accesskey "λ">
+<!ENTITY viewUnread.label "Μη αναγνωσμένα">
+<!ENTITY viewUnread.accesskey "μ">
+<!ENTITY viewNotDeleted.label "Μη διαγραμμένα">
+<!ENTITY viewNotDeleted.accesskey "γ">
+<!ENTITY viewTags.label "Ετικέτες">
+<!ENTITY viewTags.accesskey "τ">
+<!ENTITY viewCustomViews.label "Προσαρμοσμένες προβολές">
+<!ENTITY viewCustomViews.accesskey "ρ">
+<!ENTITY viewVirtualFolder.label "Αποθήκευση προβολής ως φάκελο…">
+<!ENTITY viewVirtualFolder.accesskey "θ">
+<!ENTITY viewCustomizeView.label "Προσαρμογή…">
+<!ENTITY viewCustomizeView.accesskey "σ">
diff --git a/l10n-el/mail/chrome/messenger/msgmdn.properties b/l10n-el/mail/chrome/messenger/msgmdn.properties
new file mode 100644
index 0000000000..1d973cfc51
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/msgmdn.properties
@@ -0,0 +1,18 @@
+# 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/.
+## Msg Mdn Report strings
+MsgMdnDisplayed=Σημείωση: Αυτή η απόδειξη ενημερώνει πως το μήνυμα εμφανίστηκε στον υπολογιστή του παραλήπτη. Δεν υπάρχει εγγύηση πως ο παραλήπτης διάβασε ή κατάλαβε το περιεχόμενο του μηνύματος.
+MsgMdnDispatched=Το μήνυμα τυπώθηκε, στάλθηκε με fax, ή προωθήθηκε χωρίς να εμφανιστεί στον παραλήπτη. Δεν υπάρχει εγγύηση πως ο παραλήπτης θα διαβάσει το μήνυμα αργότερα.
+MsgMdnProcessed=Το πρόγραμμα αλληλογραφίας του παραλήπτη επεξεργάστηκε το μήνυμα χωρίς να γίνει προβολή του. Δεν υπάρχει εγγύηση πως το μήνυμα θα διαβαστεί αργότερα.
+MsgMdnDeleted=Το μήνυμα διαγράφηκε. Το άτομο στο οποίο το στείλατε μπορεί να μην το είδε. Μπορεί να το επαναφέρει αργότερα και να το διαβάσει.
+MsgMdnDenied=Ο παραλήπτης του μηνύματος δεν επιθυμεί να σας στείλει απόδειξη.
+MsgMdnFailed=Ένα σφάλμα προέκυψε. Δεν μπορεί να δημιουργηθεί ή να σας αποσταλεί μια έγκυρη απόδειξη.
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+MsgMdnMsgSentTo=Αυτή είναι μια βεβαίωση παράδοσης για το μήνυμα που στείλατε στο %S.
+MdnDisplayedReceipt=Βεβαίωση παράδοσης (εμφανίστηκε)
+MdnDispatchedReceipt=Βεβαίωση παράδοσης (στάλθηκε)
+MdnProcessedReceipt=Βεβαίωση παράδοσης (επεξεργάστηκε)
+MdnDeletedReceipt=Βεβαίωση παράδοσης (διαγράφηκε)
+MdnDeniedReceipt=Βεβαίωση παράδοσης (αρνήθηκε)
+MdnFailedReceipt=Βεβαίωση παράδοσης (απέτυχε)
diff --git a/l10n-el/mail/chrome/messenger/multimessageview.dtd b/l10n-el/mail/chrome/messenger/multimessageview.dtd
new file mode 100644
index 0000000000..9111af847f
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/multimessageview.dtd
@@ -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/. -->
+
+<!ENTITY window.title "Περίληψη μηνύματος">
+<!ENTITY selectedmessages.label "Επιλεγμένα μηνύματα">
+<!ENTITY archiveButton.label "Αρχειοθέτηση">
+<!ENTITY deleteButton.label "Διαγραφή">
diff --git a/l10n-el/mail/chrome/messenger/multimessageview.properties b/l10n-el/mail/chrome/messenger/multimessageview.properties
new file mode 100644
index 0000000000..73de189264
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/multimessageview.properties
@@ -0,0 +1,66 @@
+# 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 (numConversations): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# The number of conversations (threads or solitary messages) selected. #1 is the
+# number of conversations.
+numConversations=#1 συνομιλία; #1 συνομιλίες
+
+# LOCALIZATION NOTE (atLeastNumConversations): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# The number of conversations (threads or solitary messages) selected. #1 is the
+# number of conversations. We use this when we didn't actually scan the entire
+# list of selected messages, so there may be more conversations than reported
+# (or maybe not!).
+atLeastNumConversations=#1+ συνομιλία; #1+ συνομιλίες
+
+# LOCALIZATION NOTE (numMessages): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# The number of messages in a thread. #1 is the number of messages.
+numMessages=#1 μήνυμα;#1 μηνύματα
+
+# LOCALIZATION NOTE (numUnread): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# The number of unread messages in a thread; meant to be appended to
+# "numMessages". #1 is the number of unread messages.
+numUnread=, #1 μη αναγνωσμένο;, #1 μη αναγνωσμένα
+
+# LOCALIZATION NOTE (numIgnored): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# The number of ignored messages in a thread; meant to be appended to
+# "numMessages". #1 is the number of ignored messages.
+numIgnored=, #1 παραβλέφθηκε;, #1 παραβλέφθηκαν
+
+# LOCALIZATION NOTE (atLeastNumIgnored): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# The number of ignored messages in a thread; meant to be appended to
+# "numMessages". #1 is the number of ignored messages. We use this when we
+# didn't actually scan the entire list of selected messages, so there may be
+# more ignored messages than reported (or maybe not!).
+atLeastNumIgnored=, #1+ παραβλέφθηκε;, #1+ παραβλέφθηκαν
+
+# LOCALIZATION NOTE (noSubject): What to display for a message if it has no
+# subject.
+noSubject=(χωρίς θέμα)
+
+# LOCALIZATION NOTE (messagesTotalSize): A message indicating the total size on
+# disk of the selected messages. #1 is the size, e.g. "123 KB".
+messagesTotalSize=Αυτά τα μηνύματα καταλαμβάνουν: #1.
+
+# LOCALIZATION NOTE (messagesTotalSizeMoreThan): A message indicating the total
+# size on disk of the selected messages. #1 is the size, e.g. "123 KB". We use
+# this when we didn't actually scan the entire list of selected messages, so
+# this is a *minimum* size.
+messagesTotalSizeMoreThan=Αυτά τα μηνύματα καταλαμβάνουν πάνω από #1.
+
+# LOCALIZATION NOTE (maxCountExceeded): A message to let the user know that not
+# all of the selected messages were summarized. #1 is the total number of
+# messages selected and #2 is the number of messages actually shown.
+maxCountExceeded= (Σημείωση: έχουν επιλεχθεί #1 μηνύματα, εμφανίζονται τα πρώτα #2)
+
+# LOCALIZATION NOTE (maxThreadCountExceeded): A message to let the user know that
+# not all of the selected thread were summarized. #1 is the total number of
+# threads selected and #2 is the number of threads actually shown.
+maxThreadCountExceeded= (Σημείωση: έχουν επιλεχθεί #1 νήματα, εμφανίζονται τα πρώτα #2)
diff --git a/l10n-el/mail/chrome/messenger/newFolderDialog.dtd b/l10n-el/mail/chrome/messenger/newFolderDialog.dtd
new file mode 100644
index 0000000000..3f845e1b47
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/newFolderDialog.dtd
@@ -0,0 +1,16 @@
+<!-- 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/. -->
+
+<!-- Labels -->
+<!ENTITY newFolderDialog.title "Νέος φάκελος">
+<!ENTITY name.label "Όνομα:">
+<!ENTITY name.accesskey "ν">
+<!ENTITY description.label "Δημιουργία ως υποφακέλου σε:">
+<!ENTITY description.accesskey "π">
+<!ENTITY folderRestriction1.label "Σε αυτόν τον διακομιστή υποστηρίζονται μόνο δύο είδη φακέλων">
+<!ENTITY folderRestriction2.label "Καθορίστε αν ο νέος φάκελος θα περιέχει:">
+<!ENTITY foldersOnly.label "Μόνο φάκελους">
+<!ENTITY messagesOnly.label "Μόνο μηνύματα">
+<!ENTITY accept.label "Δημιουργία φακέλου">
+<!ENTITY accept.accesskey "μ">
diff --git a/l10n-el/mail/chrome/messenger/newmailaccount/accountProvisioner.dtd b/l10n-el/mail/chrome/messenger/newmailaccount/accountProvisioner.dtd
new file mode 100644
index 0000000000..ff4b22f60f
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/newmailaccount/accountProvisioner.dtd
@@ -0,0 +1,43 @@
+<!-- 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 window.title "Καλώς ήλθατε στο &brandShortName;">
+<!ENTITY header2.label "Θέλετε να αποκτήσετε μια νέα διεύθυνση email;">
+<!ENTITY other.languages "Σας εμφανίζουμε μόνο τους παρόχους που προσφέρουν email στην περιοχή σας. Πατήστε εδώ για να εμφανίσετε όλους τους παρόχους.">
+<!ENTITY error.line1 "Λυπούμαστε, δεν βρέθηκε καμία προτεινόμενη διεύθυνση email.">
+<!ENTITY error.line2 "Μπορείτε να αναζητήσετε ψευδώνυμα ή άλλους όρους για να βρείτε περισσότερα email.">
+
+<!-- LOCALIZATION NOTE(error.suggest.before, error.suggest.middle, error.suggest.after):
+ error.suggest.before, error.suggest.middle, and error.suggest.after all go into
+ one line with error.suggest.middle that links to a site which provides download
+ of free account alternatives. -->
+<!ENTITY error.suggest.before "Ακόμα, μπορείτε να δοκιμάσετε κάποια από τις ">
+<!ENTITY error.suggest.middle "δωρεάν εναλλακτικές λογαριασμών email">
+<!ENTITY error.suggest.after ".">
+
+<!-- LOCALIZATION NOTE(success.title.before, success.title.after):
+ success.title.before and success.title.after all go into one line, wrapping
+ around the name that the user has typed in to the search input. -->
+<!ENTITY success.title.before "Γεια σας ">
+<!ENTITY success.title.after ", ακολουθούν οι διαθέσιμες επιλογές διεύθυνσης email:">
+<!ENTITY success.tip "(Μπορείτε επίσης να αναζητήσετε ψευδώνυμα ή άλλους όρους για να βρείτε περισσότερα email)">
+<!ENTITY partnership.description "Σε συνεργασία με πολλούς παρόχους, το &brandShortName; σάς προσφέρει έναν νέο λογαριασμό email. Συμπληρώστε απλά το όνομα και το επώνυμό σας, ή οποιεσδήποτε άλλες λέξεις επιθυμείτε, στα παραπάνω πεδία για να ξεκινήσετε.">
+<!ENTITY existing.header "Έχετε ήδη μια διεύθυνση που θέλετε να χρησιμοποιήσετε;">
+<!ENTITY tinyheader.title "Έχετε ήδη μια διεύθυνση;">
+<!ENTITY tinyheader.existing "Παράλειψη και χρήση υπάρχοντος email">
+<!ENTITY content.close "Θα ρυθμίσω το λογαριασμό μου αργότερα">
+<!ENTITY successful.title "Συγχαρητήρια!">
+<!ENTITY successful.successMessage "Έχετε ρυθμίσει επιτυχώς το λογαριασμό σας.">
+<!ENTITY successful.write "Γράψτε κάποια μηνύματα">
+<!ENTITY successful.write.desc "Πείτε στους φίλους και την οικογένεια σας για την νέα σας διεύθυνση.<br/> Για αυτό εξάλλου δεν φτιάξατε αυτή την διεύθυνση;">
+<!ENTITY successful.customize "Προσαρμόστε το &brandShortName; με μερικά ενδιαφέροντα πρόσθετα">
+<!ENTITY successful.customize.desc "Υπάρχουν χιλιάδες πρόσθετα που σας επιτρέπουν να προσαρμόσετε το &brandShortName; στις ανάγκες σας.">
+<!ENTITY successful.attach "Επισύναψη μιας υπογραφής στο μήνυμα">
+<!ENTITY successful.attach.desc "Μπορείτε να επισυνάψετε αυτόματα μια παράθεση ή κάποιες πληροφορίες για τον εαυτό σας στο τέλος κάθε μηνύματος που στέλνετε.">
+<!ENTITY successful.close "Κλείσιμο του παραθύρου.">
+<!ENTITY input.namePlaceholder "Όνομα ή ψευδώνυμο">
+<!ENTITY input.search "Αναζήτηση">
+<!ENTITY search_engine.title "Προσαρμογή της μηχανής αναζήτησης">
+<!ENTITY search_engine.message "Ο πάροχος email μπορεί ακόμα να σας παρέχει κάποιες δυνατότητες αναζήτησης.">
+<!ENTITY search_engine.button "Τέλος">
diff --git a/l10n-el/mail/chrome/messenger/newmailaccount/accountProvisioner.properties b/l10n-el/mail/chrome/messenger/newmailaccount/accountProvisioner.properties
new file mode 100644
index 0000000000..8e6e0e1f9d
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/newmailaccount/accountProvisioner.properties
@@ -0,0 +1,32 @@
+# 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 (free):
+# This will be shown instead of a price when displaying free email accounts
+free=Δωρεάν
+# LOCALIZATION NOTE (price):
+# %S will be the price per year charged to the user for the account.
+price=%S ανά έτος
+# LOCALIZATION NOTE (moreOptions): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# #1 is the number of additional email addresses available for registration.
+# This line is shown when there are more than two suggested email
+# addresses available.
+moreOptions=+#1 ακόμα…;+#1 ακόμα…
+# LOCALIZATION NOTE (sepAnd):
+# \u0020 is a space, and should be included before and after.
+sepAnd=\u0020και\u0020
+# LOCALIZATION NOTE (sepComma):
+# \u0020 is a space, and should be included after.
+sepComma=,\u0020
+# LOCALIZATION NOTE (privacyDisclaimer):
+# #1 will be a link for the Mozilla Privacy policy page.
+# #2 will be a list of providers with links to their ToS and Privacy policies, separated by the 'sepComma' delimiter.
+privacyDisclaimer=Οι όροι αναζήτησης αποστέλλονται στη Mozilla (#1) και σε τρίτους παρόχους email #2 για την εύρεση διαθέσιμων διευθύνσεων email.
+privacyPolicy=Πολιτική απορρήτου
+tos=Όροι υπηρεσίας
+# LOCALIZATION NOTE (searchEngineDesc):
+# %S will be the selected search engine.
+searchEngineDesc=Χρήση %S ως προεπιλεγμένης μηχανής αναζήτησης
+cannotConnect=Δεν ήταν δυνατή η επικοινωνία με τον διακομιστή σύνδεσης. Παρακαλώ ελέγξτε τη σύνδεσή σας.
diff --git a/l10n-el/mail/chrome/messenger/news.properties b/l10n-el/mail/chrome/messenger/news.properties
new file mode 100644
index 0000000000..a10ffc7d14
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/news.properties
@@ -0,0 +1,56 @@
+# 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/.
+downloadHeadersTitlePrefix=Λήψη κεφαλίδων
+downloadHeadersInfoText=Υπάρχουν %S κεφαλίδες μηνυμάτων για λήψη σε αυτή την ομάδα συζήτησης.
+cancelDisallowed=Το μήνυμα αυτό δεν φαίνεται να έχει καταχωρηθεί από εσάς. Μπορείτε να ακυρώσετε μόνο τις δικές σας καταχωρήσεις, όχι αυτές που προέρχονται από άλλους.
+cancelConfirm=Είστε βέβαιοι ότι θέλετε να ακυρώσετε αυτό το μήνυμα;
+messageCancelled=Το μήνυμα ακυρώθηκε.
+enterUserPassTitle=Απαιτείται όνομα χρήστη και κωδικός πρόσβασης για τον διακομιστή συζητήσεων
+# LOCALIZATION NOTE (enterUserPassServer): %S is the server being accessed
+enterUserPassServer=Παρακαλώ εισάγετε όνομα χρήστη και κωδικό για τον διακομιστή %S:
+# LOCALIZATION NOTE (enterUserPassGroup): %1$S is a specific newsgroup to set
+# the password for; %2$S is the server from which the newsgroup is accessed
+enterUserPassGroup=Παρακαλώ εισάγετε όνομα χρήστη και κωδικό για την ομάδα συζήτησης %1$S στο διακομιστή %2$S:
+okButtonText=Λήψη
+
+noNewMessages=Δεν υπάρχουν νέα μηνύματα στο διακομιστή.
+# LOCALIZATION NOTE (newNewsgroupHeaders): %1$S is the number of the current
+# header being downloaded, %2$S is the number of headers to be downloaded, and
+# %3$S is the newsgroup whose headers are being downloaded.
+newNewsgroupHeaders=Λήψη %1$S από %2$S κεφαλίδες για το %3$S
+# LOCALIZATION NOTE (newNewsgroupFilteringHeaders): %1$S is the name of the MIME
+# header being filtered on, %2$S is the number of the current header being
+# downloaded, %3$S is the number of headers to be downloaded, and %4$S is the
+# newsgroup whose headers are being downloaded.
+newNewsgroupFilteringHeaders=Λήψη κεφαλίδων για φίλτρα: %1$S (%2$S/%3$S) στο %4$S
+downloadingArticles=Λήψη άρθρων %S-%S
+bytesReceived=Λήψη ομάδων συζήτησης: Ελήφθηκαν %S (Ανάγνωση %SKB στα %SKB/s)
+downloadingArticlesForOffline=Λήψη άρθρων %S-%S σε %S
+
+# LOCALIZATION NOTE (autoUnsubscribeText): %1$S is the newsgroup and %2$S is the newsgroup-server it is being removed from.
+autoUnsubscribeText=Η ομάδα συζήτησης %1$S φαίνεται να μην υπάρχει στο διακομιστή %2$S. Θέλετε να κάνετε απεγγραφή;
+
+# LOCALIZATION NOTE (autoSubscribeText): %1$S is the newsgroup.
+autoSubscribeText=Θέλετε να εγγραφείτε στο %1$S;
+
+# LOCALIZATION NOTE (Error -304): In the following item, don't translate "NNTP"
+# Error - server error
+## @name NNTP_ERROR_MESSAGE
+## @loc None
+-304=Προέκυψε σφάλμα συζήτησης (NNTP):
+
+# Error - newsgroup scan error
+## @name NNTP_NEWSGROUP_SCAN_ERROR
+## @loc None
+-305=Προέκυψε σφάλμα ειδήσεων. Η σάρωση όλων των ομάδων συζήτησης δεν ολοκληρώθηκε. Δοκιμάστε να κάνετε ξανά προβολή όλων των ομάδων συζήτησης
+
+# Error - NNTP authinfo failure
+## @name NNTP_AUTH_FAILED
+## @loc None
+-260=Προέκυψε σφάλμα εξακρίβωσης στοιχείων. Πληκτρολογήστε ξανά το όνομα χρήστη και τον κωδικό πρόσβασης σας.
+
+# Error - TCP error
+## @name TCP_ERROR
+## @loc None
+-206=Προέκυψε σφάλμα επικοινωνίας.Προσπαθήστε να συνδεθείτε ξανά. Σφάλμα TCP.
diff --git a/l10n-el/mail/chrome/messenger/newsError.dtd b/l10n-el/mail/chrome/messenger/newsError.dtd
new file mode 100644
index 0000000000..652f5ba1c4
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/newsError.dtd
@@ -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/. -->
+
+<!-- LOCALIZATION NOTE (newsError.title): The title of the news error page.
+ Not generally visible. -->
+<!ENTITY newsError.title "Πρόβλημα φόρτωσης άρθρου">
+
+<!-- LOCALIZATION NOTE (articleNotFound.title): The main heading for the news
+ error page. -->
+<!ENTITY articleNotFound.title "Το άρθρο δεν βρέθηκε">
+
+<!-- LOCALIZATION NOTE (articleNotFound.desc): A longer description for the news
+ error page. -->
+<!ENTITY articleNotFound.desc "Ο διακομιστής ομάδας συζήτησης αναφέρει ότι δεν μπορεί να βρει το άρθρο.">
+
+<!-- LOCALIZATION NOTE (serverResponded.title): A string preceding the text
+ response from the newsgroup server describing the error. -->
+<!ENTITY serverResponded.title "Ο διακομιστής ομάδας συζήτησης αποκρίθηκε:">
+
+<!-- LOCALIZATION NOTE (articleExpired.title): A string explaining that the
+ article may have expired. -->
+<!ENTITY articleExpired.title "Μήπως το άρθρο έχει λήξει;">
+
+<!-- LOCALIZATION NOTE (trySearching.title): A string preceding the message's
+ ID. -->
+<!ENTITY trySearching.title "Δοκιμάστε να αναζητήσετε το άρθρο:">
+
+<!-- LOCALIZATION NOTE (removeExpiredArticles.title): The label for the button
+ to remove all expired articles from the newsgroup. -->
+<!ENTITY removeExpiredArticles.title "Αφαίρεση όλων των ληγμένων άρθρων">
diff --git a/l10n-el/mail/chrome/messenger/oeImportMsgs.properties b/l10n-el/mail/chrome/messenger/oeImportMsgs.properties
new file mode 100644
index 0000000000..f16a9fd64e
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/oeImportMsgs.properties
@@ -0,0 +1,76 @@
+# 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/.
+
+#
+# The following are used by the outlook express import code to display status/error
+# and informational messages
+#
+
+# Short name of import module
+## @name OEIMPORT_NAME
+## @loc None
+## LOCALIZATION NOTE (2000): DONT_TRANSLATE
+2000=Outlook Express
+
+# Description of import module
+## @name OEIMPORT_DESCRIPTION
+## @loc None
+## LOCALIZATION NOTE (2011): In this item, don't translate "Outlook Express"
+2011=Αλληλογραφία Outlook Express, ευρετήριο διευθύνσεων και ρυθμίσεις
+
+# Success message
+## @name OEIMPORT_MAILBOX_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2002): In this item, don't translate "%S" or "%d"
+## The variable %S will contain the name of the Mailbox
+## The variable %d will contain the number of messages
+2002=Γραμματοκιβώτιο %S, εισαγωγή %d μηνυμάτων
+
+# Error message
+## @name OEIMPORT_MAILBOX_BADPARAM
+## @loc None
+2003=Εσφαλμένη παράμετρος στην εισαγωγή γραμματοκιβωτίου
+
+# Error message
+## @name OEIMPORT_MAILBOX_BADSOURCEFILE
+## @loc None
+## LOCALIZATION NOTE (2004): In this item, don't translate "%S"
+## The variable %S will contain the name of the Mailbox
+2004=Σφάλμα πρόσβασης αρχείου για το γραμματοκιβώτιο %S.
+
+# Error message
+## @name OEIMPORT_MAILBOX_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2005): In this item, don't translate "%S"
+## The variable %S will contain the name of the Mailbox
+2005=Σφάλμα κατά τη εισαγωγή γραμματοκιβωτίου %S, μπορεί να μην εισαχθούν όλα τα μηνύματα απο αυτό το γραμματοκιβώτιο
+
+# Default name of imported addressbook
+## @name OEIMPORT_DEFAULT_NAME
+## @loc None
+2006=Ευρετήριο διευθύνσεων Outlook Express
+
+# Autofind description
+## @name OEIMPORT_AUTOFIND
+## @loc None
+2007=Ευρετήριο διευθύνσεων Outlook Express (ευρετήριο διευθύνσεων windows)
+
+# Description
+## @name OEIMPORT_ADDRESS_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2006): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2008=Εισηγμένο ευρετήριο διευθύνσεων %S
+
+# Error message
+## @name OEIMPORT_ADDRESS_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2009): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2009=Σφάλμα εισαγωγής ευρετηρίου διευθύνσεων %S, μπορεί να μην εισήχθησαν όλες οι διευθύνσεις.
+
+# Error message
+## @name OEIMPORT_ADDRESS_BADPARAM
+## @loc None
+2010=Λανθασμένη παράμετρος στην εισαγωγή ευρετηρίου διευθύνσεων
diff --git a/l10n-el/mail/chrome/messenger/offline.properties b/l10n-el/mail/chrome/messenger/offline.properties
new file mode 100644
index 0000000000..3f00d650c4
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/offline.properties
@@ -0,0 +1,28 @@
+# 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/.
+
+# Download Messages Prompt
+downloadMessagesWindowTitle1=Λήψη μηνυμάτων
+downloadMessagesLabel1=Θέλετε να κάνετε λήψη μηνυμάτων για εργασία χωρίς σύνδεση πριν αποσυνδεθείτε;
+downloadMessagesCheckboxLabel1=Να γίνεται πάντα ερώτηση κατά τη αποσύνδεση
+downloadMessagesNow2=&Λήψη τώρα
+
+# Send Messages Prompt
+sendMessagesWindowTitle1=Μη απεσταλμένα μηνύματα
+sendMessagesLabel2=Θέλετε να στείλετε τα μη απεσταλμένα μηνύματα σας τώρα;
+sendMessagesCheckboxLabel1=Να γίνεται πάντα ερώτηση κατά τη σύνδεση
+sendMessagesNow2=&Αποστολή τώρα
+
+processMessagesLater2=Α&ργότερα
+
+# GetMessages While Offline Prompt
+getMessagesOfflineWindowTitle1=Λήψη μηνυμάτων
+getMessagesOfflineLabel1=Αυτήν τη στιγμή βρίσκεστε εκτός σύνδεσης. Θέλετε να συνδεθείτε για να λάβετε νέα μηνύματα;
+
+# Send Messages Offline Prompt
+sendMessagesOfflineWindowTitle1=Μη απεσταλμένα μηνύματα
+sendMessagesOfflineLabel1=Αυτήν τη στιγμή βρίσκεστε εκτός σύνδεσης. Θέλετε να συνδεθείτε για να στείλετε τα μη απεσταλμένα μηνύματα;
+
+offlineTooltip=Αυτή τη στιγμή είστε εκτός σύνδεσης.
+onlineTooltip=Αυτή τη στιγμή είστε σε σύνδεση.
diff --git a/l10n-el/mail/chrome/messenger/offlineStartup.properties b/l10n-el/mail/chrome/messenger/offlineStartup.properties
new file mode 100644
index 0000000000..338bf748de
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/offlineStartup.properties
@@ -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/.
+
+title=Εργασία με σύνδεση
+desc=Θέλετε να συνδεθείτε τώρα;\n\n(Αν επιλέξετε να εργαστείτε χωρίς σύνδεση, μπορείτε να συνδεθείτε αργότερα επιλέγοντας 'Εργασία με σύνδεση' από το μενού 'Αρχείο').
+workOnline=Εργασία με σύνδεση
+workOffline=Εργασία εκτός σύνδεσης
diff --git a/l10n-el/mail/chrome/messenger/outlookImportMsgs.properties b/l10n-el/mail/chrome/messenger/outlookImportMsgs.properties
new file mode 100644
index 0000000000..a8d7eeff96
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/outlookImportMsgs.properties
@@ -0,0 +1,77 @@
+# 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/.
+
+#
+# The following are used by the outlook express import code to display status/error
+# and informational messages
+#
+
+#
+# The following are used by the outlook express import code to display status/error
+# and informational messages
+#
+
+# Short name of import module
+## @name OUTLOOKIMPORT_NAME
+## @loc None
+## LOCALIZATION NOTE (2000): DONT_TRANSLATE
+2000=Outlook
+
+# Description of import module
+## @name OUTLOOKIMPORT_DESCRIPTION
+## @loc None
+## LOCALIZATION NOTE (2010): In this item, don't translate "Outlook"
+2010=Αλληλογραφία Outlook, ευρετήριο διευθύνσεων και ρυθμίσεις
+
+# Success message
+## @name OUTLOOKIMPORT_MAILBOX_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2002): In this item, don't translate "%S" or "%d"
+## The variable %S will receive the name of the mailbox
+## The variable %d will receive the number of messages
+2002=Γραμματοκιβώτιο %S, εισαγωγή %d μηνυμάτων
+
+# Error message
+## @name OUTLOOKIMPORT_MAILBOX_BADPARAM
+## @loc None
+2003=Λανθασμένη παράμετρος στην εισαγωγή ευρετήριου διευθύνσεων
+
+# Error message
+## @name OUTLOOKIMPORT_MAILBOX_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2004): In this item, don't translate "%S"
+## The variable %S will receive the name of the mailbox
+2004=Σφάλμα κατά τη εισαγωγή γραμματοκιβωτίου %S, μπορεί να μην εισαχθούν όλα τα μηνύματα από αυτό το γραμματοκιβώτιο
+
+# Address book name
+## @name OUTLOOKIMPORT_ADDRNAME
+## @loc None
+## LOCALIZATION NOTE (2005): In this item, don't translate "Outlook"
+2005=Ευρετήριο Διευθύνσεων Outloook
+
+# Description
+## @name OUTLOOKIMPORT_ADDRESS_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2006): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2006=Εισηγμένα Ευρετηρίου Διευθύνσεων %S
+
+# Error message
+## @name OUTLOOKIMPORT_ADDRESS_BADPARAM
+## @loc None
+2007=Λανθασμένη παράμετρος στην εισαγωγή ευρετηρίου διευθύνσεων.
+
+# Error message
+## @name OUTLOOKIMPORT_ADDRESS_BADSOURCEFILE
+## @loc None
+## LOCALIZATION NOTE (2008): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2008=Σφάλμα στην πρόσβαση αρχείου για το ευρετήριο διευθύνσεων %S.
+
+# Error message
+## @name OUTLOOKIMPORT_ADDRESS_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2009): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2009=Σφάλμα εισαγωγής ευρετηρίου διευθύνσεων %S· ενδέχεται να μην εισήχθησαν όλες οι διευθύνσεις.
diff --git a/l10n-el/mail/chrome/messenger/pgpmime.properties b/l10n-el/mail/chrome/messenger/pgpmime.properties
new file mode 100644
index 0000000000..d1f06e86f8
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/pgpmime.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/.
+
+#
+# The following are used by the pgpmime content type handler
+#
+
+# LOCALIZATION NOTE(pgpMimeNeedsAddon): The text can contain HTML tags.
+pgpNotAvailable=Αυτό είναι ένα κρυπτογραφημένο μήνυμα OpenPGP, αλλά η υποστήριξη για την αποκρυπτογράφηση OpenPGP δεν είναι διαθέσιμη.
diff --git a/l10n-el/mail/chrome/messenger/preferences/applicationManager.properties b/l10n-el/mail/chrome/messenger/preferences/applicationManager.properties
new file mode 100644
index 0000000000..5ad66068d0
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/preferences/applicationManager.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/.
+
+# LOCALIZATION NOTE
+# in descriptionApplications, %S will be replaced by one of the 3 following strings
+descriptionApplications=Οι παρακάτω εφαρμογές μπορούν να χρησιμοποιηθούν για το χειρισμό %S.
+
+handleProtocol=δεσμών %S
+handleFile=περιεχομένου %S
+
+descriptionWebApp=Αυτή η διαδικτυακή εφαρμογή φιλοξενείται στο:
+descriptionLocalApp=Αυτή η εφαρμογή βρίσκεται στο:
diff --git a/l10n-el/mail/chrome/messenger/preferences/applications.properties b/l10n-el/mail/chrome/messenger/preferences/applications.properties
new file mode 100644
index 0000000000..07804eec64
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/preferences/applications.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/.
+
+# LOCALIZATION NOTE (dialog_removeAccount):
+# %S will be replaced with the user-defined name of a storage account.
+dialog_removeAccount=Θέλετε σίγουρα να αφαιρέσετε το λογαριασμό "%S";
+
+# LOCALIZATION NOTE (addProvider):
+# %S will be replace with the display name of a provider, e.g. DropBox
+addProvider=Προσθήκη %S
+
+notConfiguredYet=Αυτός ο λογαριασμός δεν έχει ρυθμιστεί ακόμα
diff --git a/l10n-el/mail/chrome/messenger/preferences/messagestyle.properties b/l10n-el/mail/chrome/messenger/preferences/messagestyle.properties
new file mode 100644
index 0000000000..4f304e8624
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/preferences/messagestyle.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/.
+
+# Content of preview conversation for chat message styles
+default=Προεπιλογή
+nick1=Florian
+buddy1=florian@im.instantbird.org
+nick2=Patrick
+buddy2=patrick@im.instantbird.org
+message1=Γεια! :-)
+message2=Πώς είστε;
+message3=Δοκιμάζω το Thunderbird! ;-)
diff --git a/l10n-el/mail/chrome/messenger/preferences/preferences.properties b/l10n-el/mail/chrome/messenger/preferences/preferences.properties
new file mode 100644
index 0000000000..caad46b6a1
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/preferences/preferences.properties
@@ -0,0 +1,118 @@
+# 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/.
+
+#### Add HTML and Plain Text Domain Names for sendOption
+html_domainsAddDomainTitle=Προσθήκη ονόματος τομέα HTML
+html_domainsAddDomain=Όνομα τομέα HTML:
+plaintext_domainsAddDomainTitle=Προσθήκη ονόματος τομέα απλού κειμένου
+plaintext_domainsAddDomain=Όνομα τομέα απλού κειμένου:
+
+domainNameErrorTitle=Σφάλμα ονόματος τομέα
+#### LOCALIZATION NOTE: do not translate %S
+domainDuplicationError=Το όνομα τομέα %S υπάρχει ήδη στις λίστες τομέων HTML ή απλού κειμένου.
+
+#### Junk
+confirmResetJunkTrainingTitle=Επιβεβαίωση
+confirmResetJunkTrainingText=Θέλετε σίγουρα να επαναφέρετε τα δεδομένα εκμάθησης του προσαρμοστικού φίλτρου;
+
+#### Downloads
+desktopFolderName=Επιφάνεια εργασίας
+myDownloadsFolderName=Ληφθέντα αρχεία
+chooseAttachmentsFolderTitle=Επιλογή φακέλου
+
+#### Applications
+
+fileEnding=Αρχείο %S
+saveFile=Αποθήκευση αρχείου
+
+# LOCALIZATION NOTE (useApp, useDefault): %S = Application name
+useApp=Χρήση %S
+useDefault=Χρήση %S (προεπιλογή)
+
+useOtherApp=Χρήση άλλης…
+fpTitleChooseApp=Επιλογή βοηθητικής εφαρμογής
+manageApp=Λεπτομέρειες εφαρμογής…
+alwaysAsk=Πάντα ερώτηση
+delete=Διαγραφή ενέργειας
+confirmDeleteTitle=Διαγραφή ενέργειας
+confirmDeleteText=Θέλετε σίγουρα να διαγράψετε αυτή την ενέργεια;
+
+# LOCALIZATION NOTE (typeDescriptionWithDetails):
+# %1$S = type description (for example "Portable Document Format")
+# %2$S = details (see below, for example "(application/pdf: .pdf, .pdfx)")
+typeDescriptionWithDetails=%1$S %2$S
+
+# LOCALIZATION NOTE (typeDetailsWithTypeOrExt):
+# %1$S = type or extensions (for example "application/pdf", or ".pdf, .pdfx")
+typeDetailsWithTypeOrExt=(%1$S)
+
+# LOCALIZATION NOTE (typeDetailsWithTypeAndExt):
+# %1$S = type (for example "application/pdf")
+# %2$S = extensions (for example ".pdf, .pdfx")
+typeDetailsWithTypeAndExt=(%1$S: %2$S)
+
+#### Sound Notifications
+soundFilePickerTitle=Επιλογή ήχου
+
+#### Search Engine Picker
+searchEnginePickerTitle=Επιλογή μηχανής αναζήτησης
+searchEngineType2=Μηχανές αναζήτησης
+
+#### Remote content
+imagepermissionstext=Μπορείτε να καθορίσετε από ποιες ιστοσελίδες επιτρέπεται η φόρτωση εικόνων και άλλου απομακρυσμένου περιεχομένου. Μπορείτε επίσης να επιτρέψετε όλο το απομακρυσμένο περιεχόμενο βάσει της διεύθυνσης e-mail του αποστολέα. Πληκτρολογείστε τη διεύθυνση της ιστοσελίδας ή της διεύθυνσης e-mail που θέλετε να διαχειριστείτε και, έπειτα, κάντε κλικ στο "Φραγή" ή το "Να επιτρέπεται".
+imagepermissionstitle=Εξαιρέσεις - Απομακρυσμένο περιεχόμενο
+
+#### Cookies
+cookiepermissionstitle=Εξαιρέσεις - Cookies
+cookiepermissionstext=Μπορείτε να καθορίσετε τις ιστοσελίδες στις οποίες μόνιμα θα επιτρέπετε ή θα απαγορεύετε να θέτουν cookies. Πληκτρολογήστε την διεύθυνση της σελίδας που θέλετε να διαχειριστείτε και πατήστε Φραγή, Να επιτρέπεται για τη συνεδρία ή Να επιτρέπεται.
+
+#### Cookie Viewer
+hostColon=Σύστημα:
+domainColon=Τομέας:
+forSecureOnly=Κρυπτογραφημένες συνδέσεις μόνο
+forAnyConnection=Κάθε τύπο σύνδεσης
+expireAtEndOfSession=Στο τέλος της συνεδρίας
+
+noCookieSelected=<δεν επιλέχθηκε cookie>
+cookiesAll=Τα ακόλουθα cookies θα αποθηκευτούν στον υπολογιστή σας:
+cookiesFiltered=Τα ακόλουθα cookies ταιριάζουν με την αναζήτηση σας:
+# LOCALIZATION NOTE (removeSelectedCookies):
+# Semicolon-separated list of plural forms. See:
+# https://developer.mozilla.org/en/docs/Localization_and_Plurals
+# If you need to display the number of selected elements in your language,
+# you can use #1 in your localization as a placeholder for the number.
+# For example this is the English string with numbers:
+# removeSelectedCookies=Remove #1 Selected;Remove #1 Selected
+removeSelectedCookies=Αφαίρεση επιλεγμένου;Αφαίρεση επιλεγμένων
+defaultUserContextLabel=Κανένα
+
+####Preferences::Advanced::Network
+#LOCALIZATION NOTE: The next string is for the disk usage of the cache.
+# e.g., "Your cache is currently using 200 MB"
+# %1$S = size
+# %2$S = unit (MB, KB, etc.)
+actualDiskCacheSize=Η προσωρινή μνήμη αυτή τη στιγμή χρησιμοποιεί %1$S %2$S χώρο στο δίσκο
+actualDiskCacheSizeCalculated=Υπολογισμός μεγέθους προσωρινής μνήμης…
+
+# LOCALIZATION NOTE (labelDefaultFont): %S = font name
+labelDefaultFont=Προεπιλογή (%S)
+labelDefaultFontUnnamed=Προεπιλογή
+
+# LOCALIZATION NOTE (appLocale.label): %S = Name of the application locale,
+# e.g. English (United States)
+appLocale.label=Γλώσσα εφαρμογής: %S
+appLocale.accesskey=Γ
+# LOCALIZATION NOTE (rsLocale.label): %S = Name of the locale chosen in regional settings,
+# e.g. German (Germany)
+rsLocale.label=Τοπικές ρυθμίσεις: %S
+rsLocale.accesskey=Τ
+
+#### Master Password (Moved to Fluent in M-C in bug 1435915)
+pw_change2empty_in_fips_mode=Βρίσκεστε σε λειτουργία FIPS. Το FIPS απαιτεί ένα μη-κενό κύριο κωδικό πρόσβασης.
+pw_change_failed_title=Αποτυχία αλλαγής κωδικού πρόσβασης
+
+applications-type-pdf = Portable Document Format (PDF)
+
+# LOCALIZATION NOTE (previewInApp): %S = brandShortName
+previewInApp=Προεπισκόπηση σε %S
diff --git a/l10n-el/mail/chrome/messenger/prefs.properties b/l10n-el/mail/chrome/messenger/prefs.properties
new file mode 100644
index 0000000000..6750a3af95
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/prefs.properties
@@ -0,0 +1,90 @@
+# 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/.
+
+# The following are used by the Account Wizard
+#
+enterValidEmail=Παρακαλούμε εισάγετε μια έγκυρη διεύθυνση email.
+accountNameExists=Υπάρχει ήδη ένας λογαριασμός με αυτό το όνομα. Παρακαλούμε εισάγετε ένα διαφορετικό όνομα λογαριασμού.
+accountNameEmpty=Το όνομα λογαριασμού δεν μπορεί να είναι κενό.
+modifiedAccountExists=Υπάρχει ήδη ένας λογαριασμός με αυτό το όνομα χρήστη και όνομα λογαριασμού. Επιλέξτε ένα διαφορετικό όνομα χρήστη ή/και λογαριασμού.
+userNameChanged=Το όνομα χρήστη σας ενημερώθηκε. Ίσως χρειαστεί να ενημερώσετε τη διεύθυνση email και/ή το όνομα χρήστη που σχετίζεται με αυτό το λογαριασμό.
+serverNameChanged=Η ρύθμιση ονόματος διακομιστή άλλαξε. Βεβαιωθείτε ότι όλοι οι φάκελοι που χρησιμοποιούνται από φίλτρα υπάρχουν στο νέο διακομιστή.
+# LOCALIZATION NOTE (junkSettingsBroken): %1$S is the account name
+junkSettingsBroken=Ενδέχεται να υπάρχει πρόβλημα στις ρυθμίσεις ανεπιθύμητων στο λογαριασμό "%1$S". Θέλετε να τις δείτε πριν αποθηκεύσετε τις ρυθμίσεις λογαριασμού;
+# LOCALIZATION NOTE (localDirectoryChanged): %1$S is program name (&brandShortName;)
+localDirectoryChanged=Το %1$S πρέπει να επανεκκινηθεί για την εφαρμογή της αλλαγής στη ρύθμιση τοπικού καταλόγου.
+localDirectoryRestart=Επανεκκίνηση
+userNameEmpty=Το όνομα χρήστη δεν μπορεί να είναι κενό.
+# LOCALIZATION NOTE (localDirectoryInvalid): %1$S is path to folder
+localDirectoryInvalid=Η διαδρομή του τοπικού φακέλου «%1$S» δεν είναι έγκυρη. Επιλέξτε ένα διαφορετικό φάκελο.
+# LOCALIZATION NOTE (localDirectoryNotAllowed): %1$S is path to folder
+localDirectoryNotAllowed=Η διαδρομή του τοπικού φακέλου «%1$S» δεν είναι κατάλληλη για αποθήκευση μηνυμάτων. Επιλέξτε ένα διαφορετικό φάκελο.
+# if the user chooses to cancel the wizard when no accounts are there throw a message
+# LOCALIZATION NOTE (cancelWizard)
+# do not localize "\n\n"
+cancelWizard=Θέλετε σίγουρα να κλείσετε το Βοηθό λογαριασμών;\n\nΑν τον κλείσετε, θα χαθούν όλες οι πληροφορίες που έχετε εισάγει και δεν θα δημιουργηθεί ο λογαριασμός.
+accountWizard=Βοηθός λογαριασμών
+WizardExit=Έξοδος
+WizardContinue=Ακύρωση
+# when the wizard already has a domain (Should we say something different?)
+enterValidServerName=Παρακαλούμε εισάγετε ένα έγκυρο όνομα διακομιστή.
+failedRemoveAccount=Αποτυχία αφαίρεση λογαριασμού.
+#LOCALIZATION NOTE: accountName: %1$S is server name, %2$S is user name
+accountName=%1$S - %2$S
+
+# LOCALIZATION NOTE: confirmDeferAccountWarning: do not localize "\n\n", it means a new empty line in the string.
+confirmDeferAccountWarning=Αν αποθηκεύσετε τα νέα μηνύματα αυτού του λογαριασμού στα εισερχόμενα ενός άλλου λογαριασμού, δεν θα έχετε πρόσβαση στα παλιά μηνύματα αυτού του λογαριασμού. Αν έχετε μηνύματα σε αυτόν το λογαριασμό, αντιγράψτε πρώτα σε άλλο λογαριασμό.\n\nΑν υπάρχουν φίλτρα σε αυτόν το λογαριασμό θα πρέπει να τα απενεργοποιήσετε ή να αλλάξετε το φάκελο προορισμού. Αν κάποιοι λογαριασμοί έχουν ειδικούς φακέλους σε αυτόν το λογαριασμό (Απεσταλμένα, Προσχέδια, Πρότυπα, Αρχειοθέτηση, Ανεπιθύμητα), θα πρέπει να τα μετακινήσετε σε άλλο λογαριασμό.\n\nΘέλετε ακόμα να αποθηκεύσετε τα μηνύματα αυτού του λογαριασμού σε διαφορετικό λογαριασμό;
+confirmDeferAccountTitle=Μετάθεση λογαριασμού;
+
+directoryAlreadyUsedByOtherAccount=Αυτός ο κατάλογος χρησιμοποιείται ήδη από το λογαριασμό %S. Επιλέξτε ένα διαφορετικό κατάλογο.
+directoryParentUsedByOtherAccount=Ένας γονικός κατάλογος του καταλόγου που καθορίζεται στη ρύθμιση του τοπικού φακέλου χρησιμοποιείται ήδη από τον λογαριασμό «%S». Επιλέξτε ένα διαφορετικό φάκελο.
+directoryChildUsedByOtherAccount=Ένας υποκατάλογος του καταλόγου που καθορίζεται στη ρύθμιση του τοπικού φακέλου χρησιμοποιείται ήδη από τον λογαριασμό «%S». Επιλέξτε ένα διαφορετικό φάκελο.
+#Provide default example values for sample email address
+exampleEmailUserName=χρήστης
+exampleEmailDomain=example.net
+emailFieldText=Διεύθυνση email:
+#LOCALIZATION NOTE: defaultEmailText: %1$S is user name, %2$S is domain
+defaultEmailText=Εισάγετε τη διεύθυνση email σας. Αυτή είναι η διεύθυνση που θα χρησιμοποιούν όσοι θέλουν να σας στείλουν ένα email (για παράδειγμα, "%1$S@%2$S").
+#LOCALIZATION NOTE: customizedEmailText: %1$S is provider, %2$S is email username, %3$S is sample email, %4$S is sample username
+customizedEmailText=Εισάγετε το %1$S %2$S σας (για παράδειγμα, αν η %1$S διεύθυνση email σας είναι "%3$S", το %2$S σας είναι "%4$S").
+
+# account manager stuff
+prefPanel-server=Ρυθμίσεις διακομιστή
+prefPanel-copies=Αντίγραφα & φάκελοι
+prefPanel-synchronization=Συγχρονισμός & αποθήκευση
+prefPanel-diskspace=Χώρος δίσκου
+prefPanel-addressing=Σύνταξη & διευθυνσιοδότηση
+prefPanel-junk=Ρυθμίσεις ανεπιθύμητων
+## LOCALIZATION NOTE (prefPanel-smtp): Don't translate "SMTP"
+prefPanel-smtp=Διακομιστής εξερχομένων (SMTP)
+
+# account manager multiple identity support
+#LOCALIZATION NOTE: accountName: %1$S
+identity-list-title=Ταυτότητες για %1$S
+
+identityDialogTitleAdd=Νέα ταυτότητα
+## LOCALIZATION NOTE (identityDialogTitleEdit): %S is the identity name
+identityDialogTitleEdit=Επεξεργασία "%S"
+
+identity-edit-req=Θα πρέπει να καθορίσετε μια έγκυρη διεύθυνση email για αυτή την ταυτότητα.
+identity-edit-req-title=Σφάλμα δημιουργίας ταυτότητας
+
+## LOCALIZATION NOTE (identity-delete-confirm): %S is the identity name
+# and should be put on a new line. The new line is produced with the "\n" string.
+identity-delete-confirm=Θέλετε σίγουρα να διαγράψετε την ταυτότητα\n %S;
+## LOCALIZATION NOTE (identity-delete-confirm-title): %S is the account name
+identity-delete-confirm-title=Γίνεται διαγραφή της ταυτότητας %S
+identity-delete-confirm-button=Διαγραφή
+
+choosefile=Επιλογή ενός αρχείου
+
+forAccount=Για το λογαριασμό "%S"
+
+removeFromServerTitle=Επιβεβαίωση της μόνιμης, αυτόματης διαγραφής των μηνυμάτων
+removeFromServer=Αυτή η ρύθμιση θα διαγράψει οριστικά τα παλιά μηνύματα από τον απομακρυσμένο διακομιστή ΚΑΙ τον τοπικό σας χώρο. Θέλετε σίγουρα να συνεχίσετε;
+
+confirmSyncChangesTitle=Επιβεβαίωση των αλλαγών από συγχρονισμό
+confirmSyncChanges=Οι ρυθμίσεις Συγχρονισμού Μηνυμάτων άλλαξαν.\n\nΕπιθυμείτε την αποθήκευσή τους;
+confirmSyncChangesDiscard=Απόρριψη
+
diff --git a/l10n-el/mail/chrome/messenger/quickFilterBar.dtd b/l10n-el/mail/chrome/messenger/quickFilterBar.dtd
new file mode 100644
index 0000000000..db22a95db6
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/quickFilterBar.dtd
@@ -0,0 +1,276 @@
+<!-- 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 (quickFilterBar.qfbShowFilterBar.label):
+ The label for the button on the tab bar that toggles the visibility of
+ the quick filter bar.
+ -->
+<!ENTITY quickFilterBar.qfbShowFilterBar.label
+ "Γρήγορη αναζήτηση">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.toggleBarVisibility.menu.label):
+ The label to display for the "View... Toolbars..." menu item that controls
+ whether the quick filter bar is visible.
+ -->
+<!ENTITY quickFilterBar.toggleBarVisibility.menu.label
+ "Γραμμή γρήγορων φίλτρων">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.toggleBarVisibility.menu.accesskey):
+ The access key for the "View... Toolbars..." menu item label that controls
+ whether the quick filter bar is visible.
+ -->
+<!ENTITY quickFilterBar.toggleBarVisibility.menu.accesskey
+ "γ">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.toggleBarVisibility.appmenu.label):
+ The label to display for the "App Menu... Preferences..." menu item that
+ controls whether the quick filter bar is visible.
+ -->
+<!ENTITY quickFilterBar.toggleBarVisibility.appmenu.label
+ "Γραμμή γρήγορων φίλτρων">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.toggleBarVisibility.button.tooltip):
+ The tooltip to display when hovering over the button on the tab bar that
+ toggles the visibility of the quick filter bar.
+ -->
+<!ENTITY quickFilterBar.toggleBarVisibility.button.tooltip
+ "Εναλλαγή εμφάνισης της γρήγορης αναζήτησης.">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.sticky.tooltip):
+ The tooltip to display when the user hovers over the sticky button
+ (currently displayed as a push-pin). When active, the sticky button
+ causes the current filter settings to be retained when the user changes
+ folders or opens new tabs. (When inactive, only the state of the text
+ filters are propagated between folder changes and when opening new tabs.)
+ -->
+<!ENTITY quickFilterBar.sticky.tooltip
+ "Διατήρηση φίλτρων αναζήτησης κατά την αλλαγή φακέλων;">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.unread.label):
+ The label for the filter button that causes us to filter results to only
+ include unread messages.
+ -->
+<!ENTITY quickFilterBar.unread.label
+ "Μη αναγνωσμένα">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.unread.tooltip):
+ The tooltip for the filter button that causes us to filter results to only
+ include unread messages.
+ -->
+<!ENTITY quickFilterBar.unread.tooltip
+ "Προβολή μόνο των μη αναγνωσμένων μηνυμάτων.">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.starred.label):
+ The label for the filter button that causes us to filter results to only
+ include messages that have been starred/flagged.
+ -->
+<!ENTITY quickFilterBar.starred.label
+ "Με αστέρι">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.starred.tooltip):
+ The tooltip for the filter button that causes us to filter results to only
+ include messages that have been starred/flagged.
+ -->
+<!ENTITY quickFilterBar.starred.tooltip
+ "Προβολή μόνο των μηνυμάτων με αστέρι.">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.inaddrbook.label):
+ The label for the filter button that causes us to filter results to only
+ include messages from contacts in one of the user's non-remote address
+ books.
+ -->
+<!ENTITY quickFilterBar.inaddrbook.label
+ "Επαφή">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.inaddrbook.tooltip):
+ The tooltip for the filter button that causes us to filter results to only
+ include messages from contacts in one of the user's non-remote address
+ books.
+ -->
+<!ENTITY quickFilterBar.inaddrbook.tooltip
+ "Προβολή μόνο των μηνυμάτων από ανθρώπους που βρίσκονται στο ευρετήριο σας.">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.tags.label):
+ The label for the filter button that causes us to filter results to only
+ include messages with at least one tag on them.
+ -->
+<!ENTITY quickFilterBar.tags.label
+ "Ετικέτες">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.tags.tooltip):
+ The tooltip for the filter button that causes us to filter results to only
+ include messages with at least one tag on them.
+ -->
+<!ENTITY quickFilterBar.tags.tooltip
+ "Προβολή μόνο των μηνυμάτων που έχουν ετικέτες.">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.attachment.label):
+ The label for the filter button that causes us to filter results to only
+ include messages with attachments.
+ -->
+<!ENTITY quickFilterBar.attachment.label
+ "Συνημμένο">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.attachment.tooltip):
+ The tooltip for the filter button that causes us to filter results to only
+ include messages with attachments.
+ -->
+<!ENTITY quickFilterBar.attachment.tooltip
+ "Προβολή μόνο των μηνυμάτων με συνημμένα.">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.resultsLabel.some.formatString):
+ This is used to populate the results box; it either displays the
+ number of messages found using this string, that there are no messages
+ (using quickFilterBar.resultsLabel.none), or the box is hidden.
+ This is a pluralizable string used to express the number of messages in
+ the results. We replace the '#1' with the number of messages, otherwise
+ see the following URL For more information:
+ https://developer.mozilla.org/En/Localization_and_Plurals
+ -->
+<!ENTITY quickFilterBar.resultsLabel.some.formatString
+ "#1 μήνυμα;#1 μηνύματα">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.resultsLabel.none):
+ The contents of the results box when there is a filter active but there
+ are no messages matching the filter.
+ -->
+<!ENTITY quickFilterBar.resultsLabel.none
+ "Κανένα αποτέλεσμα">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.resultsLabel.minWidth):
+ The minimum width, in pixels, of the results label. Please size this
+ so that a 3 or 4 digit number of messages in the results can be displayed
+ without growing the size of the box. You can tell this has been
+ accomplished if adding a filter constraint that changes the displayed
+ string to your "no results" string does not result in any changes to the
+ size of the text box to the label's right. (If your string for
+ "no results" is longer than the "#### messages" case, then size for that.
+ -->
+<!ENTITY quickFilterBar.resultsLabel.minWidth
+ "100">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textbox.emptyText.base1):
+ This is the base of the empty text for the text search box. We replace
+ #1 with the contents of the appropriate
+ quickFilterBar.textbox.emptyText.keyLabel.* value for the platform.
+ The goal is to convey to the user that typing in the box will filter
+ the messages and that there is a hotkey they can press to get to the
+ box faster.
+ -->
+<!ENTITY quickFilterBar.textbox.emptyText.base1
+ "Φιλτράρισμα μηνυμάτων #1">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.show.key2):
+ This is the key used to show the quick filter bar. -->
+<!ENTITY quickFilterBar.show.key2
+ "k">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textbox.emptyText.keyLabel.nonmac):
+ The description of the key-binding to get into the box on windows and
+ linux (which use the control key). This should match the value of
+ quickFilterBar.show.key above.
+ -->
+<!ENTITY quickFilterBar.textbox.emptyText.keyLabel2.nonmac
+ "&lt;Ctrl+Shift+K&gt;">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textbox.emptyText.keyLabel.mac):
+ The description of the key-binding to get into the box on mac systems.
+ This should match the value of quickFilterBar.show.key above.
+ -->
+<!ENTITY quickFilterBar.textbox.emptyText.keyLabel2.mac
+ "&lt;&#x21E7;&#x2318;K&gt;">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.booleanMode.tooltip):
+ Tooltip of the Any of / All of tagging mode selector.
+ -->
+<!ENTITY quickFilterBar.booleanMode.tooltip "Μέθοδος φιλτραρίσματος ετικετών">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.booleanModeAny.label):
+ Tooltip of the Any of / All of tagging mode selector.
+ -->
+<!ENTITY quickFilterBar.booleanModeAny.label "Οποιοδήποτε">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.booleanModeAny.tooltip):
+ Tooltip of the Any of / All of tagging mode selector.
+ -->
+<!ENTITY quickFilterBar.booleanModeAny.tooltip "Τουλάχιστον ένα από τα επιλεγμένα κριτήρια ετικετών θα πρέπει να ταιριάζουν">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.booleanModeAll.label):
+ Tooltip of the Any of / All of tagging mode selector.
+ -->
+<!ENTITY quickFilterBar.booleanModeAll.label "Όλες">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.booleanModeAll.tooltip):
+ Tooltip of the Any of / All of tagging mode selector.
+ -->
+<!ENTITY quickFilterBar.booleanModeAll.tooltip "Όλα από τα επιλεγμένα κριτήρια ετικετών θα πρέπει να ταιριάζουν">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textbox.idealWidth):
+ The number of pixels for the ideal width of the quick filter box textbox.
+ Choose this value so that the emptyText fits nicely with a little bit of
+ extra whitespace.
+ -->
+<!ENTITY quickFilterBar.textbox.idealWidth
+ "320">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textbox.minWidth):
+ The minimum width of the quick filter textbox in pixels. This is the size
+ which we should refuse to flex below. When we hit this size, the buttons
+ with labels will have their labels collapsed.
+ -->
+<!ENTITY quickFilterBar.textbox.minWidth
+ "280">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textFilter.explanation.label):
+ This label explains what the sender/recipients/subject/body buttons do.
+ This string should ideally be kept short because the label and the text
+ filter buttons share their bar (that appears when there is text in the text
+ filter box) with the list of tags when the tag filter is active, and the
+ tag sub-bar wants as much space as possible. (Overflow is handled by an
+ arrow scroll box.)
+ -->
+<!ENTITY quickFilterBar.textFilter.explanation.label
+ "Φιλτράρισμα μηνυμάτων κατά:">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textFilter.sender.label):
+ The button label that toggles whether the text filter searches the message
+ sender for the string.
+ -->
+<!ENTITY quickFilterBar.textFilter.sender.label
+ "Αποστολέας">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textFilter.recipients.label):
+ The button label that toggles whether the text filter searches the message
+ recipients (to, cc) for the string.
+ -->
+<!ENTITY quickFilterBar.textFilter.recipients.label
+ "Παραλήπτες">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textFilter.subject.label):
+ The button label that toggles whether the text filter searches the message
+ subject for the string.
+ -->
+<!ENTITY quickFilterBar.textFilter.subject.label
+ "Θέμα">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textFilter.body.label):
+ The button label that toggles whether the text filter searches the message
+ body for the string.
+ -->
+<!ENTITY quickFilterBar.textFilter.body.label
+ "Σώμα μηνύματος">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.glodaUpsell.continueSearch):
+ The first line of the panel popup that tells the user we found no matches
+ but we can convert to a global search for them.
+ -->
+<!ENTITY quickFilterBar.glodaUpsell.continueSearch
+ "Συνέχεια της αναζήτησης σε όλους τους φακέλους">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.glodaUpsell.pressEnterAndCurrent):
+ The second line of the panel popup that tells the user we found no matches.
+ This line will have #1 replaced with what the user has typed so far.
+ -->
+<!ENTITY quickFilterBar.glodaUpsell.pressEnterAndCurrent
+ "Πατήστε 'Enter' ξανά για να συνεχίσετε την αναζήτησή σας για: #1">
diff --git a/l10n-el/mail/chrome/messenger/removeAccount.dtd b/l10n-el/mail/chrome/messenger/removeAccount.dtd
new file mode 100644
index 0000000000..b1bd5aba4b
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/removeAccount.dtd
@@ -0,0 +1,22 @@
+<!-- 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 dialogTitle "Αφαίρεση λογαριασμού και δεδομένων">
+<!ENTITY removeButton.label "Αφαίρεση">
+<!ENTITY removeButton.accesskey "Α">
+<!ENTITY removeAccount.label "Αφαίρεση πληροφοριών λογαριασμού">
+<!ENTITY removeAccount.accesskey "ι">
+<!ENTITY removeAccount.desc "Διαγράφει μόνο τις πληροφορίες του &brandShortName; για το λογαριασμό. Δεν επηρεάζει τον ίδιο το λογαριασμό στο διακομιστή.">
+<!ENTITY removeData.label "Αφαίρεση δεδομένων μηνυμάτων">
+<!ENTITY removeData.accesskey "δ">
+<!ENTITY removeDataChat.label "Αφαίρεση δεδομένων συζητήσεων">
+<!ENTITY removeDataChat.accesskey "δ">
+<!ENTITY removeDataLocalAccount.desc "Διαγράφει από τον τοπικό σας δίσκο όλα τα μηνύματα, τους φακέλους και τα φίλτρα του λογαριασμού. Δεν επηρεάζει τα μηνύματα που υπάρχουν ακόμη στο διακομιστή. Μην το επιλέξετε αν σκοπεύετε να αρχειοθετήσετε τα τοπικά σας δεδομένα ή να τα χρησιμοποιήσετε πάλι στο &brandShortName;.">
+<!ENTITY removeDataServerAccount.desc "Διαγράφει από τον τοπικό σας δίσκο όλα τα μηνύματα, φακέλους και φίλτρα που είναι συσχετισμένα με το λογαριασμό. Τα μηνύματα και οι φάκελοι υπάρχουν ακόμη στο διακομιστή.">
+<!ENTITY removeDataChatAccount.desc "Διαγράφει όλα τα αρχεία συζητήσεων που είναι αποθηκευμένα στον τοπικό σας δίσκο για αυτό το λογαριασμό.">
+<!ENTITY showData.label "Εμφάνιση τοποθεσίας δεδομένων">
+<!ENTITY showData.accesskey "Ε">
+<!ENTITY progressPending "Αφαίρεση επιλεγμένων δεδομένων…">
+<!ENTITY progressSuccess "Επιτυχής αφαίρεση.">
+<!ENTITY progressFailure "Αποτυχία αφαίρεσης.">
diff --git a/l10n-el/mail/chrome/messenger/removeAccount.properties b/l10n-el/mail/chrome/messenger/removeAccount.properties
new file mode 100644
index 0000000000..5a0eb0478c
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/removeAccount.properties
@@ -0,0 +1,5 @@
+# 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/.
+
+removeQuestion=Θέλετε σίγουρα να αφαιρέσετε το λογαριασμό "%S";
diff --git a/l10n-el/mail/chrome/messenger/renameFolderDialog.dtd b/l10n-el/mail/chrome/messenger/renameFolderDialog.dtd
new file mode 100644
index 0000000000..6141ff6b82
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/renameFolderDialog.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 renameFolderDialog.title "Μετονομασία φακέλου">
+<!ENTITY rename.label "Γράψτε το νέο όνομα του φακέλου σας:">
+<!ENTITY rename.accesskey "τ">
+<!ENTITY accept.label "Μετονομασία">
+<!ENTITY accept.accesskey "Μ">
diff --git a/l10n-el/mail/chrome/messenger/safeMode.dtd b/l10n-el/mail/chrome/messenger/safeMode.dtd
new file mode 100644
index 0000000000..a76d5725eb
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/safeMode.dtd
@@ -0,0 +1,21 @@
+<!-- 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 safeModeDialog.title "Ασφαλής λειτουργία &brandShortName;">
+<!ENTITY window.width "39em">
+
+<!ENTITY safeModeDescription.label "Το &brandShortName; εκτελείται σε Ασφαλή λειτουργία, η οποία απενεργοποιεί προσωρινά όλες τις ρυθμίσεις, τα θέματα και τις επεκτάσεις.">
+<!ENTITY safeModeDescription2.label "Μπορείτε να οριστικοποιήσετε κάποιες ή όλες τις αλλαγές:">
+
+<!ENTITY disableAddons.label "Απενεργοποίηση όλων των προσθέτων">
+<!ENTITY disableAddons.accesskey "π">
+
+<!ENTITY resetToolbars.label "Επαναφορά γραμμών εργαλείων και στοιχείων ελέγχου">
+<!ENTITY resetToolbars.accesskey "φ">
+
+<!ENTITY changeAndRestartButton.label "Αποθήκευση αλλαγών και επανεκκίνηση">
+<!ENTITY changeAndRestartButton.accesskey "θ">
+
+<!ENTITY continueButton.label "Συνέχεια σε Ασφαλή λειτουργία">
+<!ENTITY continueButton.accesskey "χ">
diff --git a/l10n-el/mail/chrome/messenger/sanitize.dtd b/l10n-el/mail/chrome/messenger/sanitize.dtd
new file mode 100644
index 0000000000..f1ca5dd870
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/sanitize.dtd
@@ -0,0 +1,42 @@
+<!-- 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 sanitizeDialog2.title "Εκκαθάριση πρόσφατου ιστορικού">
+
+<!-- XXX rearrange entities to match physical layout when l10n isn't an issue -->
+<!-- LOCALIZATION NOTE (clearTimeDuration.*): "Time range to clear" dropdown.
+ See UI mockup at bug 480169 -->
+<!ENTITY clearTimeDuration.label "Χρονικό διάστημα εκκαθάρισης: ">
+<!ENTITY clearTimeDuration.accesskey "τ">
+<!ENTITY clearTimeDuration.lastHour "Τελευταία ώρα">
+<!ENTITY clearTimeDuration.last2Hours "Τελευταίες δύο ώρες">
+<!ENTITY clearTimeDuration.last4Hours "Τελευταίες τέσσερις ώρες">
+<!ENTITY clearTimeDuration.today "Σήμερα">
+<!ENTITY clearTimeDuration.everything "Όλα">
+<!-- Localization note (clearTimeDuration.suffix) - trailing entity for languages
+that require it. -->
+<!ENTITY clearTimeDuration.suffix "">
+
+<!-- LOCALIZATION NOTE (detailsProgressiveDisclosure.*): Labels and accesskeys
+ of the "Details" progressive disclosure button. See UI mockup at bug
+ 480169 -->
+<!ENTITY detailsProgressiveDisclosure.label "Λεπτομέρειες">
+<!ENTITY detailsProgressiveDisclosure.accesskey "ε">
+
+
+<!ENTITY historyGroup.label "Ιστορικό">
+
+<!ENTITY itemHistory.label "Ιστορικό περιήγησης">
+<!ENTITY itemHistory.accesskey "Ι">
+<!ENTITY itemCookies.label "Cookies">
+<!ENTITY itemCookies.accesskey "C">
+<!ENTITY itemCache.label "Προσωρινή μνήμη">
+<!ENTITY itemCache.accesskey "ω">
+
+<!-- LOCALIZATION NOTE (sanitizeEverythingUndoWarning): Second warning paragraph
+ that appears when "Time range to clear" is set to "Everything". See UI
+ mockup at bug 480169 -->
+<!ENTITY sanitizeEverythingUndoWarning "Δεν είναι δυνατή η αναίρεση αυτής της ενέργειας.">
+
+<!ENTITY dialog.width "38em">
diff --git a/l10n-el/mail/chrome/messenger/seamonkeyImportMsgs.properties b/l10n-el/mail/chrome/messenger/seamonkeyImportMsgs.properties
new file mode 100644
index 0000000000..db3ca747ff
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/seamonkeyImportMsgs.properties
@@ -0,0 +1,18 @@
+# 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/.
+#
+# The following are used by the seamonkey import code to display status/error
+# and informational messages
+
+# Short name of import module
+SeamonkeyImportName=SeaMonkey
+
+# Description of import module
+SeamonkeyImportDescription=Εισαγωγή ευρετηρίων διευθύνσεων, αλληλογραφίας και λογαριασμών από το SeaMonkey.
+
+# Success Message for addressbook import
+SeamonkeyImportAddressSuccess=Έγινε επιτυχής εισαγωγή ευρετηρίων διευθύνσεων.
+
+# Success Message for mail import
+SeamonkeyImportSettingsSuccess=Έγινε επιτυχής εισαγωγή τοπικών μηνυμάτων και λογαριασμών.
diff --git a/l10n-el/mail/chrome/messenger/search-attributes.properties b/l10n-el/mail/chrome/messenger/search-attributes.properties
new file mode 100644
index 0000000000..a5621ca0fd
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/search-attributes.properties
@@ -0,0 +1,45 @@
+# 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/.
+
+#these need to match nsMsgSearchAttrib interface in nsMsgSearchCore.idl
+#and nsMsgSearchAttribMap in nsMsgSearchAdapter.cpp
+Subject=Θέμα
+From=Από
+Body=Κύριο μέρος
+Date=Ημερομηνία
+Priority=Προτεραιότητα
+Status=Κατάσταση
+To=Προς
+Cc=Κοιν.
+ToOrCc=Προς ή Κοιν.
+AgeInDays=Παλαιότητα σε ημέρες
+SizeKB=Μέγεθος (KB)
+Tags=Ετικέτες
+# for AB and LDAP
+AnyName=Οποιοδήποτε όνομα
+DisplayName=Όνομα
+Nickname=Ψευδώνυμο
+ScreenName=Όνομα που θα εμφανίζεται
+Email=Email
+AdditionalEmail=Επιπρόσθετο email
+AnyNumber=Οποιοσδήποτε αριθμός
+WorkPhone=Τηλέφωνο εργασίας
+HomePhone=Τηλέφωνο οικίας
+Fax=Φαξ
+Pager=Βομβητής
+Mobile=Κινητό
+City=Πόλη
+Street=Οδός
+Title=Τίτλος
+Organization=Εταιρεία
+Department=Τμήμα
+# more mailnews
+FromToCcOrBcc=Από, Προς, Κοιν. ή Κρυφ. κοιν.
+JunkScoreOrigin=Σκορ ανεπιθύμητου
+JunkPercent=Ποσοστό ανεπιθύμητου
+AttachmentStatus=Κατάσταση συνημμένου
+JunkStatus=Κατάσταση ανεπιθύμητων
+Label=Ετικέτα
+Customize=Προσαρμογή…
+MissingCustomTerm=Λείπει ο προσαρμοσμένος όρος
diff --git a/l10n-el/mail/chrome/messenger/search-operators.properties b/l10n-el/mail/chrome/messenger/search-operators.properties
new file mode 100644
index 0000000000..421a0eed7f
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/search-operators.properties
@@ -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/.
+
+0=περιέχει
+1=δεν περιέχει
+2=είναι
+3=δεν είναι
+4=είναι κενό
+
+5=είναι πριν από
+6=είναι μετά από
+
+7=είναι υψηλότερο από
+8=είναι χαμηλότερο από
+
+9=αρχίζει με
+10=τελειώνει με
+
+11=μοιάζει με
+12=LdapDwim
+
+13=είναι μεγαλύτερο από
+14=είναι μικρότερο από
+
+15=NameCompletion
+16=είναι στο ευρετήριο διευθύνσεων μου
+17=δεν είναι στο ευρετήριο διευθύνσεων μου
+18=δεν είναι κενό
+19=ταιριάζει
+20=δεν ταιριάζει
diff --git a/l10n-el/mail/chrome/messenger/search.properties b/l10n-el/mail/chrome/messenger/search.properties
new file mode 100644
index 0000000000..7f4e32de0f
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/search.properties
@@ -0,0 +1,27 @@
+# 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/.
+
+# these are the fields that get inserted in the search line
+# for "and" searches, this looks like:
+#
+# searchAnd0 <attribute> searchAnd1 <operator> searchAnd2 <value> searchAnd4
+#
+# for example, in english this looks like:
+# and the [Sender ] [doesn't contain] [John]
+#
+# TODO: need to special-case the first line (filterindex==0)
+
+# filter stuff
+
+searchingMessage=Αναζήτηση…
+# LOCALIZATION NOTE (matchesFound): #1 number of matches found
+matchesFound=Βρέθηκε #1 αντιστοιχία;Βρέθηκαν #1 αντιστοιχίες
+noMatchesFound=Δεν βρέθηκαν ταιριάσματα
+labelForStopButton=Διακοπή
+labelForSearchButton=Αναζήτηση
+labelForStopButton.accesskey=Δ
+labelForSearchButton.accesskey=ζ
+
+moreButtonTooltipText=Προσθήκη νέου κανόνα
+lessButtonTooltipText=Αφαίρεση κανόνα
diff --git a/l10n-el/mail/chrome/messenger/searchTermOverlay.dtd b/l10n-el/mail/chrome/messenger/searchTermOverlay.dtd
new file mode 100644
index 0000000000..3e4462d84c
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/searchTermOverlay.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 matchAll.label "Ταίριασμα όλων των παρακάτω">
+<!ENTITY matchAll.accesskey "λ">
+<!ENTITY matchAny.label "Ταίριασμα οποιουδήποτε από τα παρακάτω">
+<!ENTITY matchAny.accesskey "π">
+<!ENTITY matchAllMsgs.label "Ταίριασμα όλων των μηνυμάτων">
+<!ENTITY matchAllMsgs.accesskey "μ">
+
+<!-- LOCALIZATION NOTE
+ The values below are used to control the widths of the search widgets.
+ Change the values only when the localized strings in the popup menus
+ are truncated in the widgets.
+ -->
+<!ENTITY searchTermListAttributesFlexValue "5">
+<!ENTITY searchTermListOperatorsFlexValue "5">
+<!ENTITY searchTermListValueFlexValue "5">
diff --git a/l10n-el/mail/chrome/messenger/shutdownWindow.properties b/l10n-el/mail/chrome/messenger/shutdownWindow.properties
new file mode 100644
index 0000000000..c82f3d7a50
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/shutdownWindow.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/.
+
+
+# These strings are loaded and represented by the XUL dialog.
+shutdownDialogTitle=Παράθυρο προόδου τερματισμού
+taskProgress=Διενεργούνται %1$S από %2$S εργασίες
+
+# These strings are loaded by the individual shutdown tasks.
diff --git a/l10n-el/mail/chrome/messenger/smime.properties b/l10n-el/mail/chrome/messenger/smime.properties
new file mode 100644
index 0000000000..aa95e4ce67
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/smime.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/.
+
+#
+# The following are used by the smime content type handler
+#
+
+## @name NS_MSG_UNABLE_TO_OPEN_FILE
+## LOCALIZATION NOTE: the text can contain HTML tags.
+1000=Αυτό είναι ένα <B>ENCRYPTED</B> or <B>SIGNED</B> μήνυμα.<br> Αυτή η εφαρμογή δεν υποστηρίζει κωδικοποιημένα ή υπογεγραμμένα μηνύματα.
+
+
diff --git a/l10n-el/mail/chrome/messenger/smtpEditOverlay.dtd b/l10n-el/mail/chrome/messenger/smtpEditOverlay.dtd
new file mode 100644
index 0000000000..59460e8ef4
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/smtpEditOverlay.dtd
@@ -0,0 +1,24 @@
+<!-- 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 settings.caption "Ρυθμίσεις">
+<!ENTITY security.caption "Ασφάλεια και ταυτοποίηση">
+<!ENTITY serverName.label "Όνομα διακομιστή:">
+<!ENTITY serverName.accesskey "δ">
+<!ENTITY serverDescription.label "Περιγραφή:">
+<!ENTITY serverDescription.accesskey "φ">
+<!ENTITY serverPort.label "Θύρα:">
+<!ENTITY serverPort.accesskey "Θ">
+<!ENTITY userName.label "Όνομα χρήστη:">
+<!ENTITY userName.accesskey "Χ">
+<!ENTITY connectionSecurity.label "Ασφάλεια σύνδεσης:">
+<!ENTITY connectionSecurity.accesskey "φ">
+<!ENTITY connectionSecurityType-0.label "Καμία">
+<!ENTITY connectionSecurityType-1.label "STARTTLS, αν είναι διαθέσιμη">
+<!ENTITY connectionSecurityType-2.label "STARTTLS">
+<!ENTITY connectionSecurityType-3.label "SSL/TLS">
+<!ENTITY smtpEditTitle.label "Διακομιστής SMTP">
+<!ENTITY serverPortDefault.label "Προεπιλογή:">
+<!ENTITY authMethod.label "Μέθοδος ταυτοποίησης:">
+<!ENTITY authMethod.accesskey "δ">
diff --git a/l10n-el/mail/chrome/messenger/subscribe.dtd b/l10n-el/mail/chrome/messenger/subscribe.dtd
new file mode 100644
index 0000000000..0c89d6eb51
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/subscribe.dtd
@@ -0,0 +1,22 @@
+<!-- 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 subscribeDialog.title "Συνδρομή">
+<!ENTITY subscribeButton.label "Εγγραφή">
+<!ENTITY subscribeButton.accesskey "Ε">
+<!ENTITY unsubscribeButton.label "Κατάργηση εγγραφής">
+<!ENTITY unsubscribeButton.accesskey "Κ">
+<!ENTITY newGroupsTab.label "Νέες ομάδες">
+<!ENTITY newGroupsTab.accesskey "ν">
+<!ENTITY refreshButton.label "Ανανέωση">
+<!ENTITY refreshButton.accesskey "ν">
+<!ENTITY stopButton.label "Διακοπή">
+<!ENTITY stopButton.accesskey "Δ">
+<!ENTITY server.label "Λογαριασμός:">
+<!ENTITY server.accesskey "γ">
+<!ENTITY subscribedHeader.label "Συνδρομή">
+<!-- commenting out until bug 38906 is fixed
+<!ENTITY messagesHeader.label "Messages"> -->
+<!ENTITY namefield.label "Προβολή αντικειμένων που περιέχουν:">
+<!ENTITY namefield.accesskey "χ">
diff --git a/l10n-el/mail/chrome/messenger/subscribe.properties b/l10n-el/mail/chrome/messenger/subscribe.properties
new file mode 100644
index 0000000000..deed8f26b0
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/subscribe.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/.
+
+subscribeLabel-nntp=Επιλέξτε ομάδες συζήτησης για εγγραφή:
+subscribeLabel-imap=Επιλέξτε τους φακέλους που θέλετε να εγγραφείτε:
+currentListTab-nntp.label=Τρέχουσα λίστα ομάδων
+currentListTab-nntp.accesskey=λ
+currentListTab-imap.label=Λίστα φακέλων
+currentListTab-imap.accesskey=σ
+pleaseWaitString=Παρακαλώ περιμένετε…
+offlineState=Είστε εκτός σύνδεσης. Δεν ήταν δυνατή η ανάκτηση στοιχείων από το διακομιστή.
+errorPopulating=Σφάλμα κατά τη λήψη στοιχείων από το διακομιστή.
diff --git a/l10n-el/mail/chrome/messenger/tabmail.dtd b/l10n-el/mail/chrome/messenger/tabmail.dtd
new file mode 100644
index 0000000000..a71e52f7b7
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/tabmail.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 closeTab.label "Κλείσιμο καρτέλας">
+<!ENTITY listAllTabs.label "Λίστα όλων των καρτελών">
+<!-- LOCALIZATION NOTE(defaultTabTitle.label): This is the default tab
+ title to show when the tab has no title. -->
+<!ENTITY defaultTabTitle.label "Αρχική σελίδα">
diff --git a/l10n-el/mail/chrome/messenger/taskbar.properties b/l10n-el/mail/chrome/messenger/taskbar.properties
new file mode 100644
index 0000000000..34ddf9e0df
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/taskbar.properties
@@ -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/.
+
+taskbar.tasks.composeMessage.label=Σύνταξη νέου μηνύματος
+taskbar.tasks.composeMessage.description=Σύνταξη νέου μηνύματος.
+taskbar.tasks.openAddressBook.label=Άνοιγμα ευρετηρίου διευθύνσεων
+taskbar.tasks.openAddressBook.description=Άνοιγμα του ευρετηρίου διευθύνσεων σας.
diff --git a/l10n-el/mail/chrome/messenger/telemetry.properties b/l10n-el/mail/chrome/messenger/telemetry.properties
new file mode 100644
index 0000000000..63b623ad0a
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/telemetry.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/.
+
+# Telemetry prompt
+# LOCALIZATION NOTE (telemetryText): %1$S will be replaced by brandFullName,
+# and %2$S by the value of the toolkit.telemetry.server_owner preference.
+telemetryText = Θέλετε να βοηθήσετε να βελτιωθεί ο %1$S με το να υποβάλλονται ανώνυμα η χρήση μνήμης και η συμπεριφορά και οι επιδόσεις της εφαρμογής στο %2$S;
+telemetryLinkLabel = Μάθετε περισσότερα
+telemetryYesButtonLabel = Ναι
+telemetryYesButtonAccessKey = α
+telemetryNoButtonLabel = Όχι
+telemetryNoButtonAccessKey = χ
diff --git a/l10n-el/mail/chrome/messenger/templateUtils.properties b/l10n-el/mail/chrome/messenger/templateUtils.properties
new file mode 100644
index 0000000000..6687491ebd
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/templateUtils.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/.
+
+# LOCALIZATION NOTE yesterday: used in various places where we compute
+# a "friendly" date, e.g. displaying that a message was from yesterday.
+yesterday=χθες
diff --git a/l10n-el/mail/chrome/messenger/textImportMsgs.properties b/l10n-el/mail/chrome/messenger/textImportMsgs.properties
new file mode 100644
index 0000000000..2b60c3c1cf
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/textImportMsgs.properties
@@ -0,0 +1,48 @@
+# 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/.
+
+#
+# The following are used by the outlook express import code to display status/error
+# and informational messages
+#
+
+#
+# The following are used by the outlook express import code to display status/error
+# and informational messages
+#
+
+# Short name of import module
+## @name TEXTIMPORT_NAME
+## @loc None
+2000=Αρχείο κειμένου (LDIF, .tab, .csv, .txt)
+
+# Description of import module
+## @name TEXTIMPORT_DESCRIPTION
+## @loc None
+2001=Εισαγωγή ευρετηρίου διευθύνσεων από αρχείο κειμένου (.txt), LDIF, οριοθετημένο (tab delimited), διαχωρισμένο με κόμμα (.csv).
+
+# Description of import module
+## @name TEXTIMPORT_ADDRESS_NAME
+## @loc None
+2002=Ευρετήριο διευθύνσεων κειμένου
+
+# Description
+## @name TEXTIMPORT_ADDRESS_SUCCESS
+## @loc None
+2003=Εισηγμένα Ευρετηρίου Διευθύνσεων %S
+
+# Error message
+## @name TEXTIMPORT_ADDRESS_BADPARAM
+## @loc None
+2004=Λανθασμένη παράμετρος στην εισαγωγή ευρετηρίου διευθύνσεων.
+
+# Error message
+## @name TEXTIMPORT_ADDRESS_BADSOURCEFILE
+## @loc None
+2005=Σφάλμα στην πρόσβαση αρχείου για το ευρετήριο διευθύνσεων %S.
+
+# Error message
+## @name TEXTIMPORT_ADDRESS_CONVERTERROR
+## @loc None
+2006=Σφάλμα εισαγωγής ευρετηρίου διευθύνσεων %S. Μπορεί να μην εισαχθούν όλες οι διευθύνσεις
diff --git a/l10n-el/mail/chrome/messenger/vCardImportMsgs.properties b/l10n-el/mail/chrome/messenger/vCardImportMsgs.properties
new file mode 100644
index 0000000000..4c495ee9ca
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/vCardImportMsgs.properties
@@ -0,0 +1,26 @@
+# 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/.
+
+#
+# The following are used by the vCard import code to display status, error, and
+# informational messages
+#
+
+vCardImportName=Αρχείο vCard (.vcf)
+
+vCardImportDescription=Εισαγωγή βιβλίου διευθύνσεων από μορφή vCard
+
+vCardImportAddressName=Ευρετήριο διευθύνσεων vCard
+
+# LOCALIZATION NOTE (vCardImportAddressSuccess): %S is replaced by the
+# name of the address book being imported.
+vCardImportAddressSuccess=Έγινε εισαγωγή του βιβλίου διευθύνσεων %S
+
+# LOCALIZATION NOTE (vCardImportAddressSuccess): %S is replaced by the
+# name of the address book being imported.
+vCardImportAddressBadSourceFile=Σφάλμα στην πρόσβαση αρχείου για το ευρετήριο διευθύνσεων %S.
+
+# LOCALIZATION NOTE (vCardImportAddressSuccess): %S is replaced by the
+# name of the address book being imported.
+vCardImportAddressConvertError=Σφάλμα εισαγωγής ευρετηρίου διευθύνσεων %S. Μπορεί να μην εισαχθούν όλες οι διευθύνσεις.
diff --git a/l10n-el/mail/chrome/messenger/viewLog.dtd b/l10n-el/mail/chrome/messenger/viewLog.dtd
new file mode 100644
index 0000000000..76b1b1cb3d
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/viewLog.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 viewLog.title "Αρχείο καταγραφής φίλτρου">
+<!ENTITY viewLogInfo.text "Το Αρχείο καταγραφής φίλτρου είναι ένα αρχείο που καταγράφει ποια φίλτρα εκτελούνται. Χρησιμοποιήστε το κουτί επιλογής για να ενεργοποιήσετε την καταγραφή.">
+<!ENTITY clearLog.label "Εκκαθάριση Καταγραφής">
+<!ENTITY clearLog.accesskey "θ">
+<!ENTITY enableLog.label "Ενεργοποίηση της καταγραφής φίλτρου">
+<!ENTITY enableLog.accesskey "Ε">
+<!ENTITY closeLog.label "Κλείσιμο">
+<!ENTITY closeLog.accesskey "Κ">
diff --git a/l10n-el/mail/chrome/messenger/viewSource.dtd b/l10n-el/mail/chrome/messenger/viewSource.dtd
new file mode 100644
index 0000000000..6c4d72c3aa
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/viewSource.dtd
@@ -0,0 +1,88 @@
+<!-- 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/. -->
+
+<!-- extracted from content/viewSource.xhtml -->
+
+<!-- LOCALIZATION NOTE (mainWindow.title) : DONT_TRANSLATE -->
+<!ENTITY mainWindow.title "&brandFullName;">
+<!-- LOCALIZATION NOTE (mainWindow.titlemodifier) : DONT_TRANSLATE -->
+<!ENTITY mainWindow.titlemodifier "&brandFullName;">
+<!-- LOCALIZATION NOTE (mainWindow.titlemodifierseparator) : DONT_TRANSLATE -->
+<!ENTITY mainWindow.titlemodifierseparator " - ">
+<!ENTITY mainWindow.preface "Kώδικας του: ">
+
+<!ENTITY editMenu.label "Επεξεργασία">
+<!ENTITY editMenu.accesskey "Ε">
+<!ENTITY fileMenu.label "Αρχείο">
+<!ENTITY fileMenu.accesskey "Α">
+<!ENTITY savePageCmd.label "Αποθήκευση σελίδας ως…">
+<!ENTITY savePageCmd.accesskey "Α">
+<!ENTITY savePageCmd.commandkey "S">
+<!ENTITY pageSetupCmd.label "Διαμόρφωση σελίδας…">
+<!ENTITY pageSetupCmd.accesskey "δ">
+<!ENTITY printPreviewCmd.label "Προεπισκόπηση εκτύπωσης">
+<!ENTITY printPreviewCmd.accesskey "π">
+<!ENTITY printCmd.label "Εκτύπωση…">
+<!ENTITY printCmd.accesskey "Ε">
+<!ENTITY printCmd.commandkey "P">
+<!ENTITY closeCmd.label "Κλείσιμο">
+<!ENTITY closeCmd.accesskey "Κ">
+<!ENTITY closeCmd.commandkey "W">
+
+<!-- LOCALIZATION NOTE :
+textEnlarge.commandkey3, textReduce.commandkey2 and
+textReset.commandkey2 are alternative acceleration keys for zoom.
+If shift key is needed with your locale popular keyboard for them,
+you can use these alternative items. Otherwise, their values should be empty. -->
+
+<!ENTITY textEnlarge.commandkey "+">
+<!ENTITY textEnlarge.commandkey2 "=">
+<!ENTITY textEnlarge.commandkey3 "">
+<!ENTITY textReduce.commandkey "-">
+<!ENTITY textReduce.commandkey2 "">
+<!ENTITY textReset.commandkey "0">
+<!ENTITY textReset.commandkey2 "">
+
+<!ENTITY goToLineCmd.label "Μετάβαση στη γραμμή…">
+<!ENTITY goToLineCmd.accesskey "Μ">
+<!ENTITY goToLineCmd.commandkey "l">
+
+<!ENTITY viewMenu.label "Προβολή">
+<!ENTITY viewMenu.accesskey "Π">
+<!ENTITY reloadCmd.label "Ανανέωση">
+<!ENTITY reloadCmd.accesskey "Α">
+<!ENTITY reloadCmd.commandkey "r">
+<!ENTITY menu_wrapLongLines.title "Αναδίπλωση μεγάλων γραμμών">
+<!ENTITY menu_wrapLongLines.accesskey "γ">
+<!ENTITY menu_highlightSyntax.label "Επισήμανση σύνταξης">
+<!ENTITY menu_highlightSyntax.accesskey "Ε">
+<!ENTITY menu_textSize.label "Μέγεθος κειμένου">
+<!ENTITY menu_textSize.accesskey "θ">
+<!ENTITY menu_textEnlarge.label "Αύξηση">
+<!ENTITY menu_textEnlarge.accesskey "Α">
+<!ENTITY menu_textReduce.label "Μείωση">
+<!ENTITY menu_textReduce.accesskey "Μ">
+<!ENTITY menu_textReset.label "Κανονικό">
+<!ENTITY menu_textReset.accesskey "ο">
+
+<!ENTITY findOnCmd.label "Εύρεση στη σελίδα…">
+<!ENTITY findOnCmd.accesskey "σ">
+<!ENTITY findOnCmd.commandkey "f">
+<!ENTITY findAgainCmd.label "Εύρεση ξανά">
+<!ENTITY findAgainCmd.accesskey "ξ">
+<!ENTITY findAgainCmd.commandkey "g">
+<!ENTITY findAgainCmd.commandkey2 "VK_F3">
+<!ENTITY findSelectionCmd.commandkey "e">
+
+<!ENTITY backCmd.label "Πίσω">
+<!ENTITY backCmd.accesskey "Π">
+<!ENTITY forwardCmd.label "Εμπρός">
+<!ENTITY forwardCmd.accesskey "Ε">
+<!ENTITY goBackCmd.commandKey "[">
+<!ENTITY goForwardCmd.commandKey "]">
+
+<!ENTITY copyLinkCmd.label "Αντιγραφή τοποθεσίας συνδέσμου">
+<!ENTITY copyLinkCmd.accesskey "φ">
+<!ENTITY copyEmailCmd.label "Αντιγραφή διεύθυνσης email">
+<!ENTITY copyEmailCmd.accesskey "e">
diff --git a/l10n-el/mail/chrome/messenger/viewSource.properties b/l10n-el/mail/chrome/messenger/viewSource.properties
new file mode 100644
index 0000000000..7645520f95
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/viewSource.properties
@@ -0,0 +1,17 @@
+# 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/.
+
+goToLineTitle = Μετάβαση στη γραμμή
+goToLineText = Εισάγετε αριθμό γραμμής
+invalidInputTitle = Μη έγκυρη είσοδος
+invalidInputText = Ο αριθμός γραμμής που εισάγατε δεν είναι έγκυρος.
+outOfRangeTitle = Η γραμμή δεν βρέθηκε
+outOfRangeText = Η καθορισμένη γραμμή δεν βρέθηκε.
+viewSelectionSourceTitle = Πηγαίος κώδικας DOM επιλογής
+viewMathMLSourceTitle = DOM Πηγαίος κώδικας του MathML
+
+context_goToLine_label = Μετάβαση στη γραμμή…
+context_goToLine_accesskey = L
+context_wrapLongLines_label = Αναδίπλωση μεγάλων γραμμών
+context_highlightSyntax_label = Επισήμανση σύνταξης
diff --git a/l10n-el/mail/chrome/messenger/viewZoomOverlay.dtd b/l10n-el/mail/chrome/messenger/viewZoomOverlay.dtd
new file mode 100644
index 0000000000..d6f9cc458b
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/viewZoomOverlay.dtd
@@ -0,0 +1,30 @@
+<!-- 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 :
+fullZoomEnlargeCmd.commandkey3, fullZoomReduceCmd.commandkey2 and
+fullZoomResetCmd.commandkey2 are alternative acceleration keys for zoom.
+If shift key is needed with your locale popular keyboard for them,
+you can use these alternative items. Otherwise, their values should be empty. -->
+
+<!ENTITY fullZoomEnlargeCmd.label "Μεγέθυνση">
+<!ENTITY fullZoomEnlargeCmd.accesskey "γ">
+<!ENTITY fullZoomEnlargeCmd.commandkey "+">
+<!ENTITY fullZoomEnlargeCmd.commandkey2 "="> <!-- + is above this key on many keyboards -->
+<!ENTITY fullZoomEnlargeCmd.commandkey3 "">
+
+<!ENTITY fullZoomReduceCmd.label "Σμίκρυνση">
+<!ENTITY fullZoomReduceCmd.accesskey "μ">
+<!ENTITY fullZoomReduceCmd.commandkey "-">
+<!ENTITY fullZoomReduceCmd.commandkey2 "">
+
+<!ENTITY fullZoomResetCmd.label "Επαναφορά">
+<!ENTITY fullZoomResetCmd.accesskey "ρ">
+<!ENTITY fullZoomResetCmd.commandkey "0">
+<!ENTITY fullZoomResetCmd.commandkey2 "">
+
+<!ENTITY fullZoomToggleCmd.label "Ζουμ μόνο στο κείμενο">
+<!ENTITY fullZoomToggleCmd.accesskey "ο">
+<!ENTITY fullZoom.label "Ζουμ">
+<!ENTITY fullZoom.accesskey "Ζ">
diff --git a/l10n-el/mail/chrome/messenger/virtualFolderListDialog.dtd b/l10n-el/mail/chrome/messenger/virtualFolderListDialog.dtd
new file mode 100644
index 0000000000..c712ec0e18
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/virtualFolderListDialog.dtd
@@ -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/. -->
+
+<!ENTITY virtualFolderListTitle.title "Επιλογή φακέλων">
+<!ENTITY virtualFolderDesc.label "Επιλογή φακέλων για αναζήτηση:">
+
+
+<!ENTITY folderName.label "Όνομα φακέλου">
+<!ENTITY folderSearch.label "Αναζήτηση">
diff --git a/l10n-el/mail/chrome/messenger/virtualFolderProperties.dtd b/l10n-el/mail/chrome/messenger/virtualFolderProperties.dtd
new file mode 100644
index 0000000000..40e6a9cd7d
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/virtualFolderProperties.dtd
@@ -0,0 +1,22 @@
+<!-- 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 virtualFolderProperties.title "Νέος αποθηκευμένος φάκελος αναζήτησης">
+<!ENTITY name.label "Όνομα:">
+<!ENTITY name.accesskey "ν">
+<!ENTITY description.label "Δημιουργία ενός υποφακέλου σε:">
+<!ENTITY description.accesskey "Δ">
+
+<!ENTITY searchTermCaption.label "Ρύθμιση των κριτηρίων αναζήτησης για αυτόν τον εικονικό φάκελο:">
+
+<!ENTITY folderSelectionCaption.label "Επιλογή φακέλου για αναζήτηση">
+<!ENTITY chooseFoldersButton.label "Επιλογή…">
+<!ENTITY chooseFoldersButton.accesskey "ι">
+
+<!ENTITY searchOnline.label "Αναζήτηση Online (Δίνει ενημερωμένα αποτελέσματα για φακέλους IMAP και συζητήσεων αλλά αυξάνει το χρόνο ανοίγματος του φακέλου)">
+<!ENTITY searchOnline.accesskey "ζ">
+<!ENTITY newFolderButton.label "Δημιουργία">
+<!ENTITY newFolderButton.accesskey "ρ">
+<!ENTITY editFolderButton.label "Ενημέρωση">
+<!ENTITY editFolderButton.accesskey "η">
diff --git a/l10n-el/mail/chrome/messenger/wmImportMsgs.properties b/l10n-el/mail/chrome/messenger/wmImportMsgs.properties
new file mode 100644
index 0000000000..ca1cbaaa9d
--- /dev/null
+++ b/l10n-el/mail/chrome/messenger/wmImportMsgs.properties
@@ -0,0 +1,76 @@
+# 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/.
+
+#
+# The following are used by the windows live mail import code to display status/error
+# and informational messages
+#
+
+# Short name of import module
+## @name WMIMPORT_NAME
+## @loc None
+## LOCALIZATION NOTE (2000): DONT_TRANSLATE
+2000=Windows Live Mail
+
+# Description of import module
+## @name WMIMPORT_DESCRIPTION
+## @loc None
+## LOCALIZATION NOTE (2001): In this item, don't translate "Windows Live Mail"
+2001=Ρυθμίσεις Windows Live Mail
+
+# Success message
+## @name WMIMPORT_MAILBOX_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2002): In this item, don't translate "%1$S" or "%2$d"
+## The variable %1$S will contain the name of the Mailbox
+## The variable %2$d will contain the number of messages
+2002=Mailbox %1$S, εισήχθησαν %2$d μηνύματα
+
+# Error message
+## @name WMIMPORT_MAILBOX_BADPARAM
+## @loc None
+2003=Εσφαλμένη παράμετρος κατά την εισαγωγή mailbox.
+
+# Error message
+## @name WMIMPORT_MAILBOX_BADSOURCEFILE
+## @loc None
+## LOCALIZATION NOTE (2004): In this item, don't translate "%S"
+## The variable %S will contain the name of the Mailbox
+2004=Σφάλμα πρόσβασης αρχείου για το γραμματοκιβώτιο %S.
+
+# Error message
+## @name WMIMPORT_MAILBOX_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2005): In this item, don't translate "%S"
+## The variable %S will contain the name of the Mailbox
+2005=Σφάλμα εισαγωγής mailbox %S, μπορεί να μην έχουν εισαχθεί όλα τα μηνύματα από το mailbox.
+
+# Default name of imported addressbook
+## @name WMIMPORT_DEFAULT_NAME
+## @loc None
+2006=Ευρετήριο διευθύνσεων Windows Live Mail
+
+# Autofind description
+## @name WMIMPORT_AUTOFIND
+## @loc None
+2007=Ευρετήριο διευθύνσεων Windows Live Mail (windows address book)
+
+# Description
+## @name WMIMPORT_ADDRESS_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2006): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2008=Εισηγμένο ευρετήριο διευθύνσεων %S
+
+# Error message
+## @name WMIMPORT_ADDRESS_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2009): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2009=Σφάλμα εισαγωγής ευρετηρίου διευθύνσεων %S, μπορει να μην έχουν εισαχθεί όλες οι διευθύνσεις.
+
+# Error message
+## @name WMIMPORT_ADDRESS_BADPARAM
+## @loc None
+2010=Εσφαλμένη παράμετρος κατά την εισαγωγή ευρετηρίου διευθύνσεων.
diff --git a/l10n-el/mail/chrome/mozldap/ldap.properties b/l10n-el/mail/chrome/mozldap/ldap.properties
new file mode 100644
index 0000000000..3e776e9304
--- /dev/null
+++ b/l10n-el/mail/chrome/mozldap/ldap.properties
@@ -0,0 +1,261 @@
+#
+# 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/.
+
+# The following two strings are used when prompting the user for authentication
+# information:
+
+## @name AUTH_PROMPT_TITLE
+## @loc none
+authPromptTitle=Απαιτείται κωδικός πρόσβασης διακομιστή LDAP
+
+## @name AUTH_PROMPT_TEXT
+## @loc %1$S should not be localized. It is the hostname of the LDAP server.
+authPromptText=Παρακαλούμε εισάγετε τον κωδικό σας για %1$S.
+
+# These are string versions of all the errors defined in
+# nsILDAPErrors.idl, as well as the nsresult codes based on those
+# errors. See that file for the genesis of these codes, as well as
+# for info about how to get documentation about their precise
+# meanings.
+
+## @name OPERATIONS_ERROR
+## @loc none
+1=Σφάλμα διεργασιών
+
+## @name PROTOCOL_ERROR
+## @loc none
+2=Σφάλμα πρωτοκόλλου
+
+## @name TIMELIMIT_EXCEEDED
+## @loc none
+3=Υπέρβαση χρονικού ορίου
+
+## @name SIZELIMIT_EXCEEDED
+## @loc none
+4=Υπέρβαση ορίου μεγέθους
+
+## @name COMPARE_FALSE
+## @loc none
+5=Σύγκριση ψεύδους
+
+## @name COMPARE_TRUE
+## @loc none
+6=Σύγκριση αλήθειας
+
+## @name STRONG_AUTH_NOT_SUPPORTED
+## @loc none
+7=Η μέθοδος ταυτοποίησης δεν υποστηρίζεται
+
+## @name STRONG_AUTH_REQUIRED
+## @loc none
+8=Απαιτείται αυστηρή ταυτοποίηση
+
+## @name PARTIAL_RESULTS
+## @loc none
+9=Έγινε λήψη μερικών αποτελεσμάτων και αναφορών
+
+## @name REFERRAL
+## @loc none
+10=Έγινε λήψη της παραπομπής
+
+## @name ADMINLIMIT_EXCEEDED
+## @loc none
+11=Υπέρβαση ορίου διαχείρισης
+
+## @name UNAVAILABLE_CRITICAL_EXTENSION
+## @loc none
+12=Μη διαθέσιμη βασική επέκταση
+
+## @name CONFIDENTIALITY_REQUIRED
+## @loc none
+13=Απαιτείται εμπιστευτικότητα
+
+## @name SASL_BIND_IN_PROGRESS
+## @loc none
+14=Σύνδεση SASL σε εξέλιξη
+
+## @name NO_SUCH_ATTRIBUTE
+## @loc none
+16=Δεν υπάρχει τέτοια ιδιότητα
+
+## @name UNDEFINED_TYPE
+## @loc none
+17=Μη ορισμένος τύπος ιδιότητας
+
+## @name INAPPROPRIATE MATCHING
+## @loc none
+18=Ακατάλληλη αντιστοίχιση
+
+## @name CONSTRAINT_VIOLATION
+## @loc none
+19=Παραβίαση περιορισμού
+
+## @name TYPE_OR_VALUE_EXISTS
+## @loc none
+20=Ο τύπος ή η τιμή υπάρχει
+
+## @name INVALID_SYNTAX
+## @loc none
+21=Μη έγκυρη σύνταξη
+
+## @name NO_SUCH_OBJECT
+## @loc none
+32=Δεν υπάρχει τέτοιο αντικείμενο
+
+## @name ALIAS_PROBLEM
+## @loc none
+33=Πρόβλημα ψευδώνυμου
+
+## @name INVALID_DN_ SYNTAX
+## @loc none
+34=Μη έγκυρη σύνταξη DN
+
+## @name IS_LEAF
+## @loc none
+35=Το αντικείμενο είναι φύλλο
+
+## @name ALIAS_DEREF_PROBLEM
+## @loc none
+36=Πρόβλημα διακοπής αναφοράς ψευδωνύμου
+
+## @name INAPPROPRIATE_AUTH
+## @loc none
+48=Ακατάλληλη ταυτοποίηση
+
+## @name INVALID_CREDENTIALS
+## @loc none
+49=Μη έγκυρα διαπιστευτήρια
+
+## @name INSUFFICIENT_ACCESS
+## @loc none
+50=Ανεπαρκής πρόσβαση
+
+## @name BUSY
+## @loc none
+51=Ο διακομιστής LDAP είναι απασχολημένος
+
+## @name UNAVAILABLE
+## @loc none
+52=Ο διακομιστής LDAP δεν είναι διαθέσιμος
+
+## @name UNWILLING_TO_PERFORM
+## @loc none
+53=Ο διακομιστής LDAP δεν ανταποκρίνεται
+
+## @name LOOP_DETECT
+## @loc none
+54=Εντοπίστηκε βρόχος
+
+## @name SORT_CONTROL_MISSING
+## @loc none
+60=Λείπει ο Έλεγχος Ταξινόμησης
+
+## @name INDEX_RANGE_ERROR
+## @loc none
+61=Τα αποτελέσματα αναζήτησης ξεπερνούν το εύρος που ορίστηκε από τις αντισταθμίσεις
+
+## @name NAMING_VIOLATION
+## @loc none
+64=Παραβίαση ονομασίας
+
+## @name OBJECT_CLASS_VIOLATION
+## @loc none
+65=Παραβίαση κλάσης αντικειμένου
+
+## @name NOT_ALLOWED_ON_NONLEAF
+## @loc none
+66=Η λειτουργία δεν επιτρέπεται σε μη φύλλα
+
+## @name NOT_ALLOWED_ON_RDN
+## @loc none
+67=Η λειτουργία δεν επιτρέπεται σε RDN
+
+## @name ALREADY_EXISTS
+## @loc none
+68=Υπάρχει ήδη
+
+## @name NO_OBJECT_CLASS_MODS
+## @loc none
+69=Δεν είναι δυνατή η τροποποίηση της κλάσης αντικειμένου
+
+## @name RESULTS_TOO_LARGE
+## @loc none
+70=Τα αποτελέσματα είναι πολύ μεγάλα
+
+## @name AFFECTS_MULTIPLE_DSAS
+## @loc none
+71=Επηρεάζει πολλούς διακομιστές
+
+## @name OTHER
+## @loc none
+80=Άγνωστο σφάλμα
+
+## @name SERVER_DOWN
+## @loc none
+81=Αδυναμία επικοινωνίας με τον διακομιστή LDAP
+
+## @name LOCAL_ERROR
+## @loc none
+82=Τοπικό σφάλμα
+
+## @name ENCODING_ERROR
+## @loc none
+83=Σφάλμα κωδικοποίησης
+
+## @name DECODING_ERROR
+## @loc none
+84=Σφάλμα αποκωδικοποίησης
+
+## @name TIMEOUT
+## @loc none
+85=Έληξε το χρονικό όριο του διακομιστή LDAP
+
+## @name AUTH_UNKNOWN
+## @loc none
+86=Άγνωστη μέθοδος ταυτοποίησης
+
+## @name FILTER_ERROR
+## @loc none
+87=Μη έγκυρο φίλτρο αναζήτησης
+
+## @name USER_CANCELLED
+## @loc none
+88=Ο χρήστης ακύρωσε τη λειτουργία
+
+## @name PARAM_ERROR
+## @loc none
+89=Λάθος παράμετρος σε μία LDAP ρουτίνα
+
+## @name NO_MEMORY
+## @loc none
+90=Aνεπάρκεια μνήμης
+
+## @name CONNECT_ERROR
+## @loc none
+91=Αδυναμία σύνδεσης στον διακομιστή LDAP
+
+## @name NOT_SUPPORTED
+## @loc none
+92=Δεν υποστηρίζεται από αυτήν την έκδοση του πρωτοκόλλου LDAP
+
+## @name CONTROL_NOT_FOUND
+## @loc none
+93=Ο ζητούμενος LDAP έλεγχος δεν βρέθηκε
+
+## @name NO_RESULTS_RETURNED
+## @loc none
+94=Κανένα αποτέλεσμα
+
+## @name MORE_RESULTS_TO_RETURN
+## @loc none
+95=Περισσότερα αποτελέσματα προς επιστροφή
+
+## @name CLIENT_LOOP
+## @loc none
+96=Ο πελάτης εντόπισε ένα βρόχο
+
+## @name REFERRAL_LIMIT_EXCEEDED
+## @loc none
+97=Υπέρβαση ορίου της παραπομπής hop
diff --git a/l10n-el/mail/chrome/overrides/netError.dtd b/l10n-el/mail/chrome/overrides/netError.dtd
new file mode 100644
index 0000000000..363088a437
--- /dev/null
+++ b/l10n-el/mail/chrome/overrides/netError.dtd
@@ -0,0 +1,202 @@
+<!-- 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 % brandDTD SYSTEM "chrome://branding/locale/brand.dtd">
+%brandDTD;
+
+<!ENTITY loadError.label "Πρόβλημα φόρτωσης σελίδας">
+<!ENTITY retry.label "Δοκιμή ξανά">
+
+<!-- Specific error messages -->
+
+<!ENTITY connectionFailure.title "Αδυναμία σύνδεσης">
+<!ENTITY connectionFailure.longDesc "&sharedLongDesc;">
+
+<!ENTITY deniedPortAccess.title "Αυτή η διεύθυνση είναι περιορισμένη">
+<!ENTITY deniedPortAccess.longDesc "">
+
+<!ENTITY dnsNotFound.title "Δεν βρέθηκε ο διακομιστής">
+<!ENTITY dnsNotFound.longDesc "
+<ul>
+ <li>Ελέγξτε τη διεύθυνση για τυχόν ορθογραφικά λάθη όπως
+ <strong>ww</strong>.example.com αντί για
+ <strong>www</strong>.example.com</li>
+ <li>Αν δεν μπορείτε να φορτώσετε καμία σελίδα, ελέγξτε τη σύνδεση του υπολογιστή σας
+ στο δίκτυο.</li>
+ <li>Αν ο υπολογιστής ή το δίκτυό σας προστατεύονται από ένα τείχος προστασίας (firewall) ή ένα μεσολαβητή (proxy), βεβαιωθείτε ότι
+ επιτρέπεται στο &brandShortName; η πρόσβαση στο διαδίκτυο.</li>
+</ul>
+">
+
+<!ENTITY fileNotFound.title "Το αρχείο δεν βρέθηκε">
+<!ENTITY fileNotFound.longDesc "
+<ul>
+ <li>Ελέγξτε το όνομα αρχείου για λάθος κεφαλαία ή άλλα ορθογραφικά λάθη.</li>
+ <li>Ελέγξτε αν το αρχείο μετακινήθηκε, μετονομάστηκε ή διαγράφηκε.</li>
+</ul>
+">
+
+<!ENTITY fileAccessDenied.title "Άρνηση πρόσβασης στο αρχείο">
+<!ENTITY fileAccessDenied.longDesc "
+<ul>
+ <li>Ενδέχεται να έχει διαγραφεί, μετακινηθεί, ή να μην επιτρέπεται η πρόσβαση λόγω των δικαιωμάτων του αρχείου.</li>
+</ul>
+">
+
+<!ENTITY generic.title "Ωχ!">
+<!ENTITY generic.longDesc "
+<p>Το &brandShortName; δεν μπορεί να φορτώσει αυτή τη σελίδα για κάποιο λόγο.</p>
+">
+
+<!ENTITY malformedURI.title "Η διεύθυνση δεν είναι έγκυρη">
+<!ENTITY malformedURI.longDesc "
+<ul>
+ <li>Οι διεύθυνσεις στον ιστό συνήθως γράφονται όπως
+ <strong>http://www.example.com/</strong></li>
+ <li>Βεβαιωθείτε ότι χρησιμοποιείται δεξιές slashes (i.e.
+ <strong>/</strong>).</li>
+</ul>
+">
+
+<!ENTITY netInterrupt.title "Η σύνδεση διακόπηκε">
+<!ENTITY netInterrupt.longDesc "&sharedLongDesc;">
+
+<!ENTITY notCached.title "Το έγγραφο έληξε">
+<!ENTITY notCached.longDesc '<p>Το ζητούμενο έγγραφο δεν είναι πλέον διαθέσιμο στην προσωρινή μνήμη.</p><ul><li>Ως μέτρο ασφαλείας, το &brandShortName; δεν ζητά εκ νέου, αυτόματα, τα ευαίσθητα έγγραφα.</li><li>Κάντε κλικ στο "Δοκιμή ξανά" για εκ νέου απαίτηση του εγγράφου από την ιστοσελίδα.</li></ul>'>
+
+<!ENTITY netOffline.title "Λειτουργία εκτός σύνδεσης">
+<!ENTITY netOffline.longDesc2 "
+<ul>
+ <li>Πατήστε το &quot;Δοκιμή ξανά&quot; για εναλλαγή σε λειτουργία εντός σύνδεσης και εκ νέου φόρτωση της σελίδας.</li>
+</ul>
+">
+
+<!ENTITY contentEncodingError.title "Σφάλμα κωδικοποίησης περιεχομένου">
+<!ENTITY contentEncodingError.longDesc "
+<ul>
+ <li>Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους πληροφορήσετε για το πρόβλημα.</li>
+</ul>
+">
+
+<!ENTITY unsafeContentType.title "Μη ασφαλής τύπος αρχείου">
+<!ENTITY unsafeContentType.longDesc "
+<ul>
+ <li>Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε για το πρόβλημα.</li>
+</ul>
+">
+
+<!ENTITY netReset.title "Έγινε επαναφορά της σύνδεσης">
+<!ENTITY netReset.longDesc "&sharedLongDesc;">
+
+<!ENTITY netTimeout.title "Υπέρβαση ορίου χρόνου της σύνδεσης">
+<!ENTITY netTimeout.longDesc "&sharedLongDesc;">
+
+<!ENTITY unknownProtocolFound.title "Δεν έγινε κατανοητή η διεύθυνση">
+<!ENTITY unknownProtocolFound.longDesc "
+<ul>
+ <li>Ίσως να χρειάζεται να εγκαταστήσετε κάποιο άλλο πρόγραμμα για να ανοίξετε αυτή τη διεύθυνση.</li>
+</ul>
+">
+
+<!ENTITY proxyConnectFailure.title "Ο διαμεσολαβητής αρνείται συνδέσεις">
+<!ENTITY proxyConnectFailure.longDesc "
+<ul>
+ <li>Ελέγξτε αν είναι σωστές οι ρυθμίσεις του διαμεσολαβητή.</li>
+ <li>Επικοινωνήστε με το διαχειριστή του συστήματος σας για να βεβαιωθείτε ότι ο διαμεσολαβητής
+ λειτουργεί.</li>
+</ul>
+">
+
+<!ENTITY proxyResolveFailure.title "Αδυναμία εύρεσης διαμεσολαβητή">
+<!ENTITY proxyResolveFailure.longDesc "
+<ul>
+ <li>>Ελέγξτε αν είναι σωστές οι ρυθμίσεις του διαμεσολαβητή.</li>
+ <li>Βεβαιωθείτε ότι είναι ενεργή η σύνδεση σας στο δίκτυο.</li>
+ <li>Αν ο υπολογιστής σας ή το δίκτυο σας προστατεύεται από ένα firewall ή χρησιμοποιεί ένα διαμεσολαβητή (proxy), βεβαιωθείτε ότι
+ επιτρέπεται στο &brandShortName; να έχει πρόσβαση στο διαδίκτυο.</li>
+</ul>
+">
+
+<!ENTITY redirectLoop.title "Η σελίδα δεν ανακατευθύνει σωστά">
+<!ENTITY redirectLoop.longDesc "
+<ul>
+ <li>Αυτό μπορεί το πρόβλημα να προέρχεται από την απενεργοποίηση ή την άρνηση
+ cookies.</li>
+</ul>
+">
+
+<!ENTITY unknownSocketType.title "Απρόσμενη απάντηση από τον διακομιστή">
+<!ENTITY unknownSocketType.longDesc "
+<ul>
+ <li>Βεβαιωθείτε ότι έχετε εγκατεστημένο το Personal Security Manager.</li>
+ <li>Αυτό μπορεί να προέρχεται από μια μη-τυπική ρύθμιση του διακομιστή.</li>
+</ul>
+">
+
+<!ENTITY nssFailure2.title "Αποτυχία ασφαλούς σύνδεσης">
+<!ENTITY nssFailure2.longDesc2 "
+<ul>
+ <li>Η σελίδα που προσπαθείτε να δείτε δεν μπορεί να εμφανιστεί επειδή δεν είναι δυνατή η πιστοποίηση της αυθεντικότητας των ληφθέντων δεδομένων.</li>
+ <li>Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους πληροφορήσετε για το πρόβλημα.</li>
+</ul>
+">
+
+<!ENTITY nssBadCert.title "Αποτυχία ασφαλούς σύνδεσης">
+<!ENTITY nssBadCert.longDesc2 "
+<ul>
+ <li>Μπορεί να υπάρχει πρόβλημα με τις ρυθμίσεις του διακομιστής ή κάποιος προσπαθεί να μιμηθεί κακόβουλα
+τον διακομιστή.</li>
+ <li>Αν έχετε συνδεθεί ξανά στο παρελθόν με αυτόν τον διακομιστή, το σφάλμα μπορεί να είναι προσωρινό,\
+και μπορείτε να προσπαθήσετε ξανά.</li>
+</ul>
+">
+
+<!ENTITY sharedLongDesc "
+<ul>
+ <li>Η σελίδα μπορεί να είναι προσωρινά μη διαθέσιμη ή πολύ απασχολημένη. Προσπαθήστε ξανά
+ σε λίγο.</li>
+ <li>Αν δεν μπορείτε να φορτώσετε καμία σελίδα ελέγξτε τη σύνδεση του υπολογιστή σας
+ στο δίκτυο.</li>
+ <li>Αν ο υπολογιστής σας ή το δίκτυο σας προστατεύεται από ένα firewall ή ένα διαμεσολαβητή, βεβαιωθείτε ότι
+ επιτρέπεται στο &brandShortName; να έχει πρόσβαση στον ιστό.</li>
+</ul>
+">
+
+<!ENTITY cspBlocked.title "Έχει φραγεί από την πολιτική προστασίας περιεχομένου">
+<!ENTITY cspBlocked.longDesc "<p>Το &brandShortName; εμπόδισε τη φόρτωση της σελίδας με αυτό τον τρόπο, επειδή η σελίδα έχει μια πολιτική προστασίας περιεχομένου που δεν τον επιτρέπει.</p>">
+
+<!ENTITY xfoBlocked.title "Μπλοκαρίστηκε από την πολιτική X-Frame-Options">
+<!ENTITY xfoBlocked.longDesc "<p>Το &brandShortName; εμπόδισε τη φόρτωση της σελίδας, επειδή η σελίδα έχει μια πολιτική X-Frame-Options που δεν το επιτρέπει.</p>">
+
+<!ENTITY corruptedContentErrorv2.title "Σφάλμα κατεστραμμένου περιεχομένου">
+<!ENTITY corruptedContentErrorv2.longDesc "<p>Η σελίδα που προσπαθείτε να δείτε δεν μπορεί να εμφανιστεί επειδή εντοπίστηκε σφάλμα στην μετάδοση των δεδομένων.</p><ul><li>Επικοινωνήστε με τους ιδιοκτήτες του ιστοτόπου για να τους ενημερώσετε για το πρόβλημα</li></ul>">
+
+<!ENTITY securityOverride.linkText "Ή μπορείτε να προσθέσετε μια εξαίρεση…">
+<!ENTITY securityOverride.getMeOutOfHereButton "Θέλω να φύγω από εδώ!">
+<!ENTITY securityOverride.exceptionButtonLabel "Προσθήκη εξαίρεσης…">
+
+<!-- LOCALIZATION NOTE (securityOverride.warningContent) - Do not translate the
+contents of the <button> tags. It uses strings already defined above. The
+button is included here (instead of netError.xhtml) because it exposes
+functionality specific to thunderbird. -->
+
+<!ENTITY securityOverride.warningContent "
+<p>Δεν πρέπει να προσθέσετε μια εξαίρεση αν χρησιμοποιείτε μια σύνδεση στο διαδίκτυο που δεν εμπιστεύεστε πλήρως ή αν δεν έχετε ξαναδεί προειδοποίηση για αυτόν τον διακομιστή.</p>
+
+<button id='getMeOutOfHereButton'>&securityOverride.getMeOutOfHereButton;</button>
+<button id='exceptionDialogButton'>&securityOverride.exceptionButtonLabel;</button>
+">
+
+<!ENTITY remoteXUL.title "Απομακρυσμένο XUL">
+<!ENTITY remoteXUL.longDesc "<p><ul><li>Παρακαλούμε επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε για αυτό το πρόβλημα.</li></ul></p>">
+
+<!ENTITY inadequateSecurityError.title "Η σύνδεσή σας δεν είναι ασφαλής">
+<!-- LOCALIZATION NOTE (inadequateSecurityError.longDesc) - Do not translate
+ "NS_ERROR_NET_INADEQUATE_SECURITY". -->
+<!ENTITY inadequateSecurityError.longDesc "Το <p><span class='hostname'></span> χρησιμοποιεί τεχνολογία που είναι παρωχημένη και ευάλωτη σε επιθέσεις. Ένας εισβολέας θα μπορούσε εύκολα να αποκαλύψει πληροφορίες που πιστεύατε ότι ήταν ασφαλείς. Ο διαχειριστής του ιστοτόπου θα πρέπει να διορθώσει τον διακομιστή προτού επισκεφθείτε ξανά τον ιστοτόπο.</p><p>Κωδικός σφάλματος: NS_ERROR_NET_INADEQUATE_SECURITY</p>">
+
+<!ENTITY blockedByPolicy.title "Αποκλεισμένη σελίδα">
+
+<!ENTITY networkProtocolError.title "Σφάλμα πρωτοκόλλου δικτύου">
+<!ENTITY networkProtocolError.longDesc "<p>Η σελίδα που προσπαθείτε να δείτε δεν μπορεί να εμφανιστεί γιατί εντοπίστηκε ένα σφάλμα στο πρωτόκολλο δικτύου.</p><ul><li>Επικοινωνήστε με τους ιδιοκτήτες τους ιστοτόπου για να τους ενημερώσετε για το πρόβλημα.</li></ul>">
diff --git a/l10n-el/mail/chrome/overrides/profileDowngrade.dtd b/l10n-el/mail/chrome/overrides/profileDowngrade.dtd
new file mode 100644
index 0000000000..ecd94eb2d2
--- /dev/null
+++ b/l10n-el/mail/chrome/overrides/profileDowngrade.dtd
@@ -0,0 +1,20 @@
+<!-- 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:
+ This UI can be most easily shown by modifying the version in compatibility.ini
+ to a newer version and then starting Thunderbird.
+ For this feature, "installation" is used to mean "this discrete download of
+ Thunderbird" and "version" is used to mean "the specific revision number of a
+ given Thunderbird channel". These terms are not synonymous.
+-->
+<!ENTITY window.title "Έχετε ανοίξει μια παλιότερη έκδοση του &brandProductName;">
+<!ENTITY window.style "width: 490px;">
+
+<!ENTITY window.nosync2 "Μια νεότερη έκδοση του &brandProductName; ενδέχεται να έχει κάνει αλλαγές στο προφίλ σας που δεν είναι πλέον συμβατές με αυτή την παλιότερη έκδοση. Χρησιμοποιήστε το προφίλ αυτό μόνο με τη νεότερη έκδοση ή δημιουργήστε ένα νέο προφίλ για αυτή την εγκατάσταση του &brandShortName;. Η δημιουργία νέου προφίλ απαιτεί εκ νέου την παραμετροποίηση των λογαριασμών, ημερολογίων και προσθέτων σας.">
+
+<!ENTITY window.moreinfo "Περισσότερες πληροφορίες…">
+<!ENTITY window.create "Δημιουργία νέου προφίλ">
+<!ENTITY window.quit-win "Έξοδος">
+<!ENTITY window.quit-nonwin "Έξοδος">
diff --git a/l10n-el/mail/chrome/overrides/settingsChange.dtd b/l10n-el/mail/chrome/overrides/settingsChange.dtd
new file mode 100644
index 0000000000..ff7841d87e
--- /dev/null
+++ b/l10n-el/mail/chrome/overrides/settingsChange.dtd
@@ -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/. -->
+
+<!ENTITY settingsChangePreferences.label 'Μπορείτε να αλλάξετε τις ρυθμίσεις μέσω της καρτέλας "Συνημμένα" στις Προτιμήσεις &brandShortName;.'>
+<!ENTITY settingsChangeOptions.label 'Μπορείτε να αλλάξετε τις ρυθμίσεις μέσω της καρτέλας "Συνημμένα" στις Επιλογές &brandShortName;.'>
diff --git a/l10n-el/mail/defines.inc b/l10n-el/mail/defines.inc
new file mode 100644
index 0000000000..df6a6eea87
--- /dev/null
+++ b/l10n-el/mail/defines.inc
@@ -0,0 +1,9 @@
+#filter emptyLines
+
+#define MOZ_LANGPACK_CREATOR Kostas Papadimas
+
+# If non-English locales wish to credit multiple contributors, uncomment this
+# variable definition and use the format specified.
+#define MOZ_LANGPACK_CONTRIBUTORS <em:contributor>Λούρδας Βασίλης</em:contributor> <em:contributor>Jim Spentzos</em:contributor>
+
+#unfilter emptyLines
diff --git a/l10n-el/mail/installer/custom.properties b/l10n-el/mail/installer/custom.properties
new file mode 100644
index 0000000000..1d2d673971
--- /dev/null
+++ b/l10n-el/mail/installer/custom.properties
@@ -0,0 +1,85 @@
+# 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:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+REG_APP_DESC=Το $BrandShortName είναι μια πλήρης εφαρμογή e-mail. Το $BrandShortName υποστηρίζει τα πρωτόκολλα e-mail IMAP και POP, καθώς και μορφοποίηση HTML. Οι ενσωματωμένοι έλεγχοι ανεπιθύμητων e-mails, οι δυνατότητες RSS, η ισχυρή μηχανή αναζήτησης, ο ορθογραφικός έλεγχος κατά την πληκτρολόγηση, τα καθολικά εισερχόμενα και το προηγμένο φιλτράρισμα μηνυμάτων, ολοκληρώνουν τις σύγχρονες λειτουργίες του $BrandShortName.
+CONTEXT_OPTIONS=&Επιλογές $BrandShortName
+CONTEXT_SAFE_MODE=&Ασφαλής λειτουργία του $BrandShortName
+OPTIONS_PAGE_TITLE=Τύπος εγκατάστασης
+OPTIONS_PAGE_SUBTITLE=Επιλογές εγκατάστασης
+SHORTCUTS_PAGE_TITLE=Ρύθμιση συντομεύσεων
+SHORTCUTS_PAGE_SUBTITLE=Δημιουργία εικονιδίων προγράμματος
+COMPONENTS_PAGE_TITLE=Εγκατάσταση προαιρετικών στοιχείων
+COMPONENTS_PAGE_SUBTITLE=Προτεινόμενα προαιρετικά στοιχεία
+OPTIONAL_COMPONENTS_DESC=Η Υπηρεσία συντήρησης σάς επιτρέπει να αναβαθμίζετε το $BrandShortName στο παρασκήνιο.
+MAINTENANCE_SERVICE_CHECKBOX_DESC=Εγκατάσταση &Υπηρεσίας Συντήρησης
+SUMMARY_PAGE_TITLE=Περίληψη
+SUMMARY_PAGE_SUBTITLE=Όλα έτοιμα για την εγκατάσταση του $BrandShortName
+SUMMARY_INSTALLED_TO=Το $BrandShortName θα εγκατασταθεί στην ακόλουθη τοποθεσία:
+SUMMARY_REBOOT_REQUIRED_INSTALL=Μπορεί να απαιτείται η επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί η εγκατάσταση.
+SUMMARY_REBOOT_REQUIRED_UNINSTALL=Μπορεί να απαιτείται η επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί η απεγκατάσταση.
+SUMMARY_TAKE_DEFAULTS=Χρή&ση του $BrandShortName ως προεπιλεγμένης εφαρμογής email
+SUMMARY_INSTALL_CLICK=Κάντε κλικ στο Εγκατάσταση για συνέχεια.
+SUMMARY_UPGRADE_CLICK=Κάντε κλικ στο Αναβάθμιση για συνέχεια.
+SURVEY_TEXT=&Πείτε μας τη γνώμη σας για το $BrandShortName
+LAUNCH_TEXT=&Εκκίνηση του $BrandFullName τώρα
+CREATE_ICONS_DESC=Δημιουργία εικονιδίων για το $BrandShortName:
+ICONS_DESKTOP=Στην &επιφάνεια εργασίας
+ICONS_STARTMENU=Στο &φάκελο προγραμμάτων του μενού έναρξης
+ICONS_QUICKLAUNCH=Στη γραμμή &γρήγορης εκκίνησης
+WARN_MANUALLY_CLOSE_APP_INSTALL=Το $BrandShortName θα πρέπει να κλείσει, ώστε να συνεχιστεί η εγκατάσταση.\n\nΠαρακαλώ κλείστε το $BrandShortName για να συνεχίσετε.
+WARN_MANUALLY_CLOSE_APP_UNINSTALL=Το $BrandShortName θα πρέπει να κλείσει, ώστε να συνεχιστεί η απεγκατάσταση.\n\nΠαρακαλώ κλείστε το $BrandShortName για να συνεχίσετε.
+WARN_MANUALLY_CLOSE_APP_LAUNCH=Το $BrandShortName εκτελείται ήδη.\n\nΠαρακαλώ κλείστε το $BrandShortName πριν την εκκίνηση της έκδοσης που μόλις εγκαταστήσατε.
+WARN_WRITE_ACCESS=Δεν έχετε δικαιώματα εγγραφής στον κατάλογο εγκατάστασης.\n\nΚάντε κλικ στο OK για να επιλέξετε ένα διαφορετικό κατάλογο.
+WARN_DISK_SPACE=Δεν έχετε επαρκή χώρο στο δίσκο για εγκατάσταση σε αυτή την τοποθεσία.\n\nΚάντε κλικ στο OK για να επιλέξετε μια διαφορετική τοποθεσία.
+WARN_MIN_SUPPORTED_OSVER_MSG=Συγγνώμη, αλλά το $BrandShortName δεν μπορεί να εγκατασταθεί. Αυτή η έκδοση του $BrandShortName απαιτεί ${MinSupportedVer} ή νεότερη. Παρακαλώ κάντε κλικ στο κουμπί ΟΚ για περισσότερες πληροφορίες.
+WARN_MIN_SUPPORTED_CPU_MSG=Συγγνώμη, αλλά το $BrandShortName δεν μπορεί να εγκατασταθεί. Αυτή η έκδοση του $BrandShortName απαιτεί επεξεργαστή με υποστήριξη ${MinSupportedCPU}. Παρακαλώ κάντε κλικ στο κουμπί ΟΚ για περισσότερες πληροφορίες.
+WARN_MIN_SUPPORTED_OSVER_CPU_MSG=Λυπούμαστε, αλλά το $BrandShortName δεν μπορεί να εγκατασταθεί. Αυτή η έκδοση του $BrandShortName απαιτεί ${MinSupportedVer} ή νεότερη και επεξεργαστή με υποστήριξη ${MinSupportedCPU}. Παρακαλούμε κάντε κλικ στο κουμπί ΟΚ για περισσότερες πληροφορίες.
+WARN_RESTART_REQUIRED_UNINSTALL=Ο υπολογιστής σας θα πρέπει να επανεκκινηθεί για την ολοκλήρωση μιας προηγούμενης απεγκατάστασης του $BrandShortName. Θέλετε να γίνει επανεκκίνηση τώρα;
+WARN_RESTART_REQUIRED_UPGRADE=Θα πρέπει να γίνει επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί μια προηγούμενη αναβάθμιση του $BrandShortName. Θέλετε να γίνει επανεκκίνηση τώρα;
+ERROR_CREATE_DIRECTORY_PREFIX=Σφάλμα δημιουργίας καταλόγου:
+ERROR_CREATE_DIRECTORY_SUFFIX=Κάντε κλικ στο Ακύρωση για να διακόψετε την εγκατάσταση ή στο \nΔοκιμή ξανά για να προσπαθήσετε πάλι.
+
+UN_CONFIRM_PAGE_TITLE=Απεγκατάσταση του $BrandFullName
+UN_CONFIRM_PAGE_SUBTITLE=Αφαίρεση του $BrandFullName από τον υπολογιστή σας.
+UN_CONFIRM_UNINSTALLED_FROM=Το $BrandShortName θα αφαιρεθεί από την ακόλουθη τοποθεσία:
+UN_CONFIRM_CLICK=Κάντε κλικ στο Απεγκατάσταση για συνέχεια.
+
+BANNER_CHECK_EXISTING=Έλεγχος υπάρχουσας εγκατάστασης…
+
+STATUS_INSTALL_APP=Εγκατάσταση του $BrandShortName…
+STATUS_INSTALL_LANG=Εγκατάσταση αρχείων γλώσσας (${AB_CD})…
+STATUS_UNINSTALL_MAIN=Απεγκατάσταση του $BrandShortName…
+STATUS_CLEANUP=Τακτοποίηση…
+
+# _DESC strings support approximately 65 characters per line.
+# One line
+OPTIONS_SUMMARY=Επιλέξτε τον τύπο εγκατάστασης που προτιμάτε και κάντε κλικ στο Επόμενο.
+# One line
+OPTION_STANDARD_DESC=Το $BrandShortName θα εγκατασταθεί με τις πιο κοινές επιλογές.
+OPTION_STANDARD_RADIO=&Τυπική
+# Two lines
+OPTION_CUSTOM_DESC=Μπορείτε να επιλέξετε μεμονωμένες επιλογές προς εγκατάσταση. Συνιστάται για έμπειρους χρήστες.
+OPTION_CUSTOM_RADIO=&Προσαρμοσμένη
+
+# LOCALIZATION NOTE:
+# The following text replaces the Install button text on the summary page.
+# Verify that the access key for InstallBtn (in override.properties) and
+# UPGRADE_BUTTON is not already used by SUMMARY_TAKE_DEFAULTS.
+UPGRADE_BUTTON=&Αναβάθμιση
diff --git a/l10n-el/mail/installer/mui.properties b/l10n-el/mail/installer/mui.properties
new file mode 100644
index 0000000000..b15429ebf8
--- /dev/null
+++ b/l10n-el/mail/installer/mui.properties
@@ -0,0 +1,60 @@
+# 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/.
+
+# To make the l10n tinderboxen see changes to this file you can change a value
+# name by adding - to the end of the name followed by chars (e.g. Branding-2).
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+MUI_TEXT_WELCOME_INFO_TITLE=Καλώς ορίσατε στο Βοηθό εγκατάστασης του $BrandFullNameDA
+MUI_TEXT_WELCOME_INFO_TEXT=Αυτός ο βοηθός θα σας καθοδηγήσει με την εγκατάσταση του $BrandFullNameDA.\n\nΠροτείνουμε να κλείσετε όλα τα άλλα προγράμματα πριν ξεκινήσετε με την εγκατάσταση. Έτσι, θα ενημερωθούν όλα τα απαραίτητα αρχεία του συστήματος, χωρίς να χρειαστεί επανεκκίνηση.\n\n$_CLICK
+MUI_TEXT_COMPONENTS_TITLE=Επιλογή στοιχείων
+MUI_TEXT_COMPONENTS_SUBTITLE=Επιλέξτε τις λειτουργίες του $BrandFullNameDA που θέλετε να εγκαταστήσετε.
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE=Περιγραφή
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO=Τοποθετήστε το ποντίκι σας πάνω από ένα στοιχείο για να δείτε την περιγραφή του.
+MUI_TEXT_DIRECTORY_TITLE=Επιλογή τοποθεσίας εγκατάστασης
+MUI_TEXT_DIRECTORY_SUBTITLE=Επιλέξτε το φάκελο όπου θα εγκατασταθεί το $BrandFullNameDA.
+MUI_TEXT_INSTALLING_TITLE=Εγκατάσταση
+MUI_TEXT_INSTALLING_SUBTITLE=Παρακαλούμε περιμένετε ενώ εγκαθίσταται το $BrandFullNameDA.
+MUI_TEXT_FINISH_TITLE=Η εγκατάσταση ολοκληρώθηκε
+MUI_TEXT_FINISH_SUBTITLE=Η εγκατάσταση ολοκληρώθηκε επιτυχώς.
+MUI_TEXT_ABORT_TITLE=Η εγκατάσταση ακυρώθηκε
+MUI_TEXT_ABORT_SUBTITLE=Η εγκατάσταση δεν ολοκληρώθηκε επιτυχώς.
+MUI_BUTTONTEXT_FINISH=&Τέλος
+MUI_TEXT_FINISH_INFO_TITLE=Ολοκλήρωση του Βοηθού εγκατάστασης του $BrandFullNameDA
+MUI_TEXT_FINISH_INFO_TEXT=Το $BrandFullNameDA έχει εγκατασταθεί στον υπολογιστή σας.\n\nΚάντε κλικ στο "Τέλος" για να κλείσετε το βοηθό.
+MUI_TEXT_FINISH_INFO_REBOOT=Θα πρέπει να γίνει επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί η εγκατάσταση του $BrandFullNameDA. Θέλετε να γίνει επανεκκίνηση τώρα;
+MUI_TEXT_FINISH_REBOOTNOW=Επανεκκίνηση τώρα
+MUI_TEXT_FINISH_REBOOTLATER=Επανεκκίνηση αργότερα
+MUI_TEXT_STARTMENU_TITLE=Επιλογή φακέλου μενού έναρξης
+MUI_TEXT_STARTMENU_SUBTITLE=Επιλέξτε το φάκελο του μενού έναρξης για τις συντομεύσεις του $BrandFullNameDA.
+MUI_INNERTEXT_STARTMENU_TOP=Επιλέξτε το φάκελο του μενού έναρξης στον οποίο θα δημιουργηθούν οι συντομεύσεις του προγράμματος. Μπορείτε επίσης να εισάγετε ένα όνομα για δημιουργία νέου φακέλου.
+MUI_TEXT_ABORTWARNING=Θέλετε σίγουρα να εγκαταλείψετε την εγκατάσταση του $BrandFullName;
+MUI_UNTEXT_WELCOME_INFO_TITLE=Καλώς ορίσατε στο Βοηθό κατάργησης εγκατάστασης του $BrandFullNameDA
+MUI_UNTEXT_WELCOME_INFO_TEXT=Αυτός ο βοηθός θα σας καθοδηγήσει με την κατάργηση της εγκατάστασης του $BrandFullNameDA.\n\nΠριν ξεκινήσετε, βεβαιωθείτε ότι δεν εκτελείται το $BrandFullNameDA.\n\n$_CLICK
+MUI_UNTEXT_CONFIRM_TITLE=Απεγκατάσταση $BrandFullNameDA
+MUI_UNTEXT_CONFIRM_SUBTITLE=Αφαίρεση του $BrandFullNameDA από τον υπολογιστή σας.
+MUI_UNTEXT_UNINSTALLING_TITLE=Γίνεται απεγκατάσταση
+MUI_UNTEXT_UNINSTALLING_SUBTITLE=Παρακαλούμε περιμένετε να ολοκληρωθεί η κατάργηση εγκατάστασης του $BrandFullNameDA.
+MUI_UNTEXT_FINISH_TITLE=Η απεγκατάσταση ολοκληρώθηκε
+MUI_UNTEXT_FINISH_SUBTITLE=Η απεγκατάσταση ολοκληρώθηκε επιτυχώς.
+MUI_UNTEXT_ABORT_TITLE=Η απεγκατάσταση διακόπηκε.
+MUI_UNTEXT_ABORT_SUBTITLE=Η απεγκατάσταση δεν ολοκληρώθηκε επιτυχώς.
+MUI_UNTEXT_FINISH_INFO_TITLE=Ολοκλήρωση του βοηθού κατάργησης εγκατάστασης του $BrandFullNameDA
+MUI_UNTEXT_FINISH_INFO_TEXT=Το $BrandFullNameDA αφαιρέθηκε από τον υπολογιστή σας.\n\nΚάντε κλικ στο "Τέλος" για να κλείσετε το βοηθό.
+MUI_UNTEXT_FINISH_INFO_REBOOT=Θα πρέπει να γίνει επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί η απεγκατάσταση του $BrandFullNameDA. Θέλετε να γίνει επανεκκίνηση τώρα;
+MUI_UNTEXT_ABORTWARNING=Θέλετε σίγουρα να εγκαταλείψετε την Απεγκατάσταση του $BrandFullName;
diff --git a/l10n-el/mail/installer/override.properties b/l10n-el/mail/installer/override.properties
new file mode 100644
index 0000000000..397d0e2594
--- /dev/null
+++ b/l10n-el/mail/installer/override.properties
@@ -0,0 +1,86 @@
+# 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:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+# Strings that require a space at the end should be enclosed with double
+# quotes and the double quotes will be removed. To add quotes to the beginning
+# and end of a string enclose the strin with an additional double quote
+# (e.g. ""This will include quotes"").
+
+SetupCaption=Εγκατάσταση $BrandFullName
+UninstallCaption=Απεγκατάσταση $BrandFullName
+BackBtn=< &Πίσω
+NextBtn=&Επόμενο >
+AcceptBtn=&Αποδέχομαι τους όρους της άδειας χρήσης
+DontAcceptBtn=Δεν &αποδέχομαι τους όρους της άδειας χρήσης
+InstallBtn=&Εγκατάσταση
+UninstallBtn=&Απεγκατάσταση
+CancelBtn=Ακύρωση
+CloseBtn=&Κλείσιμο
+BrowseBtn=Π&εριήγηση…
+ShowDetailsBtn=Προβολή &λεπτομερειών
+ClickNext=Πατήστε Επόμενο για να συνεχίσετε.
+ClickInstall=Πατήστε Εγκατάσταση για να ξεκινήσει η εγκατάσταση.
+ClickUninstall=Πατήστε Απεγκατάσταση για να ξεκινήσει η απεγκατάσταση.
+Completed=Ολοκληρώθηκε
+LicenseTextRB=Παρακαλούμε διαβάστε την άδεια χρήσης πριν την εγκατάσταση του $BrandFullNameDA. Αν αποδέχεστε όλους τους όρους της συμφωνίας, επιλέξτε την πρώτη επιλογή. $_CLICK
+ComponentsText=Επιλέξτε τα στοιχεία που θέλετε να εγκατασταθούν και αποεπιλέξτε αυτά που δεν θέλετε να εγκατασταθούν. $_CLICK
+ComponentsSubText2_NoInstTypes=Επιλογή στοιχείων για εγκατάσταση:
+DirText=Το $BrandFullNameDA θα εγκατασταθεί στον ακόλουθο φάκελο. Για εγκατάσταση σε διαφορετικό φάκελο, κάντε κλικ στο "Περιήγηση" και επιλέξτε έναν άλλο φάκελο. $_CLICK
+DirSubText=Φάκελος προορισμού
+DirBrowseText=Επιλέξτε το φάκελο για την εγκατάσταση του $BrandFullNameDA:
+SpaceAvailable="Διαθέσιμος χώρος: "
+SpaceRequired="Απαιτούμενος χώρος: "
+UninstallingText=Ο $BrandFullNameDA θα απεγκατασταθεί από τον ακόλουθο φάκελο. $_CLICK
+UninstallingSubText=Γίνεται απεγκατάσταση από:
+FileError=Σφάλμα ανοίγματος αρχείου για εγγραφή: \r\n\r\n$0\r\n\r\nΠατήστε Διακοπή για να σταματήσει η εγκατάσταση,\r\nΠροσπάθεια ξανά για να ξαναπροσπαθήσετε, ή\r\nΑγνόηση για α παρακάμψετε αυτό το αρχείο.
+FileError_NoIgnore=Σφάλμα ανοίγματος αρχείου για εγγραφή: \r\n\r\n$0\r\n\r\nΠατήστε Προσπάθεια ξανά για να ξαναπροσπαθήσετε, ή\r\nΑκύρωση για να διακοπεί η εγκατάσταση.
+CantWrite="Αδυναμία εγγραφής: "
+CopyFailed=Αποτυχία αντιγραφής
+CopyTo="Αντιγραφή σε "
+Registering="Εγγραφή: "
+Unregistering="Κατάργηση εγγραφής: "
+SymbolNotFound="Αδυναμία εύρεσης συμβόλου: "
+CouldNotLoad="Αδυναμία φόρτωσης: "
+CreateFolder="Δημιουργία φακέλου: "
+CreateShortcut="Δημιουργία συντόμευσης: "
+CreatedUninstaller="Δημιουργηθέν πρόγραμμα απεγκατάστασης: "
+Delete="Διαγραφή αρχείου: "
+DeleteOnReboot="Διαγραφή κατά την επανεκκίνηση: "
+ErrorCreatingShortcut="Σφάλμα δημιουργίας συντόμευσης: "
+ErrorCreating="Σφάλμα δημιουργίας: "
+ErrorDecompressing=Σφάλμα αποσυμπίεσης δεδομένων! Πιθανόν να είναι κατεστραμμένο το πρόγραμμα εγκατάστασης.
+ErrorRegistering=Σφάλμα εγγραφής DLL
+ExecShell="ExecShell: "
+Exec="Εκτέλεση: "
+Extract="Εξαγωγή: "
+ErrorWriting="Εξαγωγή: σφάλμα εγγραφής σε αρχείο "
+InvalidOpcode=Κατεστραμμένο το πρόγραμμα εγκατάστασης: invalid opcode
+NoOLE="Δεν υπάρχει OLE για: "
+OutputFolder="Φάκελος εξόδου: "
+RemoveFolder="Αφαίρεση φακέλου: "
+RenameOnReboot="Μετονομασία κατά την επανεκκίνηση: "
+Rename="Μετονομασία: "
+Skipped="Παρακάμφθηκαν: "
+CopyDetails=Αντιγραφή λεπτομερειών στο πρόχειρο
+LogInstall=Καταγραφή διαδικασίας εγκατάστασης
+Byte=B
+Kilo=K
+Mega=M
+Giga=G
diff --git a/l10n-el/mail/messenger/aboutProfilesExtra.ftl b/l10n-el/mail/messenger/aboutProfilesExtra.ftl
new file mode 100644
index 0000000000..e61128f816
--- /dev/null
+++ b/l10n-el/mail/messenger/aboutProfilesExtra.ftl
@@ -0,0 +1,5 @@
+# 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/.
+
+profiles-launch-profile-plain = Εκκίνηση του προφίλ
diff --git a/l10n-el/mail/messenger/aboutRights.ftl b/l10n-el/mail/messenger/aboutRights.ftl
new file mode 100644
index 0000000000..8cf28df459
--- /dev/null
+++ b/l10n-el/mail/messenger/aboutRights.ftl
@@ -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/.
+
+rights-title = Σχετικά με τα δικαιώματά σας
+rights-intro = Το { -brand-full-name } είναι ελεύθερο λογισμικό ανοικτού κώδικα που δημιουργείται από μια κοινότητα χιλιάδων ατόμων από όλο τον κόσμο. Υπάρχουν μερικά πράγματα που πρέπει να γνωρίζετε:
+rights-intro-point-1 = Το { -brand-short-name } είναι διαθέσιμο σε εσάς υπό τους όρους της <a data-l10n-name="mozilla-public-license-link">Δημόσιας Άδειας της Mozilla</a>. Αυτό σημαίνει ότι μπορείτε να κάνετε χρήση, αντιγραφή και διανομή του { -brand-short-name } σε τρίτους. Είστε ακόμα ελεύθεροι να τροποποιήσετε τον πηγαίο κώδικα του { -brand-short-name } όπως επιθυμείτε, ώστε να καλύπτει τις ανάγκες σας. Η Δημόσια Άδεια της Mozilla σάς δίνει το δικαίωμα να διανέμετε τις τροποποιημένες εκδόσεις σας.
+rights-intro-point-2 =
+ Δεν σας παραχωρούνται δικαιώματα ή άδειες για τα εμπορικά σήματα του
+ Ιδρύματος Mozilla ή άλλων τρίτων, καθώς και, χωρίς περιορισμούς, του
+ ονόματος ή του λογότυπου του Thunderbird. Περισσότερες πληροφορίες για τα εμπορικά σήματα θα βρείτε
+ <a data-l10n-name="mozilla-trademarks-link">εδώ</a>.
+rights-intro-point-3 =
+ Μερικές λειτουργίες του { -brand-short-name }, όπως η Αναφορά καταρρεύσεων, προσφέρουν
+ την επιλογή υποβολής σχολίων στη { -vendor-short-name }. Αν επιλέξετε να κάνετε υποβολή
+ σχολίων, παραχωρείτε στη { -vendor-short-name } το δικαίωμα χρησιμοποίησης των σχολίων
+ για τη βελτίωση των προϊόντων της, τη δημοσίευσή τους στις ιστοσελίδες της
+ και τη διανομή τους.
+rights-intro-point-4 = Ο τρόπος χρήσης των προσωπικών σας πληροφοριών και των σχολίων που υποβάλλονται στη { -vendor-short-name } μέσω του { -brand-short-name } περιγράφεται στην <a data-l10n-name="mozilla-privacy-policy-link">Πολιτική απορρήτου του { -brand-short-name }</a>.
+rights-intro-point-4-unbranded = Τυχόν σχετικές πολιτικές προστασίας απορρήτου πρέπει να αναφέρονται εδώ.
+rights-intro-point-5 = Μερικές από τις λειτουργίες του { -brand-short-name } χρησιμοποιούν διαδικτυακές πληροφοριακές υπηρεσίες, για τις οποίες όμως δεν μπορούμε να εγγυηθούμε ότι είναι 100% χωρίς σφάλματα. Περισσότερες πληροφορίες, μαζί με πληροφορίες για την απενεργοποίηση αυτών των υπηρεσιών μπορείτε να βρείτε στους <a data-l10n-name="mozilla-service-terms-link">όρους υπηρεσίας</a>.
+rights-intro-point-5-unbranded = Αν αυτό το προϊόν περιέχει ενσωματωμένες υπηρεσίες, όλοι οι όροι αυτών των υπηρεσιών θα πρέπει να οδηγούν στην ενότητα<a data-l10n-name="mozilla-website-services-link">Υπηρεσίες ιστοσελίδων</a> .
+rights-intro-point-6 = Για την αναπαραγωγή ορισμένων τύπων περιεχομένου βίντεο, το { -brand-short-name } κάνει λήψη ορισμένων αρθρωμάτων αποκρυπτογράφησης περιεχομένου από τρίτους.
+rights-webservices-header = Διαδικτυακές υπηρεσίες πληροφοριών του { -brand-full-name }
+rights-webservices = Το { -brand-full-name } χρησιμοποιεί διαδικτυακές υπηρεσίες πληροφοριών ("Υπηρεσίες") για την παροχή μερικών λειτουργιών, που έρχονται με αυτή την έκδοση του { -brand-short-name } υπό τους παρακάτω όρους. Αν δεν θέλετε να χρησιμοποιήσετε μία ή περισσότερες υπηρεσίες, ή δεν συμφωνείτε με τους παρακάτω όρους, μπορείτε να απενεργοποιήσετε τη λειτουργία ή την υπηρεσία(ες). Οδηγίες σχετικά με τον τρόπο απενεργοποίησης μιας συγκεκριμένης λειτουργίας ή υπηρεσίας, μπορείτε να βρείτε <a data-l10n-name="mozilla-disable-service-link">εδώ</a>. Άλλες λειτουργίες και υπηρεσίες μπορούν να απενεργοποιηθούν μέσω των προτιμήσεων της εφαρμογής.
+rights-locationawarebrowsing = <strong>Η Περιήγηση με δήλωση τοποθεσίας: </strong>γίνεται πάντα με ερώτηση για τη σύμφωνη γνώμη σας. Δεν παρέχονται πληροφορίες τοποθεσίας χωρίς την άδεια σας. Αν επιθυμείτε να απενεργοποιήσετε πλήρως αυτή τη λειτουργία, ακολουθήστε τα παρακάτω βήματα:
+rights-locationawarebrowsing-term-1 = Στη γραμμή διευθύνσεων, πληκτρολογήστε <code>about:config</code>
+rights-locationawarebrowsing-term-2 = Πληκτρολογήστε geo.enabled
+rights-locationawarebrowsing-term-3 = Κάντε διπλό κλικ στην προτίμηση geo.enabled
+rights-locationawarebrowsing-term-4 = Η Περιήγηση με δήλωση τοποθεσίας θα απενεργοποιηθεί
+rights-webservices-unbranded = Εδώ, θα πρέπει να συμπεριληφθεί μια επισκόπηση των υπηρεσιών ιστοσελίδας που ενσωματώνει το προϊόν, μαζί με οδηγίες σχετικά με την απενεργοποίηση, αν υπάρχει.
+rights-webservices-term-unbranded = Οποιοιδήποτε όροι υπηρεσίας έχουν ισχύ για αυτό το προϊόν θα πρέπει να αναγραφούν εδώ.
+rights-webservices-term-1 = Ο { -vendor-short-name } οι συντελεστές και οι συνεργάτες του εργάζονται για να παρέχουν τις πιο ακριβείς και ενημερωμένες υπηρεσίες. Παρ'όλα αυτά δεν είναι δυνατό να σας εγγυηθούμε ότι αυτές οι πληροφορίες είναι κατανοητές και χωρίς σφάλματα. Για παράδειγμα μπορεί να μην εντοπισθούν κάποιες από τις ύποπτες σελίδες και μπορεί μερικές από τις ασφαλείς σελίδες να αναγνωρισθούν ως ύποπτες, ενώ η υπηρεσία περιήγησης με δήλωση τοποθεσίας μπορεί να μην είναι ακριβής.
+rights-webservices-term-2 = Ο { -vendor-short-name } διατηρεί το δικαίωμα να διακόψει ή να αλλάξει τις Υπηρεσίες κατά βούληση.
+rights-webservices-term-3 = Είστε ευπρόσδεκτοι να χρησιμοποιείτε αυτές τις Υπηρεσίες μαζί με την συνοδευόμενη έκδοση του { -brand-short-name } και του { -vendor-short-name } , και έχετε όλα τα απαραίτητα δικαιώματα να το κάνετε. Ο { -vendor-short-name } και οι συνεργάτες του διατηρούν όλα τα άλλα δικαιώματα στις Υπηρεσίες. Αυτοί οι όροι δεν σκοπεύουν να περιορίσουν οποιαδήποτε δικαιώματα που προέρχονται από τις άδειες ανοικτού λογισμικού που συνοδεύουν τον { -brand-short-name } και τις αντίστοιχες εκδόσεις πηγαίου κώδικα του { -brand-short-name }.
+rights-webservices-term-4 = <strong>Οι Υπηρεσίες παρέχονται "ως έχει." Ο { -vendor-short-name }, οι συντελεστές, οι συνεργάτες και οι διανομείς του, παρέχουν τις υπηρεσίες χωρίς οποιουδήποτε είδους εγγύηση, είτε ρητή είτε σιωπηρή, συμπεριλαμβανομένης ενδεικτικά και όχι περιοριστικά της σιωπηρής εγγύησης εμπορευσιμότητας και καταλληλότητας των Υπηρεσιών για συγκεκριμένη χρήση. Ο κίνδυνος ως προς την ποιότητα και επίδοση των Υπηρεσιών βαρύνει εξ ολοκλήρου εσάς. Μερικές νομοθεσίες δεν επιτρέπουν την εξαίρεση ή τον περιορισμό των σιωπηλών εγγυήσεων και έτσι αυτή η παράγραφος αποποίησης μπορεί να μην ισχύει για εσάς.</strong>
+rights-webservices-term-5 = <strong>Σε καμία περίπτωση, εκτός εάν απαιτείται από την κείμενη νομοθεσία, Ο { -vendor-short-name }, οι συντελεστές, οι συνεργάτες του και οι διανομείς του δεν είναι υπεύθυνοι απέναντί σας για ζημίες, συμπεριλαμβανομένων όλων των γενικών, ειδικών, τυχαίων ή συνεπακόλουθων ζημιών που μπορεί να προκύψουν από τη χρήση ή την αδυναμία χρήσης του { -brand-short-name } και των Υπηρεσιών. Η συλλογική υπαιτιότητα κάτω από αυτούς τους όρους δεν μπορεί να υπερβαίνει τα $500 (πεντακόσια δολάρια). Μερικές νομοθεσίες δεν επιτρέπουν την εξαίρεση ή τον περιορισμό κάποιων ζημιών και έτσι αυτή η εξαίρεση η ο περιορισμός μπορεί να μην ισχύει για εσάς.</strong>
+rights-webservices-term-6 = Ο { -vendor-short-name } μπορεί να ενημερώνει περιοδικά αυτούς τους όρους αν κριθεί απαραίτητο. Δεν είναι δυνατή η τροποποίηση ή η ακύρωση αυτών των όρων χωρίς την έγγραφη συναίνεση του { -vendor-short-name }.
+rights-webservices-term-7 = Αυτοί οι όροι υπόκεινται στους νομους της πολιτείας της California, U.S.A., εξαιρουμένων των συγκρούσεων στους παρεχόμενους νόμους. Αν οπoιοδήποτε μέρος αυτών των όρων αποδειχθεί μη έγκυρο ή μη εφαρμόσιμο, τα υπόλοιπα μέρη εξακολουθούν να είναι σε πλήρη ισχύ και χρήση. Σε περίπτωση σύγκρουσης μεταξύ μιας μεταφρασμένης έκδοσης αυτών των όρων με την Αγγλική έκδοση των όρων, ισχύει η Αγγλική έκδοση.
diff --git a/l10n-el/mail/messenger/aboutSupportMail.ftl b/l10n-el/mail/messenger/aboutSupportMail.ftl
new file mode 100644
index 0000000000..ff75e11c88
--- /dev/null
+++ b/l10n-el/mail/messenger/aboutSupportMail.ftl
@@ -0,0 +1,20 @@
+# 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/.
+
+accounts-title = Λογαριασμοί ταχυδρομείου και ειδήσεων
+show-private-data-main-text = Συμπερίληψη ονομάτων λογαριασμών
+show-private-data-explanation-text = (πιθανή αναγνώριση πληροφοριών)
+accounts-ID = ID
+accounts-name = Όνομα
+accounts-incoming-server = Διακομιστής εισερχομένων
+accounts-outgoing-servers = Διακομιστές εξερχομένων
+accounts-server-name = Όνομα
+accounts-conn-security = Ασφάλεια σύνδεσης
+accounts-auth-method = Μέθοδος ταυτοποίησης
+accounts-default = Προεπιλογή;
+identity-name = Ταυτότητα
+
+send-via-email = Αποστολή μέσω email
+
+app-basics-telemetry = Δεδομένα τηλεμετρίας
diff --git a/l10n-el/mail/messenger/accountCentral.ftl b/l10n-el/mail/messenger/accountCentral.ftl
new file mode 100644
index 0000000000..d49ed988ce
--- /dev/null
+++ b/l10n-el/mail/messenger/accountCentral.ftl
@@ -0,0 +1,56 @@
+# 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/.
+
+account-central-title = Καλώς ορίσατε στο { -brand-full-name }
+account-settings = Ρυθμίσεις λογαριασμού
+# $accounts (Number) - the number of configured accounts
+setup-title =
+ { $accounts ->
+ [0] Επιλέξτε τι θέλετε να ρυθμίσετε
+ *[other] Ρύθμιση νέου λογαριασμού
+ }
+about-title = Σχετικά με το { -brand-full-name }
+resources-title = Πόροι
+release-notes =
+ .title = Σχετικά με το { -brand-full-name }
+email-label = Email
+ .aria-label = Συνδεθείτε στον υπάρχοντα λογαριασμό email σας
+email-description = Το { -brand-short-name } σάς επιτρέπει να συνδεθείτε με τον υπάρχοντα λογαριασμό email σας για να διαβάζετε τα email σας εύκολα και αποδοτικά μέσα από την εφαρμογή.
+calendar-label = Ημερολόγιο
+ .aria-label = Δημιουργία νέου ημερολογίου
+calendar-description = Το { -brand-short-name } σάς επιτρέπει να διαχειρίζεστε γεγονότα και να παραμένετε οργανωμένοι. Η σύνδεση σε ένα απομακρυσμένο ημερολόγιο θα διατηρήσει συγχρονισμένα τα συμβάντα σας σε όλες τις συσκευές σας.
+chat-label = Συνομιλία
+ .aria-label = Σύνδεση στο λογαριασμό συνομιλιών σας
+chat-description = Το { -brand-short-name } σάς επιτρέπει να συνδεθείτε σε πολλαπλούς λογαριασμούς ανταλλαγής άμεσων μηνυμάτων, προσφέροντας υποστήριξη για διάφορες πλατφόρμες.
+filelink-label = Filelink
+ .aria-label = Ρύθμιση Filelink
+filelink-description = Το { -brand-short-name } σάς επιτρέπει να ρυθμίσετε ένα βολικό λογαριασμό cloud για συνδέσμους αρχείων, ώστε να αποστέλλετε εύκολα μεγάλα συνημμένα αρχεία.
+addressbook-label = Ευρετήριο
+ .aria-label = Δημιουργία νέου ευρετηρίου
+addressbook-description = Το { -brand-short-name } σάς επιτρέπει να οργανώσετε όλες τις επαφές σας σε ένα ευρετήριο. Μπορείτε επίσης να συνδεθείτε σε ένα απομακρυσμένο ευρετήριο για να διατηρήσετε σε συγχρονισμό όλες τις επαφές σας.
+feeds-label = Ροές
+ .aria-label = Σύνδεση στις ροές
+feeds-description = Το { -brand-short-name } σάς επιτρέπει να συνδεθείτε σε ροές RSS/Atom για να λαμβάνετε ειδήσεις και ενημερώσεις από παντού.
+newsgroups-label = Ομάδες συζήτησης
+ .aria-label = Σύνδεση σε ομάδα συζήτησης
+newsgroups-description = Το { -brand-short-name } σάς επιτρέπει να συνδεθείτε στις αγαπημένες ομάδες συζήτησής σας.
+import-title = Εισαγωγή από άλλο πρόγραμμα
+import-paragraph = Το { -brand-short-name } σάς επιτρέπει να εισάγετε μηνύματα email, καταχωρήσεις ευρετηρίων, συνδρομές ροών, προτιμήσεις ή/και φίλτρα από άλλα προγράμματα email και συνηθισμένες μορφές ευρετηρίων.
+import-label = Εισαγωγή
+ .aria-label = Εισαγωγή δεδομένων από άλλα προγράμματα
+about-paragraph = Το Thunderbird είναι το κορυφαίο, ανοιχτού κώδικα, πρόγραμμα email και ημερολογίων, που διατίθεται δωρεάν για προσωπική και επαγγελματική χρήση σε πολλαπλές πλατφόρμες. Θέλουμε να παραμείνει ασφαλές και να γίνει ακόμη καλύτερο. Μια δωρεά θα μας επιτρέψει να προσλάβουμε προγραμματιστές, να πληρώσουμε για τις υποδομές και να συνεχίσουμε να βελτιωνόμαστε.
+about-paragraph-2 = <b>Το Thunderbird χρηματοδοτείται από χρήστες σας εσάς! Αν σας αρέσει το Thunderbird, παρακαλούμε σκεφτείτε το ενδεχόμενο να κάνετε μια δωρεά.</b> Ο καλύτερος τρόπος για να διασφαλίσετε ότι το Thunderbird θα παραμείνει διαθέσιμο, είναι να
+about-donation = κάνετε μια δωρεά
+about-paragraph-consider-donation = <b>Το Thunderbird χρηματοδοτείται από χρήστες σαν εσάς! Αν σάς αρέσει το Thunderbird, παρακαλούμε σκεφτείτε να κάνετε μια δωρεά.</b> Ο καλύτερος τρόπος για να εξασφαλίσετε ότι το Thunderbird θα παραμείνει διαθέσιμο, είναι να <a data-l10n-name="donation-link">κάνετε μια δωρεά</a>.
+explore-link = Εξερεύνηση λειτουργιών
+support-link = Υποστήριξη
+involved-link = Συμμετοχή
+developer-link = Τεκμηρίωση για προγραμματιστές
+read = Ανάγνωση μηνυμάτων
+compose = Σύνταξη νέου μηνύματος
+search = Αναζήτηση μηνυμάτων
+filter = Διαχείριση φίλτρων μηνυμάτων
+nntp-subscription = Διαχείριση συνδρομών ομάδων συζήτησης
+rss-subscription = Διαχείριση συνδρομών ροών
+e2e = Κρυπτογράφηση από άκρο σε άκρο
diff --git a/l10n-el/mail/messenger/addressbook/abCardDAVDialog.ftl b/l10n-el/mail/messenger/addressbook/abCardDAVDialog.ftl
new file mode 100644
index 0000000000..9e171adc4f
--- /dev/null
+++ b/l10n-el/mail/messenger/addressbook/abCardDAVDialog.ftl
@@ -0,0 +1,35 @@
+# 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/.
+
+carddav-window =
+ .title = Νέο ευρετήριο διευθύνσεων CardDAV
+carddav-dialog =
+ .buttonlabelaccept = Συνέχεια
+ .buttonaccesskeyaccept = Σ
+carddav-experimental-warning = Η υποστήριξη για ευρετήρια διευθύνσεων CardDAV είναι πειραματική και μπορεί να καταστρέψει μόνιμα τα δεδομένα σας. Κάντε χρήση με δική σας ευθύνη.
+carddav-provider-label =
+ .value = Πάροχος CardDAV:
+ .accesskey = Π
+carddav-provider-option-other = Άλλος πάροχος…
+carddav-url-label =
+ .value = CardDAV URL:
+ .accesskey = V
+carddav-username-label =
+ .value = Όνομα χρήστη:
+ .accesskey = Ό
+carddav-username-input =
+ .placeholder = you@example.com
+carddav-password-label =
+ .value = Κωδικός πρόσβασης:
+ .accesskey = β
+carddav-password-input =
+ .placeholder = Κωδικός πρόσβασης
+carddav-remember-password =
+ .label = Απομνημόνευση κωδικού πρόσβασης
+ .accesskey = μ
+carddav-loading = Αναζήτηση ρυθμίσεων…
+carddav-connection-error = Αποτυχία σύνδεσης.
+carddav-none-found = Δεν βρέθηκαν ευρετήρια διευθύνσεων για προσθήκη για το συγκεκριμένο λογαριασμό.
+carddav-already-added = Όλα τα ευρετήρια διευθύνσεων για το συγκεκριμένο λογαριασμό έχουν ήδη προστεθεί.
+carddav-available-books = Διαθέσιμα ευρετήρια:
diff --git a/l10n-el/mail/messenger/addressbook/abCardDAVProperties.ftl b/l10n-el/mail/messenger/addressbook/abCardDAVProperties.ftl
new file mode 100644
index 0000000000..fdb3f25f03
--- /dev/null
+++ b/l10n-el/mail/messenger/addressbook/abCardDAVProperties.ftl
@@ -0,0 +1,29 @@
+# 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/.
+
+carddav-url-label =
+ .value = CardDAV URL:
+ .accesskey = V
+carddav-refreshinterval-label =
+ .label = Συγχρονισμός:
+ .accesskey = Σ
+# Variables:
+# $minutes (integer) - Number of minutes between address book synchronizations
+carddav-refreshinterval-minutes-value =
+ .label =
+ { $minutes ->
+ [one] κάθε λεπτό
+ *[other] κάθε { $minutes } λεπτά
+ }
+# Variables:
+# $hours (integer) - Number of hours between address book synchronizations
+carddav-refreshinterval-hours-value =
+ .label =
+ { $hours ->
+ [one] κάθε ώρα
+ *[other] κάθε { $hours } ώρες
+ }
+carddav-readonly-label =
+ .label = Μόνο για ανάγνωση
+ .accesskey = Μ
diff --git a/l10n-el/mail/messenger/menubar.ftl b/l10n-el/mail/messenger/menubar.ftl
new file mode 100644
index 0000000000..5e51f12146
--- /dev/null
+++ b/l10n-el/mail/messenger/menubar.ftl
@@ -0,0 +1,25 @@
+# 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/.
+
+
+## View Menu
+
+menu-view-charset =
+ .label = Κωδικοποίηση κειμένου
+ .accesskey = κ
+
+## Mail Toolbar
+
+toolbar-junk-button =
+ .label = Ανεπιθύμητα
+ .tooltiptext = Επισήμανση επιλεγμένων μηνυμάτων ως ανεπιθύμητων
+toolbar-not-junk-button =
+ .label = Επιθυμητά
+ .tooltiptext = Επισήμανση επιλεγμένων μηνυμάτων ως επιθυμητών
+toolbar-delete-button =
+ .label = Διαγραφή
+ .tooltiptext = Διαγραφή επιλεγμένων μηνυμάτων ή φακέλου
+toolbar-undelete-button =
+ .label = Επαναφορά
+ .tooltiptext = Επαναφορά επιλεγμένων μηνυμάτων
diff --git a/l10n-el/mail/messenger/messenger.ftl b/l10n-el/mail/messenger/messenger.ftl
new file mode 100644
index 0000000000..42155de7f1
--- /dev/null
+++ b/l10n-el/mail/messenger/messenger.ftl
@@ -0,0 +1,36 @@
+# 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/.
+
+about-rights-notification-text = Το { -brand-short-name } είναι δωρεάν λογισμικό ανοικτού κώδικα, που δημιουργήθηκε από μια κοινότητα χιλιάδων ατόμων από όλο τον κόσμο.
+
+## Folder Pane
+
+folder-pane-toolbar =
+ .toolbarname = Γραμμή περιοχής φακέλων
+ .accesskey = Γ
+folder-pane-header-label = Φάκελοι
+
+## Folder Toolbar Header Popup
+
+folder-toolbar-hide-toolbar-toolbarbutton =
+ .label = Απόκρυψη γραμμής εργαλείων
+ .accesskey = Α
+show-all-folders-label =
+ .label = Όλοι οι φάκελοι
+ .accesskey = Ό
+show-unread-folders-label =
+ .label = Μη αναγνωσμένοι φάκελοι
+ .accesskey = Μ
+show-favorite-folders-label =
+ .label = Αγαπημένοι φάκελοι
+ .accesskey = π
+show-smart-folders-label =
+ .label = Ενοποιημένοι φάκελοι
+ .accesskey = Ε
+show-recent-folders-label =
+ .label = Πρόσφατοι φάκελοι
+ .accesskey = Π
+folder-toolbar-toggle-folder-compact-view =
+ .label = Συμπτυγμένη προβολή
+ .accesskey = Σ
diff --git a/l10n-el/mail/messenger/messengercompose/messengercompose.ftl b/l10n-el/mail/messenger/messengercompose/messengercompose.ftl
new file mode 100644
index 0000000000..31154168bc
--- /dev/null
+++ b/l10n-el/mail/messenger/messengercompose/messengercompose.ftl
@@ -0,0 +1,64 @@
+# 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/.
+
+
+# Addressing widget
+
+# $type (String) - the type of the addressing row
+remove-address-row-type = Αφαίρεση πεδίου { $type }
+# $type (String) - the type of the addressing row
+remove-address-row-type-label =
+ .tooltiptext = Αφαίρεση πεδίου { $type }
+# $type (String) - the type of the addressing row
+# $count (Number) - the number of address pills currently present in the addressing row
+address-input-type-aria-label =
+ { $count ->
+ [0] { $type }
+ [one] { $type } με μια διεύθυνση, κάντε εστίαση με το πλήκτρο αριστερού βέλους.
+ *[other] { $type } με { $count } διευθύνσεις, κάντε εστίαση με το πλήκτρο αριστερού βέλους.
+ }
+# $email (String) - the email address
+# $count (Number) - the number of address pills currently present in the addressing row
+pill-aria-label =
+ { $count ->
+ [one] { $email }: πατήστε Enter για επεξεργασία, Delete για αφαίρεση.
+ *[other] { $email }, 1 από { $count }: πατήστε Enter για επεξεργασία, Delete για αφαίρεση.
+ }
+# $email (String) - the email address
+pill-tooltip-invalid-address = Το { $email } δεν είναι έγκυρη διεύθυνση email
+# $email (String) - the email address
+pill-tooltip-not-in-address-book = Το { $email } δεν βρίσκεται στο ευρετήριό σας
+pill-action-edit =
+ .label = Επεξεργασία διεύθυνσης
+ .accesskey = ε
+pill-action-move-to =
+ .label = Μετακίνηση στο Προς
+ .accesskey = τ
+pill-action-move-cc =
+ .label = Μετακίνηση στην Κοινοποίηση
+ .accesskey = κ
+pill-action-move-bcc =
+ .label = Μετακίνηση στην Κρυφή Κοινοποίηση
+ .accesskey = φ
+# $count (Number) - the number of attachments in the attachment bucket
+attachment-bucket-count =
+ .value =
+ { $count ->
+ [1] { $count } συνημμένο
+ *[other] { $count } συνημμένα
+ }
+ .accesskey = μ
+# $count (Number) - the number of attachments in the attachment bucket
+attachments-placeholder-tooltip =
+ .tooltiptext =
+ { $count ->
+ [1] { $count } συνημμένο
+ *[other] { $count } συνημμένα
+ }
+# { attachment-bucket-count.accesskey } - Do not localize this message.
+key-toggle-attachment-pane =
+ .key = { attachment-bucket-count.accesskey }
+button-return-receipt =
+ .label = Αποδεικτικό
+ .tooltiptext = Απαίτηση ενός αποδεικτικού επιστροφής για αυτό το μήνυμα
diff --git a/l10n-el/mail/messenger/newInstall.ftl b/l10n-el/mail/messenger/newInstall.ftl
new file mode 100644
index 0000000000..0cb2d7995d
--- /dev/null
+++ b/l10n-el/mail/messenger/newInstall.ftl
@@ -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/.
+
+connection-window =
+ .title = Σημαντικές ειδήσεις
+continue-button =
+ .label = Συνέχεια
+main-text = Αυτή η εγκατάσταση του { -brand-short-name } έχει ένα νέο προφίλ. Δεν μοιράζεται δεδομένα ηλεκτρονικού ταχυδρομείου, κωδικούς πρόσβασης, προτιμήσεις χρήστη και βιβλία διευθύνσεων με άλλες εγκαταστάσεις του { -brand-product-name } (συμπεριλαμβανομένων των { -brand-product-name }, { -brand-product-name } Beta και { -brand-product-name } Καθημερινό) σε αυτόν τον υπολογιστή.
diff --git a/l10n-el/mail/messenger/newInstallPage.ftl b/l10n-el/mail/messenger/newInstallPage.ftl
new file mode 100644
index 0000000000..e0372548ac
--- /dev/null
+++ b/l10n-el/mail/messenger/newInstallPage.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/.
+
+title = Σημαντικές ειδήσεις
+heading = Αλλαγές στο προφίλ του { -brand-short-name } σας
+changed-title = Τι άλλαξε;
+changed-desc-profiles = Αυτή η εγκατάσταση του { -brand-short-name } έχει ένα νέο προφίλ. Το προφίλ είναι ένα σύνολο από αρχεία όπου το { -brand-product-name } αποθηκεύει πληροφορίες όπως δεδομένα ηλεκτρονικού ταχυδρομείου, κωδικούς πρόσβασης, προτιμήσεις χρήστη και βιβλία διευθύνσεων.
+changed-desc-dedicated = Προκειμένου να είναι ευκολότερη και ασφαλέστερη η εναλλαγή μεταξύ των εγκαταστάσεων του { -brand-product-name } (συμπεριλαμβανομένου του { -brand-product-name }, { -brand-product-name } Beta και { -brand-product-name } Καθημερινό), η εγκατάσταση αυτή αποτελεί πλέον ένα ξεχωριστό προφίλ. Δεν μοιράζεται αυτόματα τις αποθηκευμένες πληροφορίες σας με άλλες εγκαταστάσεις του { -brand-product-name }.
+lost = <b>Δεν έχετε χάσει προσωπικά δεδομένα ή προσαρμογές.</b> Αν έχετε ήδη αποθηκεύσει πληροφορίες στο { -brand-product-name } σε αυτόν τον υπολογιστή, είναι ακόμη διαθέσιμες σε κάποια άλλη εγκατάσταση του { -brand-product-name }.
+options-title = Ποιες είναι οι επιλογές μου;
+options-do-nothing = Αν δεν κάνετε κάτι, τα δεδομένα του προφίλ σας στο { -brand-short-name } θα είναι διαφορετικά από τα δεδομένα του προφίλ σε άλλες εγκαταστάσεις του { -brand-product-name }.
+resources = Πόροι
+about-pofiles-link = Δείτε και διαχειριστείτε τα προφίλ σας
+support-link = Χρήση του Διαχειριστή Προφίλ - Άρθρο υποστήριξης
diff --git a/l10n-el/mail/messenger/openpgp/backupKeyPassword.ftl b/l10n-el/mail/messenger/openpgp/backupKeyPassword.ftl
new file mode 100644
index 0000000000..22367b20c0
--- /dev/null
+++ b/l10n-el/mail/messenger/openpgp/backupKeyPassword.ftl
@@ -0,0 +1,20 @@
+# 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/.
+
+set-password-window =
+ .title = Επιλέξτε ένα κωδικό πρόσβασης για να δημιουργήσετε αντίγραφο ασφαλείας του κλειδιού σας OpenPGP
+
+set-password-legend = Επιλέξτε ένα Κωδικό Πρόσβασης
+
+set-password-message = Ο κωδικός πρόσβασης που ορίζετε εδώ προστατεύει το αρχείο του αντιγράφου ασφαλείας με το ιδιωτικό σας κλειδί OpenPGP που πρόκειται να δημιουργήσετε. Πρέπει να ορίσετε τον κωδικό πρόσβασης για να συνεχίσετε με το αντίγραφο ασφαλείας.
+
+set-password-backup-pw =
+ .value = Κωδικός πρόσβασης αντιγράφου ασφαλείας Ιδιωτικού Κλειδιού:
+
+set-password-repeat-backup-pw =
+ .value = Κωδικός πρόσβασης αντιγράφου ασφαλείας Ιδιωτικού Κλειδιού (επανάληψη):
+
+set-password-reminder = <b>Σημαντικό!</b> Αν ξεχάσετε τον κωδικό πρόσβασης του αντιγράφου ασφαλείας του ιδιωτικού σας κλειδιού, δε θα μπορείτε να επαναφέρετε το αντίγραφο ασφαλείας στο μέλλον. Παρακαλούμε σημειώστε τον και αποθηκεύστε τον σε ασφαλές μέρος.
+
+password-quality-meter = Μέτρηση ποιότητας κωδικού πρόσβασης
diff --git a/l10n-el/mail/messenger/openpgp/changeExpiryDlg.ftl b/l10n-el/mail/messenger/openpgp/changeExpiryDlg.ftl
new file mode 100644
index 0000000000..e4f57a7ce4
--- /dev/null
+++ b/l10n-el/mail/messenger/openpgp/changeExpiryDlg.ftl
@@ -0,0 +1,22 @@
+# 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/.
+
+openpgp-change-key-expiry-title =
+ .title = Αλλαγή λήξης κλειδιού
+
+info-will-expire = Αυτό το κλειδί έχει ρυθμιστεί ώστε να λήξει στις { $date }.
+info-already-expired = Αυτό το κλειδί έχει ήδη λήξει.
+info-does-not-expire = Αυτό το κλειδί έχει ρυθμιστεί ώστε να μην λήξει ποτέ.
+
+info-explanation-1 = <b>Αφού ένα κλειδί λήξει</b>, δεν είναι δυνατή πλέον η χρήση του για κρυπτογράφηση ή ψηφιακή υπογραφή.
+
+info-explanation-2 = Για να χρησιμοποιήσετε το κλειδί αυτό για μια μεγαλύτερη χρονική περίοδο, αλλάξτε την ημερομηνία λήξης του και στη συνέχεια μοιραστείτε ξανά το δημόσιο κλειδί με τους ανθρώπους που επικοινωνείτε.
+
+expire-dont-change =
+ .label = Να μην αλλαχθεί η ημερομηνία λήξης
+expire-never-label =
+ .label = Το κλειδί δεν θα λήξει ποτέ
+expire-in-label =
+ .label = Το κλειδί θα λήξει σε:
+expire-in-months = Μήνες
diff --git a/l10n-el/mail/messenger/openpgp/composeKeyStatus.ftl b/l10n-el/mail/messenger/openpgp/composeKeyStatus.ftl
new file mode 100644
index 0000000000..d3a40e6fbc
--- /dev/null
+++ b/l10n-el/mail/messenger/openpgp/composeKeyStatus.ftl
@@ -0,0 +1,16 @@
+# 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/.
+
+openpgp-compose-key-status-intro-need-keys = Για να στείλετε ένα κρυπτογραφημένο μήνυμα από άκρο σε άκρο, πρέπει να αποκτήσετε και να αποδεχτείτε ένα δημόσιο κλειδί για κάθε παραλήπτη.
+openpgp-compose-key-status-keys-heading = Διαθεσιμότητα κλειδιών OpenPGP:
+openpgp-compose-key-status-title =
+ .title = Ασφάλεια μηνύματος OpenPGP
+openpgp-compose-key-status-recipient =
+ .label = Παραλήπτης
+openpgp-compose-key-status-status =
+ .label = Κατάσταση
+openpgp-compose-key-status-open-details = Διαχείριση κλειδιών για επιλεγμένο παραλήπτη…
+openpgp-recip-good = ok
+openpgp-recip-missing = κανένα διαθέσιμο κλειδί
+openpgp-recip-none-accepted = κανένα αποδεκτό κλειδί
diff --git a/l10n-el/mail/messenger/openpgp/keyWizard.ftl b/l10n-el/mail/messenger/openpgp/keyWizard.ftl
new file mode 100644
index 0000000000..5fcdc0a1b2
--- /dev/null
+++ b/l10n-el/mail/messenger/openpgp/keyWizard.ftl
@@ -0,0 +1,127 @@
+# 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/.
+
+# $identity (String) - the email address of the currently selected identity
+key-wizard-dialog-window =
+ .title = Προσθήκη προσωπικού κλειδιού OpenPGP για { $identity }
+key-wizard-button =
+ .buttonlabelaccept = Συνέχεια
+ .buttonlabelhelp = Επιστροφή
+key-wizard-warning = <b>Αν διαθέτετε ήδη ένα προσωπικό κλειδί</b> για αυτή τη διεύθυνση ηλεκτρονικού ταχυδρομείου, πρέπει να το εισαγάγετε. Διαφορετικά δε θα έχετε πρόσβαση στο αρχείο σας από κρυπτογραφημένα μηνύματα, ούτε θα μπορείτε να διαβάζετε εισερχόμενη κρυπτογραφημένη αλληλογραφία από ανθρώπους που χρησιμοποιούν το υπάρχον κλειδί σας.
+key-wizard-learn-more = Μάθετε περισσότερα
+radio-create-key =
+ .label = Δημιουργία νέου κλειδιού OpenPGP
+ .accesskey = Δ
+radio-import-key =
+ .label = Εισαγωγή υπάρχοντος κλειδιού OpenPGP
+ .accesskey = Ε
+radio-gnupg-key =
+ .label = Χρήση του εξωτερικού σας κλειδιού μέσω του GnuPG (πχ. από έξυπνη κάρτα)
+ .accesskey = ρ
+
+## Generate key section
+
+openpgp-generate-key-title = Δημιουργία κλειδιού OpenPGP
+openpgp-generate-key-info = <b>Η δημιουργία κλειδιού ενδέχεται να διαρκέσει αρκετά λεπτά για να ολοκληρωθεί.</b> Μην βγαίνετε από την εφαρμογή ενώ η δημιουργία του κλειδιού είναι σε εξέλιξη. Η φυλλομέτρηση ή η εκτέλεση εκτενών διαδικασιών που απασχολούν το δίσκο κατά τη διάρκεια δημιουργίας του κλειδιού θα γεμίσει την 'δεξαμενή τυχαιότητας' και θα επιταχύνει τη διαδικασία. Θα ενημερωθείτε όταν ολοκληρωθεί η δημιουργία του κλειδιού.
+openpgp-keygen-expiry-title = Λήξη κλειδιού
+openpgp-keygen-expiry-description = Ορισμός του χρόνου λήξης του νέου σας κλειδιού. Μπορείτε αργότερα να αλλάξετε την ημερομηνία για επέκταση αν αυτό είναι απαραίτητο.
+radio-keygen-expiry =
+ .label = Το κλειδί λήγει σε
+ .accesskey = ε
+radio-keygen-no-expiry =
+ .label = Το κλειδί δεν λήγει
+ .accesskey = δ
+openpgp-keygen-days-label =
+ .label = ημέρες
+openpgp-keygen-months-label =
+ .label = μήνες
+openpgp-keygen-years-label =
+ .label = έτη
+openpgp-keygen-advanced-title = Σύνθετες ρυθμίσεις
+openpgp-keygen-advanced-description = Ελέγξτε τις σύνθετες ρυθμίσεις του κλειδιού OpenPGP σας.
+openpgp-keygen-keytype =
+ .value = Τύπος κλειδιού:
+ .accesskey = δ
+openpgp-keygen-keysize =
+ .value = Μέγεθος κλειδιού:
+ .accesskey = κ
+openpgp-keygen-type-rsa =
+ .label = RSA
+openpgp-keygen-type-ecc =
+ .label = ECC (Elliptic Curve)
+openpgp-keygen-button = Δημιουργία κλειδιού
+openpgp-keygen-progress-title = Δημιουργία νέου κλειδιού OpenPGP…
+openpgp-keygen-import-progress-title = Εισαγωγή κλειδιών OpenPGP…
+openpgp-import-success = Τα κλειδιά OpenPGP εισήχθησαν με επιτυχία!
+openpgp-import-success-title = Ολοκλήρωση της διαδικασίας εισαγωγής
+openpgp-import-success-description = Για να ξεκινήσετε να χρησιμοποιείτε το εισηγμένο κλειδί OpenPGP για κρυπτογράφηση της ηλεκτρονικής αλληλογραφίας, κλείστε αυτό το παράθυρο διαλόγου και μεταβείτε στις Ρυθμίσεις Λογαριασμού σας για να το επιλέξετε.
+openpgp-keygen-confirm =
+ .label = Επιβεβαίωση
+openpgp-keygen-dismiss =
+ .label = Ακύρωση
+openpgp-keygen-cancel =
+ .label = Ακύρωση διαδικασίας…
+openpgp-keygen-import-complete =
+ .label = Κλείσιμο
+ .accesskey = Κ
+openpgp-keygen-missing-username = Δεν υπάρχει καθορισμένο όνομα για τον τρέχοντα λογαριασμό. Εισαγάγετε μια τιμή στο πεδίο "Το όνομά σας" στις ρυθμίσεις του λογαριασμού
+openpgp-keygen-long-expiry = Δεν μπορείτε να δημιουργήσετε ένα κλειδί που λήγει σε περισσότερο από 100 χρόνια.
+openpgp-keygen-short-expiry = Το κλειδί σας πρέπει να έχει ισχύ για τουλάχιστον μία ημέρα.
+openpgp-keygen-ongoing = Η δημιουργία κλειδιού είναι ήδη σε εξέλιξη!
+openpgp-keygen-error-core = Δεν ήταν δυνατή η αρχικοποίηση της Κύριας Υπηρεσίας του OpenPGP
+openpgp-keygen-error-failed = Η δημιουργία κλειδιού OpenPGP απέτυχε απροσδόκητα
+# $identity (String) - the newly generate OpenPGP Key
+openpgp-keygen-error-revocation = Το κλειδί OpenPGP δημιουργήθηκε με επιτυχία, αλλά απέτυχε η ανάκληση του κλειδιού { $key }
+openpgp-keygen-abort-title = Ακύρωση δημιουργίας κλειδιού;
+openpgp-keygen-abort = Η δημιουργία κλειδιού OpenPGP είναι σε εξέλιξη, είστε βέβαιοι ότι θέλετε να την ακυρώσετε;
+# $identity (String) - the name and email address of the currently selected identity
+openpgp-key-confirm = Να δημιουργηθεί το δημόσιο και ιδιωτικό κλειδί για την ταυτότητα { $identity };
+
+## Import Key section
+
+openpgp-import-key-title = Εισαγωγή υπάρχοντος προσωπικού κλειδιού OpenPGP
+openpgp-import-key-legend = Επιλέξτε ένα αρχείο αντιγράφου ασφαλείας που έχετε δημιουργήσει στο παρελθόν.
+openpgp-import-key-description = Μπορείτε να εισαγάγετε προσωπικά κλειδιά που δημιουργήθηκαν με άλλο λογισμικό OpenPGP.
+openpgp-import-key-info = Άλλο λογισμικό ενδέχεται να περιγράφει ένα προσωπικό κλειδί χρησιμοποιώντας εναλλακτικούς όρους, όπως το δικό σας κλειδί, μυστικό κλειδί, ιδιωτικό κλειδί ή ζεύγος κλειδιών.
+# $count (Number) - the number of keys found in the selected files
+openpgp-import-key-list-amount =
+ { $count ->
+ [one] Το Thunderbird βρήκε ένα κλειδί που μπορεί να εισαχθεί.
+ *[other] Το Thunderbird βρήκε { $count } κλειδιά που μπορούν να εισαχθούν.
+ }
+openpgp-import-key-list-description = Επιβεβαιώστε ποια κλειδιά μπορούν να θεωρηθούν ως προσωπικά σας κλειδιά. Μόνο κλειδιά που δημιουργήσατε εσείς και που δείχνουν τη δική σας ταυτότητα θα πρέπει να χρησιμοποιούνται ως προσωπικά κλειδιά. Μπορείτε να αλλάξετε αυτήν την επιλογή αργότερα στο παράθυρο διαλόγου Ιδιότητες Κλειδιού.
+openpgp-import-key-list-caption = Τα κλειδιά που έχουν επισημανθεί ως Προσωπικά Κλειδιά θα εμφανίζονται στην ενότητα Κρυπτογράφηση Από-Άκρο-Σε-Άκρο. Τα άλλα θα είναι διαθέσιμα στη Διαχείριση Κλειδιών.
+openpgp-passphrase-prompt-title = Απαιτείται κωδικός πρόσβασης
+# $identity (String) - the id of the key being imported
+openpgp-passphrase-prompt = Εισαγάγετε τον κωδικό πρόσβασης για να ξεκλειδώσετε το ακόλουθο κλειδί: { $key }
+openpgp-import-key-button =
+ .label = Επιλέξτε αρχείο για εισαγωγή…
+ .accesskey = Ε
+import-key-file = Εισαγωγή αρχείου κλειδιού OpenPGP
+import-key-personal-checkbox =
+ .label = Αυτό το κλειδί να αντιμετωπίζεται ως Προσωπικό Κλειδί
+gnupg-file = Αρχεία GnuPG
+import-error-file-size = <b>Σφάλμα!</b> Αρχεία μεγαλύτερα των 5MB δεν υποστηρίζονται.
+# $error (String) - the reported error from the failed key import method
+import-error-failed = <b>Σφάλμα!</b> Αδύνατη η εισαγωγή του αρχείου. { $error }
+# $error (String) - the reported error from the failed key import method
+openpgp-import-keys-failed = <b>Σφάλμα!</b> Αδύνατη η εισαγωγή των κλειδιών. { $error }
+openpgp-import-identity-label = Ταυτότητα
+openpgp-import-fingerprint-label = Αποτύπωμα
+openpgp-import-created-label = Δημιουργήθηκε
+openpgp-import-bits-label = Bits
+openpgp-import-key-props =
+ .label = Ιδιότητες κλειδιού
+ .accesskey = Ι
+
+## External Key section
+
+openpgp-external-key-title = Εξωτερικό κλειδί GnuPG
+openpgp-external-key-description = Διαμόρφωση ενό εξωτερικού κλειδιού GnuPG με εισαγωγή του αναγνωριστικού κλειδιού
+openpgp-external-key-info = Επιπλέον, πρέπει να χρησιμοποιήσετε τη Διαχείριση Κλειδιών για εισαγωγή και αποδοχή του αντίστοιχου Δημόσιου Κλειδιού.
+openpgp-external-key-warning = <b>Μπορείτε να παραμετροποιήσετε μόνο ένα εξωτερικό κλειδί GnuPG.</b> Η προηγούμενη καταχώρισή σας θα αντικατασταθεί.
+openpgp-save-external-button = Αποθήκευση αναγνωριστικού κλειδιού
+openpgp-external-key-label = Αναγνωριστικό μυστικού κλειδιού:
+openpgp-external-key-input =
+ .placeholder = 123456789341298340
diff --git a/l10n-el/mail/messenger/openpgp/msgReadStatus.ftl b/l10n-el/mail/messenger/openpgp/msgReadStatus.ftl
new file mode 100644
index 0000000000..4af8f6cc74
--- /dev/null
+++ b/l10n-el/mail/messenger/openpgp/msgReadStatus.ftl
@@ -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/.
+
+
+## Message Header Encryption Button
+
+message-header-show-security-info-key = Ε
+# $type (String) - the shortcut key defined in the message-header-show-security-info-key
+message-security-button =
+ .title =
+ { PLATFORM() ->
+ [macos] Εμφάνιση ασφάλειας μηνύματος (⌘ ⌥ { message-header-show-security-info-key })
+ *[other] Εμφάνιση ασφάλειας μηνύματος (Ctrl+Alt+{ message-header-show-security-info-key })
+ }
+openpgp-view-signer-key =
+ .label = Προβολή κλειδιού υπογράφοντα
+openpgp-view-your-encryption-key =
+ .label = Προβολή του κλειδιού σας αποκρυπτογράφησης
+openpgp-openpgp = OpenPGP
+openpgp-no-sig = Χωρίς Ψηφιακή Υπογραφή
+openpgp-uncertain-sig = Αβέβαιη Ψηφιακή Υπογραφή
+openpgp-invalid-sig = Άκυρη Ψηφιακή Υπογραφή
+openpgp-good-sig = Έγκυρη Ψηφιακή Υπογραφή
+openpgp-sig-uncertain-no-key = Αυτό το μήνυμα περιέχει ψηφιακή υπογραφή, αλλά είναι αβέβαιο αν είναι σωστό. Για να επαληθεύσετε την υπογραφή, θα χρειαστεί να αποκτήσετε ένα αντίγραφο του δημόσιου κλειδιού του αποστολέα.
+openpgp-sig-uncertain-uid-mismatch = Αυτό το μήνυμα περιέχει ψηφιακή υπογραφή, αλλά ανιχνεύτηκε αναντιστοιχία. Το μήνυμα απεστάλη από κάποια διεύθυνση email που δεν ταιριάζει με το δημόσιο κλειδί του υπογράφοντα.
+openpgp-sig-uncertain-not-accepted = Αυτό το μήνυμα περιέχει ψηφιακή υπογραφή, αλλά δεν έχετε αποφασίσει ακόμα αν το κλειδί του υπογράφοντα είναι αποδεκτό από εσάς.
+openpgp-sig-invalid-rejected = Αυτό το μήνυμα περιέχει ψηφιακή υπογραφή, αλλά έχετε ήδη αποφασίσει να απορρίψετε το κλειδί του υπογράφοντα.
+openpgp-sig-invalid-technical-problem = Αυτό το μήνυμα περιέχει μια ψηφιακή υπογραφή, αλλά εντοπίστηκε ένα τεχνικό σφάλμα. Είτε το μήνυμα έχει καταστραφεί, είτε το μήνυμα έχει τροποποιηθεί από κάποιον άλλο.
+openpgp-sig-valid-unverified = Αυτό το μήνυμα περιλαμβάνει μια έγκυρη, ψηφιακή υπογραφή από ένα κλειδί που έχετε ήδη αποδεχτεί. Ωστόσο, δεν έχετε επαληθεύσει ακόμη ότι το κλειδί ανήκει πράγματι στον αποστολέα.
+openpgp-sig-valid-verified = Αυτό το μήνυμα περιλαμβάνει μια έγκυρη, ψηφιακή υπογραφή από ένα επαληθευμένο κλειδί.
+openpgp-sig-valid-own-key = Αυτό το μήνυμα περιέχει έγκυρη ψηφιακή υπογραφή από το προσωπικό σας κλειδί.
+openpgp-sig-key-id = Αναγνωριστικό κλειδιού υπογράφοντος: { $key }
+openpgp-sig-key-id-with-subkey-id = ID κλειδιού υπογράφοντα: { $key } (ID υποκλειδιού: { $subkey })
+openpgp-enc-key-id = Το ID κλειδιού αποκρυπτογράφησής σας: { $key }
+openpgp-enc-key-with-subkey-id = ID κλειδιού αποκρυπτογράφησης: { $key } (ID υποκλειδιού: { $subkey })
+openpgp-unknown-key-id = Άγνωστο κλειδί
+openpgp-other-enc-additional-key-ids = Επιπλέον, το μήνυμα κρυπτογραφήθηκε στους κατόχους των ακόλουθων κλειδιών:
+openpgp-other-enc-all-key-ids = Το μήνυμα κρυπτογραφήθηκε στους κατόχους των ακόλουθων κλειδιών:
diff --git a/l10n-el/mail/messenger/openpgp/oneRecipientStatus.ftl b/l10n-el/mail/messenger/openpgp/oneRecipientStatus.ftl
new file mode 100644
index 0000000000..b4937f5656
--- /dev/null
+++ b/l10n-el/mail/messenger/openpgp/oneRecipientStatus.ftl
@@ -0,0 +1,30 @@
+# 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/.
+
+openpgp-one-recipient-status-title =
+ .title = Ασφάλεια μηνύματος OpenPGP
+openpgp-one-recipient-status-status =
+ .label = Κατάσταση
+openpgp-one-recipient-status-key-id =
+ .label = Αναγνωριστικό κλειδιού
+openpgp-one-recipient-status-created-date =
+ .label = Δημιουργήθηκε
+openpgp-one-recipient-status-expires-date =
+ .label = Λήξη
+openpgp-one-recipient-status-open-details =
+ .label = Άνοιγμα λεπτομερειών και επεξεργασία της αποδοχής…
+openpgp-one-recipient-status-discover =
+ .label = Ανακαλύψτε νέα ή ενημερωμένα κλειδιά
+
+openpgp-one-recipient-status-instruction1 = Για να στείλετε ένα κρυπτογραφημένο μήνυμα από άκρο σε άκρο σε έναν παραλήπτη, πρέπει να αποκτήσετε το δημόσιο κλειδί τους OpenPGP και να το ορίσετε ως αποδεκτό.
+openpgp-one-recipient-status-instruction2 = Για να αποκτήσετε το δημόσιο κλειδί τους, εισαγάγετέ το από ένα μήνυμα ηλεκτρονικού ταχυδρομείου που σας έστειλαν και το περιέχει. Εναλλακτικά, μπορείτε να προσπαθήσετε να ψάξετε για το δημόσιο κλειδί τους σε έναν κατάλογο.
+
+openpgp-key-own = Αποδεκτό (προσωπικό κλειδί)
+openpgp-key-secret-not-personal = Μη χρησιμοποιήσιμο
+openpgp-key-verified = Αποδεκτό (επαληθευμένο)
+openpgp-key-unverified = Αποδεκτό (μη επαληθευμένο)
+openpgp-key-undecided = Μη αποδεκτό (χωρίς απόφαση)
+openpgp-key-rejected = Μη αποδεκτό (απορριπτέο)
+
+openpgp-intro = Διαθέσιμα δημόσια κλειδιά για { $key }
diff --git a/l10n-el/mail/messenger/openpgp/openpgp-frontend.ftl b/l10n-el/mail/messenger/openpgp/openpgp-frontend.ftl
new file mode 100644
index 0000000000..f33db424a3
--- /dev/null
+++ b/l10n-el/mail/messenger/openpgp/openpgp-frontend.ftl
@@ -0,0 +1,49 @@
+# 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/.
+
+openpgp-manage-keys-openpgp-cmd =
+ .label = Διαχείριση κλειδιών OpenPGP
+ .accesskey = O
+openpgp-ctx-decrypt-open =
+ .label = Αποκρυπτογράφηση και άνοιγμα
+ .accesskey = Α
+openpgp-ctx-decrypt-save =
+ .label = Αποκρυπτογράφηση και αποθήκευση ως…
+ .accesskey = φ
+openpgp-ctx-import-key =
+ .label = Εισαγωγή κλειδιού OpenPGP
+ .accesskey = Ε
+openpgp-ctx-verify-att =
+ .label = Επαλήθευση υπογραφής
+ .accesskey = Ε
+openpgp-has-sender-key = Το μήνυμα ισχυρίζεται ότι περιέχει το δημόσιο κλειδί OpenPGP του αποστολέα.
+openpgp-be-careful-new-key = Προειδοποίηση: Το νέο δημόσιο κλειδί OpenPGP σε αυτό το μήνυμα διαφέρει από τα δημόσια κλειδιά που έχετε προηγουμένως αποδεχθεί για { $email }.
+openpgp-import-sender-key =
+ .label = Εισαγωγή…
+openpgp-search-keys-openpgp =
+ .label = Ανακάλυψη κλειδιού OpenPGP
+openpgp-missing-signature-key = Το μήνυμα έχει υπογραφεί με ένα κλειδί που δεν έχετε ακόμη στη διάθεσή σας.
+openpgp-search-signature-key =
+ .label = Ανακάλυψη…
+# Don't translate the terms "OpenPGP" and "MS-Exchange"
+openpgp-broken-exchange-opened = Αυτό είναι ένα μήνυμα OpenPGP που μάλλον έχει καταστραφεί από το MS-Exchange και δεν μπορεί να επιδιορθωθεί, επειδή άνοιξε από ένα τοπικό αρχείο. Αντιγράψτε το μήνυμα σε ένα φάκελο αλληλογραφίας για να δοκιμάσετε μια αυτόματη επιδιόρθωση.
+openpgp-broken-exchange-info = Αυτό είναι ένα μήνυμα OpenPGP που φαίνεται να έχει αλλοιώσει το MS-Exchange. Αν το περιεχόμενο του μηνύματος δεν εμφανίζεται όπως θα περιμένατε, μπορείτε να δοκιμάσετε μια αυτόματη επιδιόρθωση.
+openpgp-broken-exchange-repair =
+ .label = Επιδιόρθωση μηνύματος
+openpgp-broken-exchange-wait = Παρακαλώ περιμένετε…
+openpgp-cannot-decrypt-because-mdc =
+ Αυτό είναι ένα κρυπτογραφημένο μήνυμα που χρησιμοποιεί ένα παλιό και ευάλωτο μηχανισμό.
+ Ενδέχεται να έχει τροποποιηθεί κατά τη μεταφορά του, με την πρόθεση να υποκλαπεί το περιεχόμενό του.
+ Για να αποφύγετε τον ενδεχόμενο κίνδυνο, τα περιεχόμενά του δεν εμφανίζονται.
+openpgp-cannot-decrypt-because-missing-key = Το μυστικό κλειδί που απαιτείται για την αποκρυπτογράφηση του μηνύματος δεν είναι διαθέσιμο.
+openpgp-partially-signed =
+ Μόνο ένα υποσύνολο του μηνύματος έχει υπογραφεί με χρήση του OpenPGP.
+ Αν πατήσετε στο πλήκτρο επιβεβαίωσης, τα μη προστατευμένα μέρη δε θα εμφανιστούν και θα εμφανιστεί η κατάσταση της ψηφιακής υπογραφής.
+openpgp-partially-encrypted =
+ Μόνο ένα υποσύνολο του μηνύματος έχει κρυπτογραφηθεί με χρήση του OpenPGP.
+ Τα αναγνώσιμα μέρη του μηνύματος που ήδη εμφανίζονται δεν έχουν κρυπτογραφηθεί.
+ Αν πατήσετε στο πλήκτρο αποκρυπτογράφησης, θα εμφανιστεί το περιεχόμενο του κρυπτογραφημένου μέρους.
+openpgp-reminder-partial-display = Υπενθύμιση: Το μήνυμα που εμφανίζεται παρακάτω είναι μόνο ένα υποσύνολο του αρχικού μηνύματος.
+openpgp-partial-verify-button = Επαλήθευση
+openpgp-partial-decrypt-button = Αποκρυπτογράφηση
diff --git a/l10n-el/mail/messenger/openpgp/openpgp.ftl b/l10n-el/mail/messenger/openpgp/openpgp.ftl
new file mode 100644
index 0000000000..a07405044f
--- /dev/null
+++ b/l10n-el/mail/messenger/openpgp/openpgp.ftl
@@ -0,0 +1,637 @@
+# 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/.
+
+e2e-intro-description = Για να στείλετε κρυπτογραφημένα ή ψηφιακά υπογεγραμμένα μηνύματα, πρέπει να ρυθμίσετε μια τεχνολογία κρυπτογράφησης, είτε OpenPGP είτε S/MIME.
+e2e-intro-description-more = Επιλέξτε το προσωπικό σας κλειδί για να ενεργοποιήσετε τη χρήση του OpenPGP ή το προσωπικό σας πιστοποιητικό για να ενεργοποιήσετε τη χρήση του S/MIME. Για ένα προσωπικό κλειδί ή πιστοποιητικό έχετε και το αντίστοιχο μυστικό κλειδί.
+openpgp-key-user-id-label = Λογαριασμός / Αναγνωριστικό Χρήστη
+openpgp-keygen-title-label =
+ .title = Δημιουργία κλειδιού OpenPGP
+openpgp-cancel-key =
+ .label = Ακύρωση
+ .tooltiptext = Ακύρωση δημιουργίας κλειδιού
+openpgp-key-gen-expiry-title =
+ .label = Λήξη κλειδιού
+openpgp-key-gen-expire-label = Το κλειδί λήγει σε
+openpgp-key-gen-days-label =
+ .label = ημέρες
+openpgp-key-gen-months-label =
+ .label = μήνες
+openpgp-key-gen-years-label =
+ .label = έτη
+openpgp-key-gen-no-expiry-label =
+ .label = Το κλειδί δεν λήγει
+openpgp-key-gen-key-size-label = Μέγεθος κλειδιού
+openpgp-key-gen-console-label = Δημιουργία κλειδιού
+openpgp-key-gen-key-type-label = Τύπος κλειδιού
+openpgp-key-gen-key-type-rsa =
+ .label = RSA
+openpgp-key-gen-key-type-ecc =
+ .label = ECC (Elliptic Curve)
+openpgp-generate-key =
+ .label = Δημιουργία κλειδιού
+ .tooltiptext = Δημιουργεί ένα νέο σύμφωνο κλειδί OpenPGP για κρυπτογράφηση και/ή υπογραφή
+openpgp-advanced-prefs-button-label =
+ .label = Για προχωρημένους…
+openpgp-keygen-desc = <a data-l10n-name="openpgp-keygen-desc-link">ΣΗΜΕΙΩΣΗ: Η δημιουργία κλειδιού ενδέχεται να διαρκέσει αρκετά λεπτά για να ολοκληρωθεί.</a> Μην κλείσετε την εφαρμογή ενώ είναι σε εξέλιξη η δημιουργία του κλειδιού. Η ενεργή περιήγηση ή η εκτέλεση έντονων εργασιών δίσκου κατά τη δημιουργία του κλειδιού θα αναπληρώσει τη 'δεξαμενή τυχαιότητας' και θα επιταχύνει τη διαδικασία. Θα ενημερωθείτε όταν ολοκληρωθεί η δημιουργία του κλειδιού.
+openpgp-key-expiry-label =
+ .label = Λήξη
+openpgp-key-id-label =
+ .label = ID κλειδιού
+openpgp-cannot-change-expiry = Αυτό είναι κλειδί με περίπλοκη δομή, η αλλαγή της ημερομηνίας λήξης δεν υποστηρίζεται.
+openpgp-key-man-title =
+ .title = Διαχείριση κλειδιών OpenPGP
+openpgp-key-man-generate =
+ .label = Νέο ζεύγος κλειδιών
+ .accesskey = γ
+openpgp-key-man-gen-revoke =
+ .label = Πιστοποιητικό ανάκλησης
+ .accesskey = κ
+openpgp-key-man-ctx-gen-revoke-label =
+ .label = Δημιουργία & αποθήκευση πιστοποιητικού ανάκλησης
+openpgp-key-man-file-menu =
+ .label = Αρχείο
+ .accesskey = Α
+openpgp-key-man-edit-menu =
+ .label = Επεξεργασία
+ .accesskey = Ε
+openpgp-key-man-view-menu =
+ .label = Προβολή
+ .accesskey = Π
+openpgp-key-man-generate-menu =
+ .label = Δημιουργία
+ .accesskey = Δ
+openpgp-key-man-keyserver-menu =
+ .label = Διακομιστής κλειδιών
+ .accesskey = Δ
+openpgp-key-man-import-public-from-file =
+ .label = Εισαγωγή δημόσιου κλειδιού(ών) από αρχείο
+ .accesskey = Ε
+openpgp-key-man-import-secret-from-file =
+ .label = Εισαγωγή μυστικού κλειδιού(ών) από αρχείο
+openpgp-key-man-import-sig-from-file =
+ .label = Εισαγωγή ανάκλησης(εων) από αρχείο
+openpgp-key-man-import-from-clipbrd =
+ .label = Εισαγωγή κλειδιού(ών) από πρόχειρο
+ .accesskey = Ε
+openpgp-key-man-import-from-url =
+ .label = Εισαγωγή κλειδιού(ών) από URL
+ .accesskey = U
+openpgp-key-man-export-to-file =
+ .label = Εξαγωγή δημόσιου κλειδιού(ών) σε αρχείο
+ .accesskey = Ε
+openpgp-key-man-send-keys =
+ .label = Αποστολή δημόσιου κλειδιού(ών) με email
+ .accesskey = Α
+openpgp-key-man-backup-secret-keys =
+ .label = Αντιγραφή μυστικού κλειδιού(ών) σε αρχείο
+ .accesskey = Α
+openpgp-key-man-discover-cmd =
+ .label = Ανακάλυψη κλειδιών στο διαδίκτυο
+ .accesskey = Α
+openpgp-key-man-discover-prompt = Για να βρείτε κλειδιά OpenPGP στο διαδίκτυο, σε διακομιστές κλειδιών ή με χρήση του πρωτοκόλλου WKD, εισάγετε είτε την διεύθυνση ηλεκτρονικού ταχυδρομείου, είτε το αναγνωριστικό χρήστη.
+openpgp-key-man-discover-progress = Αναζήτηση…
+openpgp-key-copy-key =
+ .label = Αντιγραφή δημόσιου κλειδιού
+ .accesskey = Α
+openpgp-key-export-key =
+ .label = Εξαγωγή δημόσιου κλειδιού σε αρχείο
+ .accesskey = Ε
+openpgp-key-backup-key =
+ .label = Αντιγραφή μυστικού κλειδιού σε αρχείο
+ .accesskey = Α
+openpgp-key-send-key =
+ .label = Αποστολή δημόσιου κλειδιού με email
+ .accesskey = Α
+openpgp-key-man-copy-to-clipbrd =
+ .label = Αντιγραφή δημόσιου κλειδιού(ών) στο πρόχειρο
+ .accesskey = Α
+openpgp-key-man-copy-key-ids =
+ .label =
+ { $count ->
+ [one] Αντιγραφή ID κλειδιού στο πρόχειρο
+ *[other] Αντιγραφή ID κλειδιών στο πρόχειρο
+ }
+ .accesskey = κ
+openpgp-key-man-copy-fprs =
+ .label =
+ { $count ->
+ [one] Αντιγραφή αποτυπώματος στο πρόχειρο
+ *[other] Αντιγραφή αποτυπωμάτων στο πρόχειρο
+ }
+ .accesskey = ώ
+openpgp-key-man-copy-to-clipboard =
+ .label =
+ { $count ->
+ [one] Αντιγραφή δημόσιου κλειδιού στο πρόχειρο
+ *[other] Αντιγραφή δημόσιων κλειδιών στο πρόχειρο
+ }
+ .accesskey = δ
+openpgp-key-man-ctx-expor-to-file-label =
+ .label = Εξαγωγή κλειδιών σε αρχείο
+openpgp-key-man-ctx-copy-to-clipbrd-label =
+ .label = Αντιγραφή δημόσιων κλειδιών στο πρόχειρο
+openpgp-key-man-ctx-copy =
+ .label = Αντιγραφή
+ .accesskey = Α
+openpgp-key-man-ctx-copy-fprs =
+ .label =
+ { $count ->
+ [one] Αποτύπωμα
+ *[other] Αποτυπώματα
+ }
+ .accesskey = τ
+openpgp-key-man-ctx-copy-key-ids =
+ .label =
+ { $count ->
+ [one] ID κλειδιού
+ *[other] ID κλειδιών
+ }
+ .accesskey = I
+openpgp-key-man-ctx-copy-public-keys =
+ .label =
+ { $count ->
+ [one] Δημόσιο κλειδί
+ *[other] Δημόσια κλειδιά
+ }
+ .accesskey = Δ
+openpgp-key-man-close =
+ .label = Κλείσιμο
+openpgp-key-man-reload =
+ .label = Ανανέωση προσωρινής μνήμης κλειδιού
+ .accesskey = Α
+openpgp-key-man-change-expiry =
+ .label = Αλλαγή ημερομηνίας λήξης
+ .accesskey = μ
+openpgp-key-man-del-key =
+ .label = Διαγραφή κλειδιού(ών)
+ .accesskey = Δ
+openpgp-delete-key =
+ .label = Διαγραφή κλειδιού
+ .accesskey = Δ
+openpgp-key-man-revoke-key =
+ .label = Ανάκληση κλειδιού
+ .accesskey = Α
+openpgp-key-man-key-props =
+ .label = Ιδιότητες κλειδιού
+ .accesskey = Ι
+openpgp-key-man-key-more =
+ .label = Περισσότερα
+ .accesskey = Π
+openpgp-key-man-view-photo =
+ .label = ID φωτογραφίας
+ .accesskey = φ
+openpgp-key-man-ctx-view-photo-label =
+ .label = Προβολή ID φωτογραφίας
+openpgp-key-man-show-invalid-keys =
+ .label = Προβολή μη έγκυρων κλειδιών
+ .accesskey = Π
+openpgp-key-man-show-others-keys =
+ .label = Εμφανίζει Κλειδιά Άλλων Ανθρώπων
+ .accesskey = λ
+openpgp-key-man-user-id-label =
+ .label = Όνομα
+openpgp-key-man-fingerprint-label =
+ .label = Αποτύπωμα
+openpgp-key-man-select-all =
+ .label = Επιλογή όλων των κλειδιών
+ .accesskey = ο
+openpgp-key-man-empty-tree-tooltip =
+ .label = Εισαγάγετε όρους αναζήτησης στο παραπάνω πεδίο
+openpgp-key-man-nothing-found-tooltip =
+ .label = Δεν υπάρχουν κλειδιά που να ταιριάζουν με τους όρους αναζήτησης
+openpgp-key-man-please-wait-tooltip =
+ .label = Παρακαλούμε περιμένετε όσο φορτώνονται τα κλειδιά…
+openpgp-key-man-filter-label =
+ .placeholder = Αναζήτηση για κλειδιά
+openpgp-key-man-select-all-key =
+ .key = A
+openpgp-key-man-key-details-key =
+ .key = I
+openpgp-key-details-title =
+ .title = Ιδιότητες κλειδιού
+openpgp-key-details-signatures-tab =
+ .label = Πιστοποιητικά
+openpgp-key-details-structure-tab =
+ .label = Δομή
+openpgp-key-details-uid-certified-col =
+ .label = Αναγνωριστικό χρήστη / Πιστοποιήθηκε από
+openpgp-key-details-user-id2-label = Υποτιθέμενος Κάτοχος Κλειδιού
+openpgp-key-details-id-label =
+ .label = ID
+openpgp-key-details-key-type-label = Τύπος
+openpgp-key-details-key-part-label =
+ .label = Τμήμα Κλειδιού
+openpgp-key-details-algorithm-label =
+ .label = Αλγόριθμος
+openpgp-key-details-size-label =
+ .label = Μέγεθος
+openpgp-key-details-created-label =
+ .label = Δημιουργήθηκε
+openpgp-key-details-created-header = Δημιουργήθηκε
+openpgp-key-details-expiry-label =
+ .label = Λήξη
+openpgp-key-details-expiry-header = Λήξη
+openpgp-key-details-usage-label =
+ .label = Χρήση
+openpgp-key-details-fingerprint-label = Αποτύπωμα
+openpgp-key-details-sel-action =
+ .label = Επιλέξτε ενέργεια…
+ .accesskey = Ε
+openpgp-key-details-also-known-label = Εικαζόμενες Εναλλακτικές Ταυτότητες του Κατόχου του Κλειδιού:
+openpgp-card-details-close-window-label =
+ .buttonlabelaccept = Κλείσιμο
+openpgp-acceptance-label =
+ .label = Η αποδοχή σας
+openpgp-acceptance-rejected-label =
+ .label = Όχι, απόρριψη κλειδιού.
+openpgp-acceptance-undecided-label =
+ .label = Όχι ακόμα, ίσως αργότερα.
+openpgp-acceptance-unverified-label =
+ .label = Ναι, αλλά δεν έχω επαληθεύσει ότι είναι το σωστό κλειδί.
+openpgp-acceptance-verified-label =
+ .label = Ναι, έχω επαληθεύσει αυτοπροσώπως ότι αυτό το κλειδί έχει το σωστό αποτύπωμα.
+key-accept-personal =
+ Για αυτό το κλειδί, έχετε τόσο το δημόσιο όσο και το μυστικό μέρος. Μπορείτε να το χρησιμοποιήσετε ως προσωπικό κλειδί.
+ Εάν αυτό το κλειδί σάς δόθηκε από κάποιον τρίτο, τότε μην το χρησιμοποιήσετε ως προσωπικό κλειδί.
+key-personal-warning = Δημιουργήσατε εσείς αυτό το κλειδί και η ιδιοκτησία κλειδιού που εμφανίζεται αναφέρεται σε εσάς;
+openpgp-personal-no-label =
+ .label = Όχι, να μην χρησιμοποιηθεί ως προσωπικό κλειδί μου.
+openpgp-personal-yes-label =
+ .label = Ναι, να αντιμετωπιστεί το κλειδί ως προσωπικό κλειδί.
+openpgp-copy-cmd-label =
+ .label = Αντιγραφή
+
+## e2e encryption settings
+
+# $count (Number) - the number of configured keys associated with the current identity
+# $identity (String) - the email address of the currently selected identity
+openpgp-description =
+ { $count ->
+ [0] Το Thunderbird δεν έχει ένα προσωπικό κλειδί OpenPGP για <b>{ $identity }</b>
+ [one] Το Thunderbird βρήκε { $count } προσωπικό κλειδί OpenPGP που είναι συσχετισμένο με <b>{ $identity }</b>
+ *[other] Το Thunderbird βρήκε { $count } προσωπικά κλειδιά OpenPGP που είναι συσχετισμένα με <b>{ $identity }</b>
+ }
+# $count (Number) - the number of configured keys associated with the current identity
+# $key (String) - the currently selected OpenPGP key
+openpgp-selection-status =
+ { $count ->
+ [0] Επιλέξτε ένα έγκυρο κλειδί για να ενεργοποιήσετε το πρωτόκολλο OpenPGP.
+ *[other] Η τρέχουσα ρύθμισή σας χρησιμοποιεί το ID κλειδιού <b>{ $key }</b>
+ }
+# $key (String) - the currently selected OpenPGP key
+openpgp-selection-status-error = Η τρέχουσα διαμόρφωσή σας χρησιμοποιεί το κλειδί <b>{ $key }</b>, το οποίο έχει λήξει.
+openpgp-add-key-button =
+ .label = Προσθήκη κλειδιού…
+ .accesskey = Π
+e2e-learn-more = Μάθετε περισσότερα
+openpgp-keygen-success = Επιτυχής δημιουργία κλειδιού OpenPGP!
+openpgp-keygen-import-success = Επιτυχής εισαγωγή κλειδιών OpenPGP!
+openpgp-keygen-external-success = Το εξωτερικό αναγνωριστικό κλειδιού GnuPG αποθηκεύτηκε!
+
+## OpenPGP Key selection area
+
+openpgp-radio-none =
+ .label = Κανένα
+openpgp-radio-none-desc = Να μην χρησιμοποιηθεί OpenPGP για αυτή την ταυτότητα.
+# $key (String) - the expiration date of the OpenPGP key
+openpgp-radio-key-expires = Λήγει στις: { $date }
+openpgp-key-expires-image =
+ .tooltiptext = Το κλειδί λήγει σε λιγότερο από 6 μήνες
+# $key (String) - the expiration date of the OpenPGP key
+openpgp-radio-key-expired = Έληξε στις: { $date }
+openpgp-key-expired-image =
+ .tooltiptext = Το κλειδί έληξε
+openpgp-key-expand-section =
+ .tooltiptext = Περισσότερες πληροφορίες
+openpgp-key-revoke-title = Ανάκληση κλειδιού
+openpgp-key-edit-title = Αλλαγή κλειδιού OpenPGP
+openpgp-key-edit-date-title = Επέκταση ημερομηνίας λήξης
+openpgp-manager-description = Να χρησιμοποιείται η Διαχείριση Κλειδιών OpenPGP για εμφάνιση και διαχείριση των δημόσιων κλειδιών των επιστολογράφων σας και των υπόλοιπων κλειδιών που δεν εμφανίζονται παραπάνω.
+openpgp-manager-button =
+ .label = Διαχείριση κλειδιών OpenPGP
+ .accesskey = κ
+openpgp-key-remove-external =
+ .label = Αφαίρεση Εξωτερικού Αναγνωριστικού Κλειδιού
+ .accesskey = φ
+key-external-label = Εξωτερικό κλειδί GnuPG
+# Strings in keyDetailsDlg.xhtml
+key-type-public = δημόσιο κλειδί
+key-type-primary = κύριο κλειδί
+key-type-subkey = υποκλειδί
+key-type-pair = ζεύγος κλειδιού (ιδιωτικό κλειδί και δημόσιο κλειδί)
+key-expiry-never = ποτέ
+key-usage-encrypt = Κρυπτογράφηση
+key-usage-sign = Υπογραφή
+key-usage-certify = Πιστοποίηση
+key-usage-authentication = Ταυτοποίηση
+key-does-not-expire = Το κλειδί δεν λήγει
+key-expired-date = Το κλειδί έληξε στις { $keyExpiry }
+key-expired-simple = Το κλειδί έχει λήξει
+key-revoked-simple = Το κλειδί ανακλήθηκε
+key-do-you-accept = Αποδέχεστε αυτό το κλειδί για την επαλήθευση ψηφιακών υπογραφών και για την κρυπτογράφηση μηνυμάτων;
+key-accept-warning = Να αποφεύγετε την αποδοχή άγνωστου-μη έμπιστου κλειδιού. Χρησιμοποιήστε ένα κανάλι επικοινωνίας διαφορετικό της ηλεκτρονικής αλληλογραφίας για να επαληθεύσετε το δακτυλικό αποτύπωμα του κλειδιού του επιστολογράφου σας.
+# Strings enigmailMsgComposeOverlay.js
+cannot-use-own-key-because = Δεν είναι δυνατή η αποστολή του μηνύματος, επειδή υπάρχει πρόβλημα με το προσωπικό σας κλειδί. { $problem }
+cannot-encrypt-because-missing = Δεν είναι δυνατή η αποστολή αυτού του μηνύματος με κρυπτογράφηση από άκρο σε άκρο, επειδή υπάρχουν προβλήματα με τα κλειδιά των ακόλουθων παραληπτών: { $problem }
+window-locked = Το παράθυρο σύνθεσης είναι κλειδωμένο· η αποστολή ακυρώθηκε
+# Strings in mimeDecrypt.jsm
+mime-decrypt-encrypted-part-attachment-label = Κρυπτογραφημένο μέρος μηνύματος
+mime-decrypt-encrypted-part-concealed-data = Αυτό είναι ένα τμήμα κρυπτογραφημένου μηνύματος. Πρέπει να το ανοίξετε σε ξεχωριστό παράθυρο κάνοντας κλικ στο συνημμένο.
+# Strings in keyserver.jsm
+keyserver-error-aborted = Ακυρώθηκε
+keyserver-error-unknown = Προέκυψε άγνωστο σφάλμα
+keyserver-error-server-error = Ο διακομιστής κλειδιών ανέφερε σφάλμα.
+keyserver-error-import-error = Αποτυχία εισαγωγής ληφθέντος κλειδιού.
+keyserver-error-unavailable = Ο διακομιστής κλειδιών δεν είναι διαθέσιμος.
+keyserver-error-security-error = Ο διακομιστής κλειδιών δεν υποστηρίζει κρυπτογραφημένη πρόσβαση.
+keyserver-error-certificate-error = Το πιστοποιητικό του διακομιστή κλειδιών δεν είναι έγκυρο.
+keyserver-error-unsupported = Ο διακομιστής κλειδιών δεν υποστηρίζεται.
+# Strings in mimeWkdHandler.jsm
+wkd-message-body-req =
+ Ο πάροχος του ηλεκτρονικού σας ταχυδρομείου επεξεργάστηκε το αίτημά σας για την υποβολή του δημόσιου κλειδιού σας στον κατάλογο κλειδιών ιστού OpenPGP.
+ Επιβεβαιώστε για να ολοκληρώσετε τη δημοσίευση του δημόσιου κλειδιού σας.
+wkd-message-body-process =
+ Αυτό είναι ένα ηλεκτρονικό μήνυμα που σχετίζεται με την αυτόματη επεξεργασία της υποβολής του δημόσιου κλειδιού σας στον κατάλογο κλειδιών ιστού OpenPGP.
+ Δεν χρειάζεται να κάνετε καμία άλλη ενέργεια σε αυτό το σημείο.
+# Strings in persistentCrypto.jsm
+converter-decrypt-body-failed =
+ Δεν ήταν δυνατή η αποκρυπτογράφηση μηνύματος με θέμα
+ { $subject }.
+ Θέλετε να προσπαθήσετε ξανά με διαφορετική φράση κωδικού ή θέλετε να παραλείψετε το μήνυμα;
+# Strings in gpg.jsm
+unknown-signing-alg = Άγνωστος αλγόριθμος υπογραφής (Αναγνωριστικό: { $id })
+unknown-hash-alg = Άγνωστος κρυπτογραφικός κατακερματισμός (Αναγνωριστικό: { $id })
+# Strings in keyUsability.jsm
+expiry-key-expires-soon =
+ Το κλειδί σας { $desc } θα λήξει σε λιγότερο από { $days } ημέρες.
+ Σας συνιστούμε να δημιουργήσετε ένα νέο ζεύγος κλειδιών και να διαμορφώσετε τους αντίστοιχους λογαριασμούς που να το χρησιμοποιούν.
+expiry-keys-expire-soon =
+ Τα ακόλουθα κλειδιά σας θα λήξουν σε λιγότερο από { $days } ημέρες: { $desc }.
+ Σας συνιστούμε να δημιουργήσετε νέα κλειδιά και να διαμορφώσετε τους αντίστοιχους λογαριασμούς που να τα χρησιμοποιούν.
+expiry-key-missing-owner-trust =
+ Το μυστικό κλειδί σας { $desc } δεν έχει σχέση εμπιστοσύνης.
+ Σας συνιστούμε να ορίσετε το "Βασίζεται σε πιστοποιήσεις" σε "απόλυτο" στις ιδιότητες του κλειδιού.
+expiry-keys-missing-owner-trust =
+ Τα ακόλουθα από τα μυστικά σας κλειδιά δεν έχουν σχέση εμπιστοσύνης.
+ { $desc }.
+ Σας συνιστούμε να ορίσετε το "Βασίζεται σε πιστοποιήσεις" σε "απόλυτο" στις ιδιότητες των κλειδιών.
+expiry-open-key-manager = Άνοιγμα διαχείρισης κλειδιών OpenPGP
+expiry-open-key-properties = Άνοιγμα Ιδιοτήτων Κλειδιού
+# Strings filters.jsm
+filter-folder-required = Πρέπει να επιλέξετε έναν φάκελο προορισμού.
+filter-decrypt-move-warn-experimental =
+ Προειδοποίηση - η ενέργεια φίλτρου "Μόνιμη αποκρυπτογράφηση" μπορεί να προκαλέσει καταστροφή μηνυμάτων.
+ Συνιστούμε ανεπιφύλακτα να δοκιμάσετε πρώτα το φίλτρο "Δημιουργία αποκρυπτογραφημένου αντιγράφου", να ελέγξετε προσεκτικά το αποτέλεσμα και να αρχίσετε να χρησιμοποιείτε αυτό το φίλτρο μόνο όταν είστε ικανοποιημένοι με το αποτέλεσμα.
+filter-term-pgpencrypted-label = Κρυπτογραφημένο κατά OpenPGP
+filter-key-required = Πρέπει να επιλέξετε ένα κλειδί παραλήπτη.
+filter-key-not-found = Δεν ήταν δυνατή η εύρεση ενός κλειδιού κρυπτογράφησης για το '{ $desc }'.
+filter-warn-key-not-secret =
+ Προειδοποίηση - η ενέργεια φίλτρου "Κρυπτογράφηση με το κλειδί" αντικαθιστά τους παραλήπτες.
+ Εάν δεν έχετε το μυστικό κλειδί για το '{ $desc }' δεν θα μπορείτε πλέον να διαβάζετε τα μηνύματα.
+# Strings filtersWrapper.jsm
+filter-decrypt-move-label = Οριστική αποκρυπτογράφηση (OpenPGP)
+filter-decrypt-copy-label = Δημιουργία αποκρυπτογραφημένου αντιγράφου (OpenPGP)
+filter-encrypt-label = Κρυπτογράφηση με το κλειδί (OpenPGP)
+# Strings in enigmailKeyImportInfo.js
+import-info-title =
+ .title = Επιτυχία! Τα κλειδιά εισήχθησαν
+import-info-bits = Bits
+import-info-created = Δημιουργήθηκε
+import-info-fpr = Αποτύπωμα
+import-info-details = Προβολή λεπτομερειών και διαχείριση αποδοχής κλειδιών
+import-info-no-keys = Δεν εισήχθηκαν κλειδιά.
+# Strings in enigmailKeyManager.js
+import-from-clip = Θέλετε να εισάγετε μερικά κλειδιά από το πρόχειρο;
+import-from-url = Λήψη δημόσιου κλειδιού από αυτήν τη διεύθυνση URL:
+copy-to-clipbrd-failed = Δεν ήταν δυνατή η αντιγραφή των επιλεγμένων κλειδιών στο πρόχειρο.
+copy-to-clipbrd-ok = Τα κλειδιά αντιγράφηκαν στο πρόχειρο
+delete-secret-key =
+ ΠΡΟΕΙΔΟΠΟΙΗΣΗ: Πρόκειται να διαγράψετε ένα μυστικό κλειδί!
+
+ Εάν διαγράψετε το μυστικό κλειδί σας, δεν θα μπορείτε πλέον να αποκρυπτογραφήσετε μηνύματα κρυπτογραφημένα για αυτό το κλειδί, ούτε θα μπορείτε να το ανακαλέσετε.
+
+ Θέλετε πραγματικά να διαγράψετε και ΤΑ ΔΥΟ, μυστικό και δημόσιο κλειδί
+ '{ $userId }';
+delete-mix =
+ ΠΡΟΕΙΔΟΠΟΙΗΣΗ: Πρόκειται να διαγράψετε μυστικά κλειδιά!
+ Εάν διαγράψετε το μυστικό κλειδί σας, δεν θα μπορείτε πλέον να αποκρυπτογραφήσετε τυχόν μηνύματα κρυπτογραφημένα για αυτό το κλειδί.
+ Θέλετε πραγματικά να διαγράψετε και ΤΑ ΔΥΟ, τα επιλεγμένα μυστικά και δημόσια κλειδιά;
+delete-pub-key =
+ Θέλετε να διαγράψετε το δημόσιο κλειδί
+ '{ $userId }';
+delete-selected-pub-key = Θέλετε να διαγράψετε τα δημόσια κλειδιά;
+refresh-all-question = Δεν επιλέξατε κλειδί. Θέλετε να ανανεώσετε ΟΛΑ τα κλειδιά;
+key-man-button-export-sec-key = Εξαγωγή &μυστικών κλειδιών
+key-man-button-export-pub-key = Εξαγωγή Μόνο &Δημόσιων Κλειδιών
+key-man-button-refresh-all = &Ανανέωση όλων των κλειδιών
+key-man-loading-keys = Γίνεται φόρτωση των κλειδιών, παρακαλούμε περιμένετε…
+ascii-armor-file = Θωρακισμένα αρχεία ASCII (*.asc)
+no-key-selected = Πρέπει να επιλέξετε τουλάχιστον ένα πλήκτρο για να εκτελέσετε την επιλεγμένη λειτουργία
+export-to-file = Εξαγωγή δημόσιου κλειδιού σε αρχείο
+export-keypair-to-file = Εξαγωγή Ιδιωτικού και Δημόσιου Κλειδιού σε αρχείο
+export-secret-key = Θέλετε να συμπεριλάβετε το μυστικό κλειδί στο αποθηκευμένο με τα κλειδιά αρχείο OpenPGP;
+save-keys-ok = Τα κλειδιά αποθηκεύτηκαν με επιτυχία
+save-keys-failed = Η αποθήκευση των κλειδιών απέτυχε
+default-pub-key-filename = Εξαγόμενα-δημόσια-κλειδιά
+default-pub-sec-key-filename = Αντίγραφα-ασφαλείας-των-ιδιωτικών-κλειδιών
+refresh-key-warn = Προειδοποίηση: ανάλογα με τον αριθμό των κλειδιών και την ταχύτητα σύνδεσης, η ανανέωση όλων των κλειδιών ενδέχεται να είναι αρκετά χρονοβόρα!
+preview-failed = Δεν είναι δυνατή η ανάγνωση του αρχείου δημόσιου κλειδιού.
+general-error = Σφάλμα: { $reason }
+dlg-button-delete = &Διαγραφή
+
+## Account settings export output
+
+openpgp-export-public-success = <b>Το δημόσιο κλειδί εξήχθη με επιτυχία!</b>
+openpgp-export-public-fail = <b>Δεν ήταν δυνατή η εξαγωγή του επιλεγμένου δημόσιου κλειδιού!</b>
+openpgp-export-secret-success = <b>Το μυστικό κλειδί εξήχθη με επιτυχία!</b>
+openpgp-export-secret-fail = <b>Δεν ήταν δυνατή η εξαγωγή του επιλεγμένου μυστικού κλειδιού!</b>
+# Strings in keyObj.jsm
+key-ring-pub-key-revoked = Το κλειδί { $userId } (αναγνωριστικό κλειδιού { $keyId }) είναι ανακλημένο.
+key-ring-pub-key-expired = Το κλειδί { $userId } (αναγνωριστικό κλειδιού { $keyId }) έχει λήξει.
+key-ring-key-disabled = Το κλειδί { $userId } (αναγνωριστικό κλειδιού { $keyId }) είναι απενεργοποιημένο· δεν μπορεί να χρησιμοποιηθεί.
+key-ring-key-invalid = Το κλειδί { $userId } (αναγνωριστικό κλειδιού { $keyId }) δεν είναι έγκυρο. Εξετάστε αν μπορείτε να το επαληθεύσετε σωστά.
+key-ring-key-not-trusted = Το κλειδί { $userId } (αναγνωριστικό κλειδιού { $keyId }) δεν είναι αρκετά αξιόπιστο. Ορίστε το επίπεδο εμπιστοσύνης του κλειδιού σας σε "απόλυτο" για να το χρησιμοποιήσετε για υπογραφή.
+key-ring-no-secret-key = Φαίνεται να μην έχετε το μυστικό κλειδί για { $userId } (αναγνωριστικό κλειδιού { $keyId }) στο αποθετήριο κλειδιών σας· δεν μπορείτε να χρησιμοποιήσετε το κλειδί για υπογραφή.
+key-ring-pub-key-not-for-signing = Το κλειδί { $userId } (αναγνωριστικό κλειδιού { $keyId }) δεν μπορεί να χρησιμοποιηθεί για υπογραφή.
+key-ring-pub-key-not-for-encryption = Το κλειδί { $userId } (αναγνωριστικό κλειδιού { $keyId }) δεν μπορεί να χρησιμοποιηθεί για κρυπτογράφηση.
+key-ring-sign-sub-keys-revoked = Ανακαλούνται όλα τα υποκλειδιά υπογραφής του κλειδιού { $userId } (αναγνωριστικό κλειδιού { $keyId }).
+key-ring-sign-sub-keys-expired = Όλα τα υποκλειδιά υπογραφής του κλειδιού { $userId } (αναγνωριστικό κλειδιού { $keyId }) έχουν λήξει.
+key-ring-sign-sub-keys-unusable = Όλα τα υποκλειδιά υπογραφής του κλειδιού { $userId } (αναγνωριστικό κλειδιού { $keyId }) έχουν ανακληθεί, λήξει ή δεν μπορούν να χρησιμοποιηθούν με άλλο τρόπο.
+key-ring-enc-sub-keys-revoked = Όλα τα υποκλειδιά κρυπτογράφησης του κλειδιού { $userId } (αναγνωριστικό κλειδιού { $keyId }) έχουν ανακληθεί.
+key-ring-enc-sub-keys-expired = Όλα τα υποκλειδιά κρυπτογράφησης του κλειδιού { $userId } (αναγνωριστικό κλειδιού { $keyId }) έχουν λήξει.
+key-ring-enc-sub-keys-unusable = Όλα τα υποκλειδιά κρυπτογράφησης του κλειδιού { $userId } (αναγνωριστικό κλειδιού { $keyId }) έχουν ανακληθεί, λήξει ή δεν μπορούν να χρησιμοποιηθούν με άλλο τρόπο.
+# Strings in gnupg-keylist.jsm
+keyring-photo = Φωτογραφία
+user-att-photo = Χαρακτηριστικό χρήστη (εικόνα JPEG)
+# Strings in key.jsm
+already-revoked = Αυτό το κλειδί έχει ήδη ανακληθεί.
+# $identity (String) - the id and associated user identity of the key being revoked
+revoke-key-question =
+ Πρόκειται να ανακαλέσετε το κλειδί '{ $identity }'.
+ Δε θα μπορείτε πλέον να υπογράφετε με αυτό το κλειδί και μόλις αυτό διανεμηθεί, άλλοι δε θα μπορούν πλέον να κρυπτογραφούν με αυτό το κλειδί. Μπορείτε ωστόσο να χρησιμοποιείτε το κλειδί για την αποκρυπτογράφηση παλιών μηνυμάτων.
+ Θέλετε να συνεχίσετε;
+# $keyId (String) - the id of the key being revoked
+revoke-key-not-present =
+ Δεν έχετε κλειδί (0x{ $keyId }) που να αντιστοιχεί σε αυτό το πιστοποιητικό ανάκλησης!
+ Εάν έχετε χάσει το κλειδί σας, πρέπει να το εισαγάγετε (π.χ. από έναν διακομιστή κλειδιών) πριν από την εισαγωγή του πιστοποιητικού ανάκλησης!
+# $keyId (String) - the id of the key being revoked
+revoke-key-already-revoked = Το κλειδί 0x{ $keyId } έχει ήδη ανακληθεί.
+key-man-button-revoke-key = &Ανάκληση κλειδιού
+openpgp-key-revoke-success = Επιτυχής ανάκληση κλειδιού.
+after-revoke-info =
+ Το κλειδί έχει ανακληθεί.
+ Διανέμετε εκ νέου αυτό το δημόσιο κλειδί, στέλνοντάς το μέσω ηλεκτρονικής αλληλογραφίας ή ανεβάζοντάς το σε διακομιστές κλειδιών, για να ενημερώσετε τους άλλους ότι ανακαλέσατε το κλειδί σας.
+ Μόλις το λογισμικό που χρησιμοποιούν άλλα άτομα ενημερωθεί για την ανάκληση, θα σταματήσει να χρησιμοποιεί το παλιό σας κλειδί.
+ Εάν χρησιμοποιείτε ένα νέο κλειδί για την ίδια διεύθυνση ηλεκτρονικού ταχυδρομείου και επισυνάψετε το νέο δημόσιο κλειδί στα μηνύματα ηλεκτρονικού ταχυδρομείου που στέλνετε, τότε η πληροφορία σχετικά με το παλιό κλειδί που ανακαλέσατε θα συμπεριληφθεί αυτόματα.
+# Strings in keyRing.jsm & decryption.jsm
+key-man-button-import = &Εισαγωγή
+delete-key-title = Διαγραφή κλειδιού OpenPGP
+delete-external-key-title = Αφαίρεση εξωτερικού κλειδιού GnuPG
+delete-external-key-description = Θέλετε να αφαιρέσετε αυτό το ID εξωτερικού κλειδιού GnuPG;
+key-in-use-title = Το κλειδί OpenPGP χρησιμοποιείται αυτήν τη στιγμή
+delete-key-in-use-description = Αδύνατο να συνεχίσω! Το κλειδί που επιλέξατε για διαγραφή χρησιμοποιείται αυτήν τη στιγμή από αυτήν την ταυτότητα. Επιλέξτε διαφορετικό κλειδί ή μην επιλέγετε κάτι και δοκιμάστε ξανά.
+revoke-key-in-use-description = Αδύνατο να συνεχίσω! Το κλειδί που επιλέξατε για ανάκληση χρησιμοποιείται αυτήν τη στιγμή από αυτήν την ταυτότητα. Επιλέξτε διαφορετικό κλειδί ή μην επιλέγετε κάτι και δοκιμάστε ξανά.
+# Strings used in errorHandling.jsm
+key-error-key-spec-not-found = Η διεύθυνση ηλεκτρονικού ταχυδρομείο '{ $keySpec }' δεν μπορεί να αντιστοιχιστεί με ένα κλειδί στο αποθετήριο κλειδιών σας.
+key-error-key-id-not-found = Το ορισμένο αναγνωριστικό κλειδιού '{ $keySpec }' δεν μπορεί να βρεθεί στο αποθετήριο κλειδιών σας.
+key-error-not-accepted-as-personal = Δεν έχετε επιβεβαιώσει ότι το κλειδί με αναγνωριστικό '{ $keySpec }' είναι το προσωπικό σας κλειδί.
+# Strings used in enigmailKeyManager.js & windows.jsm
+need-online = Η λειτουργία που έχετε επιλέξει δεν είναι διαθέσιμη σε λειτουργία εκτός σύνδεσης. Συνδεθείτε στο διαδίκτυο και δοκιμάστε ξανά.
+# Strings used in keyRing.jsm & keyLookupHelper.jsm
+no-key-found = Δεν μπορέσαμε να βρούμε κάποιο κλειδί που να ταιριάζει με τα καθορισμένα κριτήρια αναζήτησης.
+# Strings used in keyRing.jsm & GnuPGCryptoAPI.jsm
+fail-key-extract = Σφάλμα - Η εντολή εξαγωγής κλειδιού απέτυχε
+# Strings used in keyRing.jsm
+fail-cancel = Σφάλμα - Η λήψη του κλειδιού ακυρώθηκε από τον χρήστη
+not-first-block = Σφάλμα - Το πρώτο τμήμα OpenPGP δεν αποτελεί τμήμα δημόσιου κλειδιού
+import-key-confirm = Εισαγωγή των δημόσιων κλειδιών που είναι ενσωματωμένα στο μήνυμα;
+fail-key-import = Σφάλμα - η εισαγωγή κλειδιού απέτυχε
+file-write-failed = Αποτυχία εγγραφής στο αρχείο { $output }
+no-pgp-block = Σφάλμα - Δεν βρέθηκε έγκυρο μπλοκ δεδομένων θωράκισης OpenPGP
+confirm-permissive-import = Η εισαγωγή απέτυχε. Το κλειδί που προσπαθείτε να εισαγάγετε ενδέχεται να είναι κατεστραμμένο ή να χρησιμοποιεί άγνωστα χαρακτηριστικά. Θέλετε να προσπαθήσετε να εισαγάγετε τα τμήματα που είναι σωστά; Αυτό μπορεί να έχει ως αποτέλεσμα την εισαγωγή ημιτελών και μη χρησιμοποιήσιμων κλειδιών.
+# Strings used in trust.jsm
+key-valid-unknown = άγνωστο
+key-valid-invalid = μη έγκυρο
+key-valid-disabled = ανενεργό
+key-valid-revoked = ανακλήθηκε
+key-valid-expired = έληξε
+key-trust-untrusted = μη έμπιστο
+key-trust-marginal = οριακό
+key-trust-full = έμπιστο
+key-trust-ultimate = απόλυτο
+key-trust-group = (ομάδα)
+# Strings used in commonWorkflows.js
+import-key-file = Εισαγωγή αρχείου κλειδιού OpenPGP
+import-rev-file = Εισαγωγή αρχείου ανάκλησης OpenPGP
+gnupg-file = Αρχεία GnuPG
+import-keys-failed = Αποτυχία εισαγωγής κλειδιών
+passphrase-prompt = Εισαγάγετε τη μυστική φράση που ξεκλειδώνει το ακόλουθο κλειδί: { $key }
+file-to-big-to-import = Το αρχείο είναι πολύ μεγάλο. Μην εισαγάγετε ταυτόχρονα ένα μεγάλο σύνολο κλειδιών.
+# Strings used in enigmailKeygen.js
+save-revoke-cert-as = Δημιουργία & Αποθήκευση Πιστοποιητικού Ανάκλησης
+revoke-cert-ok = Το πιστοποιητικό ανάκλησης δημιουργήθηκε με επιτυχία. Μπορείτε να το χρησιμοποιήσετε για να ακυρώσετε το δημόσιο κλειδί σας, π.χ. σε περίπτωση που χάσετε το μυστικό κλειδί σας.
+revoke-cert-failed = Δεν ήταν δυνατή η δημιουργία του πιστοποιητικού ανάκλησης.
+gen-going = Η δημιουργία κλειδιού είναι ήδη σε εξέλιξη!
+keygen-missing-user-name = Δεν υπάρχει καθορισμένο όνομα για τον τρέχοντα λογαριασμό/ταυτότητα. Εισαγάγετε μια τιμή στο πεδίο "Το όνομά σας" στις ρυθμίσεις του λογαριασμού.
+expiry-too-short = Το κλειδί σας πρέπει να είναι έγκυρο για τουλάχιστον μία ημέρα.
+expiry-too-long = Δεν μπορείτε να δημιουργήσετε ένα κλειδί που λήγει σε περισσότερο από 100 χρόνια.
+key-confirm = Να δημιουργηθεί το δημόσιο και ιδιωτικό κλειδί για την ταυτότητα '{ $id }';
+key-man-button-generate-key = &Δημιουργία κλειδιού
+key-abort = Ακύρωση δημιουργίας κλειδιού;
+key-man-button-generate-key-abort = &Ακύρωση δημιουργίας κλειδιού
+key-man-button-generate-key-continue = &Συνέχεια δημιουργίας κλειδιού
+
+# Strings used in enigmailMessengerOverlay.js
+
+failed-decrypt = Σφάλμα - αποτυχία αποκρυπτογράφησης
+fix-broken-exchange-msg-failed = Αποτυχία επιδιόρθωσης μηνύματος.
+attachment-no-match-from-signature = Δεν ήταν δυνατή η αντιστοίχιση του αρχείου υπογραφής '{ $attachment }' με κάποιο συνημμένο
+attachment-no-match-to-signature = Δεν ήταν δυνατή η αντιστοίχιση του συνημμένου '{ $attachment }' με ένα αρχείο υπογραφής
+signature-verified-ok = Η υπογραφή για το συνημμένο { $attachment } επαληθεύτηκε με επιτυχία
+signature-verify-failed = Δεν ήταν δυνατή η επαλήθευση της υπογραφής για το συνημμένο { $attachment }
+decrypt-ok-no-sig =
+ Προειδοποίηση
+ Η αποκρυπτογράφηση ήταν επιτυχής, αλλά η υπογραφή δεν ήταν δυνατό να επαληθευτεί σωστά
+msg-ovl-button-cont-anyway = &Συνέχεια ούτως ή άλλως
+enig-content-note = *Τα συνημμένα σε αυτό το μήνυμα δεν έχουν υπογραφεί ούτε κρυπτογραφηθεί*
+# Strings used in enigmailMsgComposeOverlay.js
+msg-compose-button-send = &Αποστολή μηνύματος
+msg-compose-details-button-label = Λεπτομέρειες…
+msg-compose-details-button-access-key = Λ
+send-aborted = Η λειτουργία της αποστολής ακυρώθηκε.
+key-not-trusted = Δεν υπάρχει αρκετή εμπιστοσύνη για το κλειδί '{ $key }'
+key-not-found = Το κλειδί '{ $key }' δεν βρέθηκε
+key-revoked = Το κλειδί '{ $key }' ανακλήθηκε
+key-expired = Το κλειδί '{ $key }' έληξε
+msg-compose-internal-error = Παρουσιάστηκε εσωτερικό σφάλμα.
+keys-to-export = Επιλέξτε κλειδιά OpenPGP για εισαγωγή
+msg-compose-partially-encrypted-inlinePGP =
+ Το μήνυμα στο οποίο απαντάτε περιέχει τόσο μη κρυπτογραφημένα όσο και κρυπτογραφημένα τμήματα. Εάν ο αποστολέας δεν μπόρεσε να αποκρυπτογραφήσει εξαρχής ορισμένα τμήματα του μηνύματος, ενδέχεται να διαρρεύσουν εμπιστευτικές πληροφορίες που ο αποστολέας δεν μπόρεσε ο ίδιος να αποκρυπτογραφήσει αρχικά.
+ Εξετάστε το ενδεχόμενο να αφαιρέσετε όλο το κείμενο με παράθεση από την απάντησή σας σε αυτόν τον αποστολέα.
+msg-compose-cannot-save-draft = Σφάλμα κατά την αποθήκευση του προχείρου
+msg-compose-partially-encrypted-short = Προσοχή στη διαρροή ευαίσθητων πληροφοριών - μερικώς κρυπτογραφημένο μήνυμα.
+quoted-printable-warn =
+ Έχετε ενεργοποιήσει την κωδικοποίηση 'quoted-printable'' για την αποστολή μηνυμάτων. Αυτό μπορεί να οδηγήσει σε εσφαλμένη αποκρυπτογράφηση και / ή επαλήθευση του μηνύματός σας.
+ Θέλετε τώρα να απενεργοποιήσετε την αποστολή μηνυμάτων ως 'quoted-printable';
+minimal-line-wrapping =
+ Έχετε ορίσει την αναδίπλωση γραμμής στους { $width } χαρακτήρες. Για σωστή κρυπτογράφηση και / ή υπογραφή, αυτή η τιμή πρέπει να είναι τουλάχιστον 68.
+ Θέλετε να αλλάξετε τώρα την αναδίπλωση γραμμής στους 68 χαρακτήρες;
+sending-hidden-rcpt = Οι παραλήπτες BCC (κρυφή κοινοποίηση) δεν μπορούν να χρησιμοποιηθούν κατά την αποστολή ενός κρυπτογραφημένου μηνύματος. Για να στείλετε αυτό το κρυπτογραφημένο μήνυμα, αφαιρέστε τους παραλήπτες BCC ή μετακινήστε τους στο πεδίο CC.
+sending-news =
+ Η κρυπτογραφημένη αποστολή ακυρώθηκε.
+ Δεν είναι δυνατή η κρυπτογράφηση αυτού του μηνύματος, επειδή υπάρχουν παραλήπτες ομάδας συζήτησης. Στείλτε ξανά το μήνυμα χωρίς κρυπτογράφηση.
+send-to-news-warning =
+ Προειδοποίηση: πρόκειται να στείλετε ένα κρυπτογραφημένο μήνυμα σε μια ομάδα συζητήσεων.
+ Αυτό αποθαρρύνεται επειδή έχει νόημα μόνο αν όλα τα μέλη της ομάδας μπορούν να αποκρυπτογραφήσουν το μήνυμα, δηλαδή το μήνυμα πρέπει να κρυπτογραφηθεί με τα κλειδιά όλων των συμμετεχόντων στην ομάδα. Στείλτε αυτό το μήνυμα μόνο εάν γνωρίζετε ακριβώς τι κάνετε.
+ Θέλετε να συνεχίσετε;
+save-attachment-header = Αποθήκευση αποκρυπτογραφημένου συνημμένου
+no-temp-dir =
+ Δεν ήταν δυνατή η εύρεση ενός προσωρινού καταλόγου για εγγραφή
+ Καθορίστε τη μεταβλητή περιβάλλοντος TEMP
+possibly-pgp-mime = Πιθανόν κρυπτογραφημένο ή υπογεγραμμένο μήνυμα κατά PGP / MIME· χρησιμοποιήστε τη λειτουργία 'Αποκρυπτογράφηση/Επαλήθευση' για επιβεβαίωση
+cannot-send-sig-because-no-own-key = Δεν είναι δυνατή η ψηφιακή υπογραφή αυτού του μηνύματος, επειδή δεν έχετε ρυθμίσει ακόμα την κρυπτογράφηση από άκρο σε άκρο για <{ $key }>
+cannot-send-enc-because-no-own-key = Δεν είναι δυνατή η αποστολή αυτού του μηνύματος ως κρυπτογραφημένο, επειδή δεν έχετε ρυθμίσει ακόμα την κρυπτογράφηση από άκρο σε άκρο για <{ $key }>
+# Strings used in decryption.jsm
+do-import-multiple =
+ Εισαγωγή των ακόλουθων κλειδιών;
+ { $key }
+do-import-one = Εισαγωγή του { $name } ({ $id });
+cant-import = Σφάλμα κατά την εισαγωγή δημόσιου κλειδιού
+unverified-reply = Το τμήμα του μηνύματος με εσοχή (απάντηση) πιθανότατα τροποποιήθηκε
+key-in-message-body = Βρέθηκε ένα κλειδί στο σώμα του μηνύματος. Κάντε κλικ στο 'Εισαγωγή κλειδιού για να εισαγάγετε το κλειδί
+sig-mismatch = Σφάλμα - Αναντιστοιχία υπογραφής
+invalid-email = Σφάλμα - μη έγκυρη διεύθυνση(εις) email
+attachment-pgp-key =
+ Το συνημμένο '{ $name }' που ανοίγετε φαίνεται να είναι ένα αρχείο κλειδιού OpenPGP.
+ Κάντε κλικ στο 'Εισαγωγή' για να εισαγάγετε τα κλειδιά που περιέχονται ή στο 'Προβολή' για να δείτε τα περιεχόμενα του αρχείου σε ένα παράθυρο του προγράμματος περιήγησης
+dlg-button-view = &Προβολή
+# Strings used in enigmailMsgHdrViewOverlay.js
+decrypted-msg-with-format-error = Το μήνυμα αποκρυπτογραφήθηκε (αποκαταστάθηκε η κατεστραμμένη μορφή μηνύματος PGP που πιθανότατα προκλήθηκε από έναν παλιό διακομιστή Exchange, έτσι ενδέχεται το αποτέλεσμα να μην είναι άριστα αναγνώσιμο)
+# Strings used in encryption.jsm
+not-required = Σφάλμα - δεν απαιτείται κρυπτογράφηση
+# Strings used in windows.jsm
+no-photo-available = Καμία διαθέσιμη φωτογραφία
+error-photo-path-not-readable = Η διαδρομή για τη φωτογραφία '{ $photo }' δεν είναι αναγνώσιμη
+debug-log-title = Αρχείο αποσφαλμάτωσης OpenPGP
+# Strings used in dialog.jsm
+repeat-prefix = Αυτή η ειδοποίηση θα επαναληφθεί { $count }
+repeat-suffix-singular = ακόμη φορά.
+repeat-suffix-plural = ακόμη φορές.
+no-repeat = Αυτή η ειδοποίηση δεν θα εμφανιστεί ξανά.
+dlg-keep-setting = Αποθήκευση απάντησης και να μην γίνει ξανά ερώτηση
+dlg-button-ok = &OK
+dlg-button-close = &Κλείσιμο
+dlg-button-cancel = &Ακύρωση
+dlg-no-prompt = Να μην εμφανιστεί αυτός ο διάλογος ξανά
+enig-prompt = Προτροπή OpenPGP
+enig-confirm = Επιβεβαίωση OpenPGP
+enig-alert = Ειδοποίηση OpenPGP
+enig-info = Πληροφορίες OpenPGP
+# Strings used in persistentCrypto.jsm
+dlg-button-retry = &Επανάληψη
+dlg-button-skip = &Παράλειψη
+# Strings used in enigmailCommon.js
+enig-error = Σφάλμα OpenPGP
+enig-alert-title =
+ .title = Ειδοποίηση OpenPGP
diff --git a/l10n-el/mail/messenger/otr/add-finger.ftl b/l10n-el/mail/messenger/otr/add-finger.ftl
new file mode 100644
index 0000000000..ba68fd2640
--- /dev/null
+++ b/l10n-el/mail/messenger/otr/add-finger.ftl
@@ -0,0 +1,17 @@
+# 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/.
+
+otr-add-finger =
+ .title = Προσθήκη αποτυπώματος κλειδιού OTR
+
+# Variables:
+# $name (String) - name of a chat contact person
+# Do not translate 'OTR' (name of an encryption protocol)
+otr-add-finger-description = Εισαγάγετε το αποτύπωμα κλειδιού OTR για το { $name }.
+
+otr-add-finger-fingerprint = Δακτυλικό αποτύπωμα:
+otr-add-finger-tooltip-error = Καταχωρίστηκε μη έγκυρος χαρακτήρας. Επιτρέπονται μόνο τα γράμματα ABCDEF και αριθμοί
+
+otr-add-finger-input =
+ .placeholder = Το αποτύπωμα κλειδιού OTR μήκους 40 χαρακτήρων
diff --git a/l10n-el/mail/messenger/otr/am-im-otr.ftl b/l10n-el/mail/messenger/otr/am-im-otr.ftl
new file mode 100644
index 0000000000..13b9e5701a
--- /dev/null
+++ b/l10n-el/mail/messenger/otr/am-im-otr.ftl
@@ -0,0 +1,25 @@
+# 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/.
+
+account-encryption =
+ .label = Κρυπτογράφηση από άκρο σε άκρο
+account-otr-label = Μηνύματα εκτός εγγραφής (OTR)
+account-otr-description = Το { -brand-short-name } υποστηρίζει κρυπτογράφηση από άκρο σε άκρο για προσωπικές συνομιλίες. Αυτό εμποδίζει την υποκλοπή μιας συζήτησης από τρίτους. Η κρυπτογράφηση από άκρο σε άκρο μπορεί να χρησιμοποιηθεί μόνο όταν ο συνομιλητής σας χρησιμοποιεί επίσης λογισμικό με υποστήριξη OTR.
+otr-encryption-title = Επαληθευμένη κρυπτογράφηση
+otr-encryption-caption = Για να επιτρέψετε σε άλλους να επαληθεύσουν την ταυτότητά σας σε συνομιλίες OTR, μοιραστείτε το δικό σας αποτύπωμα OTR με ένα εξωτερικό (εκτός ζώνης) κανάλι επικοινωνίας.
+otr-fingerprint-label = Το αποτύπωμά σας:
+view-fingerprint-button =
+ .label = Διαχείριση αποτυπωμάτων των επαφών
+ .accesskey = π
+otr-settings-title = Ρυθμίσεις OTR
+otr-log =
+ .label = Συμπερίληψη κρυπτογραφημένων μηνυμάτων OTR στα αρχεία συζητήσεων
+otr-requireEncryption =
+ .label = Απαίτηση κρυπτογράφησης από άκρο σε άκρο σε πρσωπικές συζητήσεις
+otr-require-encryption-info = Όταν απαιτείται κρυπτογράφηση από άκρο σε άκρο, τα μηνύματα σε συζητήσεις ενός προς έναν δε θα αποστέλλονται εκτός αν μπορούν να κρυπτογραφηθούν. Τα ληφθέντα μη κρυπτογραφημένα μηνύματα δε θα εμφανίζονται ως μέρος της κανονικής συζήτησης και παράλληλα δε θα καταγράφονται.
+otr-verifyNudge =
+ .label = Να γίνεται πάντα υπενθύμιση για επαλήθευση μη επαληθευμένης επαφής
+
+otr-notYetAvailable = δεν διατίθεται ακόμα
+
diff --git a/l10n-el/mail/messenger/otr/auth.ftl b/l10n-el/mail/messenger/otr/auth.ftl
new file mode 100644
index 0000000000..5492f81310
--- /dev/null
+++ b/l10n-el/mail/messenger/otr/auth.ftl
@@ -0,0 +1,59 @@
+# 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/.
+
+otr-auth =
+ .title = Επαλήθευση ταυτότητας επαφής
+ .buttonlabelaccept = Επαλήθευση
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+auth-title = Επαληθεύστε την ταυτότητα του { $name }
+
+# Variables:
+# $own_name (String) - the user's own screen name
+auth-your-fp-value = Αποτύπωμα για εσάς, { $own_name }:
+
+# Variables:
+# $their_name (String) - the screen name of a chat contact
+auth-their-fp-value = Αποτύπωμα για τον/την { $their_name }:
+
+auth-help = Η επαλήθευση ταυτότητας της επαφής σας βοηθά να διασφαλίσετε ότι η συνομιλία είναι πραγματικά ιδιωτική, κάνοντας πολύ δύσκολη την υποκλοπή ή τη μεταχείριση της συζήτησής σας από τρίτους.
+auth-helpTitle = Βοήθεια επαλήθευσης
+
+auth-questionReceived = Αυτή είναι η ερώτηση που έθεσε η επαφή σας:
+
+auth-yes =
+ .label = Ναι
+
+auth-no =
+ .label = Όχι
+
+auth-verified = Έχω επαληθεύσει ότι αυτό είναι στην πραγματικότητα το σωστό αποτύπωμα.
+
+auth-manualVerification = Χειροκίνητη επαλήθευση αποτυπώματος
+auth-questionAndAnswer = Ερώτηση και απάντηση
+auth-sharedSecret = Κοινό μυστικό
+
+auth-manualVerification-label =
+ .label = { auth-manualVerification }
+
+auth-questionAndAnswer-label =
+ .label = { auth-questionAndAnswer }
+
+auth-sharedSecret-label =
+ .label = { auth-sharedSecret }
+
+auth-manualInstruction = Επικοινωνήστε με το επιθυμητό άτομο μέσω κάποιου άλλου, έμπιστου καναλιού, όπως ένα email με υπογραφή OpenPGP ή μέσω τηλεφώνου. Θα πρέπει να ανταλλάξετε αποτυπώματα. (Αποτύπωμα είναι ένα checksum που ταυτοποιεί ένα κλειδί κρυπτογράφησης.) Αν το αποτύπωμα ταιριάζει, θα πρέπει να υποδείξετε στον παρακάτω διάλογο ότι έχετε επαληθεύσει το αποτύπωμα.
+
+auth-how = Πώς θέλετε να επαληθεύσετε την ταυτότητα της επαφής σας;
+
+auth-qaInstruction = Σκεφτείτε μια ερώτηση της οποίας η απάντηση είναι γνωστή μόνο σε εσάς και την επαφή σας. Εισάγετε την ερώτηση και την απάντηση και περιμένετε να εισαγάγει την απάντηση η επαφή σας. Αν οι απαντήσεις δεν ταιριάζουν, το κανάλι επικοινωνίας που χρησιμοποιείτε ενδέχεται να παρακολουθείται.
+
+auth-secretInstruction = Σκεφτείτε ένα μυστικό που γνωρίζετε μόνο εσείς και η επαφή σας. Μην χρησιμοποιήσετε την ίδια σύνδεση διαδικτύου για να ανταλλάξετε το μυστικό. Εισάγετε το μυστικό και περιμένετε να το εισαγάγει και η επαφή σας. Αν τα μυστικά δεν ταιριάζουν, το κανάλι επικοινωνίας που χρησιμοποιείται ενδέχεται να βρίσκεται υπό παρακολούθηση.
+
+auth-question = Εισάγετε ερώτηση:
+
+auth-answer = Εισάγετε απάντηση (διαχωρισμός κεφαλαίων - μικρών):
+
+auth-secret = Εισάγετε το μυστικό:
diff --git a/l10n-el/mail/messenger/otr/chat.ftl b/l10n-el/mail/messenger/otr/chat.ftl
new file mode 100644
index 0000000000..d46146b50e
--- /dev/null
+++ b/l10n-el/mail/messenger/otr/chat.ftl
@@ -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/.
+
+state-label = Κατάσταση κρυπτογράφησης:
+
+start-text = Έναρξη κρυπτογραφημένης συζήτησης
+
+start-label =
+ .label = { start-text }
+
+start-tooltip =
+ .tooltiptext = { start-text }
+
+end-label =
+ .label = Λήξη κρυπτογραφημένης συζήτησης
+
+auth-label =
+ .label = Επαλήθευση ταυτότητας επαφής
diff --git a/l10n-el/mail/messenger/otr/finger-sync.ftl b/l10n-el/mail/messenger/otr/finger-sync.ftl
new file mode 100644
index 0000000000..df37da4a90
--- /dev/null
+++ b/l10n-el/mail/messenger/otr/finger-sync.ftl
@@ -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/.
+
+finger-yes = Επαληθευμένο
+finger-no = Μη επαληθευμένο
+
+finger-subset-title = Αφαίρεση αποτυπωμάτων
+finger-subset-message = Τουλάχιστον ένα αποτύπωμα δεν αφαιρέθηκε, επειδή το αντίστοιχο κλειδί χρησιμοποιείται αυτή τη στιγμή σε μια ενεργή συζήτηση.
+
+finger-remove-all-title = Αφαίρεση όλων των αποτυπωμάτων
+finger-remove-all-message = Θέλετε σίγουρα να αφαιρέσετε όλα τα προηγούμενα αποτυπώματα; Όλες οι προηγούμενες επαληθεύσεις ταυτότητας OTR θα χαθούν.
diff --git a/l10n-el/mail/messenger/otr/finger.ftl b/l10n-el/mail/messenger/otr/finger.ftl
new file mode 100644
index 0000000000..f1100397da
--- /dev/null
+++ b/l10n-el/mail/messenger/otr/finger.ftl
@@ -0,0 +1,18 @@
+# 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/.
+
+otr-finger =
+ .buttonlabelaccept = Κλείσιμο
+ .title = Προηγούμενα αποτυπώματα OTR
+finger-intro = Αποτυπώματα κλειδιού OTR από προηγούμενες συζητήσεις με κρυπτογράφηση από άκρη σε άκρη.
+finger-screenName =
+ .label = Επαφή
+finger-verified =
+ .label = Κατάσταση επαλήθευσης
+finger-fingerprint =
+ .label = Αποτύπωμα
+finger-remove =
+ .label = Αφαίρεση επιλεγμένων
+finger-remove-all =
+ .label = Αφαίρεση όλων
diff --git a/l10n-el/mail/messenger/otr/otr.ftl b/l10n-el/mail/messenger/otr/otr.ftl
new file mode 100644
index 0000000000..d62b0c5f44
--- /dev/null
+++ b/l10n-el/mail/messenger/otr/otr.ftl
@@ -0,0 +1,97 @@
+# 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/.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-encryption_required_part1 = Προσπαθήσατε να στείλετε ένα μη κρυπτογραφημένο μήνυμα στον/στην { $name }. Σύμφωνα με την πολιτική, τα μη κρυπτογραφημένα μηνύματα δεν επιτρέπονται.
+
+msgevent-encryption_required_part2 = Γίνεται προσπάθεια έναρξης ιδιωτικής συζήτησης. Το μήνυμά σας θα αποσταλεί ξανά όταν ξεκινήσει η ιδιωτική συνομιλία.
+msgevent-encryption_error = Προέκυψε σφάλμα κατά την κρυπτογράφηση του μηνύματός σας. Το μήνυμα δεν απεστάλη.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-connection_ended = Ο/Η { $name } έχει ήδη κλείσει την κρυπτογραφημένη σύνδεση με εσάς. Για να μην στείλετε κατά λάθος κάποιο μήνυμα χωρίς κρυπτογράφηση, το μήνυμά σας δεν απεστάλη. Παρακαλούμε τερματίστε την κρυπτογραφημένη συνομιλία σας, ή επανεκκινήστε την.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-setup_error = Προέκυψε σφάλμα κατά τη δημιουργία ιδιωτικής συνομιλίας με τον/την { $name }.
+
+# Do not translate 'OTR' (name of an encryption protocol)
+msgevent-msg_reflected = Λαμβάνετε τα δικά σας μηνύματα OTR. Είτε προσπαθείτε να μιλήσετε με τον εαυτό σας, είτε κάποιος αντανακλά τα μηνύματά σας πίσω σε εσάς.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-msg_resent = Το τελευταίο μήνυμα προς τον/την { $name } απεστάλη ξανά.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-rcvdmsg_not_private = Το κρυπτογραφημένο μήνυμα που ελήφθη από τον/την { $name } δεν είναι αναγνώσιμο, καθώς δεν έχετε ιδιωτική επικοινωνία.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-rcvdmsg_unreadable = Λάβατε ένα μη αναγνώσιμο, κρυπτογραφημένο μήνυμα από τον/την { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-rcvdmsg_malformed = Λάβατε ένα μήνυμα δεδομένων με λανθασμένη μορφή από τον/την { $name }.
+
+# A Heartbeat is a technical message used to keep a connection alive.
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-log_heartbeat_rcvd = Ελήφθη heartbeat από τον/την { $name }.
+
+# A Heartbeat is a technical message used to keep a connection alive.
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-log_heartbeat_sent = Απεστάλη heartbeat στον/στην { $name }.
+
+# Do not translate 'OTR' (name of an encryption protocol)
+msgevent-rcvdmsg_general_err = Προέκυψε απρόσμενο σφάλμα κατά την προσπάθεια προστασίας της συνομιλίας σας με OTR.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+# $msg (string) - the message that was received.
+msgevent-rcvdmsg_unencrypted = Το ακόλουθο μήνυμα που ελήφθη από τον/την { $name } δεν κρυπτογραφήθηκε: { $msg }
+
+# Do not translate 'OTR' (name of an encryption protocol)
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-rcvdmsg_unrecognized = Λάβατε ένα μη αναγνωρισμένο μήνυμα OTR από τον/την { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-rcvdmsg_for_other_instance = Ο/Η { $name } έχει αποστείλει μήνυμα που προορίζεται για διαφορετική συνεδρία. Αν έχετε συνδεθεί πολλαπλές φορές, μια άλλη συνεδρία ίσως έχει λάβει το μήνυμα.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+context-gone_secure_private = Ξεκίνησε η ιδιωτική συνομιλία με τον/την { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+context-gone_secure_unverified = Ξεκίνησε κρυπτογραφημένη, αλλά μη επαληθευμένη συνομιλία με τον/την { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+context-still_secure = Έγινε επιτυχώς ανανέωση της κρυπτογραφημένης συνομιλίας με τον/την { $name }.
+
+error-enc = Παρουσιάστηκε σφάλμα κατά την κρυπτογράφηση του μηνύματος.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+error-not_priv = Στείλατε κρυπτογραφημένα δεδομένα στον/στην { $name }, που δεν τα περίμενε.
+
+error-unreadable = Μεταδώσατε ένα μη αναγνώσιμο, κρυπτογραφημένο μήνυμα.
+error-malformed = Μεταδώσατε ένα μήνυμα δεδομένων με λανθασμένη μορφή.
+
+resent = [απεστάλη ξανά]
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+tlv-disconnected = Ο/Η { $name } έληξε την κρυπτογραφημένη συνομιλία μαζί σας· πρέπει να κάνετε το ίδιο.
+
+# Do not translate "Off-the-Record" and "OTR" which is the name of an encryption protocol
+# Make sure that this string does NOT contain any numbers, e.g. like "3".
+# Variables:
+# $name (String) - the screen name of a chat contact person
+query-msg = Ο/Η { $name } έχει ζητήσει μια κρυπτογραφημένη συζήτηση εκτός καταγραφής (OTR). Ωστόσο, δεν έχετε άρθρωμα για να το υποστηρίξει αυτό. Δείτε το https://en.wikipedia.org/wiki/Off-the-Record_Messaging για περισσότερες πληροφορίες.
diff --git a/l10n-el/mail/messenger/otr/otrUI.ftl b/l10n-el/mail/messenger/otr/otrUI.ftl
new file mode 100644
index 0000000000..f17cce0816
--- /dev/null
+++ b/l10n-el/mail/messenger/otr/otrUI.ftl
@@ -0,0 +1,86 @@
+# 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/.
+
+start-label = Έναρξη κρυπτογραφημένης συζήτησης
+refresh-label = Ανανέωση κρυπτογραφημένης συζήτησης
+auth-label = Επαληθεύστε την ταυτότητα της επαφής σας
+reauth-label = Επαληθεύστε ξανά την ταυτότητα της επαφής σας
+
+auth-cancel = Ακύρωση
+auth-cancelAccessKey = Α
+
+auth-error = Προέκυψε σφάλμα κατά την επαλήθευση της ταυτότητας της επαφής σας.
+auth-success = Η επαλήθευση της ταυτότητας της επαφής σας ολοκληρώθηκε με επιτυχία.
+auth-successThem = Η επαφή σας επαλήθευσε με επιτυχία την ταυτότητά σας. Μπορείτε να επαληθεύσετε και εσείς την ταυτότητα του συνομιλητή, κάνοντας τη δική σας ερώτηση.
+auth-fail = Αποτυχία επαλήθευσης της ταυτότητας της επαφής σας.
+auth-waiting = Αναμονή για ολοκλήρωση επαλήθευσης από την επαφή…
+
+finger-verify = Επαλήθευση
+finger-verify-accessKey = Ε
+
+# Do not translate 'OTR' (name of an encryption protocol)
+buddycontextmenu-label = Προσθήκη δακτυλικού αποτυπώματος OTR
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+alert-start = Απόπειρα έναρξης κρυπτογραφημένης συνομιλίας με τον/την { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+alert-refresh = Απόπειρα ανανέωσης κρυπτογραφημένης συνομιλίας με τον/την { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+alert-gone_insecure = Η κρυπτογραφημένη συνομιλία με τον/την { $name } έληξε.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+finger-unseen = Η ταυτότητα του/της { $name } δεν έχει επαληθευτεί ακόμα. Δεν είναι δυνατή η συνήθης υποκλοπή, αλλά με λίγη προσπάθεια κάποιος μπορεί να εισβάλλει. Αποτρέψτε την παρακολούθηση επαληθεύοντας την ταυτότητα αυτής της επαφής.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+finger-seen = Ο/Η { $name } επικοινωνεί μαζί σας από μη αναγνωρισμένο υπολογιστή. Δεν είναι δυνατή η συνήθης υποκλοπή, αλλά με λίγη προσπάθεια κάποιος μπορεί να εισβάλλει. Αποτρέψτε την παρακολούθηση επαληθεύοντας την ταυτότητα αυτής της επαφής.
+
+state-not_private = Η τρέχουσα συνομιλία δεν είναι ιδιωτική.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+state-unverified = Η τρέχουσα συνομιλία είναι κρυπτογραφημένη αλλά όχι ιδιωτική, καθώς η ταυτότητα του/της { $name } δεν έχει επαληθευτεί ακόμη.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+state-private = Η ταυτότητα του/της { $name } έχει επαληθευτεί. Η τρέχουσα συνομιλία είναι κρυπτογραφημένη και ιδιωτική.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+state-finished = Ο/Η { $name } έληξε την κρυπτογραφημένη συνομιλία μαζί σας· πρέπει να κάνετε το ίδιο.
+
+state-not_private-label = Επισφαλής
+state-unverified-label = Μη επαληθευμένη
+state-private-label = Ιδιωτική
+state-finished-label = Έληξε
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+verify-request = Ο/Η { $name } απαίτησε την επαλήθευση της ταυτότητάς σας.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+afterauth-private = Έχετε επαληθεύσει την ταυτότητα του { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+afterauth-unverified = Η ταυτότητα του { $name } δεν έχει επαληθευτεί.
+
+verify-title = Επαληθεύστε την ταυτότητα της επαφής σας
+error-title = Σφάλμα
+success-title = Κρυπτογράφηση από άκρο σε άκρο
+successThem-title = Επαληθεύστε την ταυτότητα της επαφής σας
+fail-title = Δεν είναι δυνατή η επαλήθευση
+waiting-title = Απεστάλη αίτημα επαλήθευσης
+
+# Do not translate 'OTR' (name of an encryption protocol)
+# Variables:
+# $error (String) - contains an error message that describes the cause of the failure
+otr-genkey-failed = Αποτυχία δημιουργία ιδιωτικού κλειδιού OTR: { $error }
diff --git a/l10n-el/mail/messenger/policies/aboutPolicies.ftl b/l10n-el/mail/messenger/policies/aboutPolicies.ftl
new file mode 100644
index 0000000000..900cd1ae35
--- /dev/null
+++ b/l10n-el/mail/messenger/policies/aboutPolicies.ftl
@@ -0,0 +1,17 @@
+# 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/.
+
+about-policies-title = Πολιτικές επιχειρήσεων
+
+# 'Active' is used to describe the policies that are currently active
+active-policies-tab = Ενεργό
+errors-tab = Σφάλματα
+documentation-tab = Τεκμηρίωση
+
+no-specified-policies-message = Η υπηρεσία Πολιτικές επιχειρήσεων είναι ενεργή, αλλά δεν υπάρχουν ενεργοποιημένες πολιτικές.
+inactive-message = Η υπηρεσία Πολιτικές επιχειρήσεων είναι ανενεργή.
+
+policy-name = Όνομα πολιτικής
+policy-value = Τιμή πολιτικής
+policy-errors = Σφάλματα πολιτικής
diff --git a/l10n-el/mail/messenger/policies/policies-descriptions.ftl b/l10n-el/mail/messenger/policies/policies-descriptions.ftl
new file mode 100644
index 0000000000..566f595983
--- /dev/null
+++ b/l10n-el/mail/messenger/policies/policies-descriptions.ftl
@@ -0,0 +1,88 @@
+# 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/.
+
+
+## The Enterprise Policies feature is aimed at system administrators
+## who want to deploy these settings across several Thunderbird installations
+## all at once. This is traditionally done through the Windows Group Policy
+## feature, but the system also supports other forms of deployment.
+## These are short descriptions for individual policies, to be displayed
+## in the documentation section in about:policies.
+
+policy-3rdparty = Ορισμός πολιτικών που μπορούν να προσπελάσουν τα WebExtensions μέσω του chrome.storage.managed.
+policy-AppAutoUpdate = Ενεργοποίηση ή απενεργοποίηση αυτόματων ενημερώσεων εφαρμογής.
+policy-AppUpdateURL = Ορισμός προσαρμοσμένου URL ενημέρωσης εφαρμογής.
+policy-Authentication = Ρύθμιση ενσωματωμένης πιστοποίησης για ιστοσελίδες που την υποστηρίζουν.
+policy-BlockAboutAddons = Αποκλεισμός πρόσβασης στη Διαχείριση προσθέτων (about:addons).
+policy-BlockAboutConfig = Αποκλεισμός πρόσβασης στη σελίδα about:config.
+policy-BlockAboutProfiles = Αποκλεισμός πρόσβασης στη σελίδα about:profiles.
+policy-BlockAboutSupport = Αποκλεισμός πρόσβασης στη σελίδα about:support.
+policy-CaptivePortal = Ενεργοποίηση ή απενεργοποίηση υποστήριξης captive portal.
+policy-CertificatesDescription = Προσθήκη πιστοποιητικών ή χρήση ενσωματωμένων πιστοποιητικών.
+policy-Cookies = Αποδοχή ή απόρριψη τοποθέτησης cookies από ιστοσελίδες.
+policy-DisabledCiphers = Απενεργοποίηση κρυπτογράφησης.
+policy-DefaultDownloadDirectory = Ορισμός προεπιλεγμένου καταλόγου λήψης.
+policy-DisableAppUpdate = Αποτροπή ενημέρωσης του { -brand-short-name }.
+policy-DisableDefaultClientAgent = Αποτροπή οποιασδήποτε ενέργειας από την προεπιλεγμένη λειτουργία πελάτη. Ισχύει μόνο για Windows· οι άλλες πλατφόρμες δεν έχουν τέτοια υπηρεσία.
+policy-DisableDeveloperTools = Αποκλεισμός πρόσβασης στα εργαλεία προγραμματιστή.
+policy-DisableFeedbackCommands = Απενεργοποίηση εντολών για αποστολή σχολίων από το μενού "Βοήθεια" (Υποβολή σχολίων και αναφορά παραπλανητικής ιστοσελίδας).
+policy-DisableForgetButton = Αποτροπή πρόσβασης στο κουμπί "Διαγραφή".
+policy-DisableFormHistory = Χωρίς διατήρηση ιστορικού αναζήτησης και φορμών.
+policy-DisableMasterPasswordCreation = Αν αληθεύει, δεν μπορεί να δημιουργηθεί κύριος κωδικός πρόσβασης.
+policy-DisablePasswordReveal = Να μην επιτρέπεται η αποκάλυψη κωδικών πρόσβασης σε αποθηκευμένες συνδέσεις.
+policy-DisableProfileImport = Απενεργοποίηση της εντολής μενού για εισαγωγή δεδομένων από άλλη εφαρμογή.
+policy-DisableSafeMode = Απενεργοποίηση της λειτουργίας για επανεκκίνηση στην Ασφαλή λειτουργία. Σημείωση: το πλήκτρο Shift για είσοδο στην Ασφαλή λειτουργία μπορεί να απενεργοποιηθεί μόνο στα Windows με την Πολιτική ομάδας.
+policy-DisableSecurityBypass = Αποτροπή παράκαμψης ορισμένων προειδοποιήσεων ασφαλείας από το χρήστη.
+policy-DisableSystemAddonUpdate = Αποτροπή εγκατάστασης και ενημέρωσης προσθέτων συστήματος από το { -brand-short-name }.
+policy-DisableTelemetry = Απενεργοποίηση τηλεμετρίας.
+policy-DisplayMenuBar = Εμφάνιση γραμμής μενού από προεπιλογή.
+policy-DNSOverHTTPS = Ρύθμιση παραμέτρων DNS over HTTPS.
+policy-DontCheckDefaultClient = Απενεργοποίηση ελέγχου για το προεπιλεγμένο πρόγραμμα email κατά την εκκίνηση.
+policy-DownloadDirectory = Ορισμός και κλείδωμα καταλόγου λήψης.
+# “lock” means that the user won’t be able to change this setting
+policy-EnableTrackingProtection = Ενεργοποίηση ή απενεργοποίηση φραγής περιεχομένου και προαιρετικό κλείδωμα.
+# “lock” means that the user won’t be able to change this setting
+policy-EncryptedMediaExtensions = Ενεργοποίηση ή απενεργοποίηση κρυπτογραφημένων επεκτάσεων πολυμέσων και προαιρετικό κλείδωμα.
+# A “locked” extension can’t be disabled or removed by the user. This policy
+# takes 3 keys (“Install”, ”Uninstall”, ”Locked”), you can either keep them in
+# English or translate them as verbs.
+policy-Extensions = Εγκατάσταση, απεγκατάσταση ή κλείδωμα επεκτάσεων. Η επιλογή εγκατάστασης λαμβάνει τα URLs ή τις διαδρομές ως παραμέτρους. Οι επιλογές απεγκατάστασης και κλειδώματος λαμβάνουν IDs επεκτάσεων.
+policy-ExtensionSettings = Διαχειριστείτε όλες τις πτυχές εγκατάστασης μιας επέκτασης.
+policy-ExtensionUpdate = Ενεργοποίηση ή απενεργοποίηση αυτόματων ενημερώσεων επεκτάσεων.
+policy-HardwareAcceleration = Αν είναι ψευδές, απενεργοποίηση επιτάχυνσης υλικού.
+policy-InstallAddonsPermission = Αποδοχή εγκατάστασης προσθέτων από ορισμένες ιστοσελίδες.
+policy-LegacyProfiles = Απενεργοποίηση της λειτουργίας που απαιτεί ξεχωριστό προφίλ για κάθε εγκατάσταση.
+
+## Do not translate "SameSite", it's the name of a cookie attribute.
+
+policy-LegacySameSiteCookieBehaviorEnabled = Ενεργοποίηση προεπιλεγμένης ρύθμισης συμπεριφοράς του παλαιού SameSite cookie.
+policy-LegacySameSiteCookieBehaviorEnabledForDomainList = Επαναφορά στην παλαιά συμπεριφορά SameSite για cookies σε καθορισμένες ιστοσελίδες.
+
+##
+
+policy-LocalFileLinks = Να επιτρέπεται σε συγκεκριμένες ιστοσελίδες η σύνδεση με τοπικά αρχεία.
+policy-NetworkPrediction = Ενεργοποίηση ή απενεργοποίηση πρόβλεψης δικτύου (προφόρτωση DNS).
+policy-OfferToSaveLogins = Εξαναγκασμός της ρύθμισης για να επιτρέπεται στο { -brand-short-name } η πρόταση για απομνημόνευση αποθηκευμένων συνδέσεων και κωδικών πρόσβασης. Αποδεκτές η τιμή true και η τιμή false.
+policy-OfferToSaveLoginsDefault = Ορισμός προεπιλεγμένης τιμής για να επιτρέπεται στο { -brand-short-name } η πρόταση για απομνημόνευση αποθηκευμένων συνδέσεων και κωδικών πρόσβασης. Είναι αποδεκτές οι τιμές true και false.
+policy-OverrideFirstRunPage = Παράκαμψη της σελίδας πρώτης εκτέλεσης. Αφήστε αυτή την πολιτική κενή αν θέλετε να απενεργοποιήσετε τη σελίδα πρώτης εκτέλεσης.
+policy-OverridePostUpdatePage = Παράκαμψη της σελίδας "Τι νέο υπάρχει" μετά από ενημέρωση. Αφήστε αυτή την πολιτική κενή αν θέλετε να απενεργοποιήσετε τη σελίδα μετά την ενημέρωση.
+policy-PasswordManagerEnabled = Ενεργοποίηση αποθήκευσης κωδικών πρόσβασης στη διαχείριση κωδικών πρόσβασης.
+# PDF.js and PDF should not be translated
+policy-PDFjs = Απενεργοποίηση ή ρύθμιση του PDF.js, του ενσωματωμένου προγράμματος προβολής PDF στο { -brand-short-name }.
+policy-Permissions2 = Ρύθμιση δικαιωμάτων για κάμερα, μικρόφωνο, τοποθεσία, ειδοποιήσεις και αυτόματη αναπαραγωγή.
+policy-Preferences = Ορισμός και κλείδωμα τιμής ενός υποσυνόλου προτιμήσεων.
+policy-PromptForDownloadLocation = Ερώτηση για την τοποθεσία αποθήκευσης αρχείων κατά τη λήψη.
+policy-Proxy = Ρύθμιση παραμέτρων διακομιστή μεσολάβησης.
+policy-RequestedLocales = Ορισμός λίστας απαιτούμενων γλωσσών για την εφαρμογή σε σειρά προτίμησης.
+policy-SanitizeOnShutdown2 = Εκκαθάριση δεδομένων πλοήγησης κατά το κλείσιμο.
+policy-SearchEngines = Διαμόρφωση ρυθμίσεων μηχανής αναζήτησης. Αυτή η πολιτική είναι διαθέσιμη μόνο στην έκδοση εκτεταμένης υποστήριξης (ESR).
+policy-SearchSuggestEnabled = Ενεργοποίηση ή απενεργοποίηση προτάσεων αναζήτησης.
+# For more information, see https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/PKCS11/Module_Installation
+policy-SecurityDevices = Εγκατάσταση προσθέτων PKCS #11.
+policy-SSLVersionMax = Ορισμός μέγιστης έκδοσης SSL.
+policy-SSLVersionMin = Ορισμός ελάχιστης έκδοσης SSL.
+policy-SupportMenu = Προσθήκη προσαρμοσμένου στοιχείου μενού υποστήριξης στο μενού βοήθειας.
+policy-UserMessaging = Να μην εμφανίζονται ορισμένα μηνύματα στο χρήστη.
+# “format” refers to the format used for the value of this policy.
+policy-WebsiteFilter = Αποκλεισμός επίσκεψης σε ιστοσελίδες. Δείτε την τεκμηρίωση για περισσότερες λεπτομέρειες σχετικά με τη μορφή.
diff --git a/l10n-el/mail/messenger/preferences/am-im.ftl b/l10n-el/mail/messenger/preferences/am-im.ftl
new file mode 100644
index 0000000000..506ad9c22e
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/am-im.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/.
+
+account-settingsTitle = Ρυθμίσεις ταυτοποίησης
+account-channelTitle = Προεπιλεγμένα κανάλια
diff --git a/l10n-el/mail/messenger/preferences/application-manager.ftl b/l10n-el/mail/messenger/preferences/application-manager.ftl
new file mode 100644
index 0000000000..9ce05228e0
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/application-manager.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/.
+
+app-manager-window-dialog =
+ .title = Λεπτομέρειες εφαρμογής
+ .style = width: 35em; min-height: 23em;
+
+remove-app-button =
+ .label = Αφαίρεση
+ .accesskey = ρ
diff --git a/l10n-el/mail/messenger/preferences/attachment-reminder.ftl b/l10n-el/mail/messenger/preferences/attachment-reminder.ftl
new file mode 100644
index 0000000000..fddca77803
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/attachment-reminder.ftl
@@ -0,0 +1,26 @@
+# 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/.
+
+attachment-reminder-window =
+ .title = Λέξεις κλειδιά για την υπενθύμιση συνημμένου
+
+attachment-reminder-label = Το { -brand-short-name } θα σας προειδοποιήσει σχετικά με ξεχασμένα συνημμένα, όταν πρόκειται να στείλετε email με τις παρακάτω λέξεις-κλειδιά.
+
+keyword-new-button =
+ .label = Νέα…
+ .accesskey = Ν
+
+keyword-edit-button =
+ .label = Επεξεργασία…
+ .accesskey = ξ
+
+keyword-remove-button =
+ .label = Διαγραφή
+ .accesskey = Δ
+
+new-keyword-title = Νέα λέξη-κλειδί
+new-keyword-label = Λέξη-κλειδί:
+
+edit-keyword-title = Επεξεργασία
+edit-keyword-label = Λέξη-κλειδί:
diff --git a/l10n-el/mail/messenger/preferences/colors.ftl b/l10n-el/mail/messenger/preferences/colors.ftl
new file mode 100644
index 0000000000..40cb936cae
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/colors.ftl
@@ -0,0 +1,52 @@
+# 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/.
+
+colors-dialog-window =
+ .title = Χρώματα
+ .style =
+ { PLATFORM() ->
+ [macos] width: 41em !important
+ *[other] width: 38em !important
+ }
+
+colors-dialog-legend = Κείμενο και φόντο
+
+text-color-label =
+ .value = Κείμενο:
+ .accesskey = Κ
+
+background-color-label =
+ .value = Φόντο:
+ .accesskey = Φ
+
+use-system-colors =
+ .label = Χρήση χρωμάτων συστήματος
+ .accesskey = σ
+
+colors-link-legend = Χρώματα συνδέσμων
+
+link-color-label =
+ .value = Μη ανοιγμένοι σύνδεσμοι:
+ .accesskey = Μ
+
+visited-link-color-label =
+ .value = Ανοιγμένοι σύνδεσμοι:
+ .accesskey = Α
+
+underline-link-checkbox =
+ .label = Υπογράμμιση συνδέσμων
+ .accesskey = Υ
+
+override-color-label =
+ .value = Παράκαμψη των καθορισμένων χρωμάτων περιεχομένου με τα παραπάνω:
+ .accesskey = π
+
+override-color-always =
+ .label = Πάντα
+
+override-color-auto =
+ .label = Μόνο για θέματα υψηλής αντίθεσης
+
+override-color-never =
+ .label = Ποτέ
diff --git a/l10n-el/mail/messenger/preferences/connection.ftl b/l10n-el/mail/messenger/preferences/connection.ftl
new file mode 100644
index 0000000000..4bc241a06e
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/connection.ftl
@@ -0,0 +1,85 @@
+# 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/.
+
+connection-dns-over-https-url-resolver = Χρήση παρόχου
+ .accesskey = ρ
+# Variables:
+# $name (String) - Display name or URL for the DNS over HTTPS provider
+connection-dns-over-https-url-item-default =
+ .label = { $name } (Προεπιλογή)
+ .tooltiptext = Χρήση προεπιλεγμένου URL για επίλυση DNS αντί HTTPS
+connection-dns-over-https-url-custom =
+ .label = Προσαρμοσμένο
+ .accesskey = Π
+ .tooltiptext = Εισάγετε το προτιμώμενο URL για επίλυση DNS αντί HTTPS
+connection-dns-over-https-custom-label = Προσαρμοσμένο
+connection-dialog-window =
+ .title = Ρυθμίσεις σύνδεσης
+ .style =
+ { PLATFORM() ->
+ [macos] width: 44em !important
+ *[other] width: 49em !important
+ }
+connection-proxy-legend = Ρύθμιση διαμεσολαβητών για την πρόσβαση στο διαδίκτυο
+proxy-type-no =
+ .label = Χωρίς διαμεσολαβητή
+ .accesskey = ω
+proxy-type-wpad =
+ .label = Αυτόματος εντοπισμός ρυθμίσεων διαμεσολαβητή για αυτό το δίκτυο
+ .accesskey = υ
+proxy-type-system =
+ .label = Χρήση ρυθμίσεων διαμεσολαβητή συστήματος
+ .accesskey = σ
+proxy-type-manual =
+ .label = Χειροκίνητη ρύθμιση διαμεσολαβητή:
+ .accesskey = Χ
+proxy-http-label =
+ .value = Διαμεσολαβητής HTTP:
+ .accesskey = h
+http-port-label =
+ .value = Θύρα:
+ .accesskey = Θ
+proxy-http-sharing =
+ .label = Χρήση αυτού του διακομιστή μεσολάβησης και για HTTPS
+ .accesskey = Χ
+proxy-https-label =
+ .value = Διακομιστής μεσολάβησης HTTPS:
+ .accesskey = S
+ssl-port-label =
+ .value = Θύρα:
+ .accesskey = ρ
+proxy-socks-label =
+ .value = Σύστημα SOCKS:
+ .accesskey = c
+socks-port-label =
+ .value = Θύρα:
+ .accesskey = α
+proxy-socks4-label =
+ .label = SOCKS v4
+ .accesskey = k
+proxy-socks5-label =
+ .label = SOCKS v5
+ .accesskey = v
+proxy-type-auto =
+ .label = URL αυτόματης ρύθμισης διαμεσολαβητή:
+ .accesskey = υ
+proxy-reload-label =
+ .label = Ανανέωση
+ .accesskey = ν
+no-proxy-label =
+ .value = Χωρίς διαμεσολαβητή για:
+ .accesskey = Χ
+no-proxy-example = Για παράδειγμα: .mozilla.org, .net.nz, 192.168.1.0/24
+# Note: Do not translate localhost, 127.0.0.1 and ::1.
+no-proxy-localhost-label = Συνδέσεις στο localhost, 127.0.0.1 και ::1 δεν περνούν ποτέ μέσω διαμεσολαβητή.
+proxy-password-prompt =
+ .label = Να μην ζητείται έλεγχος ταυτοποίησης αν είναι αποθηκευμένος ο κωδικός πρόσβασης
+ .accesskey = α
+ .tooltiptext = Αυτή η επιλογή κάνει κρυφά την ταυτοποίησή σας σε διαμεσολαβητές, όταν έχετε αποθηκευμένα τα διαπιστευτήριά τους. Θα ειδοποιηθείτε αν αποτύχει η ταυτοποίηση.
+proxy-remote-dns =
+ .label = Διαμεσολαβητής DNS κατά τη χρήση του SOCKS v5
+ .accesskey = d
+proxy-enable-doh =
+ .label = Ενεργοποίηση DNS over HTTPS
+ .accesskey = γ
diff --git a/l10n-el/mail/messenger/preferences/cookies.ftl b/l10n-el/mail/messenger/preferences/cookies.ftl
new file mode 100644
index 0000000000..a6f4d6a0bc
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/cookies.ftl
@@ -0,0 +1,55 @@
+# 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/.
+
+cookies-window-dialog =
+ .title = Cookies
+ .style = width: 40em;
+
+window-close-key =
+ .key = w
+
+window-focus-search-key =
+ .key = f
+
+window-focus-search-alt-key =
+ .key = k
+
+filter-search-label =
+ .value = Αναζήτηση:
+ .accesskey = ζ
+
+cookies-on-system-label = Τα ακόλουθα cookies είναι αποθηκευμένα στον υπολογιστή σας:
+
+treecol-site-header =
+ .label = Σελίδα
+
+treecol-name-header =
+ .label = Όνομα cookie
+
+props-name-label =
+ .value = Όνομα:
+props-value-label =
+ .value = Περιεχόμενο:
+props-domain-label =
+ .value = Σύστημα:
+props-path-label =
+ .value = Διαδρομή:
+props-secure-label =
+ .value = Αποστολή για:
+props-expires-label =
+ .value = Λήγει:
+props-container-label =
+ .value = Περιβάλλον:
+
+remove-cookie-button =
+ .label = Αφαίρεση cookie
+ .accesskey = φ
+
+remove-all-cookies-button =
+ .label = Αφαίρεση όλων των cookies
+ .accesskey = σ
+
+cookie-close-button =
+ .label = Κλείσιμο
+ .accesskey = Κ
diff --git a/l10n-el/mail/messenger/preferences/dock-options.ftl b/l10n-el/mail/messenger/preferences/dock-options.ftl
new file mode 100644
index 0000000000..6cde61e912
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/dock-options.ftl
@@ -0,0 +1,26 @@
+# 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/.
+
+dock-options-window-dialog =
+ .title = Επιλογές εικονιδίου εφαρμογής
+ .style = width: 35em;
+
+bounce-system-dock-icon =
+ .label = Κίνηση του εικονιδίου κατά την άφιξη νέων μηνυμάτων
+ .accesskey = Κ
+
+dock-icon-legend = Σήμα εικονιδίου εφαρμογής
+
+dock-icon-show-label =
+ .value = Το εικονίδιο της εφαρμογής να έχει σήμα με:
+
+count-unread-messages-radio =
+ .label = Αριθμός μη αναγνωσμένων μηνυμάτων
+ .accesskey = μ
+
+count-new-messages-radio =
+ .label = Αριθμός νέων μηνυμάτων
+ .accesskey = ν
+
+notification-settings-info = Μπορείτε να απενεργοποιήσετε το σήμα στο πλαίσιο Ειδοποίηση στις Προτιμήσεις Συστήματος.
diff --git a/l10n-el/mail/messenger/preferences/fonts.ftl b/l10n-el/mail/messenger/preferences/fonts.ftl
new file mode 100644
index 0000000000..094fbcbf5f
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/fonts.ftl
@@ -0,0 +1,133 @@
+# 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/.
+
+fonts-window-close =
+ .key = w
+# Variables:
+# $name {string, "Arial"} - Name of the default font
+fonts-label-default =
+ .label = Προεπιλογή ({ $name })
+fonts-label-default-unnamed =
+ .label = Προεπιλογή
+fonts-encoding-dialog-title =
+ .title = Γραμματοσειρές & κωδικοποίηση
+fonts-language-legend =
+ .value = Γραμματοσειρές για:
+ .accesskey = τ
+fonts-proportional-label =
+ .value = Μεταβλητές:
+ .accesskey = β
+
+## Languages
+
+# Note: Translate "Latin" as the name of Latin (Roman) script, not as the name of the Latin language.
+font-language-group-latin =
+ .label = Λατινικά
+font-language-group-japanese =
+ .label = Ιαπωνικά
+font-language-group-trad-chinese =
+ .label = Κινέζικα Παραδοσιακά (Taiwan)
+font-language-group-simpl-chinese =
+ .label = Κινέζικα Απλοποιημένα
+font-language-group-trad-chinese-hk =
+ .label = Κινέζικα Παραδοσιακά(Hong Kong)
+font-language-group-korean =
+ .label = Κορεάτικα
+font-language-group-cyrillic =
+ .label = Κυριλλική
+font-language-group-el =
+ .label = Ελληνικά
+font-language-group-other =
+ .label = Άλλα συστήματα γραφής
+font-language-group-thai =
+ .label = Ταϊλανδική
+font-language-group-hebrew =
+ .label = Εβραϊκά
+font-language-group-arabic =
+ .label = Αραβικά
+font-language-group-devanagari =
+ .label = Ντεβανγκάρι
+font-language-group-tamil =
+ .label = Ταμίλ
+font-language-group-armenian =
+ .label = Αρμενική
+font-language-group-bengali =
+ .label = Μπενγκάλι
+font-language-group-canadian =
+ .label = Ενοποιημένο Canadian Syllabary
+font-language-group-ethiopic =
+ .label = Αιθιοπική
+font-language-group-georgian =
+ .label = Γεωργιανή
+font-language-group-gujarati =
+ .label = Γκουαρατί
+font-language-group-gurmukhi =
+ .label = Γκουρμούχι
+font-language-group-khmer =
+ .label = Χμερ
+font-language-group-malayalam =
+ .label = Μαλαισιανή
+font-language-group-math =
+ .label = Μαθηματικά
+font-language-group-odia =
+ .label = Όντια
+font-language-group-telugu =
+ .label = Τελούγκου
+font-language-group-kannada =
+ .label = Κανάντα
+font-language-group-sinhala =
+ .label = Σινχάλα
+font-language-group-tibetan =
+ .label = Θιβετιανή
+
+## Default font type
+
+default-font-serif =
+ .label = Serif
+default-font-sans-serif =
+ .label = Sans Serif
+font-size-label =
+ .value = Μέγεθος:
+ .accesskey = θ
+font-size-monospace-label =
+ .value = Μέγεθος:
+ .accesskey = ε
+font-serif-label =
+ .value = Serif:
+ .accesskey = S
+font-sans-serif-label =
+ .value = Sans-serif:
+ .accesskey = n
+font-monospace-label =
+ .value = Monospace:
+ .accesskey = M
+font-min-size-label =
+ .value = Ελάχιστο μέγεθος γραμματοσειράς:
+ .accesskey = χ
+min-size-none =
+ .label = Κανένα
+
+## Fonts in message
+
+font-control-legend = Χειρισμός γραμματοσειράς
+use-document-fonts-checkbox =
+ .label = Να επιτρέπεται στα έγγραφα να χρησιμοποιούν άλλες γραμματοσειρές
+ .accesskey = ο
+use-fixed-width-plain-checkbox =
+ .label = Χρήση σταθερού πλάτους για μηνύματα απλού κειμένου
+ .accesskey = ρ
+
+## Language settings
+
+text-encoding-legend = Κωδικοποίηση κειμένου
+text-encoding-description = Ρύθμιση της προεπιλεγμένης κωδικοποίησης χαρακτήρων για την αποστολή και λήψη αλληλογραφίας
+font-outgoing-email-label =
+ .value = Εξερχόμενα:
+ .accesskey = ξ
+font-incoming-email-label =
+ .value = Εισερχόμενα:
+ .accesskey = ι
+default-font-reply-checkbox =
+ .label = Όταν είναι δυνατόν, να γίνεται χρήση της προεπιλεγμένης κωδικοποίησης στις απαντήσεις
+ .accesskey = υ
diff --git a/l10n-el/mail/messenger/preferences/languages.ftl b/l10n-el/mail/messenger/preferences/languages.ftl
new file mode 100644
index 0000000000..e4e307c985
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/languages.ftl
@@ -0,0 +1,45 @@
+# 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/.
+
+languages-customize-moveup =
+ .label = Μετακίνηση πάνω
+ .accesskey = π
+
+languages-customize-movedown =
+ .label = Μετακίνηση κάτω
+ .accesskey = κ
+
+languages-customize-remove =
+ .label = Αφαίρεση
+ .accesskey = Α
+
+languages-customize-select-language =
+ .placeholder = Επιλέξτε μια γλώσσα προς προσθήκη…
+
+languages-customize-add =
+ .label = Προσθήκη
+ .accesskey = Π
+
+messenger-languages-window =
+ .title = Ρυθμίσεις γλώσσας του { -brand-short-name }
+ .style = width: 40em
+
+messenger-languages-description = Το { -brand-short-name } θα εμφανίζει την πρώτη γλώσσα ως την προεπιλεγμένη και θα προβάλει εναλλακτικές γλώσσες με τη σειρά που φαίνονται, αν είναι απαραίτητο.
+
+messenger-languages-search = Αναζήτηση για περισσότερες γλώσσες…
+
+messenger-languages-searching =
+ .label = Αναζήτηση για γλώσσες…
+
+messenger-languages-downloading =
+ .label = Λήψη…
+
+messenger-languages-select-language =
+ .label = Επιλέξτε μια γλώσσα προς προσθήκη…
+ .placeholder = Επιλέξτε μια γλώσσα προς προσθήκη…
+
+messenger-languages-installed-label = Εγκατεστημένες γλώσσες
+messenger-languages-available-label = Διαθέσιμες γλώσσες
+
+messenger-languages-error = Το { -brand-short-name } δεν μπορεί να αναβαθμίσει τις γλώσσες σας αυτή τη στιγμή. Ελέγξτε ότι είστε συνδεδεμένος στο διαδίκτυο ή δοκιμάστε πάλι.
diff --git a/l10n-el/mail/messenger/preferences/new-tag.ftl b/l10n-el/mail/messenger/preferences/new-tag.ftl
new file mode 100644
index 0000000000..85f47438b5
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/new-tag.ftl
@@ -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/.
+
+tag-dialog-window =
+ .title = Νέα ετικέτα
+
+tag-name-label =
+ .value = Όνομα ετικέτας:
+ .accesskey = τ
+
+tag-color-label =
+ .value = Χρώμα:
+ .accesskey = Χ
diff --git a/l10n-el/mail/messenger/preferences/notifications.ftl b/l10n-el/mail/messenger/preferences/notifications.ftl
new file mode 100644
index 0000000000..8d709d9db8
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/notifications.ftl
@@ -0,0 +1,33 @@
+# 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/.
+
+notifications-dialog-window =
+ .title = Προσαρμογή ειδοποίησης νέου μηνύματος
+
+customize-alert-description = Επιλέξτε τα πεδία που θα εμφανίζονται στην ειδοποίηση:
+
+preview-text-checkbox =
+ .label = Προεπισκόπηση κειμένου μηνύματος
+ .accesskey = μ
+
+subject-checkbox =
+ .label = Θέμα
+ .accesskey = Θ
+
+sender-checkbox =
+ .label = Αποστολέας
+ .accesskey = π
+
+## Note: open-time-label-before is displayed first, then there's a field where
+## the user can enter a number, and open-time-label-after is displayed at the end
+## of the line. The translations of the open-time-label-before and open-time-label-after
+## parts don't have to mean the exact same thing as in English; please try instead
+## to translate the whole sentence.
+
+open-time-label-before =
+ .value = Εμφάνιση ειδοποίησης νέων μηνυμάτων για
+ .accesskey = φ
+
+open-time-label-after =
+ .value = δευτερόλεπτα
diff --git a/l10n-el/mail/messenger/preferences/offline.ftl b/l10n-el/mail/messenger/preferences/offline.ftl
new file mode 100644
index 0000000000..f1aa299331
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/offline.ftl
@@ -0,0 +1,56 @@
+# 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/.
+
+offline-dialog-window =
+ .title = Ρυθμίσεις εκτός σύνδεσης
+
+autodetect-online-label =
+ .label = Αυτόματος εντοπισμός κατάστασης δικτύου
+ .accesskey = ν
+
+startup-label = Κατάσταση κατά την εκκίνηση:
+
+status-radio-remember =
+ .label = Διατήρηση προηγούμενης κατάστασης
+ .accesskey = Δ
+
+status-radio-ask =
+ .label = Ερώτηση για ορισμό κατάστασης
+ .accesskey = ώ
+
+status-radio-always-online =
+ .label = Σε σύνδεση
+ .accesskey = δ
+
+status-radio-always-offline =
+ .label = Εκτός σύνδεσης
+ .accesskey = κ
+
+going-online-label = Αποστολή μη απεσταλμένων κατά την σύνδεση;
+
+going-online-auto =
+ .label = Ναι
+ .accesskey = Ν
+
+going-online-not =
+ .label = Όχι
+ .accesskey = Ό
+
+going-online-ask =
+ .label = Ερώτηση
+ .accesskey = σ
+
+going-offline-label = Λήψη μηνυμάτων για εργασία εκτός σύνδεσης κατά την αποσύνδεση;
+
+going-offline-auto =
+ .label = Ναι
+ .accesskey = Ν
+
+going-offline-not =
+ .label = Όχι
+ .accesskey = ι
+
+going-offline-ask =
+ .label = Ερώτηση
+ .accesskey = ρ
diff --git a/l10n-el/mail/messenger/preferences/passwordManager.ftl b/l10n-el/mail/messenger/preferences/passwordManager.ftl
new file mode 100644
index 0000000000..505c6d319c
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/passwordManager.ftl
@@ -0,0 +1,85 @@
+# 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/.
+
+saved-logins =
+ .title = Αποθηκευμένες συνδέσεις
+window-close =
+ .key = w
+focus-search-shortcut =
+ .key = f
+focus-search-altshortcut =
+ .key = k
+copy-provider-url-cmd =
+ .label = Αντιγραφή URL
+ .accesskey = φ
+copy-username-cmd =
+ .label = Αντιγραφή ονόματος χρήστη
+ .accesskey = χ
+edit-username-cmd =
+ .label = Επεξεργασία ονόματος χρήστη
+ .accesskey = ξ
+copy-password-cmd =
+ .label = Αντιγραφή κωδικού πρόσβασης
+ .accesskey = Α
+edit-password-cmd =
+ .label = Επεξεργασία κωδικού πρόσβασης
+ .accesskey = Ε
+search-filter =
+ .accesskey = Α
+ .placeholder = Αναζήτηση
+column-heading-provider =
+ .label = Πάροχος
+column-heading-username =
+ .label = Όνομα χρήστη
+column-heading-password =
+ .label = Κωδικός πρόσβασης
+column-heading-time-created =
+ .label = Πρώτη χρήση
+column-heading-time-last-used =
+ .label = Τελευταία χρήση
+column-heading-time-password-changed =
+ .label = Τελευταία αλλαγή
+column-heading-times-used =
+ .label = Φορές χρήσεων
+remove =
+ .label = Αφαίρεση
+ .accesskey = Α
+import =
+ .label = Εισαγωγή…
+ .accesskey = Ε
+close-button =
+ .label = Κλείσιμο
+ .accesskey = Κ
+
+show-passwords =
+ .label = Εμφάνιση κωδικών πρόσβασης
+ .accesskey = κ
+hide-passwords =
+ .label = Απόκρυψη κωδικών πρόσβασης
+ .accesskey = κ
+logins-description-all = Τα διαπιστευτήρια για τους παρακάτω παρόχους είναι αποθηκευμένα στον υπολογιστή σας
+logins-description-filtered = Τα παρακάτω διαπιστευτήρια ταιριάζουν με την αναζήτησή σας:
+remove-all =
+ .label = Αφαίρεση όλων
+ .accesskey = Α
+remove-all-shown =
+ .label = Αφαίρεση όλων των εμφανιζόμενων
+ .accesskey = Α
+remove-all-passwords-prompt = Θέλετε σίγουρα να αφαιρέσετε όλους τους κωδικούς πρόσβασης;
+remove-all-passwords-title = Αφαίρεση όλων των κωδικών πρόσβασης
+no-master-password-prompt = Θέλετε σίγουρα να γίνει εμφάνιση των κωδικών πρόσβασής σας;
+
+## OS Authentication dialog
+
+# This message can be seen by trying to show or copy the passwords.
+password-os-auth-dialog-message = Επαληθεύστε την ταυτότητά σας για αποκάλυψη των αποθηκευμένων κωδικών πρόσβασης.
+
+# This message can be seen by trying to show or copy the passwords.
+# The macOS strings are preceded by the operating system with "Thunderbird is trying to "
+# and includes subtitle of "Enter password for the user "xxx" to allow this." These
+# notes are only valid for English. Please test in your locale.
+password-os-auth-dialog-message-macosx = αποκαλύψει τους αποθηκευμένους κωδικούς πρόσβασης
+
+# Don't change this label.
+password-os-auth-dialog-caption = { -brand-full-name }
diff --git a/l10n-el/mail/messenger/preferences/permissions.ftl b/l10n-el/mail/messenger/preferences/permissions.ftl
new file mode 100644
index 0000000000..b4d66f36e1
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/permissions.ftl
@@ -0,0 +1,43 @@
+# 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/.
+
+permissions-reminder-window =
+ .title = Εξαιρέσεις
+ .style = width: 40em;
+window-close-key =
+ .key = w
+website-address-label =
+ .value = Διεύθυνση ιστοσελίδας:
+ .accesskey = θ
+block-button =
+ .label = Φραγή
+ .accesskey = Φ
+allow-session-button =
+ .label = Αποδοχή για τη συνεδρία
+ .accesskey = χ
+allow-button =
+ .label = Να επιτρέπεται
+ .accesskey = ε
+treehead-sitename-label =
+ .label = Σελίδα
+treehead-status-label =
+ .label = Κατάσταση
+remove-site-button =
+ .label = Αφαίρεση ιστοσελίδας
+ .accesskey = ρ
+remove-all-site-button =
+ .label = Αφαίρεση όλων των ιστοσελίδων
+ .accesskey = λ
+cancel-button =
+ .label = Ακύρωση
+ .accesskey = Α
+save-button =
+ .label = Αποθήκευση Αλλαγών
+ .accesskey = Θ
+permission-can-label = Να επιτρέπεται
+permission-can-access-first-party-label = Να επιτρέπεται μόνο στους άμεσα εμπλεκόμενους
+permission-can-session-label = Αποδοχή για τη συνεδρία
+permission-cannot-label = Φραγή
+invalid-uri-message = Παρακαλούμε εισάγετε ένα έγκυρο όνομα συστήματος
+invalid-uri-title = Εισήχθηκε μη έγκυρο όνομα συστήματος
diff --git a/l10n-el/mail/messenger/preferences/preferences.ftl b/l10n-el/mail/messenger/preferences/preferences.ftl
new file mode 100644
index 0000000000..afecc6f4f5
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/preferences.ftl
@@ -0,0 +1,711 @@
+# 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/.
+
+close-button =
+ .aria-label = Κλείσιμο
+preferences-title =
+ .title =
+ { PLATFORM() ->
+ [windows] Επιλογές
+ *[other] Προτιμήσεις
+ }
+category-list =
+ .aria-label = Κατηγορίες
+pane-general-title = Γενικά
+category-general =
+ .tooltiptext = { pane-general-title }
+pane-compose-title = Σύνταξη
+category-compose =
+ .tooltiptext = Σύνταξη
+pane-privacy-title = Απόρρητο & ασφάλεια
+category-privacy =
+ .tooltiptext = Απόρρητο & ασφάλεια
+pane-chat-title = Συνομιλία
+category-chat =
+ .tooltiptext = Συνομιλία
+pane-calendar-title = Ημερολόγιο
+category-calendar =
+ .tooltiptext = Ημερολόγιο
+general-language-and-appearance-header = Γλώσσα & εμφάνιση
+general-incoming-mail-header = Εισερχόμενα email
+general-files-and-attachment-header = Αρχεία & συνημμένα
+general-tags-header = Ετικέτες
+general-reading-and-display-header = Ανάγνωση & προβολή
+general-updates-header = Ενημερώσεις
+general-network-and-diskspace-header = Δίκτυο & χώρος δίσκου
+general-indexing-label = Ευρετηριοποίηση
+composition-category-header = Σύνθεση
+composition-attachments-header = Συνημμένα
+composition-spelling-title = Ορθογραφία
+compose-html-style-title = Στυλ HTML
+composition-addressing-header = Διευθυνσιοδότηση
+privacy-main-header = Απόρρητο
+privacy-passwords-header = Κωδικοί πρόσβασης
+privacy-junk-header = Ανεπιθύμητα
+collection-header = Συλλογή και χρήση δεδομένων { -brand-short-name }
+collection-description = Προσπαθούμε να παρέχουμε επιλογές και να συλλέγουμε μόνο τα απαραίτητα, ώστε να προσφέρουμε και να βελτιώνουμε το { -brand-short-name } για όλους. Ζητούμε πάντα άδεια πριν λάβουμε προσωπικές πληροφορίες.
+collection-privacy-notice = Σημείωση απορρήτου
+collection-health-report-telemetry-disabled = Δεν επιτρέπεται πλέον στη { -vendor-short-name } η συλλογή τεχνικών δεδομένων και δεδομένων αλληλεπίδρασης. Όλα τα προηγούμενα δεδομένα θα διαγραφούν μέσα σε 30 ημέρες.
+collection-health-report-telemetry-disabled-link = Μάθετε περισσότερα
+collection-health-report =
+ .label = Να επιτρέπεται στο { -brand-short-name } η αποστολή τεχνικών και διαδραστικών δεδομένων στη { -vendor-short-name }
+ .accesskey = ρ
+collection-health-report-link = Μάθετε περισσότερα
+# This message is displayed above disabled data sharing options in developer builds
+# or builds with no Telemetry support available.
+collection-health-report-disabled = Η αναφορά δεδομένων είναι ανενεργή για αυτή την έκδοση
+collection-backlogged-crash-reports =
+ .label = Να επιτρέπεται στο { -brand-short-name } η αποστολή αναφορών σφαλμάτων που εκκρεμούν εκ μέρους σας
+ .accesskey = π
+collection-backlogged-crash-reports-link = Μάθετε περισσότερα
+privacy-security-header = Ασφάλεια
+privacy-scam-detection-title = Ανίχνευση απάτης
+privacy-anti-virus-title = Προστασία από ιούς
+privacy-certificates-title = Πιστοποιητικά
+chat-pane-header = Συνομιλία
+chat-status-title = Κατάσταση
+chat-notifications-title = Ειδοποιήσεις
+chat-pane-styling-header = Στυλ
+choose-messenger-language-description = Επιλέξτε τις γλώσσες εμφάνισης για μενού, μηνύματα και ειδοποιήσεις από το { -brand-short-name }.
+manage-messenger-languages-button =
+ .label = Ορισμός εναλλακτικών…
+ .accesskey = λ
+confirm-messenger-language-change-description = Επανεκκίνηση του { -brand-short-name } για εφαρμογή αλλαγών
+confirm-messenger-language-change-button = Εφαρμογή και επανεκκίνηση
+update-setting-write-failure-title = Σφάλμα αποθήκευσης προτιμήσεων ενημερώσεων
+# Variables:
+# $path (String) - Path to the configuration file
+# The newlines between the main text and the line containing the path is
+# intentional so the path is easier to identify.
+update-setting-write-failure-message =
+ Το { -brand-short-name } αντιμετώπισε σφάλμα και δεν αποθήκευσε αυτή την αλλαγή. Σημειώστε ότι η ρύθμιση αυτής της προτίμησης ενημερώσεων απαιτεί δικαίωμα εγγραφής στο παρακάτω αρχείο. Εσείς ή κάποιος διαχειριστής συστήματος ενδέχεται να μπορέσει να επιλύσει το σφάλμα, χορηγώντας στην ομάδα Χρήστες τον πλήρη έλεγχο για αυτό το αρχείο.
+
+ Αδυναμία εγγραφής στο αρχείο: { $path }
+update-in-progress-title = Ενημέρωση σε εξέλιξη
+update-in-progress-message = Θέλετε το { -brand-short-name } να συνεχίσει με αυτή την ενημέρωση;
+update-in-progress-ok-button = &Απόρριψη
+# Continue is the cancel button so pressing escape or using a platform standard
+# method of closing the UI will not discard the update.
+update-in-progress-cancel-button = &Συνέχεια
+account-button = Ρυθμίσεις λογαριασμού
+addons-button = Επεκτάσεις & θέματα
+
+## OS Authentication dialog
+
+# This message can be seen by trying to add a Master Password.
+master-password-os-auth-dialog-message-win = Για να δημιουργήσετε κύριο κωδικό πρόσβασης, εισάγετε τα διαπιστευτήρια σύνδεσης των Windows. Αυτό συμβάλλει στην προστασία των λογαριασμών σας.
+# This message can be seen by trying to add a Master Password.
+# The macOS strings are preceded by the operating system with "Thunderbird is trying to "
+# and includes subtitle of "Enter password for the user "xxx" to allow this." These
+# notes are only valid for English. Please test in your locale.
+master-password-os-auth-dialog-message-macosx = δημιουργήσει κύριο κωδικό πρόσβασης
+# This message can be seen by trying to add a Primary Password.
+primary-password-os-auth-dialog-message-win = Για να δημιουργήσετε έναν κύριο κωδικό πρόσβασης, εισάγετε τα διαπιστευτήρια των Windows σας. Αυτό θα βοηθήσει στην ασφάλεια των λογαριασμών σας.
+# This message can be seen by trying to add a Primary Password.
+# The macOS strings are preceded by the operating system with "Thunderbird is trying to "
+# and includes subtitle of "Enter password for the user "xxx" to allow this." These
+# notes are only valid for English. Please test in your locale.
+primary-password-os-auth-dialog-message-macosx = δημιουργήσει κύριο κωδικό πρόσβασης
+# Don't change this label.
+master-password-os-auth-dialog-caption = { -brand-full-name }
+
+## General Tab
+
+focus-search-shortcut =
+ .key = f
+focus-search-shortcut-alt =
+ .key = k
+general-legend = Αρχική σελίδα { -brand-short-name }
+start-page-label =
+ .label = Κατά την εκκίνηση του { -brand-short-name }, να εμφανίζεται η αρχική σελίδα στην περιοχή μηνυμάτων
+ .accesskey = τ
+location-label =
+ .value = Τοποθεσία:
+ .accesskey = ο
+restore-default-label =
+ .label = Επαναφορά προεπιλογής
+ .accesskey = π
+default-search-engine = Προεπιλεγμένη μηχανή αναζήτησης
+add-search-engine =
+ .label = Προσθήκη από αρχείο
+ .accesskey = Π
+remove-search-engine =
+ .label = Αφαίρεση
+ .accesskey = ρ
+minimize-to-tray-label =
+ .label = Όταν το { -brand-short-name } ελαχιστοποιείται, να γίνεται μετακίνηση στη γραμμή εργασιών
+ .accesskey = ε
+new-message-arrival = Όταν φθάνουν νέα μηνύματα:
+mail-play-sound-label =
+ .label =
+ { PLATFORM() ->
+ [macos] Αναπαραγωγή του εξής αρχείου ήχου:
+ *[other] Αναπαραγωγή ήχου
+ }
+ .accesskey = χ
+mail-play-button =
+ .label = Αναπαραγωγή
+ .accesskey = π
+change-dock-icon = Αλλαγή προτιμήσεων για το εικονίδιο της εφαρμογής
+app-icon-options =
+ .label = Επιλογές εικονιδίου εφαρμογής…
+ .accesskey = Ε
+notification-settings = Οι ειδοποιήσεις και ο προεπιλεγμένος ήχος μπορούν να απενεργοποιηθούν στην καρτέλα Ειδοποιήσεις των ρυθμίσεων συστήματος.
+animated-alert-label =
+ .label = Εμφάνιση ειδοποίησης
+ .accesskey = φ
+customize-alert-label =
+ .label = Προσαρμογή…
+ .accesskey = μ
+tray-icon-label =
+ .label = Εμφάνιση εικονιδίου στη γραμμή
+ .accesskey = μ
+mail-system-sound-label =
+ .label = Προεπιλεγμένος ήχος συστήματος για νέα email
+ .accesskey = Π
+mail-custom-sound-label =
+ .label = Χρήση του ακόλουθου αρχείου ήχου
+ .accesskey = Χ
+mail-browse-sound-button =
+ .label = Περιήγηση…
+ .accesskey = γ
+enable-gloda-search-label =
+ .label = Ενεργοποίηση καθολικής αναζήτησης και ευρετηριοποίησης
+ .accesskey = γ
+datetime-formatting-legend = Μορφή ημερομηνίας και ώρας
+language-selector-legend = Γλώσσα
+allow-hw-accel =
+ .label = Χρήση επιτάχυνσης υλικού όταν είναι διαθέσιμη
+ .accesskey = υ
+store-type-label =
+ .value = Τύπος αποθήκευσης μηνυμάτων για νέους λογαριασμούς:
+ .accesskey = Τ
+mbox-store-label =
+ .label = Αρχείο ανά φάκελο (mbox)
+maildir-store-label =
+ .label = Αρχείο ανά μήνυμα (maildir)
+scrolling-legend = Κύλιση
+autoscroll-label =
+ .label = Χρήση αυτόματης κύλισης
+ .accesskey = Χ
+smooth-scrolling-label =
+ .label = Χρήση ομαλής κύλισης
+ .accesskey = ο
+system-integration-legend = Ενσωμάτωση συστήματος
+always-check-default =
+ .label = Πάντα έλεγχος στην εκκίνηση για το αν το { -brand-short-name } είναι το προεπιλεγμένο πρόγραμμα αλληλογραφίας
+ .accesskey = λ
+check-default-button =
+ .label = Έλεγχος τώρα…
+ .accesskey = τ
+# Note: This is the search engine name for all the different platforms.
+# Platforms that don't support it should be left blank.
+search-engine-name =
+ { PLATFORM() ->
+ [macos] Spotlight
+ [windows] Αναζήτηση των Windows
+ *[other] { "" }
+ }
+search-integration-label =
+ .label = Να επιτρέπεται στην { search-engine-name } η αναζήτηση μηνυμάτων
+ .accesskey = π
+config-editor-button =
+ .label = Επεξεργασία ρυθμίσεων…
+ .accesskey = θ
+return-receipts-description = Καθορίστε τον τρόπο διαχείρισης των βεβαιώσεων ανάγνωσης από το { -brand-short-name }
+return-receipts-button =
+ .label = Αποδεικτικά ανάγνωσης…
+ .accesskey = τ
+update-app-legend = Ενημερώσεις του { -brand-short-name }
+# Variables:
+# $version (String): version of Thunderbird, e.g. 68.0.1
+update-app-version = Έκδοση { $version }
+allow-description = Να επιτρέπεται στο { -brand-short-name }
+automatic-updates-label =
+ .label = Αυτόματη εγκατάσταση ενημερώσεων (προτείνεται: αυξημένη ασφάλεια)
+ .accesskey = Α
+check-updates-label =
+ .label = Να γίνεται έλεγχος για ενημερώσεις, αλλά να επιλέγω αν θα γίνει εγκατάστασή τους
+ .accesskey = ε
+update-history-button =
+ .label = Εμφάνιση ιστορικού ενημερώσεων
+ .accesskey = ι
+use-service =
+ .label = Χρήση μιας υπηρεσίας παρασκηνίου για την εγκατάσταση ενημερώσεων
+ .accesskey = υ
+cross-user-udpate-warning = Αυτή η ρύθμιση θα εφαρμοστεί σε όλους τους λογαριασμούς των Windows και τα προφίλ του { -brand-short-name } με αυτή την εγκατάσταση του { -brand-short-name }.
+networking-legend = Σύνδεση
+proxy-config-description = Ρύθμιση του τρόπου σύνδεσης του { -brand-short-name } στο διαδίκτυο
+network-settings-button =
+ .label = Ρυθμίσεις…
+ .accesskey = Θ
+offline-legend = Εκτός σύνδεσης
+offline-settings = Ρυθμίσεις εργασίας εκτός σύνδεσης
+offline-settings-button =
+ .label = Εκτός σύνδεσης…
+ .accesskey = Ε
+diskspace-legend = Χώρος δίσκου
+offline-compact-folder =
+ .label = Συμπίεση φακέλων πάνω από
+ .accesskey = π
+compact-folder-size =
+ .value = MB στο σύνολο
+
+## Note: The entities use-cache-before and use-cache-after appear on a single
+## line in preferences as follows:
+## use-cache-before [ textbox for cache size in MB ] use-cache-after
+
+use-cache-before =
+ .value = Χρήση μέχρι
+ .accesskey = μ
+use-cache-after = MB χώρου για την προσωρινή μνήμη
+
+##
+
+smart-cache-label =
+ .label = Παράκαμψη αυτόματης διαχείρισης cache
+ .accesskey = ψ
+clear-cache-button =
+ .label = Εκκαθάριση τώρα
+ .accesskey = θ
+fonts-legend = Γραμματοσειρές & χρώματα
+default-font-label =
+ .value = Προεπιλεγμένη γραμματοσειρά:
+ .accesskey = ρ
+default-size-label =
+ .value = Μέγεθος:
+ .accesskey = θ
+font-options-button =
+ .label = Για προχωρημένους…
+ .accesskey = μ
+color-options-button =
+ .label = Χρώματα…
+ .accesskey = ρ
+display-width-legend = Μηνύματα απλού κειμένου
+# Note : convert-emoticons-label 'Emoticons' are also known as 'Smileys', e.g. :-)
+convert-emoticons-label =
+ .label = Εμφάνιση emoticons ως γραφικά στοιχεία
+ .accesskey = φ
+display-text-label = Κατά την προβολή μηνυμάτων απλού κειμένου σε παράθεση:
+style-label =
+ .value = Στυλ:
+ .accesskey = υ
+regular-style-item =
+ .label = Κανονικά
+bold-style-item =
+ .label = Έντονα
+italic-style-item =
+ .label = Πλάγια
+bold-italic-style-item =
+ .label = Έντονα πλάγια
+size-label =
+ .value = Μέγεθος:
+ .accesskey = θ
+regular-size-item =
+ .label = Κανονικό
+bigger-size-item =
+ .label = Μεγαλύτερο
+smaller-size-item =
+ .label = Μικρότερο
+quoted-text-color =
+ .label = Χρώμα:
+ .accesskey = Χ
+search-input =
+ .placeholder = Αναζήτηση
+type-column-label =
+ .label = Τύπος περιεχομένου
+ .accesskey = Τ
+action-column-label =
+ .label = Ενέργεια
+ .accesskey = ν
+save-to-label =
+ .label = Αποθήκευση αρχείων σε
+ .accesskey = θ
+choose-folder-label =
+ .label =
+ { PLATFORM() ->
+ [macos] Επιλογή…
+ *[other] Περιήγηση…
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [macos] π
+ *[other] γ
+ }
+always-ask-label =
+ .label = Πάντα ερώτηση για την τοποθεσία αποθήκευσης
+ .accesskey = Π
+display-tags-text = Οι ετικέτες μπορούν να χρησιμοποιηθούν για την ταξινόμηση και τον καθορισμό προτεραιότητας των μηνυμάτων σας.
+new-tag-button =
+ .label = Νέα…
+ .accesskey = Ν
+edit-tag-button =
+ .label = Επεξεργασία…
+ .accesskey = Ε
+delete-tag-button =
+ .label = Διαγραφή
+ .accesskey = φ
+auto-mark-as-read =
+ .label = Αυτόματη επισήμανση μηνυμάτων ως αναγνωσμένων
+ .accesskey = Α
+mark-read-no-delay =
+ .label = Άμεσα κατά την προβολή
+ .accesskey = μ
+
+## Note: This will concatenate to "After displaying for [___] seconds",
+## using (mark-read-delay) and a number (seconds-label).
+
+mark-read-delay =
+ .label = Μετά από προβολή για
+ .accesskey = γ
+seconds-label = δευτερόλεπτα
+
+##
+
+open-msg-label =
+ .value = Άνοιγμα μηνυμάτων σε:
+open-msg-tab =
+ .label = Νέα καρτέλα
+ .accesskey = κ
+open-msg-window =
+ .label = Νέο παράθυρο μηνύματος
+ .accesskey = π
+open-msg-ex-window =
+ .label = Υπάρχον παράθυρο μηνύματος
+ .accesskey = υ
+close-move-delete =
+ .label = Κλείσιμο παραθύρου/καρτέλας μηνύματος μετά από μετακίνηση ή διαγραφή
+ .accesskey = Κ
+display-name-label =
+ .value = Εμφανιζόμενο όνομα:
+condensed-addresses-label =
+ .label = Προβολή μόνο του εμφανιζόμενου ονόματος για άτομα του ευρετηρίου μου
+ .accesskey = ε
+
+## Compose Tab
+
+forward-label =
+ .value = Προώθηση μηνυμάτων:
+ .accesskey = θ
+inline-label =
+ .label = Εντός μηνύματος
+as-attachment-label =
+ .label = Ως συνημμένο
+extension-label =
+ .label = Προσθήκη επέκτασης στο όνομα αρχείου
+ .accesskey = χ
+
+## Note: This will concatenate to "Auto Save every [___] minutes",
+## using (auto-save-label) and a number (auto-save-end).
+
+auto-save-label =
+ .label = Αυτόματη αποθήκευση κάθε
+ .accesskey = υ
+auto-save-end = λεπτά
+
+##
+
+warn-on-send-accel-key =
+ .label = Επιβεβαίωση πριν την αποστολή μηνύματος όταν γίνεται χρήση συντομεύσεων πληκτρολογίου
+ .accesskey = β
+spellcheck-label =
+ .label = Ορθογραφικός έλεγχος πριν την αποστολή
+ .accesskey = θ
+spellcheck-inline-label =
+ .label = Ορθογραφικός έλεγχος κατά την πληκτρολόγηση
+ .accesskey = φ
+language-popup-label =
+ .value = Γλώσσα:
+ .accesskey = λ
+download-dictionaries-link = Λήψη περισσότερων λεξικών
+font-label =
+ .value = Γραμματοσειρά:
+ .accesskey = ρ
+font-size-label =
+ .value = Μέγεθος:
+ .accesskey = γ
+default-colors-label =
+ .label = Να χρησιμοποιηθούν τα προκαθορισμένα χρώματα αναγνώστη
+ .accesskey = π
+font-color-label =
+ .value = Χρώμα κειμένου:
+ .accesskey = Χ
+bg-color-label =
+ .value = Χρώμα παρασκηνίου:
+ .accesskey = Χ
+restore-html-label =
+ .label = Επαναφορά προεπιλογών
+ .accesskey = φ
+default-format-label =
+ .label = Χρήση της μορφής παραγράφου αντί του μορφής κειμένου κύριου μέρους από προεπιλογή
+ .accesskey = π
+format-description = Ρύθμιση συμπεριφοράς μορφής κειμένου
+send-options-label =
+ .label = Επιλογές αποστολής…
+ .accesskey = σ
+autocomplete-description = Κατά τη διευθυνσιοδότηση μηνυμάτων, αναζήτηση για αντίστοιχες καταχωρήσεις σε:
+ab-label =
+ .label = Τοπικά ευρετήρια διευθύνσεων
+ .accesskey = ο
+directories-label =
+ .label = Διακομιστής καταλόγου:
+ .accesskey = κ
+directories-none-label =
+ .none = Κανένας
+edit-directories-label =
+ .label = Επεξεργασία καταλόγων…
+ .accesskey = Ε
+email-picker-label =
+ .label = Αυτόματη προσθήκη εξερχομένων διευθύνσεων email σε:
+ .accesskey = τ
+default-directory-label =
+ .value = Προεπιλεγμένος κατάλογος εκκίνησης στο παράθυρο του ευρετηρίου διευθύνσεων:
+ .accesskey = Ρ
+default-last-label =
+ .none = Τελευταία χρησιμοποιημένος κατάλογος
+attachment-label =
+ .label = Έλεγχος για συνημμένα που λείπουν
+ .accesskey = γ
+attachment-options-label =
+ .label = Λέξεις-κλειδιά…
+ .accesskey = κ
+enable-cloud-share =
+ .label = Πρόταση για κοινή χρήση αρχείων, μεγαλύτερων από
+cloud-share-size =
+ .value = MB
+add-cloud-account =
+ .label = Προσθήκη…
+ .accesskey = Π
+ .defaultlabel = Προσθήκη…
+remove-cloud-account =
+ .label = Αφαίρεση
+ .accesskey = Α
+find-cloud-providers =
+ .value = Εύρεση περισσότερων παρόχων…
+cloud-account-description = Προσθήκη νέας υπηρεσίας αποθηκευτικού χώρου Filelink
+
+## Privacy Tab
+
+mail-content = Περιεχόμενο email
+remote-content-label =
+ .label = Αποδοχή απομακρυσμένου περιεχομένου στα μηνύματα
+ .accesskey = μ
+exceptions-button =
+ .label = Εξαιρέσεις…
+ .accesskey = Ε
+remote-content-info =
+ .value = Μάθετε περισσότερα σχετικά με τα θέματα απορρήτου του απομακρυσμένου περιεχομένου
+web-content = Διαδικτυακό περιεχόμενο
+history-label =
+ .label = Απομνημόνευση ιστοσελίδων και συνδέσμων που έχω επισκεφθεί
+ .accesskey = ι
+cookies-label =
+ .label = Αποδοχή cookies από ιστοσελίδες
+ .accesskey = δ
+third-party-label =
+ .value = Αποδοχή cookies τρίτων:
+ .accesskey = τ
+third-party-always =
+ .label = Πάντα
+third-party-never =
+ .label = Ποτέ
+third-party-visited =
+ .label = Από τις επισκέψεις
+keep-label =
+ .value = Διατήρηση μέχρι:
+ .accesskey = δ
+keep-expire =
+ .label = να λήξουν
+keep-close =
+ .label = το κλείσιμο του { -brand-short-name }
+keep-ask =
+ .label = ερώτηση κάθε φορά
+cookies-button =
+ .label = Εμφάνιση cookies…
+ .accesskey = φ
+do-not-track-label =
+ .label = Αποστολή σήματος “Αποτροπή καταγραφής” που σημαίνει ότι δεν θέλετε να καταγράφεστε από τις ιστοσελίδες
+ .accesskey = ρ
+learn-button =
+ .label = Μάθετε περισσότερα
+passwords-description = Το { -brand-short-name } μπορεί να απομνημονεύσει τους κωδικούς πρόσβασης όλων των λογαριασμών σας.
+passwords-button =
+ .label = Αποθηκευμένοι κωδικοί πρόσβασης…
+ .accesskey = θ
+master-password-description = Ο κύριος κωδικός πρόσβασης προστατεύει όλους τους κωδικούς πρόσβασής σας, αλλά θα πρέπει να τον εισαγάγετε σε κάθε συνεδρία.
+master-password-label =
+ .label = Χρήση κύριου κωδικού πρόσβασης
+ .accesskey = ρ
+master-password-button =
+ .label = Αλλαγή κύριου κωδικού πρόσβασης…
+ .accesskey = β
+primary-password-description = Ο κύριος κωδικός πρόσβασης προστατεύει όλους τους κωδικούς πρόσβασής σας, αλλά θα πρέπει να τον εισάγετε σε κάθε συνεδρία.
+primary-password-label =
+ .label = Χρήση κύριου κωδικού πρόσβασης
+ .accesskey = Χ
+primary-password-button =
+ .label = Αλλαγή κύριου κωδικού πρόσβασης…
+ .accesskey = Α
+forms-primary-pw-fips-title = Είστε σε λειτουργία FIPS. Το FIPS απαιτεί μη κενό κύριο κωδικό πρόσβασης.
+forms-master-pw-fips-desc = Αποτυχία αλλαγής κωδικού πρόσβασης
+junk-description = Καθορίστε τις προεπιλεγμένες ρυθμίσεις ανεπιθύμητης αλληλογραφίας. Οι ρυθμίσεις για συγκεκριμένους λογαριασμούς μπορούν να τροποποιηθούν στις ρυθμίσεις λογαριασμού.
+junk-label =
+ .label = Όταν επισημαίνεται ως ανεπιθύμητο ένα μήνυμα:
+ .accesskey = σ
+junk-move-label =
+ .label = Μετακίνηση στο φάκελο "Ανεπιθύμητα" του λογαριασμού
+ .accesskey = θ
+junk-delete-label =
+ .label = Διαγραφή
+ .accesskey = δ
+junk-read-label =
+ .label = Επισήμανση ανεπιθύμητων μηνυμάτων ως αναγνωσμένα
+ .accesskey = μ
+junk-log-label =
+ .label = Ενεργοποίηση καταγραφής προσαρμοστικού φίλτρου ανεπιθύμητων
+ .accesskey = γ
+junk-log-button =
+ .label = Εμφάνιση αρχείου καταγραφής
+ .accesskey = φ
+reset-junk-button =
+ .label = Επαναφορά δεδομένων εκμάθησης
+ .accesskey = θ
+phishing-description = Το { -brand-short-name } μπορεί να αναλύει τα μηνύματα για πιθανές απάτες email, αναζητώντας κοινές πρακτικές που χρησιμοποιούνται για παραπλάνηση.
+phishing-label =
+ .label = Ειδοποίηση αν το τρέχον μήνυμα είναι ύποπτο για απάτη email
+ .accesskey = δ
+antivirus-description = Το { -brand-short-name } μπορεί να διευκολύνει το λογισμικό προστασίας από ιούς στην ανάλυση των εισερχομένων σας για ιούς πριν την τοπική αποθήκευση.
+antivirus-label =
+ .label = Να επιτρέπεται στο λογισμικό προστασίας από ιούς η απομόνωση ξεχωριστών εισερχόμενων μηνυμάτων
+ .accesskey = ρ
+certificate-description = Όταν ένας διακομιστής ζητά ένα πιστοποιητικό:
+certificate-auto =
+ .label = Αυτόματη επιλογή
+ .accesskey = Α
+certificate-ask =
+ .label = Ερώτηση κάθε φορά
+ .accesskey = Ε
+ocsp-label =
+ .label = Ερώτηση στους διακομιστές για OCSP ανταπόκριση ώστε να επιβεβαιωθεί η τρέχουσα εγκυρότητα των πιστοποιητικών
+ .accesskey = δ
+certificate-button =
+ .label = Διαχείριση πιστοποιητικών…
+ .accesskey = Δ
+security-devices-button =
+ .label = Συσκευές ασφαλείας…
+ .accesskey = Σ
+
+## Chat Tab
+
+startup-label =
+ .value = Κατά την εκκίνηση του { -brand-short-name }:
+ .accesskey = ε
+offline-label =
+ .label = Διατήρηση λογαριασμών συνομιλίας εκτός σύνδεσης
+auto-connect-label =
+ .label = Αυτόματη σύνδεση λογαριασμών συνομιλίας
+
+## Note: idle-label is displayed first, then there's a field where the user
+## can enter a number, and itemTime is displayed at the end of the line.
+## The translations of the idle-label and idle-time-label parts don't have
+## to mean the exact same thing as in English; please try instead to
+## translate the whole sentence.
+
+idle-label =
+ .label = Να γνωστοποιείται στις επαφές μου ότι είμαι αδρανής μετά από
+ .accesskey = δ
+idle-time-label = λεπτά αδράνειας
+
+##
+
+away-message-label =
+ .label = και να ορίζεται η κατάστασή μου σε "Εκτός υπολογιστή" με το εξής μήνυμα:
+ .accesskey = ζ
+send-typing-label =
+ .label = Αποστολή ειδοποιήσεων πληκτρολόγησης στις συνομιλίες
+ .accesskey = σ
+notification-label = Όταν έρχονται μηνύματα που απευθύνονται σε εσάς:
+show-notification-label =
+ .label = Εμφάνιση ειδοποίησης:
+ .accesskey = ε
+notification-all =
+ .label = με όνομα αποστολέα και προεπισκόπηση μηνύματος
+notification-name =
+ .label = μόνο με όνομα αποστολέα
+notification-empty =
+ .label = χωρίς καμία πληροφορία
+notification-type-label =
+ .label =
+ { PLATFORM() ->
+ [macos] Κίνηση εικονιδίου στη γραμμή εφαρμογών
+ *[other] Αναλαμπή στοιχείου γραμμής εργασιών
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [macos] μ
+ *[other] μ
+ }
+chat-play-sound-label =
+ .label = Αναπαραγωγή ήχου
+ .accesskey = χ
+chat-play-button =
+ .label = Αναπαραγωγή
+ .accesskey = Α
+chat-system-sound-label =
+ .label = Προεπιλεγμένος ήχος συστήματος για νέα email
+ .accesskey = ρ
+chat-custom-sound-label =
+ .label = Χρήση του ακόλουθου αρχείου ήχου
+ .accesskey = χ
+chat-browse-sound-button =
+ .label = Περιήγηση…
+ .accesskey = η
+theme-label =
+ .value = Θέμα:
+ .accesskey = Θ
+style-thunderbird =
+ .label = Thunderbird
+style-bubbles =
+ .label = Φούσκες
+style-dark =
+ .label = Σκούρο
+style-paper =
+ .label = Φύλλα χαρτιού
+style-simple =
+ .label = Απλό
+preview-label = Προεπισκόπηση:
+no-preview-label = Μη διαθέσιμη προεπισκόπιση
+no-preview-description = Αυτό το θέμα δεν είναι έγκυρο ή διαθέσιμο αυτή τη στιγμή (ανενεργό πρόσθετο, ασφαλής λειτουργία, …).
+chat-variant-label =
+ .value = Παραλλαγή:
+ .accesskey = Π
+chat-header-label =
+ .label = Εμφάνιση επικεφαλίδας
+ .accesskey = Ε
+# This is used to determine the width of the search field in about:preferences,
+# in order to make the entire placeholder string visible
+#
+# Please keep the placeholder string short to avoid truncation.
+#
+# Notice: The value of the `.style` attribute is a CSS string, and the `width`
+# is the name of the CSS property. It is intended only to adjust the element's width.
+# Do not translate.
+search-input-box =
+ .style = width: 15.4em
+ .placeholder =
+ { PLATFORM() ->
+ [windows] Εύρεση στις επιλογές
+ *[other] Εύρεση στις προτιμήσεις
+ }
+
+## Preferences UI Search Results
+
+search-results-header = Αποτελέσματα αναζήτησης
+# `<span data-l10n-name="query"></span>` will be replaced by the search term.
+search-results-empty-message =
+ { PLATFORM() ->
+ [windows] Συγγνώμη! Δεν υπάρχουν αποτελέσματα για το “<span data-l10n-name="query"></span>” στις Επιλογές.
+ *[other] Συγγνώμη! Δεν υπάρχουν αποτελέσματα για το “<span data-l10n-name="query"></span>” στις Προτιμήσεις.
+ }
+search-results-help-link = Χρειάζεστε βοήθεια; Επισκεφθείτε την <a data-l10n-name="url">Υποστήριξη { -brand-short-name }</a>
diff --git a/l10n-el/mail/messenger/preferences/receipts.ftl b/l10n-el/mail/messenger/preferences/receipts.ftl
new file mode 100644
index 0000000000..bd63b24e73
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/receipts.ftl
@@ -0,0 +1,38 @@
+# 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/.
+
+receipts-dialog-window =
+ .title = Αποδεικτικά ανάγνωσης
+return-receipt-checkbox =
+ .label = Κατά την αποστολή μηνυμάτων να ζητείται πάντα βεβαίωση
+ .acceskey = Κ
+receipt-arrive-label = Μετά την επιστροφή μιας βεβαίωσης
+receipt-leave-radio =
+ .label = Να παραμένει στο φάκελο 'Εισερχόμενα'
+ .acceskey = ι
+receipt-move-radio =
+ .label = Μεταφορά στο φάκελο "Απεσταλμένα"
+ .acceskey = μ
+receipt-request-label = Κατά τη λήψη ενός μηνύματος για το οποίο ο αποστολέας ζήτησε βεβαίωση (MDN):
+receipt-return-never-radio =
+ .label = Να μην επιστρέφεται ποτέ βεβαίωση
+ .acceskey = ν
+receipt-return-some-radio =
+ .label = Να επιστρέφεται βεβαίωση μόνο στις παρακάτω περιπτώσεις:
+ .acceskey = π
+receipt-not-to-cc =
+ .value = Αν δεν είμαι στο Πρός ή Κοιν. του μηνύματος:
+ .acceskey = ν
+receipt-send-never-label =
+ .label = Να μη στέλνεται ποτέ
+receipt-send-always-label =
+ .label = Να στέλνεται πάντα
+receipt-send-ask-label =
+ .label = Να γίνεται ερώτηση
+sender-outside-domain =
+ .value = Aν ο αποστολέας είναι εκτός του τομέα μου:
+ .acceskey = κ
+other-cases-label =
+ .value = Σε όλες τις άλλες περιπτώσεις:
+ .acceskey = λ
diff --git a/l10n-el/mail/messenger/preferences/sendoptions.ftl b/l10n-el/mail/messenger/preferences/sendoptions.ftl
new file mode 100644
index 0000000000..fab965cb4b
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/sendoptions.ftl
@@ -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/.
+
+sendoptions-dialog-window =
+ .title = Επιλογές αποστολής
+
+send-mail-title = Μορφή κειμένου
+
+auto-downgrade-label =
+ .label = Αποστολή μηνυμάτων ως απλό κείμενο αν είναι δυνατόν
+ .accesskey = α
+
+default-html-format-label = Κατά την αποστολή μηνυμάτων σε μορφή HTML και αν δεν επιθυμούν HTML όλοι οι παραλήπτες:
+
+html-format-ask =
+ .label = Ερώτηση για το τι να κάνω
+ .accesskey = ρ
+
+html-format-convert =
+ .label = Μετατροπή του μηνύματος σε απλό κείμενο
+ .accesskey = Μ
+
+html-format-send-html =
+ .label = Αποστολή του μηνύματος σε HTML οπωσδήποτε
+ .accesskey = σ
+
+html-format-send-both =
+ .label = Αποστολή και σε HTML και σε απλό κείμενο
+ .accesskey = κ
+
+default-html-format-info = Σημείωση: Καθορίστε την προτιμώμενη μορφή κειμένου για κάθε παραλήπτη από το ευρετήριο διευθύνσεων.
+
+html-tab-label =
+ .label = Τομείς HTML
+ .accesskey = τ
+
+plain-tab-label =
+ .label = Τομείς απλού κειμένου
+ .accesskey = π
+
+send-message-domain-label = Όταν στέλνετε μήνυμα σε μια διεύθυνση με ένα από τα παρακάτω ονόματα τομέων, το { -brand-short-name } στέλνει αυτόματα το μήνυμα στη σωστή μορφή.
+
+add-domain-button =
+ .label = Προσθήκη…
+ .accesskey = θ
+
+delete-domain-button =
+ .label = Διαγραφή
+ .accesskey = Δ
diff --git a/l10n-el/mail/messenger/preferences/system-integration.ftl b/l10n-el/mail/messenger/preferences/system-integration.ftl
new file mode 100644
index 0000000000..b78907682c
--- /dev/null
+++ b/l10n-el/mail/messenger/preferences/system-integration.ftl
@@ -0,0 +1,38 @@
+# 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/.
+
+system-integration-title =
+ .title = Ενσωμάτωση συστήματος
+system-integration-dialog =
+ .buttonlabelaccept = Ορισμός ως προεπιλογή
+ .buttonlabelcancel = Παράλειψη ενσωμάτωσης
+ .buttonlabelcancel2 = Ακύρωση
+default-client-intro = Ορισμός του { -brand-short-name } ως προεπιλογής για:
+unset-default-tooltip = Δεν είναι δυνατή η ακύρωση ορισμού του { -brand-short-name } ως προκαθορισμένου προγράμματος μέσα από το { -brand-short-name }. Για να ορίσετε άλλη εφαρμογή ως προεπιλογή πρέπει να χρησιμοποιήσετε το διάλογο της «Ορισμός ως προεπιλογή».
+checkbox-email-label =
+ .label = Email
+ .tooltiptext = { unset-default-tooltip }
+checkbox-newsgroups-label =
+ .label = Ομάδες συζήτησης
+ .tooltiptext = { unset-default-tooltip }
+checkbox-feeds-label =
+ .label = Ροές
+ .tooltiptext = { unset-default-tooltip }
+checkbox-calendar-label =
+ .label = Ημερολόγιο
+ .tooltiptext = { unset-default-tooltip }
+# Note: This is the search engine name for all the different platforms.
+# Platforms that don't support it should be left blank.
+system-search-engine-name =
+ { PLATFORM() ->
+ [macos] Spotlight
+ [windows] Αναζήτηση των Windows
+ *[other] { "" }
+ }
+system-search-integration-label =
+ .label = Να επιτρέπεται στην { system-search-engine-name } η αναζήτηση μηνυμάτων
+ .accesskey = ε
+check-on-startup-label =
+ .label = Πάντα έλεγχος κατά την εκκίνηση του { -brand-short-name }
+ .accesskey = Π
diff --git a/l10n-el/mail/updater/updater.ini b/l10n-el/mail/updater/updater.ini
new file mode 100644
index 0000000000..a4d615fb3d
--- /dev/null
+++ b/l10n-el/mail/updater/updater.ini
@@ -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 file is in the UTF-8 encoding
+[Strings]
+TitleText=Ενημέρωση του %MOZ_APP_DISPLAYNAME%
+InfoText=Το %MOZ_APP_DISPLAYNAME% εγκαθιστά τις ενημερώσεις σας και θα ξεκινήσει σε λίγο…
diff --git a/l10n-el/mobile/android/chrome/about.dtd b/l10n-el/mobile/android/chrome/about.dtd
new file mode 100644
index 0000000000..993bf3a0dc
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/about.dtd
@@ -0,0 +1,21 @@
+<!-- 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 aboutPage.title "Σχετικά με το &brandShortName;">
+<!ENTITY aboutPage.warningVersion "Το &brandShortName; είναι πειραματικό και ενδεχομένως ασταθές.">
+<!ENTITY aboutPage.checkForUpdates.link "Έλεγχος για ενημερώσεις »">
+<!ENTITY aboutPage.checkForUpdates.checking "Αναζήτηση για ενημερώσεις…">
+<!ENTITY aboutPage.checkForUpdates.none "Καμία διαθέσιμη ενημέρωση">
+<!ENTITY aboutPage.checkForUpdates.available2 "Λήψη ενημέρωσης">
+<!ENTITY aboutPage.checkForUpdates.downloading "Γίνεται λήψη ενημέρωσης…">
+<!ENTITY aboutPage.checkForUpdates.downloaded2 "Εγκατάσταση ενημέρωσης">
+<!ENTITY aboutPage.faq.label "Συχνές ερωτήσεις">
+<!ENTITY aboutPage.support.label "Υποστήριξη">
+<!ENTITY aboutPage.privacyPolicy.label "Πολιτική προστασίας απορρήτου">
+<!ENTITY aboutPage.rights.label "Μάθετε τα δικαιώματά σας">
+<!ENTITY aboutPage.relNotes.label "Σημειώσεις έκδοσης">
+<!ENTITY aboutPage.credits.label "Μνεία">
+<!ENTITY aboutPage.license.label "Πληροφορίες αδειοδότησης">
+
+<!-- LOCALIZATION NOTE (aboutPage.logoTrademark): The message is explicitly about the word "Firefox" being trademarked, that's why we use it, instead of brandShortName. -->
+<!ENTITY aboutPage.logoTrademark "Το Firefox και τα λογότυπα του Firefox αποτελούν εμπορικά σήματα του Ιδρύματος Mozilla.">
diff --git a/l10n-el/mobile/android/chrome/aboutAccounts.dtd b/l10n-el/mobile/android/chrome/aboutAccounts.dtd
new file mode 100644
index 0000000000..ace3d3791a
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/aboutAccounts.dtd
@@ -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/. -->
+
+<!ENTITY aboutAccounts.connected.title "Λογαριασμοί Firefox">
+<!ENTITY aboutAccounts.connected.description "Έχετε συνδεθεί ως">
+<!ENTITY aboutAccounts.syncPreferences.label "Πατήστε εδώ για να ελέγξετε τις ρυθμίσεις του Sync">
+
+<!ENTITY aboutAccounts.noConnection.title "Δεν υπάρχει σύνδεση στο διαδίκτυο">
+<!ENTITY aboutAccounts.retry.label "Προσπαθήστε ξανά">
+
+<!ENTITY aboutAccounts.restrictedError.title "Περιορισμένη">
+<!ENTITY aboutAccounts.restrictedError.description "Δεν μπορείτε να διαχειριστείτε λογαριασμούς Firefox από αυτό το προφίλ.">
diff --git a/l10n-el/mobile/android/chrome/aboutAccounts.properties b/l10n-el/mobile/android/chrome/aboutAccounts.properties
new file mode 100644
index 0000000000..269cb98f10
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/aboutAccounts.properties
@@ -0,0 +1,16 @@
+# 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 (relinkDenied.message): Ideally, this string is short (it's
+# a toast message).
+relinkDenied.message = Έχετε ήδη συνδεθεί στο Συγχρονισμό!
+# LOCALIZATION NOTE (relinkDenied.openPrefs): Ideally, this string is short (it's a
+# button label) and upper-case, to match Google and Android's convention.
+relinkDenied.openPrefs = ΡΥΘΜΙΣΕΙΣ
+
+relinkVerify.title = Θέλετε σίγουρα να συνδεθείτε στο Sync;
+# LOCALIZATION NOTE (relinkVerify.message): Email address of a user previously signed in to Sync.
+relinkVerify.message = Είχατε συνδεθεί στο Sync με μια διαφορετική ηλ. διεύθυνση. Με τη σύνδεση σας τώρα θα συγχωνευτούν οι σελιδοδείκτες, οι κωδικοί και οι άλλες ρυθμίσεις αυτού του περιηγητή με το %S
+relinkVerify.continue = Συνέχεια
+relinkVerify.cancel = Ακύρωση
diff --git a/l10n-el/mobile/android/chrome/aboutAddons.dtd b/l10n-el/mobile/android/chrome/aboutAddons.dtd
new file mode 100644
index 0000000000..3e6616748a
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/aboutAddons.dtd
@@ -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/. -->
+
+<!ENTITY aboutAddons.title2 "Πρόσθετα">
+<!ENTITY aboutAddons.header2 "Τα πρόσθετα σας">
+
+<!ENTITY addonAction.enable "Ενεργοποίηση">
+<!ENTITY addonAction.disable "Απενεργοποίηση">
+<!ENTITY addonAction.uninstall "Απεγκατάσταση">
+<!ENTITY addonAction.undo "Αναίρεση">
+<!ENTITY addonAction.update "Ενημέρωση">
+
+<!ENTITY addonUnsigned.message "Αυτό το πρόσθετο δεν μπορεί να επαληθευτεί από το &brandShortName;.">
+<!ENTITY addonUnsigned.learnMore "Μάθετε περισσότερα">
diff --git a/l10n-el/mobile/android/chrome/aboutAddons.properties b/l10n-el/mobile/android/chrome/aboutAddons.properties
new file mode 100644
index 0000000000..b73185850a
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/aboutAddons.properties
@@ -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/.
+
+addonStatus.uninstalled=%S: απεγκατάσταση μετά από επανεκκίνηση.
+
+# Will keep both strings and at runtime will fallback on the old one if the new one is not yet localized
+addons.browseAll=Περιήγηση σε όλα τα πρόσθετα του Firefox
+
+addons.browseRecommended=Περιήγηση στις προτεινόμενες επεκτάσεις του Firefox
+
+addon.options=Επιλογές
diff --git a/l10n-el/mobile/android/chrome/aboutCertError.dtd b/l10n-el/mobile/android/chrome/aboutCertError.dtd
new file mode 100644
index 0000000000..9e8b4da4b1
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/aboutCertError.dtd
@@ -0,0 +1,38 @@
+<!-- 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 % brandDTD
+ SYSTEM "chrome://branding/locale/brand.dtd">
+ %brandDTD;
+
+<!-- These strings are used by Firefox's custom about:certerror page,
+a replacement for the standard security certificate errors produced
+by NSS/PSM via netError.xhtml. -->
+
+<!ENTITY certerror.pagetitle "Αναξιόπιστη σύνδεση">
+<!ENTITY certerror.longpagetitle "Αυτή η σύνδεση είναι αναξιόπιστη">
+
+<!-- Localization note (certerror.introPara1) - The string "#1" will
+be replaced at runtime with the name of the server to which the user
+was trying to connect. -->
+<!ENTITY certerror.introPara1 "Έχετε ζητήσει από το &brandShortName; μια ασφαλή σύνδεση
+στο <b>#1</b>, αλλά δεν είναι δυνατή η πιστοποίηση της ασφάλειας της σύνδεσης.">
+
+<!ENTITY certerror.whatShouldIDo.heading "Τι θέλετε να γίνει;">
+<!ENTITY certerror.whatShouldIDo.content "Αν συνήθως συνδέεστε σε αυτή την σελίδα
+χωρίς προβλήματα, αυτό το σφάλμα σημαίνει ότι κάποιος προσπαθεί να πλαστογραφήσει
+την ταυτότητα της σελίδας και δεν πρέπει να συνεχίσετε.">
+<!ENTITY certerror.getMeOutOfHere.label "Να φύγω από εδώ!">
+
+<!ENTITY certerror.expert.heading "Καταλαβαίνω τους κινδύνους">
+<!ENTITY certerror.expert.content "Αν καταλαβαίνετε τι συμβαίνει, μπορείτε να
+πείτε στο &brandShortName; να εμπιστεύεται από εδώ και πέρα την ταυτότητα της σελίδας.
+<b>Ακόμα και αν εμπιστεύεστε αυτή την σελίδα, αυτό το σφάλμα μπορεί αν σημαίνει ότι κάποιος
+μπορεί να υποκλέπτει στοιχεία από την σύνδεση σας.</b>">
+<!ENTITY certerror.expert.contentPara2 "Μην προσθέτετε εξαιρέσεις εκτός και αν γνωρίζετε πολύ καλά
+το λόγο για τον οποίο αυτή η σελίδα δεν χρησιμοποιεί έμπιστη πιστοποίηση.">
+<!ENTITY certerror.addTemporaryException.label "Επίσκεψη σελίδας">
+<!ENTITY certerror.addPermanentException.label "Προσθήκη μόνιμης εξαίρεσης">
+
+<!ENTITY certerror.technical.heading "Τεχνικές λεπτομέρειες">
diff --git a/l10n-el/mobile/android/chrome/aboutDownloads.dtd b/l10n-el/mobile/android/chrome/aboutDownloads.dtd
new file mode 100644
index 0000000000..153db6db04
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/aboutDownloads.dtd
@@ -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/. -->
+
+<!ENTITY aboutDownloads.title "Λήψεις">
+<!ENTITY aboutDownloads.header "Οι λήψεις σας">
+<!ENTITY aboutDownloads.empty "Δεν υπάρχουν λήψεις">
+
+<!ENTITY aboutDownloads.open "Άνοιγμα">
+<!ENTITY aboutDownloads.remove "Διαγραφή">
+<!ENTITY aboutDownloads.removeAll "Διαγραφή όλων">
+<!ENTITY aboutDownloads.pause "Παύση">
+<!ENTITY aboutDownloads.resume "Συνέχεια">
+<!ENTITY aboutDownloads.cancel "Ακύρωση">
+<!ENTITY aboutDownloads.retry "Επανάληψη">
diff --git a/l10n-el/mobile/android/chrome/aboutDownloads.properties b/l10n-el/mobile/android/chrome/aboutDownloads.properties
new file mode 100644
index 0000000000..18025ec136
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/aboutDownloads.properties
@@ -0,0 +1,17 @@
+# 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 (downloadMessage.deleteAll):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+downloadMessage.deleteAll=Διαγραφή αυτή της λήψης;;Διαγραφή #1 λήψεων;
+
+downloadAction.deleteAll=Διαγραφή όλων
+
+downloadState.downloading=Λήψη…
+downloadState.canceled=Ακυρώθηκε
+downloadState.failed=Απέτυχε
+downloadState.paused=Σε παύση
+downloadState.starting=Εκκίνηση…
+downloadState.unknownSize=Άγνωστο μέγεθος
diff --git a/l10n-el/mobile/android/chrome/aboutHome.dtd b/l10n-el/mobile/android/chrome/aboutHome.dtd
new file mode 100644
index 0000000000..d7d1743f83
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/aboutHome.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/. -->
+
+<!-- This string should be kept in sync with the home_title string
+ in android_strings.dtd -->
+<!ENTITY abouthome.title "Αρχική σελίδα &brandShortName;">
diff --git a/l10n-el/mobile/android/chrome/aboutLogins.dtd b/l10n-el/mobile/android/chrome/aboutLogins.dtd
new file mode 100644
index 0000000000..66fd3ae0a2
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/aboutLogins.dtd
@@ -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/. -->
+<!ENTITY % brandDTD
+ SYSTEM "chrome://branding/locale/brand.dtd">
+ %brandDTD;
+<!ENTITY aboutLogins.title "Στοιχεία σύνδεσης">
+<!ENTITY aboutLogins.update "Ενημέρωση">
+<!ENTITY aboutLogins.emptyLoginText "Διαφυλάξτε τα στοιχεία σύνδεσης σας">
+<!ENTITY aboutLogins.emptyLoginHint "Τα στοιχεία σύνδεσης που αποθηκεύετε με το &brandShortName; θα εμφανίζονται εδώ.">
diff --git a/l10n-el/mobile/android/chrome/aboutLogins.properties b/l10n-el/mobile/android/chrome/aboutLogins.properties
new file mode 100644
index 0000000000..0d0c12a9ca
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/aboutLogins.properties
@@ -0,0 +1,33 @@
+# 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/.
+
+loginsMenu.showPassword=Εμφάνιση κωδικού
+loginsMenu.copyPassword=Αντιγραφή κωδικού πρόσβασης
+loginsMenu.copyUsername=Αντιγραφή ονόματος χρήστη
+loginsMenu.editLogin=Επεξεργασία στοιχείου σύνδεσης
+loginsMenu.delete=Διαγραφή
+
+loginsMenu.deleteAll=Διαγραφή όλων
+
+loginsDialog.confirmDelete=Διαγραφή αυτού του στοιχείου σύνδεσης;
+loginsDialog.confirmDeleteForFxaUser=Διαγραφή αυτής της σύνδεσης;\n\nΑυτό ενδέχεται να επηρεάσει τις συγχρονισμένες συνδέσεις.
+loginsDialog.confirmDeleteAll=Διαγραφή όλων των συνδέσεων;
+loginsDialog.confirmDeleteAllForFxaUser=Διαγραφή όλων των συνδέσεων;\n\nΑυτό ενδέχεται να επηρεάσει τις συγχρονισμένες συνδέσεις.
+loginsDialog.copy=Αντιγραφή
+loginsDialog.confirm=ΟΚ
+loginsDialog.cancel=Ακύρωση
+
+editLogin.fallbackTitle=Επεξεργασία στοιχείου σύνδεσης
+editLogin.saved1=Αποθηκευμένα στοιχεία σύνδεσης
+editLogin.couldNotSave=Δεν ήταν δυνατή η αποθήκευση των αλλαγών
+
+loginsDetails.copyFailed=Αποτυχία αντιγραφής
+loginsDetails.passwordCopied=Ο κωδικός πρόσβασης αντιγράφηκε
+loginsDetails.usernameCopied=Το όνομα χρήστη αντιγράφηκε
+loginsDetails.deleted=Η σύνδεση διαγράφτηκε
+
+loginsDetails.deletedAll=Διαγράφηκαν όλες οι συνδέσεις
+
+password-btn.show=Εμφάνιση
+password-btn.hide=Απόκρυψη
diff --git a/l10n-el/mobile/android/chrome/aboutPrivateBrowsing.dtd b/l10n-el/mobile/android/chrome/aboutPrivateBrowsing.dtd
new file mode 100644
index 0000000000..b339c771a9
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/aboutPrivateBrowsing.dtd
@@ -0,0 +1,25 @@
+<!-- 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 privatebrowsingpage.title "Ιδιωτική περιήγηση">
+
+<!-- Localisation note: the plus sign here is a shorthand way of expressing the word "and". Contextually the privatebrowsingpage.title.private string
+ is used as a title, with the privatebrowsingpage.title string preceding it but on a separate line.
+ So the final line will say "Private Browsing + Tracking Protection". -->
+<!ENTITY privatebrowsingpage.title.private "+ Προστασία από καταγραφή">
+<!-- Localization note (privatebrowsingpage.title.normal1): "Private Browsing"
+ is capitalized in English to be consistent with our existing uses of the
+ term. -->
+<!ENTITY privatebrowsingpage.title.normal1 "Δεν βρίσκεστε στη λειτουργία ιδιωτικής περιήγησης">
+
+<!ENTITY privatebrowsingpage.description.trackingProtection "Το &brandShortName; αποκλείει τμήματα σελίδων που ενδέχεται να καταγράφουν την περιήγηση σας.">
+<!ENTITY privatebrowsingpage.description.privateDetails "Δεν θα διατηρείται το ιστορικό, ωστόσο τα ληφθέντα αρχεία και οι νέοι σελιδοδείκτες θα αποθηκεύονται στη συσκευή σας.">
+
+<!-- Localization note (privatebrowsingpage.description.normal2): "Private
+ Browsing is capitalized in English to be consistent with our existing uses
+ of the term. -->
+<!ENTITY privatebrowsingpage.description.normal2 "Στη λειτουργία ιδιωτικής περιήγησης δεν διατηρείται το ιστορικό περιήγησης ή τα cookies σας. Ωστόσο, οι σελιδοδείκτες που δημιουργείτε και τα αρχεία που κατεβάζετε θα αποθηκεύονται στη συσκευή σας.">
+
+<!ENTITY privatebrowsingpage.link.private "Θέλετε να μάθετε περισσότερα;">
+<!ENTITY privatebrowsingpage.link.normal "Άνοιγμα σε καρτέλα ιδιωτικής περιήγησης">
diff --git a/l10n-el/mobile/android/chrome/browser.properties b/l10n-el/mobile/android/chrome/browser.properties
new file mode 100644
index 0000000000..9fb95915bd
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/browser.properties
@@ -0,0 +1,476 @@
+# 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/.
+
+addonsConfirmInstall.title=Εγκατάσταση προσθέτου
+addonsConfirmInstall.install=Εγκατάσταση
+
+addonsConfirmInstallUnsigned.title=Μη επαληθευμένο πρόσθετο
+addonsConfirmInstallUnsigned.message=Αυτή η ιστοσελίδα επιθυμεί να εγκαταστήσει ένα μη επαληθευμένο πρόσθετο. Συνεχίστε με δική σας ευθύνη.
+
+# Alerts
+alertAddonsDownloading=Λήψη προσθέτου
+alertAddonsInstalledNoRestart.message=Η εγκατάσταση ολοκληρώθηκε
+
+# LOCALIZATION NOTE (alertAddonsInstalledNoRestart.action2): Ideally, this string is short (it's a
+# button label) and upper-case, to match Google and Android's convention.
+alertAddonsInstalledNoRestart.action2=ΠΡΟΣΘΕΤΑ
+
+alertDownloadsStart2=Έναρξη λήψης
+alertDownloadsDone2=Η λήψη ολοκληρώθηκε
+alertDownloadsToast=Η λήψη ξεκίνησε…
+alertDownloadsPause=Παύση
+alertDownloadsResume=Συνέχεια
+alertDownloadsCancel=Ακύρωση
+# LOCALIZATION NOTE (alertDownloadSucceeded): This text is shown as a snackbar inside the app after a
+# successful download. %S will be replaced by the file name of the download.
+alertDownloadSucceeded=Το αρχείο %S ελήφθη
+# LOCALIZATION NOTE (downloads.disabledInGuest): This message appears in a toast
+# when the user tries to download something in Guest mode.
+downloads.disabledInGuest=Οι λήψεις είναι απενεργοποιημένες στις συνεδρίες επισκέπτη
+
+# LOCALIZATION NOTE (alertSearchEngineAddedToast, alertSearchEngineErrorToast, alertSearchEngineDuplicateToast)
+# %S will be replaced by the name of the search engine (exposed by the current page)
+# that has been added; for example, 'Google'.
+alertSearchEngineAddedToast=Προστέθηκε η μηχανή αναζήτησης «%S»
+alertSearchEngineErrorToast=Δεν ήταν δυνατή η προσθήκη της μηχανής αναζήτησης «%S»
+alertSearchEngineDuplicateToast=Η «%S» βρίσκεται ήδη στις μηχανές αναζήτησης σας
+
+# LOCALIZATION NOTE (alertShutdownSanitize): This text is shown as a snackbar during shutdown if the
+# user has enabled "Clear private data on exit".
+alertShutdownSanitize=Εκκαθάριση προσωπικών δεδομένων…
+
+alertPrintjobToast=Εκτύπωση…
+
+download.blocked=Αδυναμία λήψης αρχείου
+
+addonError.titleError=Σφάλμα
+addonError.titleBlocked=Αποκλεισμένο πρόσθετο
+addonError.learnMore=Μάθετε περισσότερα
+
+# LOCALIZATION NOTE (unsignedAddonsDisabled.title, unsignedAddonsDisabled.message):
+# These strings will appear in a dialog when Firefox detects that installed add-ons cannot be verified.
+unsignedAddonsDisabled.title=Μη επαληθευμένα πρόσθετα
+unsignedAddonsDisabled.message=Ένα ή περισσότερα εγκατεστημένα πρόσθετα δεν μπορούν να επαληθευτούν και έχουν απενεργοποιηθεί.
+unsignedAddonsDisabled.dismiss=Απόρριψη
+unsignedAddonsDisabled.viewAddons=Προβολή πρόσθετων
+
+# LOCALIZATION NOTE (addonError-1, addonError-2, addonError-3, addonError-4, addonError-5):
+# #1 is the add-on name, #2 is the add-on host, #3 is the application name
+addonError-1=Δεν είναι δυνατή η λήψη του προσθέτου λόγω σφάλματος σύνδεσης στο #2.
+addonError-2=Το πρόσθετο από το #2 δεν μπορεί να εγκατασταθεί επειδή δεν ταιριάζει με το αναμενόμενο πρόσθετο στο #3.
+addonError-3=Το πρόσθετο που λήφθηκε από το #2 δεν μπορεί να εγκατασταθεί γιατί φαίνεται να είναι κατεστραμμένο.
+addonError-4=Το #1 δεν μπορεί να εγκατασταθεί επειδή ο #3 δεν μπορεί να τροποποιήσει το απαραίτητο αρχείο.
+addonError-5=Ο #3 απέτρεψε την εγκατάσταση ενός μη επαληθευμένου προσθέτου από το #2.
+
+# LOCALIZATION NOTE (addonLocalError-1, addonLocalError-2, addonLocalError-3, addonLocalError-4, addonLocalError-5, addonErrorIncompatible, addonErrorBlocklisted):
+# #1 is the add-on name, #3 is the application name, #4 is the application version
+addonLocalError-1=Το πρόσθετο δεν μπορεί να εγκατασταθεί λόγω σφάλματος στο σύστημα αρχείων.
+addonLocalError-2=Το πρόσθετο δεν μπορεί να εγκατασταθεί επειδή δεν ταιριάζει με το αναμενόμενο πρόσθετο στο #3.
+addonLocalError-3=Το πρόσθετο δεν μπορεί να εγκατασταθεί γιατί φαίνεται να είναι κατεστραμμένο.
+addonLocalError-4=Το #1 δεν μπορεί να εγκατασταθεί επειδή ο #3 δεν μπορεί να τροποποιήσει το απαραίτητο αρχείο.
+addonLocalError-5=Το πρόσθετο δεν μπορεί να εγκατασταθεί επειδή δεν έχει επαληθευτεί.
+addonErrorIncompatible=Το #1 δεν μπορεί να εγκατασταθεί επειδή δεν είναι συμβατό με το #3 #4.
+addonErrorBlocklisted=Το #1 δεν μπορεί να εγκατασταθεί επειδή είναι πολύ πιθανόν να προκαλέσει προβλήματα ασφάλειας ή σταθερότητας.
+
+# Notifications
+notificationRestart.normal=Επανεκκίνηση για την ολοκλήρωση των αλλαγών.
+notificationRestart.blocked=Εγκαταστάθηκαν επικίνδυνα πρόσθετα. Επανεκκινήστε για να απενεργοποιηθούν.
+notificationRestart.button=Επανεκκίνηση
+doorhanger.learnMore=Μάθετε περισσότερα
+
+# Popup Blocker
+
+# LOCALIZATION NOTE (popup.message): Semicolon-separated list of plural forms.
+# #1 is brandShortName and #2 is the number of pop-ups blocked.
+popup.message=Το #1 απέτρεψε το άνοιγμα ενός αναδυόμενου παραθύρου από αυτή τη σελίδα. Θέλετε να εμφανιστεί;;Το #1 απέτρεψε το άνοιγμα #2 αναδυόμενων παραθύρων από αυτή τη σελίδα. Θέλετε να εμφανιστούν;
+popup.dontAskAgain=Να μην ερωτηθώ ξανά για αυτή τη σελίδα
+popup.show=Να επιτρέπονται
+popup.dontShow=Να μην επιτρέπονται
+
+# SafeBrowsing
+safeBrowsingDoorhanger=Αυτή η σελίδα βρέθηκε ότι περιέχει κακόβουλο λογισμικό ή απόπειρες παραπλάνησης (phishing). Να προσέχετε.
+
+# LOCALIZATION NOTE (blockPopups.label2): Label that will be used in
+# site settings dialog.
+blockPopups.label2=Αναδυόμενα παράθυρα
+
+# XPInstall
+xpinstallPromptWarning2=Ο %S εμπόδισε αυτή τη σελίδα (%S) να ζητήσει να εγκαταστήσει λογισμικό στη συσκευή σας.
+xpinstallPromptWarningLocal=Ο %S δεν επέτρεψε σε αυτό το πρόσθετο (%S) να εγκατασταθεί στη συσκευή σας.
+xpinstallPromptWarningDirect=Ο %S εμπόδισε την εγκατάσταση ενός πρόσθετου στη συσκευή σας.
+xpinstallPromptAllowButton=Αποδοχή
+xpinstallDisabledMessageLocked=Η εγκατάσταση λογισμικού έχει απενεργοποιηθεί από το διαχειριστή του συστήματος σας.
+xpinstallDisabledMessage2=Η εγκατάσταση λογισμικού έχει απενεργοποιηθεί. Πατήστε Ενεργοποίηση και προσπαθήστε ξανά.
+xpinstallDisabledButton=Ενεργοποίηση
+
+# LOCALIZATION NOTE (webextPerms.header)
+# This string is used as a header in the webextension permissions dialog,
+# %S is replaced with the localized name of the extension being installed.
+# See https://bug1308309.bmoattachments.org/attachment.cgi?id=8814612
+# for an example of the full dialog.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.header=Προσθήκη του %S;
+
+# LOCALIZATION NOTE (webextPerms.listIntro)
+# This string will be followed by a list of permissions requested
+# by the webextension.
+webextPerms.listIntro=Απαιτεί την άδεια σας για:
+webextPerms.add.label=Προσθήκη
+webextPerms.cancel.label=Ακύρωση
+
+# LOCALIZATION NOTE (webextPerms.updateText)
+# %S is replaced with the localized name of the updated extension.
+webextPerms.updateText=Το %S έχει ενημερωθεί. Πρέπει να εγκρίνετε νέα δικαιώματα πριν την εγκατάσταση της ενημερωμένης έκδοσης. Η επιλογή "Ακύρωση" θα διατηρήσει την τρέχουσα έκδοση του προσθέτου.
+
+webextPerms.updateAccept.label=Ενημέρωση
+
+# LOCALIZATION NOTE (webextPerms.optionalPermsHeader)
+# %S is replaced with the localized name of the extension requesting new
+# permissions.
+webextPerms.optionalPermsHeader=Το %S απαιτεί πρόσθετα δικαιώματα.
+webextPerms.optionalPermsListIntro=Επιθυμεί:
+webextPerms.optionalPermsAllow.label=Αποδοχή
+webextPerms.optionalPermsDeny.label=Να μην επιτρέπεται
+
+webextPerms.description.bookmarks=Ανάγνωση και τροποποίηση σελιδοδεικτών
+webextPerms.description.browserSettings=Ανάγνωση και τροποποίηση ρυθμίσεων προγράμματος περιήγησης
+webextPerms.description.browsingData=Διαγραφή πρόσφατου ιστορικού περιήγησης, cookies και σχετικών δεδομένων
+webextPerms.description.clipboardRead=Λήψη δεδομένων από το πρόχειρο
+webextPerms.description.clipboardWrite=Εισαγωγή δεδομένων στο πρόχειρο
+webextPerms.description.devtools=Επεκτείνετε τα εργαλεία προγραμματιστή για να αποκτήσετε πρόσβαση στα δεδομένα σας στις ανοιχτές καρτέλες
+webextPerms.description.downloads=Λήψη αρχείων, ανάγνωση και τροποποίηση του ιστορικού λήψεων του προγράμματος περιήγησης
+webextPerms.description.downloads.open=Άνοιγμα ληφθέντων αρχείων του υπολογιστή σας
+webextPerms.description.find=Ανάγνωση κειμένων όλων των ανοιχτών καρτελών
+webextPerms.description.geolocation=Πρόσβαση στην τοποθεσία σας
+webextPerms.description.history=Πρόσβαση στο ιστορικό περιήγησης
+webextPerms.description.management=Εποπτεία χρήσης επεκτάσεων και διαχείριση θεμάτων
+# LOCALIZATION NOTE (webextPerms.description.nativeMessaging)
+# %S will be replaced with the name of the application
+webextPerms.description.nativeMessaging=Ανταλλαγή μηνυμάτων με προγράμματα διαφορετικά του %S
+webextPerms.description.notifications=Εμφάνιση ειδοποιήσεων σε εσάς
+webextPerms.description.privacy=Ανάγνωση και τροποποίηση ρυθμίσεων απορρήτου
+webextPerms.description.proxy=Έλεγχος ρυθμίσεων μεσολάβησης προγράμματος περιήγησης
+webextPerms.description.sessions=Πρόσβαση στις πρόσφατα κλεισμένες καρτέλες
+webextPerms.description.tabs=Πρόσβαση στις καρτέλες προγράμματος περιήγησης
+webextPerms.description.topSites=Πρόσβαση στο ιστορικό περιήγησης
+webextPerms.description.webNavigation=Πρόσβαση στη δραστηριότητα περιηγητή κατά τη διάρκεια της πλοήγησης
+
+webextPerms.hostDescription.allUrls=Πρόσβαση στα δεδομένα σας για όλες τις ιστοσελίδες
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.wildcard)
+# %S will be replaced by the DNS domain for which a webextension
+# is requesting access (e.g., mozilla.org)
+webextPerms.hostDescription.wildcard=Πρόσβαση στα δεδομένα σας για ιστοσελίδες στον τομέα %S
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.tooManyWildcards):
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 will be replaced by an integer indicating the number of additional
+# domains for which this webextension is requesting permission.
+webextPerms.hostDescription.tooManyWildcards=Πρόσβαση στα δεδομένα σας για την άλλη διεύθυνση πλοήγησης #1;Πρόσβαση στα δεδομένα σας για τις άλλες διευθύνσεις πλοήγησης #1
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.oneSite)
+# %S will be replaced by the DNS host name for which a webextension
+# is requesting access (e.g., www.mozilla.org)
+webextPerms.hostDescription.oneSite=Πρόσβαση στα δεδομένα σας για %S
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.tooManySites)
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 will be replaced by an integer indicating the number of additional
+# hosts for which this webextension is requesting permission.
+webextPerms.hostDescription.tooManySites=Αποκτήστε πρόσβαση στα δεδομένα σας σε #1 άλλη ιστοσελίδα;Αποκτήστε πρόσβαση στα δεδομένα σας σε #1 άλλες ιστοσελίδες
+
+
+# Site Identity
+identity.identified.verifier=Επιβεβαιώθηκε από: %S
+identity.identified.verified_by_you=Έχετε προσθέσει μια εξαίρεση ασφαλείας για αυτή τη σελίδα
+identity.identified.state_and_country=%S, %S
+
+# Geolocation UI
+geolocation.allow=Γνωστοποίηση
+geolocation.dontAllow=Όχι γνωστοποίηση
+# LOCALIZATION NOTE (geolocation.location): Label that will be used in
+# site settings dialog.
+geolocation.location=Τοποθεσία
+
+# Desktop notification UI
+desktopNotification2.allow=Πάντα
+desktopNotification2.dontAllow=Ποτέ
+# LOCALIZATION NOTE (desktopNotification.notifications): Label that will be
+# used in site settings dialog.
+desktopNotification.notifications=Ειδοποιήσεις
+
+# Imageblocking
+imageblocking.downloadedImage=Η φραγή της εικόνας άρθηκε
+imageblocking.showAllImages=Εμφάνιση όλων
+
+# New Tab Popup
+# LOCALIZATION NOTE (newtabpopup, newprivatetabpopup): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of tabs
+newtabpopup.opened=Άνοιξε νέα καρτέλα;Άνοιξαν #1 νέες καρτέλες
+newprivatetabpopup.opened=Άνοιξε μια νέα ιδιωτική καρτέλα;Άνοιξαν #1 νέες ιδιωτικές καρτέλες
+
+# LOCALIZATION NOTE (newtabpopup.switch): Ideally, this string is short (it's a
+# button label) and upper-case, to match Google and Android's convention.
+newtabpopup.switch=ΜΕΤΑΒΑΣΗ
+
+# Undo close tab toast
+# LOCALIZATION NOTE (undoCloseToast.message): This message appears in a toast
+# when the user closes a tab. %S is the title of the tab that was closed.
+undoCloseToast.message=Έκλεισε το %S
+
+# Private Tab closed message
+# LOCALIZATION NOTE (privateClosedMessage.message): This message appears
+# when the user closes a private tab.
+privateClosedMessage.message=Έκλεισε η ιδιωτική περιήγηση
+
+# LOCALIZATION NOTE (undoCloseToast.messageDefault): This message appears in a
+# toast when the user closes a tab if there is no title to display.
+undoCloseToast.messageDefault=Έκλεισε η καρτέλα
+
+# LOCALIZATION NOTE (undoCloseToast.action2): Ideally, this string is short (it's a
+# button label) and upper-case, to match Google and Android's convention.
+undoCloseToast.action2=ΑΝΑΙΡΕΣΗ
+
+# Offline web applications
+offlineApps.ask=Να επιτραπεί στο %S η αποθήκευση δεδομένων στη συσκευή σας για χρήση χωρίς σύνδεση;
+offlineApps.dontAskAgain=Να μην ερωτηθώ ξανά για αυτή τη σελίδα
+offlineApps.allow=Αποδοχή
+offlineApps.dontAllow2=Απόρριψη
+
+# LOCALIZATION NOTE (offlineApps.offlineData): Label that will be used in
+# site settings dialog.
+offlineApps.offlineData=Δεδομένα εργασίας χωρίς σύνδεση
+
+# LOCALIZATION NOTE (password.logins): Label that will be used in
+ # site settings dialog.
+password.logins=Στοιχεία σύνδεσης
+# LOCALIZATION NOTE (password.save): This should match
+# saveButton in passwordmgr.properties
+password.save=Αποθήκευση
+# LOCALIZATION NOTE (password.dontSave): This should match
+# dontSaveButton in passwordmgr.properties
+password.dontSave=Να μη γίνει αποθήκευση
+
+# LOCALIZATION NOTE (browser.menu.showCharacterEncoding): Set to the string
+# "true" (spelled and capitalized exactly that way) to show the "Character
+# Encoding" menu in the site menu. Any other value will hide it. Without this
+# setting, the "Character Encoding" menu must be enabled via Preferences.
+# This is not a string to translate. If users frequently use the "Character Encoding"
+# menu, set this to "true". Otherwise, you can leave it as "false".
+browser.menu.showCharacterEncoding=false
+
+# Text Selection
+selectionHelper.textCopied=Κείμενο που έχει αντιγραφεί στο πρόχειρο
+
+# Casting
+# LOCALIZATION NOTE (casting.sendToDevice): Label that will be used in the
+# dialog/prompt.
+casting.sendToDevice=Αποστολή σε συσκευή
+
+# Context menu
+contextmenu.openInNewTab=Άνοιγμα συνδέσμου σε νέα καρτέλα
+contextmenu.openInPrivateTab=Άνοιγμα συνδέσμου σε ιδιωτική καρτέλα
+contextmenu.share=Κοινή χρήση
+contextmenu.copyLink=Αντιγραφή συνδέσμου
+contextmenu.shareLink=Κοινή χρήση συνδέσμου
+contextmenu.bookmarkLink=Προσθήκη συνδέσμου στους σελιδοδείκτες
+contextmenu.copyEmailAddress=Αντιγραφή ηλ. διεύθυνσης
+contextmenu.shareEmailAddress=Κοινή χρήση ηλ. διεύθυνσης
+contextmenu.copyPhoneNumber=Αντιγραφή αριθμού τηλεφώνου
+contextmenu.sharePhoneNumber=Κοινή χρήση αριθμού τηλεφώνου
+contextmenu.fullScreen=Πλήρης οθόνη
+contextmenu.viewImage=Προβολή εικόνας
+contextmenu.copyImageLocation=Αντιγραφή τοποθεσίας εικόνας
+contextmenu.shareImage=Κοινή χρήση εικόνας
+# LOCALIZATION NOTE (contextmenu.search):
+# The label of the contextmenu item which allows you to search with your default search engine for
+# the text you have selected. %S is the name of the search engine. For example, "Google".
+contextmenu.search=Αναζήτηση %S
+contextmenu.saveImage=Αποθήκευση εικόνας
+contextmenu.showImage=Εμφάνιση εικόνας
+contextmenu.setImageAs=Ορισμός εικόνας ως
+# LOCALIZATION NOTE (contextmenu.addSearchEngine3): This string should be rather short. If it is
+# significantly longer than the translation for the "Paste" action then this might trigger an
+# Android bug positioning the floating text selection partially off the screen. This issue heavily
+# depends on the screen size and the specific translations. For English "Paste" / "Add search engine"
+# is working while "Paste" / "Add as search engine" triggers the bug. See bug 1262098 for more details.
+# Manual testing the scenario described in bug 1262098 is highly recommended.
+contextmenu.addSearchEngine3=Προσθήκη μηχανής αναζήτησης
+contextmenu.playMedia=Αναπαραγωγή
+contextmenu.pauseMedia=Παύση
+contextmenu.showControls2=Εμφάνιση στοιχείων ελέγχου
+contextmenu.mute=Σίγαση
+contextmenu.unmute=Άρση σίγασης
+contextmenu.saveVideo=Αποθήκευση βίντεο
+contextmenu.saveAudio=Αποθήκευση ήχου
+contextmenu.addToContacts=Προσθήκη στις επαφές
+# LOCALIZATION NOTE (contextmenu.sendToDevice):
+# The label that will be used in the contextmenu and the pageaction
+contextmenu.sendToDevice=Αποστολή σε συσκευή
+
+contextmenu.copy=Αντιγραφή
+contextmenu.cut=Αποκοπή
+contextmenu.selectAll=Επιλογή όλων
+contextmenu.paste=Επικόλληση
+
+contextmenu.call=Κλήση
+
+#Input widgets UI
+inputWidgetHelper.date=Επιλέξτε ημερομηνία
+inputWidgetHelper.datetime-local=Επιλέξτε ημερομηνία και ώρα
+inputWidgetHelper.time=Επιλέξτε ώρα
+inputWidgetHelper.week=Επιλέξτε εβδομάδα
+inputWidgetHelper.month=Επιλέξτε μήνα
+inputWidgetHelper.cancel=Ακύρωση
+inputWidgetHelper.set=Ορισμός
+inputWidgetHelper.clear=Εκκαθάριση
+
+# Web Console API
+stacktrace.anonymousFunction=<ανώνυμη>
+stacktrace.outputMessage=Ίχνος στοίβας από %S, στην συνάρτηση %S, στην γραμμή %S.
+timer.start=%S: ο χρονομετρητής ξεκίνησε
+
+# LOCALIZATION NOTE (timer.end):
+# This string is used to display the result of the console.timeEnd() call.
+# %1$S=name of timer, %2$S=number of milliseconds
+timer.end=%1$S: %2$Sms
+
+clickToPlayPlugins.activate=Ενεργοποίηση
+clickToPlayPlugins.dontActivate=Να μην ενεργοποιηθεί
+# LOCALIZATION NOTE (clickToPlayPlugins.plugins): Label that
+# will be used in site settings dialog.
+clickToPlayPlugins.plugins=Αρθρώματα
+
+# Site settings dialog
+
+masterPassword.incorrect=Λανθασμένος κωδικός
+
+# Debugger
+# LOCALIZATION NOTE (remoteIncomingPromptTitle): The title displayed on the
+# dialog that prompts the user to allow the incoming connection.
+remoteIncomingPromptTitle=Εισερχόμενη σύνδεση
+# LOCALIZATION NOTE (remoteIncomingPromptUSB): The message displayed on the
+# dialog that prompts the user to allow an incoming USB connection.
+remoteIncomingPromptUSB=Να επιτραπεί η σύνδεση αποσφαλμάτωσης μέσω USB;
+# LOCALIZATION NOTE (remoteIncomingPromptUSB): The message displayed on the
+# dialog that prompts the user to allow an incoming TCP connection.
+remoteIncomingPromptTCP=Να επιτραπεί η απομακρυσμένη σύνδεση αποσφαλμάτωσης από το %1$S:%2$S; Για τη σύνδεση απαιτείται η σάρωση ενός κωδικού QR προκειμένου να πιστοποιηθεί το πιστοποιητικό της απομακρυσμένης συσκευής. Μπορείτε να το αποφύγετε αυτό μελλοντικά με την απομνημόνευση της συσκευής.
+# LOCALIZATION NOTE (remoteIncomingPromptDeny): This button will deny an
+# an incoming remote debugger connection.
+remoteIncomingPromptDeny=Να μην επιτραπεί
+# LOCALIZATION NOTE (remoteIncomingPromptAllow): This button will allow an
+# an incoming remote debugger connection.
+remoteIncomingPromptAllow=Αποδοχή
+# LOCALIZATION NOTE (remoteIncomingPromptScan): This button will start a QR
+# code scanner to authenticate an incoming remote debugger connection. The
+# connection will be allowed assuming the scan succeeds.
+remoteIncomingPromptScan=Σάρωση
+# LOCALIZATION NOTE (remoteIncomingPromptScanAndRemember): This button will
+# start a QR code scanner to authenticate an incoming remote debugger
+# connection. The connection will be allowed assuming the scan succeeds, and
+# the other endpoint's certificate will be saved to skip future scans for this
+# client.
+remoteIncomingPromptScanAndRemember=Σάρωση και απομνημόνευση
+# LOCALIZATION NOTE (remoteQRScanFailedPromptTitle): The title displayed in a
+# dialog when we are unable to complete the QR code scan for an incoming remote
+# debugging connection.
+remoteQRScanFailedPromptTitle=Αποτυχία σάρωσης QR
+# LOCALIZATION NOTE (remoteQRScanFailedPromptMessage): The message displayed in
+# a dialog when we are unable to complete the QR code scan for an incoming
+# remote debugging connection.
+remoteQRScanFailedPromptMessage=Αδυναμία σάρωσης κωδικού QR για απομακρυσμένη αποσφαλμάτωση. Επαληθεύστε ότι η εφαρμογή Barcode Scanner είναι εγκατεστημένη και συνδέστε ξανά.
+# LOCALIZATION NOTE (remoteQRScanFailedPromptOK): This button dismisses the
+# dialog that appears when we are unable to complete the QR code scan for an
+# incoming remote debugging connection.
+remoteQRScanFailedPromptOK=OK
+
+# Helper apps
+helperapps.open=Άνοιγμα
+helperapps.openWithApp2=Άνοιγμα με την εφαρμογή %S
+helperapps.openWithList2=Άνοιγμα με εφαρμογή
+helperapps.always=Πάντα
+helperapps.never=Ποτέ
+helperapps.pick=Ολοκλήρωση ενέργειας με χρήση
+helperapps.saveToDisk=Λήψη
+helperapps.alwaysUse=Πάντα
+helperapps.useJustOnce=Μόνο αυτή τη φορά
+
+# LOCALIZATION NOTE (getUserMedia.shareCamera.message, getUserMedia.shareMicrophone.message, getUserMedia.shareCameraAndMicrophone.message, getUserMedia.sharingCamera.message, getUserMedia.sharingMicrophone.message, getUserMedia.sharingCameraAndMicrophone.message): %S is the website origin (e.g. www.mozilla.org)
+getUserMedia.shareCamera.message = Επιθυμείτε να επιτρέψετε στο %S να χρησιμοποιήσει την κάμερα σας;
+getUserMedia.shareMicrophone.message = Επιθυμείτε να επιτρέψετε στο %S να χρησιμοποιήσει το μικρόφωνο σας;
+getUserMedia.shareCameraAndMicrophone.message = Επιθυμείτε να επιτρέψετε στο %S να χρησιμοποιήσει την κάμερα και το μικρόφωνο σας;
+getUserMedia.denyRequest.label = Να μην επιτραπεί
+getUserMedia.shareRequest.label = Να επιτραπεί
+getUserMedia.videoSource.default = Κάμερα %S
+getUserMedia.videoSource.frontCamera = Εμπρόσθια κάμερα
+getUserMedia.videoSource.backCamera = Οπίσθια κάμερα
+getUserMedia.videoSource.none = Χωρίς βίντεο
+getUserMedia.videoSource.tabShare = Επιλέξτε μια καρτέλα προς μετάδοση
+getUserMedia.videoSource.prompt = Πηγή βίντεο
+getUserMedia.audioDevice.default = Μικρόφωνο %S
+getUserMedia.audioDevice.none = Χωρίς ήχο
+getUserMedia.audioDevice.prompt = Μικρόφωνο προς χρήση
+getUserMedia.sharingCamera.message2 = Η κάμερα είναι ανοιχτή
+getUserMedia.sharingMicrophone.message2 = Το μικρόφωνο είναι ανοιχτό
+getUserMedia.sharingCameraAndMicrophone.message2 = Η κάμερα και το μικρόφωνο είναι ανοιχτά
+getUserMedia.blockedCameraAccess = Η κάμερα έχει φραγεί.
+getUserMedia.blockedMicrophoneAccess = Το μικρόφωνο έχει φραγεί.
+getUserMedia.blockedCameraAndMicrophoneAccess = Η κάμερα και το μικρόφωνο έχουν φραγεί.
+
+# LOCALIZATION NOTE (userContextPersonal.label,
+# userContextWork.label,
+# userContextShopping.label,
+# userContextBanking.label,
+# userContextNone.label):
+# These strings specify the four predefined contexts included in support of the
+# Contextual Identity / Containers project. Each context is meant to represent
+# the context that the user is in when interacting with the site. Different
+# contexts will store cookies and other information from those sites in
+# different, isolated locations. You can enable the feature by typing
+# about:config in the URL bar and changing privacy.userContext.enabled to true.
+# Once enabled, you can open a new tab in a specific context by clicking
+# File > New Container Tab > (1 of 4 contexts). Once opened, you will see these
+# strings on the right-hand side of the URL bar.
+# In android this will be only exposed by web extensions
+userContextPersonal.label = Προσωπική
+userContextWork.label = Εργασία
+userContextBanking.label = Τραπεζική
+userContextShopping.label = Αγορές
+
+# LOCALIZATION NOTE (readerMode.toolbarTip):
+# Tip shown to users the first time we hide the reader mode toolbar.
+readerMode.toolbarTip=Πατήστε στην οθόνη για εμφάνιση των επιλογών του αναγνώστη
+
+#Open in App
+openInApp.pageAction = Άνοιγμα σε εφαρμογή
+openInApp.ok = ΟΚ
+openInApp.cancel = Ακύρωση
+
+#Tab sharing
+tabshare.title = «Επιλέξτε μια καρτέλα προς μετάδοση»
+#Tabs in context menus
+browser.menu.context.default = Σύνδεσμος
+browser.menu.context.img = Εικόνα
+browser.menu.context.video = Βίντεο
+browser.menu.context.audio = Ήχος
+browser.menu.context.tel = Τηλέφωνο
+browser.menu.context.mailto = Αλληλογραφία
+
+# "Subscribe to page" prompts created in FeedHandler.js
+feedHandler.chooseFeed=Επιλέξτε Ροή
+feedHandler.subscribeWith=Εγγραφή με
+
+# LOCALIZATION NOTE (nativeWindow.deprecated):
+# This string is shown in the console when someone uses deprecated NativeWindow apis.
+# %1$S=name of the api that's deprecated, %2$S=New API to use. This may be a url to
+# a file they should import or the name of an api.
+nativeWindow.deprecated=Το %1$S είναι παρωχημένο. Αντ' αυτού χρησιμοποιήστε παρακαλώ το %2$S
+
+# Vibration API permission prompt
+vibrationRequest.message = Να επιτραπεί σε αυτή την ιστοσελίδα ο έλεγχος της δόνησης της συσκευής σας;
+vibrationRequest.denyButton = Απόρριψη
+vibrationRequest.allowButton = Αποδοχή
diff --git a/l10n-el/mobile/android/chrome/config.dtd b/l10n-el/mobile/android/chrome/config.dtd
new file mode 100644
index 0000000000..c476483814
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/config.dtd
@@ -0,0 +1,21 @@
+<!-- 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 toolbar.searchPlaceholder "Αναζήτηση">
+
+<!ENTITY newPref.namePlaceholder "Όνομα">
+
+<!ENTITY newPref.valueBoolean "Δυαδικός">
+<!ENTITY newPref.valueString "Συμβολοσειρά">
+<!ENTITY newPref.valueInteger "Ακέραιος">
+
+<!ENTITY newPref.stringPlaceholder "Εισάγετε μια συμβολοσειρά">
+<!ENTITY newPref.numberPlaceholder "Εισάγετε έναν αριθμό">
+
+<!ENTITY newPref.toggleButton "Εναλλαγή">
+<!ENTITY newPref.cancelButton "Ακύρωση">
+
+<!ENTITY contextMenu.copyPrefName "Αντιγραφή ονόματος">
+<!ENTITY contextMenu.copyPrefValue "Αντιγραφή τιμής">
diff --git a/l10n-el/mobile/android/chrome/config.properties b/l10n-el/mobile/android/chrome/config.properties
new file mode 100644
index 0000000000..01e3c4245b
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/config.properties
@@ -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/.
+
+newPref.createButton=Δημιουργία
+newPref.changeButton=Αλλαγή
+
+pref.toggleButton=Εναλλαγή
+pref.resetButton=Επαναφορά
diff --git a/l10n-el/mobile/android/chrome/devicePrompt.properties b/l10n-el/mobile/android/chrome/devicePrompt.properties
new file mode 100644
index 0000000000..393610799a
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/devicePrompt.properties
@@ -0,0 +1,5 @@
+# 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/.
+
+deviceMenu.title=Κοντινές συσκευές
diff --git a/l10n-el/mobile/android/chrome/passwordmgr.properties b/l10n-el/mobile/android/chrome/passwordmgr.properties
new file mode 100644
index 0000000000..56905e50d7
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/passwordmgr.properties
@@ -0,0 +1,22 @@
+# 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/.
+
+# String will be replaced by brandShortName.
+saveLogin=Επιθυμείτε να απομνημονεύσει το %S αυτά τα στοιχεία σύνδεσης;
+rememberButton=Απομνημόνευση
+neverButton=Ποτέ
+
+# String is the login's hostname
+updatePassword=Ενημέρωση αποθηκευμένου κωδικού για το %S;
+updatePasswordNoUser=Ενημέρωση αποθηκευμένου κωδικού πρόσβασης για αυτή τη σύνδεση;
+updateButton=Ενημέρωση
+dontUpdateButton=Να μη γίνει ενημέρωση
+
+# Copy of the toolkit's passwordmgr.properties
+userSelectText2=Επιλέξτε τα στοιχεία σύνδεσης προς ενημέρωση:
+passwordChangeTitle=Επιβεβαίωση αλλαγής κωδικού
+
+# Strings used by PromptService.js
+username=Όνομα χρήστη
+password=Κωδικός
diff --git a/l10n-el/mobile/android/chrome/phishing.dtd b/l10n-el/mobile/android/chrome/phishing.dtd
new file mode 100644
index 0000000000..d235040d66
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/phishing.dtd
@@ -0,0 +1,27 @@
+<!-- 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 safeb.palm.accept.label "Μακριά από εδώ!">
+<!ENTITY safeb.palm.decline.label "Αγνόηση αυτής της προειδοποίησης">
+<!ENTITY safeb.palm.reportPage.label "Γιατί έχει γίνει φραγή αυτής της ιστοσελίδας;">
+<!-- Localization note (safeb.palm.advisory.desc) - Please don't translate <a id="advisory_provider"/> tag. It will be replaced at runtime with advisory link-->
+<!ENTITY safeb.palm.advisory.desc "Συμβουλές από τον πάροχο <a id='advisory_provider'/>">
+
+<!ENTITY safeb.blocked.malwarePage.title "Η σελίδα έχει αναφερθεί ως κακόβουλη!">
+<!-- Localization note (safeb.blocked.malware.shortDesc) - Please don't translate the contents of the <span id="malware_sitename"/> tag. It will be replaced at runtime with a domain name (e.g. www.badsite.com) -->
+<!ENTITY safeb.blocked.malwarePage.shortDesc "Αυτή η ιστοσελίδα στο <span id='malware_sitename'/> έχει αναφερθεί ως κακόβουλη ιστοσελίδα και έχει φραγεί σύμφωνα με τις προτιμήσεις ασφαλείας σας.">
+<!ENTITY safeb.blocked.malwarePage.longDesc "<p>Οι ιστοσελίδες επιθέσεων προσπαθούν να εγκαταστήσουν προγράμματα στον υπολογιστή σας τα οποία υποκλέπτουν προσωπικές σας πληροφορίες, χρησιμοποιούν τον υπολογιστή σας για να επιτίθενται σε άλλους υπολογιστές και βλάπτουν το σύστημα σας.</p><p>Μερικές ιστοσελίδες εγκαθιστούν επίτηδες κακόβουλο λογισμικό, αλλά σε αρκετές αυτό γίνεται χωρίς την γνώση ή την συγκατάθεση των ιδιοκτητών τους.</p>">
+
+<!ENTITY safeb.blocked.phishingPage.title3 "Παραπλανητική σελίδα!">
+<!-- Localization note (safeb.blocked.phishingPage.shortDesc3) - Please don't translate the contents of the <span id="phishing_sitename"/> tag. It will be replaced at runtime with a domain name (e.g. www.badsite.com) -->
+<!ENTITY safeb.blocked.phishingPage.shortDesc3 "Η ιστοσελίδα <span id='phishing_sitename'/> έχει αναφερθεί ως παραπλανητική και αποκλείστηκε σύμφωνα με τις προτιμήσεις ασφαλείας σας.">
+<!ENTITY safeb.blocked.phishingPage.longDesc3 "<p>Οι παραπλανητικές σελίδες είναι σχεδιασμένες ώστε να σας παραπλανούν και να σας οδηγούν σε κάποια επικίνδυνη ενέργεια, όπως η εγκατάσταση λογισμικού ή η αποκάλυψη προσωπικών πληροφοριών, όπως κωδικοί πρόσβασης, αριθμοί τηλεφώνου ή πιστωτικών καρτών.</p><p>Η εισαγωγή οποιασδήποτε πληροφορίας σε αυτήν τη σελίδα μπορεί να έχει ως συνέπεια την υποκλοπή ταυτότητας ή άλλες απάτες.</p>">
+
+<!ENTITY safeb.blocked.unwantedPage.title "Η σελίδα έχει αναφερθεί ότι περιέχει ανεπιθύμητο λογισμικό!">
+<!-- Localization note (safeb.blocked.unwanted.shortDesc) - Please don't translate the contents of the <span id="unwanted_sitename"/> tag. It will be replaced at runtime with a domain name (e.g. www.badsite.com) -->
+<!ENTITY safeb.blocked.unwantedPage.shortDesc "Η ιστοσελίδα <span id='unwanted_sitename'/> έχει αναφερθεί ότι περιέχει ανεπιθύμητο λογισμικό και έχει αποκλειστεί σύμφωνα με τις προτιμήσεις ασφαλείας σας.">
+<!ENTITY safeb.blocked.unwantedPage.longDesc "Οι σελίδες με ανεπιθύμητο λογισμικό επιχειρούν να εγκαταστήσουν λογισμικό το οποίο ενδέχεται να είναι παραπλανητικό και να επηρεάσει το σύστημα σας με μη αναμενόμενο τρόπο.">
+
+<!ENTITY safeb.blocked.harmfulPage.title "Αυτή η ιστοσελίδα ενδέχεται να περιέχει κακόβουλο λογισμικό">
+<!ENTITY safeb.blocked.harmfulPage.shortDesc "Το &brandShortName; απέκλεισε αυτή τη σελίδα, επειδή ενδέχεται να αποπειραθεί να εγκαταστήσει επικίνδυνες εφαρμογές, που υποκλέπτουν ή διαγράφουν τις πληροφορίες σας (για παράδειγμα, φωτογραφίες, κωδικοί πρόσβασης, μηνύματα και πιστωτικές κάρτες)."> \ No newline at end of file
diff --git a/l10n-el/mobile/android/chrome/pippki.properties b/l10n-el/mobile/android/chrome/pippki.properties
new file mode 100644
index 0000000000..c1d802adf7
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/pippki.properties
@@ -0,0 +1,84 @@
+# 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/.
+
+nssdialogs.ok.label=ΟΚ
+nssdialogs.cancel.label=Ακύρωση
+
+# These strings are stolen from security/manager/locales/en-US/chrome/pippki/pippki.dtd
+downloadCert.title=Λήψη πιστοποιητικού
+downloadCert.message1=You have been asked to trust a new Certificate Authority (CA).
+downloadCert.viewCert.label=Προβολή
+downloadCert.trustSSL=Έμπιστο για την αναγνώριση ιστοσελίδων.
+downloadCert.trustEmail=Έμπιστο για την αναγνώριση χρηστών email.
+pkcs12.getpassword.title=Διάλογος εισαγωγής κωδικού πρόσβασης
+pkcs12.getpassword.message=Καταχωρίστε τον κωδικό πρόσβασης που χρησιμοποιήθηκε για την κρυπτογράφηση αυτού του αντίγραφου ασφαλείας.
+clientAuthAsk.title=Αίτηση αναγνώρισης χρήστη
+clientAuthAsk.message1=Αυτός ο ιστότοπος ζήτησε να αναγνωρίσετε τον εαυτό σας με ένα πιστοποιητικό:
+clientAuthAsk.message2=Επιλέξτε ένα πιστοποιητικό που θα παρουσιαστεί ως αναγνώριση:
+clientAuthAsk.message3=Λεπτομέρειες για το επιλεγμένο πιστοποιητικό:
+clientAuthAsk.remember.label=Απομνημόνευση αυτής της απόφασης
+# LOCALIZATION NOTE(clientAuthAsk.nickAndSerial): Represents a single cert when
+# the user is choosing from a list of certificates.
+# %1$S is the nickname of the cert.
+# %2$S is the serial number of the cert in AA:BB:CC hex format.
+clientAuthAsk.nickAndSerial=%1$S [%2$S]
+# LOCALIZATION NOTE(clientAuthAsk.hostnameAndPort):
+# %1$S is the hostname of the server.
+# %2$S is the port of the server.
+clientAuthAsk.hostnameAndPort=%1$S:%2$S
+# LOCALIZATION NOTE(clientAuthAsk.organization): %S is the Organization of the
+# server cert.
+clientAuthAsk.organization=Οργανισμός: «%S»
+# LOCALIZATION NOTE(clientAuthAsk.issuer): %S is the Organization of the
+# issuer cert of the server cert.
+clientAuthAsk.issuer=Εκδόθηκε από: «%S»
+# LOCALIZATION NOTE(clientAuthAsk.issuedTo): %1$S is the Distinguished Name of
+# the currently selected client cert, such as "CN=John Doe,OU=Example" (without
+# quotes).
+clientAuthAsk.issuedTo=Εκδόθηκε για: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.serial): %1$S is the serial number of the
+# selected cert in AA:BB:CC hex format.
+clientAuthAsk.serial=Σειριακός αριθμός: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.validityPeriod):
+# %1$S is the already localized notBefore date of the selected cert.
+# %2$S is the already localized notAfter date of the selected cert.
+clientAuthAsk.validityPeriod=Έγκυρο από %1$S έως %2$S
+# LOCALIZATION NOTE(clientAuthAsk.keyUsages): %1$S is a comma separated list of
+# already localized key usages the selected cert is valid for.
+clientAuthAsk.keyUsages=Χρήσεις κλειδιού: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.emailAddresses): %1$S is a comma separated
+# list of e-mail addresses the selected cert is valid for.
+clientAuthAsk.emailAddresses=Διευθύνσεις ηλ. ταχυδρομείου: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.issuedBy): %1$S is the Distinguished Name of
+# the cert which issued the selected cert.
+clientAuthAsk.issuedBy=Εκδόθηκε από: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.storedOn): %1$S is the name of the PKCS #11
+# token the selected cert is stored on.
+clientAuthAsk.storedOn=Αποθηκεύτηκε στο: %1$S
+clientAuthAsk.viewCert.label=Προβολή
+
+certmgr.title=Στοιχεία Πιστοποιητικού
+# These strings are stolen from security/manager/locales/en-US/chrome/pippki/certManager.dtd
+certmgr.subjectinfo.label=Εκδόθηκε για
+certmgr.issuerinfo.label=Εκδόθηκε από
+certmgr.periodofvalidity.label=Περίοδος ισχύος
+certmgr.fingerprints.label=Αποτυπώματα
+certdetail.cn=Κοινό όνομα (CN): %1$S
+certdetail.o=Οργανισμός (O): %1$S
+certdetail.ou=Μονάδα οργανισμού (OU): %1$S
+# LOCALIZATION NOTE(certdetail.serialnumber): %1$S is the serial number of the
+# cert being viewed in AA:BB:CC hex format.
+certdetail.serialnumber=Σειριακός αριθμός: %1$S
+# LOCALIZATION NOTE(certdetail.sha256fingerprint): %1$S is the SHA-256
+# Fingerprint of the cert being viewed in AA:BB:CC hex format.
+certdetail.sha256fingerprint=Αποτύπωμα SHA-256: %1$S
+# LOCALIZATION NOTE(certdetail.sha1fingerprint): %1$S is the SHA-1 Fingerprint
+# of the cert being viewed in AA:BB:CC hex format.
+certdetail.sha1fingerprint=Αποτύπωμα SHA1: %1$S
+# LOCALIZATION NOTE(certdetail.notBefore): %1$S is the already localized
+# notBefore date of the cert being viewed.
+certdetail.notBefore=Ξεκινά στις: %1$S
+# LOCALIZATION NOTE(certdetail.notAfter): %1$S is the already localized notAfter
+# date of the cert being viewed.
+certdetail.notAfter=Λήγει στις: %1$S
diff --git a/l10n-el/mobile/android/chrome/sync.properties b/l10n-el/mobile/android/chrome/sync.properties
new file mode 100644
index 0000000000..411262053d
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/sync.properties
@@ -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/.
+
+# Mobile Sync
+
+# %S is the date and time at which the last sync successfully completed
+lastSync2.label=Τελευταίος συγχρονισμός: %S
+
+# %S is the username logged in
+account.label=Λογαριασμός: %S
+
diff --git a/l10n-el/mobile/android/chrome/webcompatReporter.properties b/l10n-el/mobile/android/chrome/webcompatReporter.properties
new file mode 100644
index 0000000000..f2089eb4f6
--- /dev/null
+++ b/l10n-el/mobile/android/chrome/webcompatReporter.properties
@@ -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/.
+
+# LOCALIZATION NOTE (webcompat.menu.name): A "site issue" is a bug, display,
+# or functionality problem with a webpage in the browser.
+webcompat.menu.name=Αναφορά προβλήματος
+
+# LOCALIZATION NOTE (webcompat.reportDesktopMode.message): A " site issue" is a
+# bug, display, or functionality problem with a webpage in the browser.
+webcompat.reportDesktopMode.message=Αναφορά προβλήματος σελίδας;
+webcompat.reportDesktopModeYes.label=Αναφορά
diff --git a/l10n-el/mobile/android/defines.inc b/l10n-el/mobile/android/defines.inc
new file mode 100644
index 0000000000..1965e3a62a
--- /dev/null
+++ b/l10n-el/mobile/android/defines.inc
@@ -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/.
+#filter emptyLines
+
+#define MOZ_LANGPACK_CREATOR mozilla.org
+
+# If non-English locales wish to credit multiple contributors, uncomment this
+# variable definition and use the format specified.
+#define MOZ_LANGPACK_CONTRIBUTORS <em:contributor>George Skafidas</em:contributor> <em:contributor>Alfredos-Panagiotis Damkalis</em:contributor>
+
+#unfilter emptyLines
diff --git a/l10n-el/mobile/android/mobile-l10n.js b/l10n-el/mobile/android/mobile-l10n.js
new file mode 100644
index 0000000000..b410ad9aef
--- /dev/null
+++ b/l10n-el/mobile/android/mobile-l10n.js
@@ -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/.
+
+#filter substitution
+
diff --git a/l10n-el/mobile/chrome/region.properties b/l10n-el/mobile/chrome/region.properties
new file mode 100644
index 0000000000..886b51eae5
--- /dev/null
+++ b/l10n-el/mobile/chrome/region.properties
@@ -0,0 +1,48 @@
+# 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/.
+
+gecko.handlerService.defaultHandlersVersion = 3
+
+gecko.handlerService.schemes.mailto.0.name = Yahoo! Mail
+gecko.handlerService.schemes.mailto.0.uriTemplate = https://compose.mail.yahoo.com/?To=%s
+gecko.handlerService.schemes.mailto.1.name = Gmail
+gecko.handlerService.schemes.mailto.1.uriTemplate = https://mail.google.com/mail/?extsrc=mailto&url=%s
+
+# Order of suggested websites displayed in the Top Sites panel.
+# Values for these keys must correspond to the name used in the keys that
+# define each suggested website's details. For example:
+# browser.suggestedsites.list.0=NAME
+# browser.suggestedsites.NAME.title=Displayed name
+# browser.suggestedsites.NAME.url=Website URL
+# browser.suggestedsites.NAME.bgcolor= Color (hex format)
+#
+# Note that if you remove or add items to this set, you need to adjust
+# mobile/android/tests/browser/robocop/testDistribution.java
+# to reflect the new set of IDs reported as tiles data.
+
+browser.contentHandlers.types.0.title = Bloglines
+browser.contentHandlers.types.0.uri = http://www.bloglines.com/login?r=/sub/%s
+
+browser.suggestedsites.list.0=facebook
+browser.suggestedsites.list.1=youtube
+browser.suggestedsites.list.2=skroutz
+browser.suggestedsites.list.3=wikipedia
+browser.suggestedsites.list.4=twitter
+
+browser.suggestedsites.facebook.title=Facebook
+browser.suggestedsites.facebook.url=https://m.facebook.com/
+browser.suggestedsites.facebook.bgcolor=#3B5998
+
+browser.suggestedsites.youtube.title=YouTube
+browser.suggestedsites.youtube.url=https://m.youtube.com/
+browser.suggestedsites.youtube.bgcolor=#FFFFFF
+
+browser.suggestedsites.wikipedia.title=Wikipedia
+browser.suggestedsites.wikipedia.url=https://www.wikipedia.org/
+browser.suggestedsites.wikipedia.bgcolor=#000000
+
+browser.suggestedsites.twitter.title=Twitter
+browser.suggestedsites.twitter.url=https://mobile.twitter.com/
+browser.suggestedsites.twitter.bgcolor=#38A1F3
+
diff --git a/l10n-el/mobile/overrides/appstrings.properties b/l10n-el/mobile/overrides/appstrings.properties
new file mode 100644
index 0000000000..8152793c02
--- /dev/null
+++ b/l10n-el/mobile/overrides/appstrings.properties
@@ -0,0 +1,41 @@
+# 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/.
+
+# BEFORE EDITING THIS FILE, PLEASE NOTE:
+# These strings are only here to support shipping Fennec ESR.
+# They are unused in GeckoView, so please don't make any changes.
+
+malformedURI2=Το URL δεν είναι έγκυρο και δεν μπορεί να φορτωθεί.
+fileNotFound=Δεν είναι δυνατή η εύρεση του αρχείου στο %S.
+fileAccessDenied=Το αρχείο %S δεν είναι αναγνώσιμο.
+dnsNotFound2=Το Firefox δεν μπορεί να βρει το διακομιστή στο %S.
+unknownProtocolFound=Το Firefox δεν γνωρίζει πώς να ανοίξει αυτή τη διεύθυνση, επειδή ένα από τα ακόλουθα πρωτόκολλα (%S) δεν έχει συσχετιστεί με κάποια εφαρμογή ή δεν επιτρέπεται σε αυτό το σημείο.
+connectionFailure=Το Firefox δεν μπορεί να συνδεθεί στο διακομιστή στο %S.
+netInterrupt=Η σύνδεση στο %S τερματίστηκε κατά τη φόρτωση της σελίδας.
+netTimeout=Ο εξυπηρετητής στο %S αργεί πολύ να αποκριθεί.
+redirectLoop=Το Firefox εντόπισε ότι ο διακομιστής ανακατευθύνει το αίτημα για αυτή τη διεύθυνση με τέτοιο τρόπο, ώστε να μην ολοκληρωθεί ποτέ.
+## LOCALIZATION NOTE (confirmRepostPrompt): In this item, don't translate "%S"
+confirmRepostPrompt=Για να εμφανιστεί αυτή η σελίδα, ο %S θα επαναλάβει οποιαδήποτε προηγούμενη ενέργεια (π.χ. αναζήτηση ή αγορά).
+resendButton.label=Αποστολή ξανά
+unknownSocketType=Το Firefox δεν γνωρίζει πώς να επικοινωνήσει με το διακομιστή.
+netReset=Η σύνδεση με τον εξυπηρετητή διακόπηκε κατά τη φόρτωση της σελίδας.
+notCached=Αυτό το έγγραφο δεν είναι πια διαθέσιμο.
+netOffline=Το Firefox είναι εκτός σύνδεσης και δεν είναι δυνατή η περιήγηση.
+isprinting=Δεν είναι δυνατή η αλλαγή του εγγράφου κατά την εκτύπωση ή την προεπισκόπηση εκτύπωσης.
+deniedPortAccess=Η πρόσβαση στον καθορισμένο αριθμό θύρας έχει απενεργοποιηθεί για λόγους ασφάλειας.
+proxyResolveFailure=Το Firefox έχει ρυθμιστεί ώστε να χρησιμοποιεί μεσολαβητή σύνδεσης, που δεν μπορεί να βρεθεί.
+proxyConnectFailure=Το Firefox έχει ρυθμιστεί ώστε να χρησιμοποιεί μεσολαβητή σύνδεσης, που αρνείται συνδέσεις.
+contentEncodingError=Η σελίδα που προσπαθείτε να δείτε δεν μπορεί να εμφανιστεί επειδή χρησιμοποιεί μια μη έγκυρη ή μη υποστηριζόμενη μορφή συμπίεσης.
+unsafeContentType=Δεν είναι δυνατή η εμφάνιση αυτής της σελίδας επειδή εμπεριέχεται σε ένα τύπο αρχείου ο οποίος δεν είναι ασφαλής. Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε για το πρόβλημα.
+malwareBlocked=Η σελίδα στο %S έχει αναφερθεί ως σελίδα κακόβουλων επιθέσεων και έχει φραγεί σύμφωνα με τις προτιμήσεις ασφαλείας σας.
+harmfulBlocked=Η ιστοσελίδα στο %S έχει αναφερθεί ως πιθανά επιβλαβής και έχει φραγεί σύμφωνα με τις προτιμήσεις ασφαλείας σας.
+deceptiveBlocked=Η σελίδα στο %S έχει αναφερθεί ως παραπλανητική και έχει φραγεί σύμφωνα με τις προτιμήσεις ασφαλείας σας.
+unwantedBlocked=Η σελίδα στο %S έχει αναφερθεί ότι περιέχει ανεπιθύμητο λογισμικό και έχει φραγεί σύμφωνα με τις προτιμήσεις ασφαλείας σας.
+cspBlocked=Η πολιτική ασφάλειας περιεχομένου αυτής της σελίδας δεν της επιτρέπει να φορτωθεί με αυτόν τον τρόπο.
+corruptedContentErrorv2=Η ιστοσελίδα στο %S παρουσίασε μια παραβίαση πρωτοκόλλου δικτύου η οποία δεν μπορεί να επιδιορθωθεί.
+remoteXUL=Αυτή η σελίδα χρησιμοποιεί μια μη υποστηριζόμενη τεχνολογία, που δεν είναι πια διαθέσιμη από προεπιλογή στο Firefox.
+sslv3Used=Το Firefox δεν μπορεί να εγγυηθεί την ασφάλεια των δεδομένων σας στη σελίδα %S, επειδή χρησιμοποιεί το SSLv3, ένα ευάλωτο πρωτόκολλο ασφάλειας.
+weakCryptoUsed=Ο ιδιοκτήτης της σελίδας %S δεν την έχει ρυθμίσει σωστά.  Για την προστασία των πληροφοριών σας, το Firefox δεν συνδέθηκε στην ιστοσελίδα αυτή.
+inadequateSecurityError=Η ιστοσελίδα επιχείρησε να διαπραγματευθεί ένα ανεπαρκές επίπεδο ασφάλειας.
+networkProtocolError=Το Firefox αντιμετώπισε μια παραβίαση πρωτοκόλλου δικτύου που δεν μπορεί να επιδιορθωθεί.
diff --git a/l10n-el/mobile/overrides/netError.dtd b/l10n-el/mobile/overrides/netError.dtd
new file mode 100644
index 0000000000..488ff2d670
--- /dev/null
+++ b/l10n-el/mobile/overrides/netError.dtd
@@ -0,0 +1,211 @@
+<!-- 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 % brandDTD SYSTEM "chrome://branding/locale/brand.dtd">
+%brandDTD;
+
+<!ENTITY loadError.label "Πρόβλημα φόρτωσης σελίδας">
+<!ENTITY retry.label "Προσπαθήστε ξανά">
+
+<!-- Specific error messages -->
+
+<!ENTITY connectionFailure.title "Αδυναμία σύνδεσης">
+<!ENTITY connectionFailure.longDesc2 "&sharedLongDesc3;">
+
+<!ENTITY deniedPortAccess.title "Αυτή η διεύθυνση είναι περιορισμένη">
+<!ENTITY deniedPortAccess.longDesc "">
+
+<!ENTITY dnsNotFound.title "Δεν βρέθηκε ο διακομιστής">
+<!-- LOCALIZATION NOTE (dnsNotFound.longDesc4) This string contains markup including widgets for searching
+ or enabling wifi connections. The text inside tags should be localized. Do not change the ids. -->
+<!ENTITY dnsNotFound.longDesc4 "
+<ul>
+ <li>Ελέγξτε τη διεύθυνση για τυπογραφικά λάθη όπως <strong>ww</strong>.example.com αντί για <strong>www</strong>.example.com</li>
+ <div id='searchbox'>
+ <input id='searchtext' type='search'></input>
+ <button id='searchbutton'>Αναζήτηση</button>
+ </div>
+ <li>Εάν δεν μπορείτε να φορτώσετε καμία σελίδα, ελέγξτε τη σύνδεση δεδομένων ή Wi-Fi της συσκευής σας.
+ <button id='wifi'>Ενεργοποίηση του Wi-Fi</button>
+ </li>
+</ul>
+">
+
+<!ENTITY fileNotFound.title "Το αρχείο δεν βρέθηκε">
+<!ENTITY fileNotFound.longDesc "
+<ul>
+ <li>Ελέγξτε το όνομα αρχείου για λάθος κεφαλαία ή άλλα ορθογραφικά λάθη.</li>
+ <li>Ελέγξτε αν το αρχείο μετακινήθηκε, μετονομάστηκε ή διαγράφηκε.</li>
+</ul>
+">
+
+<!ENTITY fileAccessDenied.title "Άρνηση πρόσβασης στο αρχείο">
+<!ENTITY fileAccessDenied.longDesc "
+<ul>
+ <li>Ενδέχεται να έχει διαγραφεί, μετακινηθεί, ή να μην επιτρέπεται η πρόσβαση λόγω των δικαιωμάτων του αρχείου.</li>
+</ul>
+">
+
+<!ENTITY generic.title "Ώπα.">
+<!ENTITY generic.longDesc "
+<p>Το &brandShortName; δεν μπορεί να φορτώσει τη σελίδα για κάποιο λόγο.</p>
+">
+
+<!ENTITY malformedURI.title "Η διεύθυνση δεν είναι έγκυρη">
+<!-- LOCALIZATION NOTE (malformedURI.longDesc2) This string contains markup including widgets for searching
+ or enabling wifi connections. The text inside the tags should be localized. Do not touch the ids. -->
+<!ENTITY malformedURI.longDesc2 "
+<ul>
+ <li>Οι διευθύνσεις Ιστού γράφονται συνήθως με τη μορφή
+ <strong>http://www.example.com/</strong></li>
+ <div id='searchbox'>
+ <input id='searchtext' type='search'></input>
+ <button id='searchbutton'>Αναζήτηση</button>
+ </div>
+ <li>Σιγουρευτείτε ότι χρησιμοποιείτε τις σωστές καθέτους (δηλαδή
+ <strong>/</strong>).</li>
+</ul>
+">
+
+<!ENTITY netInterrupt.title "Η σύνδεση διακόπηκε">
+<!ENTITY netInterrupt.longDesc2 "&sharedLongDesc3;">
+
+<!ENTITY notCached.title "Το έγγραφο έληξε">
+<!ENTITY notCached.longDesc "<p>Το έγγραφο που ζητήσατε δεν βρίσκεται στην προσωρινή μνήμη του &brandShortName;.</p><ul><li>Για λόγους ασφαλείας, το &brandShortName; δεν επαναφορτώνει αυτόματα τα ευαίσθητα έγγραφα.</li><li>Πατήστε το 'Δοκιμή ξανά' για να φορτώσετε εκ νέου το έγγραφο από την ιστοσελίδα.</li></ul>">
+
+<!ENTITY netOffline.title "Λειτουργία εργασίας χωρίς σύνδεση">
+
+<!ENTITY contentEncodingError.title "Σφάλμα κωδικοποίησης περιεχομένου">
+<!ENTITY contentEncodingError.longDesc "
+<ul>
+ <li>Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους πληροφορήσετε για το πρόβλημα.</li>
+</ul>
+">
+
+<!ENTITY unsafeContentType.title "Μη ασφαλής τύπος αρχείου">
+<!ENTITY unsafeContentType.longDesc "
+<ul>
+ <li>Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε για το πρόβλημα.</li>
+</ul>
+">
+
+<!ENTITY netReset.title "Έγινε διακοπή της σύνδεσης με τη σελίδα">
+<!ENTITY netReset.longDesc2 "&sharedLongDesc3;">
+
+<!ENTITY netTimeout.title "Υπέρβαση ορίου χρόνου της σύνδεσης">
+<!ENTITY netTimeout.longDesc2 "&sharedLongDesc3;">
+
+<!ENTITY unknownProtocolFound.title "Δεν έγινε κατανοητή η διεύθυνση">
+<!ENTITY unknownProtocolFound.longDesc "
+<ul>
+ <li>Ίσως να χρειάζεται να εγκαταστήσετε κάποιο άλλο πρόγραμμα για να ανοίξετε αυτή τη διεύθυνση.</li>
+</ul>
+">
+
+<!ENTITY proxyConnectFailure.title "Ο διαμεσολαβητής αρνείται συνδέσεις">
+<!ENTITY proxyConnectFailure.longDesc "
+<ul>
+ <li>Ελέγξτε αν είναι σωστές οι ρυθμίσεις του διαμεσολαβητή.</li>
+ <li>Επικοινωνήστε με το διαχειριστή του συστήματος σας για να βεβαιωθείτε ότι ο διαμεσολαβητής
+λειτουργεί.</li>
+</ul>
+">
+
+<!ENTITY proxyResolveFailure.title "Αδυναμία εύρεσης διαμεσολαβητή">
+<!-- LOCALIZATION NOTE (proxyResolveFailure.longDesc3) This string contains markup including widgets for enabling wifi connections.
+ The text inside the tags should be localized. Do not touch the ids. -->
+<!ENTITY proxyResolveFailure.longDesc3 "
+<ul>
+ <li>Ελέγξτε τις ρυθμίσεις διαμεσολαβητή για να σιγουρευτείτε ότι είναι σωστές.</li>
+ <li>Ελέγξτε αν η συσκευή σας διαθέτει λειτουργική σύνδεση δεδομένων ή Wi-Fi.
+ <button id='wifi'>Ενεργοποίηση του Wi-Fi</button>
+ </li>
+</ul>
+">
+
+<!ENTITY redirectLoop.title "Η σελίδα δεν ανακατευθύνει σωστά">
+<!ENTITY redirectLoop.longDesc "
+<ul>
+ <li>Αυτό μπορεί το πρόβλημα να προέρχεται από την απενεργοποίηση ή την άρνηση cookies.</li>
+</ul>
+">
+
+<!ENTITY unknownSocketType.title "Απρόσμενη απάντηση από τον εξυπηρετητή">
+<!ENTITY unknownSocketType.longDesc "
+<ul>
+ <li>Βεβαιωθείτε ότι έχετε εγκατεστημένο τον Personal Security Manager.</li>
+ <li>Αυτό μπορεί να προέρχεται από μια μη-τυπική ρύθμιση του εξυπηρετητή.</li>
+</ul>
+">
+
+<!ENTITY nssFailure2.title "Αποτυχία ασφαλούς σύνδεσης">
+<!ENTITY nssFailure2.longDesc2 "
+<ul>
+ <li>Η σελίδα που προσπαθείτε να δείτε δεν είναι δυνατό να εμφανιστεί επειδή δεν μπορεί να επαληθευτεί η αυθεντικότητα των ληφθέντων δεδομένων.</li>
+ <li>Επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε για αυτό το πρόβλημα.</li>
+</ul>
+">
+
+<!ENTITY nssBadCert.title "Αποτυχία ασφαλούς σύνδεσης">
+<!ENTITY nssBadCert.longDesc2 "
+<ul>
+ <li>Μπορεί να υπάρχει πρόβλημα με τις ρυθμίσεις του εξυπηρετητή, ή κάποιος προσπαθεί να μιμηθεί κακόβουλα
+τον εξυπηρετητή.</li>
+ <li>Αν έχετε συνδεθεί ξανά στο παρελθόν με αυτόν τον εξυπηρετητή, το σφάλμα μπορεί να είναι προσωρινό, και μπορείτε να προσπαθήσετε ξανά.</li>
+</ul>
+">
+
+<!-- LOCALIZATION NOTE (sharedLongDesc3) This string contains markup including widgets for enabling wifi connections.
+ The text inside the tags should be localized. Do not touch the ids. -->
+<!ENTITY sharedLongDesc3 "
+<ul>
+ <li>Η σελίδα ενδέχεται να είναι προσωρινά μη διαθέσιμη ή πολύ απασχολημένη. Προσπαθήστε ξανά σε λίγο.</li>
+ <li>Εάν δεν μπορείτε να φορτώσετε καμία σελίδα, ελέγξτε τη σύνδεση δεδομένων ή Wi-Fi της συσκευής σας.
+ <button id='wifi'>Ενεργοποίηση του Wi-Fi</button>
+ </li>
+</ul>
+">
+
+<!ENTITY cspBlocked.title "Έχει αποκλειστεί από την πολιτική προστασίας περιεχομένου">
+<!ENTITY cspBlocked.longDesc "<p>Το &brandShortName; εμπόδισε τη φόρτωση της σελίδας με αυτό τον τρόπο, επειδή η σελίδα έχει μια πολιτική προστασίας περιεχομένου που δεν το επιτρέπει.</p>">
+
+<!ENTITY corruptedContentErrorv2.title "Σφάλμα κατεστραμμένου περιεχομένου">
+<!ENTITY corruptedContentErrorv2.longDesc "<p>Η σελίδα την οποία προσπαθείτε να δείτε δεν μπορεί να εμφανιστεί διότι ανιχνεύθηκε ένα σφάλμα μετάδοσης δεδομένων.</p><ul><li>Παρακαλώ επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε για αυτό το πρόβλημα.</li></ul>">
+
+<!ENTITY securityOverride.linkText "Ή μπορείτε να προσθέσετε μια εξαίρεση...">
+<!ENTITY securityOverride.getMeOutOfHereButton "Να φύγω από εδώ!">
+<!ENTITY securityOverride.exceptionButtonLabel "Προσθήκη εξαίρεσης">
+
+<!-- LOCALIZATION NOTE (securityOverride.warningContent) - Do not translate the
+contents of the <xul:button> tags. The only language content is the label= field,
+which uses strings already defined above. The button is included here (instead of
+netError.xhtml) because it exposes functionality specific to firefox. -->
+
+<!ENTITY securityOverride.warningContent "
+<p>Δεν πρέπει να προσθέσετε μια εξαίρεση αν χρησιμοποιείτε μια σύνδεση στο διαδίκτυο που δεν εμπιστεύεστε πλήρως, ή αν δεν έχετε ξαναδεί προειδοποίηση για αυτόν τον εξυπηρετητή.</p>
+
+<button id='getMeOutOfHereButton'>&securityOverride.getMeOutOfHereButton;</button>
+<button id='exceptionDialogButton'>&securityOverride.exceptionButtonLabel;</button>
+">
+
+<!ENTITY remoteXUL.title "Απομακρυσμένο XUL">
+<!ENTITY remoteXUL.longDesc "<p><ul><li>Παρακαλούμε επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε για αυτό το πρόβλημα.</li></ul></p>">
+
+<!ENTITY sslv3Used.title "Αποτυχία ασφαλούς σύνδεσης">
+<!-- LOCALIZATION NOTE (sslv3Used.longDesc) - Do not translate
+ "SSL_ERROR_UNSUPPORTED_VERSION". -->
+<!ENTITY sslv3Used.longDesc "Πληροφορίες για προχωρημένους: SSL_ERROR_UNSUPPORTED_VERSION">
+
+<!ENTITY weakCryptoUsed.title "Η σύνδεση σας δεν είναι ασφαλής">
+<!-- LOCALIZATION NOTE (weakCryptoUsed.longDesc) - Do not translate
+ "SSL_ERROR_NO_CYPHER_OVERLAP". -->
+<!ENTITY weakCryptoUsed.longDesc "Πληροφορίες για προχωρημένους: SSL_ERROR_NO_CYPHER_OVERLAP">
+
+<!ENTITY inadequateSecurityError.title "Η σύνδεση σας δεν είναι ασφαλής">
+<!-- LOCALIZATION NOTE (inadequateSecurityError.longDesc) - Do not translate
+ "NS_ERROR_NET_INADEQUATE_SECURITY". -->
+<!ENTITY inadequateSecurityError.longDesc "<p>Το <span class='hostname'></span> χρησιμοποιεί τεχνολογίες ασφάλειας οι οποίες είναι παρωχημένες και ευάλωτες σε επιθέσεις. Ένας εισβολέας θα μπορούσε εύκολα να αποκτήσει πληροφορίες που θεωρούσατε ότι είναι ασφαλείς. Ο διαχειριστής της ιστοσελίδας πρέπει να επιδιορθώσει τον διακομιστή προτού μπορέσετε να επισκεφθείτε τη σελίδα.</p><p>Κωδικός σφάλματος: NS_ERROR_NET_INADEQUATE_SECURITY</p>">
+
+<!ENTITY networkProtocolError.title "Σφάλμα πρωτοκόλλου δικτύου">
+<!ENTITY networkProtocolError.longDesc "<p>Η σελίδα που προσπαθείτε να δείτε δεν μπορεί να προβληθεί, επειδή ανιχνεύθηκε ένα σφάλμα στο πρωτόκολλο δικτύου.</p><ul><li>Παρακαλούμε επικοινωνήστε με τους ιδιοκτήτες της ιστοσελίδας για να τους ενημερώσετε σχετικά με αυτό το πρόβλημα.</li></ul>">
diff --git a/l10n-el/netwerk/necko.properties b/l10n-el/netwerk/necko.properties
new file mode 100644
index 0000000000..00c83f66a9
--- /dev/null
+++ b/l10n-el/netwerk/necko.properties
@@ -0,0 +1,109 @@
+# 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/.
+
+#ResolvingHost=Looking up
+#ConnectedTo=Connected to
+#ConnectingTo=Connecting to
+#SendingRequestTo=Sending request to
+#TransferringDataFrom=Transferring data from
+
+3=Αναζήτηση %1$S…
+4=Έγινε σύνδεση με %1$S…
+5=Αποστολή αίτησης σε %1$S…
+6=Μεταφορά δεδομένων από %1$S…
+7=Σύνδεση με %1$S…
+8=Ανάγνωση %1$S
+9=έγραψε %1$S
+10=Αναμονή για %1$S…
+11=Αναζήτηση για %1$S…
+12=Εκτέλεση χειραψίας TLS σε %1$S…
+13=Η χειραψία TLS ολοκληρώθηκε για το %1$S…
+
+27=Εκκίνηση συναλλαγής FTP…
+28=Ολοκλήρωση συναλλαγής FTP
+
+RepostFormData=Αυτή η ιστοσελίδα αναδρομολογείται σε μια νέα τοποθεσία. Θέλετε να ξαναστείλετε τα δεδομένα φόρμας που εισάγατε στη νέα τοποθεσία;
+
+# Directory listing strings
+DirTitle=Κατάλογος του %1$S
+DirGoUp=Πάνω ένα επίπεδο
+ShowHidden=Εμφάνιση κρυφών αντικειμένων
+DirColName=Όνομα
+DirColSize=Μέγεθος
+DirColMTime=Τελευταία τροποποίηση
+DirFileLabel=Αρχείο:
+
+SuperfluousAuth=Είστε έτοιμοι να συνδεθείτε με τη σελίδα «%1$S» με όνομα χρήστη «%2$S», αλλά αυτή η σελίδα δεν απαιτεί διαπίστευση. Αυτό μπορεί να είναι μια προσπάθεια παραπλάνησης.\n\nΕίναι η «%1$S» η ιστοσελίδα που θέλετε;
+AutomaticAuth=Πρόκειται να συνδεθείτε στη σελίδα «%1$S» με όνομα χρήστη «%2$S».
+
+TrackerUriBlocked=Ο πόρος στο “%1$S” αποκλείστηκε επειδή ενεργοποιήθηκε η φραγή περιεχομένου.
+UnsafeUriBlocked=Ο πόρος στο “%1$S” αποκλείστηκε από την ασφαλή περιήγηση.
+CookieBlockedByPermission=Το αίτημα για πρόσβαση στα cookies ή τον αποθηκευτικό χώρο στο “%1$S” αποκλείστηκε εξαιτίας των προσαρμοσμένων δικαιωμάτων cookie.
+CookieBlockedTracker=Το αίτημα για πρόσβαση στα cookies ή τον αποθηκευτικό χώρο στο “%1$S” αποκλείστηκε, επειδή ήρθε από ιχνηλάτη και η φραγή περιεχομένου είναι ενεργή.
+CookieBlockedAll=Το αίτημα για πρόσβαση στα cookies ή τον αποθηκευτικό χώρο στο “%1$S” αποκλείστηκε, επειδή αποκλείουμε όλα τα αιτήματα πρόσβασης στον αποθηκευτικό χώρο.
+CookieBlockedForeign=Το αίτημα για πρόσβαση στα cookies ή τον αποθηκευτικό χώρο στο “%1$S” αποκλείστηκε, επειδή αποκλείουμε όλα τα αιτήματα πρόσβασης τρίτων στον αποθηκευτικό χώρο και η φραγή περιεχομένου είναι ενεργή.
+
+# As part of dynamic first-party isolation, third-party resources might be limited to "partitioned" storage access that is separate from the first-party context.
+# This allows e.g. cookies to still be set, and prevents tracking without totally blocking storage access. This message is shown in the web console when this happens
+# to inform developers that their storage is isolated.
+CookiePartitionedForeign=Παρασχέθηκε τεμαχισμένο cookie ή πρόσβαση αποθηκευτικού χώρου στο “%1$S”, επειδή έχει φορτωθεί σε περιβάλλον τρίτων και η διαμέριση αποθηκευτικού χώρου είναι ενεργή.
+
+# LOCALIZATION NOTE (CookieAllowedForOriginByStorageAccessAPI): %2$S and %1$S are URLs.
+CookieAllowedForOriginByStorageAccessAPI=Χορηγήθηκε πρόσβαση στον αποθηκευτικό χώρο για την προέλευση “%2$S” στο “%1$S”.
+# LOCALIZATION NOTE (CookieAllowedForOriginByHeuristic): %2$S and %1$S are URLs.
+CookieAllowedForOriginByHeuristic=Χορηγήθηκε αυτόματα πρόσβαση στον αποθηκευτικό χώρο για την προέλευση “%2$S” στο “%1$S”.
+# LOCALIZATION NOTE (CookieAllowedForFpiByHeuristic): %2$S and %1$S are URLs.
+CookieAllowedForFpiByHeuristic=Χορηγήθηκε πρόσβαση στον αποθηκευτικό χώρο για απομόνωση First-Party “%2$S” στο “%1$S”.
+
+# LOCALIZATION NOTE(CookieRejectedNonRequiresSecure): %1$S is the cookie name. Do not localize "sameSite=none" and "secure".
+CookieRejectedNonRequiresSecure=Το cookie “%1$S” απορρίφθηκε επειδή έχει την ιδιότητα “sameSite=none”, αλλά δεν έχει την ιδιότητα “secure”.
+# LOCALIZATION NOTE(CookieRejectedNonRequiresSecureForBeta): %1$S is the cookie name. %2$S is a URL. Do not localize "sameSite", "sameSite=none" and "secure".
+CookieRejectedNonRequiresSecureForBeta=Το cookie “%1$S” θα απορριφθεί σύντομα επειδή έχει ορισμένη την ιδιότητα “sameSite” σε “none” ή μια μη έγκυρη τιμή, χωρίς την ιδιότητα “secure”. Για να μάθετε περισσότερα σχετικά με την ιδιότητα “sameSite“, διαβάστε το %2$S
+# LOCALIZATION NOTE(CookieLaxForced): %1$S is the cookie name. Do not localize "sameSite", "lax" and "sameSite=lax".
+CookieLaxForced=Το cookie “%1$S” έχει την πολιτική “sameSite” ορισμένη σε “lax”, επειδή δεν έχει μια ιδιότητα “sameSite” και το “sameSite=lax” είναι η προεπιλεγμένη τιμή για αυτή την ιδιότητα.
+# LOCALIZATION NOTE(CookieLaxForcedForBeta): %1$S is the cookie name. %2$S is a URL. Do not localize "sameSite", "lax" and "sameSite=lax", "sameSite=none".
+CookieLaxForcedForBeta=Το cookie “%1$S” δεν έχει κανονική τιμή ιδιότητας “sameSite”. Σύντομα, τα cookies χωρίς την ιδιότητα “sameSite” ή με μια μη έγκυρη τιμή θα αντιμετωπίζονται ως “lax”. Αυτό σημαίνει ότι το cookie δεν θα αποστέλλεται πλέον σε πλαίσια τρίτων. Αν η εφαρμογή σας βασίζεται στο cookie που διατίθεται σε τέτοια πλαίσια, παρακαλούμε προσθέστε την ιδιότητα “sameSite=none“. Για να μάθετε περισσότερα σχετικά με την ιδιότητα “sameSite“, διαβάστε το %2$S
+# LOCALIZATION NOTE: %1$S is cookie name. Do not localize "sameSite", "lax", "strict" and "none"
+CookieSameSiteValueInvalid=Μη έγκυρη τιμή “sameSite“ για το cookie “%1$S”. Οι υποστηριζόμενες τιμές είναι: “lax“, “strict“, “none“.
+
+# LOCALIZATION NOTE(CookieRejectedNonRequiresSecure2): %1$S is the cookie name. Do not localize "SameSite=None" and "secure".
+CookieRejectedNonRequiresSecure2=Το cookie “%1$S” απορρίφθηκε επειδή έχει την ιδιότητα “SameSite=None”, αλλά δεν έχει την ιδιότητα “secure”.
+# LOCALIZATION NOTE(CookieRejectedNonRequiresSecureForBeta2): %1$S is the cookie name. %2$S is a URL. Do not localize "SameSite", "SameSite=None" and "secure".
+CookieRejectedNonRequiresSecureForBeta2=Το cookie “%1$S” θα απορριφθεί σύντομα επειδή έχει ορισμένη την ιδιότητα “SameSite” σε “None” ή μια μη έγκυρη τιμή, χωρίς την ιδιότητα “secure”. Για να μάθετε περισσότερα σχετικά με την ιδιότητα “SameSite“, διαβάστε το %2$S
+# LOCALIZATION NOTE(CookieLaxForced2): %1$S is the cookie name. Do not localize "SameSite", "Lax" and "SameSite=Lax".
+CookieLaxForced2=Το cookie “%1$S” έχει την πολιτική “SameSite” ορισμένη σε “Lax”, επειδή δεν έχει μια ιδιότητα “SameSite” και το “SameSite=Lax” είναι η προεπιλεγμένη τιμή για αυτή την ιδιότητα.
+# LOCALIZATION NOTE(CookieLaxForcedForBeta2): %1$S is the cookie name. %2$S is a URL. Do not localize "SameSite", "Lax" and "SameSite=Lax", "SameSite=None".
+CookieLaxForcedForBeta2=Το cookie “%1$S” δεν έχει κανονική τιμή ιδιότητας “SameSite”. Σύντομα, τα cookies χωρίς την ιδιότητα “SameSite” ή με μια μη έγκυρη τιμή θα αντιμετωπίζονται ως “Lax”. Αυτό σημαίνει ότι το cookie δεν θα αποστέλλεται πλέον σε πλαίσια τρίτων. Αν η εφαρμογή σας βασίζεται στο cookie που διατίθεται σε τέτοια πλαίσια, παρακαλούμε προσθέστε την ιδιότητα “SameSite=None“. Για να μάθετε περισσότερα σχετικά με την ιδιότητα “SameSite“, διαβάστε το %2$S
+# LOCALIZATION NOTE(CookieSameSiteValueInvalid2): %1$S is cookie name. Do not localize "SameSite", "Lax", "Strict" and "None"
+CookieSameSiteValueInvalid2=Μη έγκυρη τιμή “SameSite“ για το cookie “%1$S”. Οι υποστηριζόμενες τιμές είναι: “Lax“, “Strict“, “None“.
+# LOCALIZATION NOTE (CookieOversize): %1$S is the cookie name. %2$S is the number of bytes. "B" means bytes.
+CookieOversize=Το cookie “%1$S” είναι μη έγκυρο επειδή το μέγεθός του είναι πολύ μεγάλο. Μέγιστο μέγεθος: %2$S B.
+# LOCALIZATION NOTE (CookiePathOversize): %1$S is the cookie name. %2$S is the number of bytes. "B" means bytes.
+CookiePathOversize=Το cookie “%1$S” είναι μη έγκυρο επειδή το μέγεθος της διαδρομής του είναι πολύ μεγάλο. Μέγιστο μέγεθος: %2$S B.
+# LOCALIZATION NOTE (CookieSchemefulRejectForBeta): %1$S is the cookie name. %2$S is the hostname.
+CookieSchemefulRejectForBeta=Το cookie “%1$S” θα αντιμετωπίζεται σύντομα ως cookie πολλαπλών ιστοσελίδων έναντι του “%2$S”, επειδή το σχήμα δεν ταιριάζει.
+# LOCALIZATION NOTE (CookieSchemefulReject): %1$S is the cookie name. %2$S is the hostname.
+CookieSchemefulReject=Το cookie “%1$S” έχει αντιμετωπιστεί ως cookie πολλαπλών ιστοσελίδων έναντι του “%2$S”, επειδή το σχήμα δεν ταιριάζει.
+# LOCALIZATION NOTE (CookieRejectedByPermissionManager): %1$S is the cookie response header.
+CookieRejectedByPermissionManager=Το cookie “%1$S” έχει απορριφθεί λόγω περιορισμών που όρισε ο χρήστης.
+# LOCALIZATION NOTE (CookieRejectedInvalidCharName): %1$S is the cookie name.
+CookieRejectedInvalidCharName=Το cookie “%1$S” έχει απορριφθεί λόγω μη έγκυρων χαρακτήρων στο όνομα.
+# LOCALIZATION NOTE (CookieRejectedInvalidDomain): %1$S is the cookie name.
+CookieRejectedInvalidDomain=Το cookie “%1$S” έχει απορριφθεί λόγω μη έγκυρου τομέα.
+# LOCALIZATION NOTE (CookieRejectedInvalidPrefix): %1$S is the cookie name.
+CookieRejectedInvalidPrefix=Το cookie “%1$S” έχει απορριφθεί λόγω μη έγκυρου προθέματος.
+# LOCALIZATION NOTE (CookieRejectedInvalidCharValue): %1$S is the cookie name.
+CookieRejectedInvalidCharValue=Το cookie “%1$S” έχει απορριφθεί λόγω μη έγκυρων χαρακτήρων στην τιμή.
+# LOCALIZATION NOTE (CookieRejectedHttpOnlyButFromScript): %1$S is the cookie name.
+CookieRejectedHttpOnlyButFromScript=Το cookie “%1$S” απορρίφθηκε επειδή υπάρχει ήδη ένα μόνο-HTTP cookie, αλλά το σενάριο προσπάθησε να αποθηκεύσει ένα νέο.
+# LOCALIZATION NOTE (CookieRejectedSecureButHttp): %1$S is the cookie name.
+CookieRejectedSecureButNonHttps=Το cookie “%1$S” έχει απορριφθεί επειδή ένα μη-HTTPS cookie δεν μπορεί να οριστεί ως “secure”.
+# LOCALIZATION NOTE (CookieRejectedThirdParty): %1$S is the cookie response header.
+CookieRejectedThirdParty=Το cookie “%1$S” έχει απορριφθεί ως στοιχείο τρίτου.
+# LOCALIZATION NOTE (CookieRejectedNonsecureOverSecure): %1$S is the cookie name.
+CookieRejectedNonsecureOverSecure=Το cookie “%1$S” έχει απορριφθεί επειδή υπάρχει ήδη ένα “secure” cookie.
+# LOCALIZATION NOTE (CookieRejectedExpired): %1$S is the cookie name.
+CookieRejectedExpired=Το cookie “%1$S” έχει απορριφθεί επειδή έχει ήδη λήξει.
+# LOCALIZATION NOTE (CookieRejectedForNonSameSiteness): %1$S is the cookie name.
+CookieRejectedForNonSameSiteness=Το cookie “%1$S” έχει απορριφθεί επειδή είναι σε περιβάλλον μεταξύ ιστοσελίδων και το “SameSite” του είναι “Lax” ή “Strict”.
diff --git a/l10n-el/security/manager/chrome/pipnss/nsserrors.properties b/l10n-el/security/manager/chrome/pipnss/nsserrors.properties
new file mode 100644
index 0000000000..e4a6dcf9ef
--- /dev/null
+++ b/l10n-el/security/manager/chrome/pipnss/nsserrors.properties
@@ -0,0 +1,331 @@
+# 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/.
+
+SSL_ERROR_EXPORT_ONLY_SERVER=Αδύνατη η επικοινωνία με ασφάλεια. Ο κόμβος δεν υποστηρίζει κρυπτογράφηση υψηλού βαθμού.
+SSL_ERROR_US_ONLY_SERVER=Αδύνατη η επικοινωνία με ασφάλεια. Ο κόμβος απαιτεί κρυπτογράφηση υψηλού βαθμού που δεν υποστηρίζεται.
+SSL_ERROR_NO_CYPHER_OVERLAP=Δεν ήταν δυνατή η ασφαλής επικοινωνία με τον κόμβο: κανένας κοινός αλγόριθμος κρυπτογράφησης.
+SSL_ERROR_NO_CERTIFICATE=Δεν ήταν δυνατή η εύρεση του απαραίτητου πιστοποιητικού ή κλειδιού για έλεγχο ταυτότητας.
+SSL_ERROR_BAD_CERTIFICATE=Δεν ήταν δυνατή η ασφαλής επικοινωνία με τον κόμβο: το πιστοποιητικό του κόμβου απορρίφθηκε.
+SSL_ERROR_BAD_CLIENT=Ο διακομιστής συνάντησε εσφαλμένα δεδομένα από το δέκτη.
+SSL_ERROR_BAD_SERVER=Ο δέκτης συνάντησε εσφαλμένα δεδομένα από το διακομιστή.
+SSL_ERROR_UNSUPPORTED_CERTIFICATE_TYPE=Μη υποστηριζόμενος τύπος πιστοποιητικού.
+SSL_ERROR_UNSUPPORTED_VERSION=Ο κόμβος χρησιμοποιεί μη υποστηριζόμενη έκδοση του πρωτοκόλλου ασφαλείας.
+SSL_ERROR_WRONG_CERTIFICATE=Αποτυχία ελέγχου ταυτότητας δέκτη: το ιδιωτικό κλειδί στη βάση δεδομένων κλειδιών δεν αντιστοιχεί με το δημόσιο κλειδί στη βάση δεδομένων πιστοποιητικών.
+SSL_ERROR_BAD_CERT_DOMAIN=Δεν ήταν δυνατή η ασφαλής επικοινωνία με τον κόμβο: το απαιτούμενο όνομα τομέα δεν ταιριάζει με το πιστοποιητικό διακομιστή.
+SSL_ERROR_POST_WARNING=Μη αναγνωρίσιμος κωδικός σφάλματος SSL.
+SSL_ERROR_SSL2_DISABLED=Ο κόμβος υποστηρίζει μόνο SSL έκδοση 2, η οποία έχει απενεργοποιηθεί τοπικά.
+SSL_ERROR_BAD_MAC_READ=Το SSL έλαβε μια εγγραφή με εσφαλμένο κωδικό ελέγχου ταυτότητας μηνύματος.
+SSL_ERROR_BAD_MAC_ALERT=Ο κόμβος SSL αναφέρει εσφαλμένο κωδικό ελέγχου ταυτότητας μηνύματος.
+SSL_ERROR_BAD_CERT_ALERT=Ο κόμβος SSL δεν μπορεί να επαληθεύσει το πιστοποιητικό σας.
+SSL_ERROR_REVOKED_CERT_ALERT=Ο κόμβος SSL απέρριψε το πιστοποιητικό σας γιατί έχει ανακληθεί.
+SSL_ERROR_EXPIRED_CERT_ALERT=Ο κόμβος SSL απέρριψε το πιστοποιητικό σας γιατί έχει λήξει.
+SSL_ERROR_SSL_DISABLED=Αδυναμία σύνδεσης: το SSL είναι ανενεργό.
+SSL_ERROR_FORTEZZA_PQG=Αδυναμία σύνδεσης: ο κόμβος SSL βρίσκεται σε έναν άλλο τομέα FORTEZZA.
+SSL_ERROR_UNKNOWN_CIPHER_SUITE=Μια άγνωστη σουίτα κρυπτογράφησης SSL έχει ζητηθεί.
+SSL_ERROR_NO_CIPHERS_SUPPORTED=Καμία παρούσα και ενεργή σουίτα κρυπτογράφησης σε αυτό το πρόγραμμα.
+SSL_ERROR_BAD_BLOCK_PADDING=Το SSL έλαβε μια εγγραφή με κατεστραμμένη συμπλήρωση μπλοκ.
+SSL_ERROR_RX_RECORD_TOO_LONG=Το SSL έλαβε μια εγγραφή που υπερέβη το μέγιστο επιτρεπτό μήκος.
+SSL_ERROR_TX_RECORD_TOO_LONG=Το SSL επιχείρησε να στείλει μια εγγραφή που υπερέβη το μέγιστο επιτρεπτό μήκος.
+SSL_ERROR_RX_MALFORMED_HELLO_REQUEST=Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Hello Request.
+SSL_ERROR_RX_MALFORMED_CLIENT_HELLO=Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Client Hello.
+SSL_ERROR_RX_MALFORMED_SERVER_HELLO=Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Server Hello.
+SSL_ERROR_RX_MALFORMED_CERTIFICATE=Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Certificate.
+SSL_ERROR_RX_MALFORMED_SERVER_KEY_EXCH=Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Server Key Exchange.
+SSL_ERROR_RX_MALFORMED_CERT_REQUEST=Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Certificate Request.
+SSL_ERROR_RX_MALFORMED_HELLO_DONE=Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Server Hello Done.
+SSL_ERROR_RX_MALFORMED_CERT_VERIFY=Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Certificate Verify.
+SSL_ERROR_RX_MALFORMED_CLIENT_KEY_EXCH=Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Client Key Exchange.
+SSL_ERROR_RX_MALFORMED_FINISHED=Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Finished.
+SSL_ERROR_RX_MALFORMED_CHANGE_CIPHER=Το SSL έλαβε μια ακατάλληλη εγγραφή Change Cipher Spec.
+SSL_ERROR_RX_MALFORMED_ALERT=Το SSL έλαβε μια ακατάλληλη εγγραφή Alert.
+SSL_ERROR_RX_MALFORMED_HANDSHAKE=Το SSL έλαβε μια ακατάλληλη εγγραφή Handshake.
+SSL_ERROR_RX_MALFORMED_APPLICATION_DATA=Το SSL έλαβε μια ακατάλληλη εγγραφή Application Data.
+SSL_ERROR_RX_UNEXPECTED_HELLO_REQUEST=Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Hello Request.
+SSL_ERROR_RX_UNEXPECTED_CLIENT_HELLO=Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Client Hello.
+SSL_ERROR_RX_UNEXPECTED_SERVER_HELLO=Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Server Hello.
+SSL_ERROR_RX_UNEXPECTED_CERTIFICATE=Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Certificate.
+SSL_ERROR_RX_UNEXPECTED_SERVER_KEY_EXCH=Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Server Key Exchange.
+SSL_ERROR_RX_UNEXPECTED_CERT_REQUEST=Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Certificate Request.
+SSL_ERROR_RX_UNEXPECTED_HELLO_DONE=Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Server Hello Done.
+SSL_ERROR_RX_UNEXPECTED_CERT_VERIFY=Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Certificate Verify.
+SSL_ERROR_RX_UNEXPECTED_CLIENT_KEY_EXCH=Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Client Key Exchange.
+SSL_ERROR_RX_UNEXPECTED_FINISHED=Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Finished.
+SSL_ERROR_RX_UNEXPECTED_CHANGE_CIPHER=Το SSL έλαβε μια μη αναμενόμενη εγγραφή Change Cipher Spec.
+SSL_ERROR_RX_UNEXPECTED_ALERT=Το SSL έλαβε μια μη αναμενόμενη εγγραφή Alert.
+SSL_ERROR_RX_UNEXPECTED_HANDSHAKE=Το SSL έλαβε μια μη αναμενόμενη εγγραφή Handshake.
+SSL_ERROR_RX_UNEXPECTED_APPLICATION_DATA=Το SSL έλαβε μια μη αναμενόμενη εγγραφή Application Data.
+SSL_ERROR_RX_UNKNOWN_RECORD_TYPE=Το SSL έλαβε μια εγγραφή με άγνωστο τύπο περιεχομένου.
+SSL_ERROR_RX_UNKNOWN_HANDSHAKE=Το SSL έλαβε ένα μήνυμα χειραψίας με άγνωστο τύπο μηνύματος.
+SSL_ERROR_RX_UNKNOWN_ALERT=Το SSL έλαβε μια εγγραφή με άγνωστη περιγραφή ειδοποίησης.
+SSL_ERROR_CLOSE_NOTIFY_ALERT=Ο κόμβος SSL έχει κλείσει αυτή τη σύνδεση.
+SSL_ERROR_HANDSHAKE_UNEXPECTED_ALERT=Ο κόμβος SSL δεν περίμενε ένα μήνυμα χειραψίας που έλαβε.
+SSL_ERROR_DECOMPRESSION_FAILURE_ALERT=Ο κόμβος SSL δεν μπόρεσε να αποσυμπιέσει επιτυχώς μια εγγραφή SSL που έλαβε.
+SSL_ERROR_HANDSHAKE_FAILURE_ALERT=Ο κόμβος SSL δεν μπόρεσε να διαπραγματευτεί ένα αποδεκτό σύνολο παραμέτρων ασφαλείας.
+SSL_ERROR_ILLEGAL_PARAMETER_ALERT=Ο κόμβος SSL απέρριψε ένα μήνυμα χειραψίας λόγω μη αποδεκτού περιεχομένου.
+SSL_ERROR_UNSUPPORTED_CERT_ALERT=Ο κόμβος SSL δεν υποστηρίζει πιστοποιητικά του τύπου που έλαβε.
+SSL_ERROR_CERTIFICATE_UNKNOWN_ALERT=Ο κόμβος SSL είχε κάποιο απροσδιόριστο ζήτημα με το πιστοποιητικό που έλαβε.
+SSL_ERROR_GENERATE_RANDOM_FAILURE=Το SSL αντιμετώπισε αποτυχία στη γεννήτρια τυχαίων αριθμών του.
+SSL_ERROR_SIGN_HASHES_FAILURE=Δεν ήταν δυνατή η ψηφιακή υπογραφή των απαιτούμενων δεδομένων για την επαλήθευση του πιστοποιητικού σας.
+SSL_ERROR_EXTRACT_PUBLIC_KEY_FAILURE=Το SSL δεν μπόρεσε να εξάγει το δημόσιο κλειδί από το πιστοποιητικό του κόμβου.
+SSL_ERROR_SERVER_KEY_EXCHANGE_FAILURE=Απροσδιόριστο σφάλμα κατά την επεξεργασία της χειραψίας SSL Server Key Exchange.
+SSL_ERROR_CLIENT_KEY_EXCHANGE_FAILURE=Απροσδιόριστο σφάλμα κατά την επεξεργασία της χειραψίας SSL Client Key Exchange.
+SSL_ERROR_ENCRYPTION_FAILURE=Ο αλγόριθμος μαζικής κρυπτογράφησης δεδομένων απέτυχε στην επιλεγμένη σουίτα κρυπτογράφησης.
+SSL_ERROR_DECRYPTION_FAILURE=Ο αλγόριθμος μαζικής αποκρυπτογράφησης δεδομένων απέτυχε στην επιλεγμένη σουίτα κρυπτογράφησης.
+SSL_ERROR_SOCKET_WRITE_FAILURE=Η προσπάθεια εγγραφής κρυπτογραφημένων δεδομένων στην βασική υποδοχή απέτυχε.
+SSL_ERROR_MD5_DIGEST_FAILURE=Αποτυχία λειτουργίας σύνοψης MD5.
+SSL_ERROR_SHA_DIGEST_FAILURE=Αποτυχία λειτουργίας σύνοψης SHA-1.
+SSL_ERROR_MAC_COMPUTATION_FAILURE=Αποτυχία υπολογισμού MAC.
+SSL_ERROR_SYM_KEY_CONTEXT_FAILURE=Αποτυχία δημιουργίας πλαισίου συμμετρικού κλειδιού.
+SSL_ERROR_SYM_KEY_UNWRAP_FAILURE=Αποτυχία ανάκτησης συμμετρικού κλειδιού σε μήνυμα Client Key Exchange.
+SSL_ERROR_PUB_KEY_SIZE_LIMIT_EXCEEDED=Ο διακομιστής SSL επιχείρησε να χρησιμοποιήσει δημόσιο κλειδί εσωτερικού βαθμού με σουίτα εξαγωγής κρυπτογράφησης.
+SSL_ERROR_IV_PARAM_FAILURE=Ο κώδικας PKCS11 απέτυχε να μεταφράσει ένα IV σε μία παράμετρο.
+SSL_ERROR_INIT_CIPHER_SUITE_FAILURE=Αποτυχία προετοιμασίας της επιλεγμένης σουίτας κρυπτογράφησης.
+SSL_ERROR_SESSION_KEY_GEN_FAILURE=Το πρόγραμμα-πελάτης απέτυχε να δημιουργήσει κλειδιά συνεδρίας για τη συνεδρία SSL.
+SSL_ERROR_NO_SERVER_KEY_FOR_ALG=Ο διακομιστής δεν έχει κλειδί για τον αποπειραμένο αλγόριθμο ανταλλαγής κλειδιών.
+SSL_ERROR_TOKEN_INSERTION_REMOVAL=Το διακριτικό PKCS#11 προστέθηκε ή αφαιρέθηκε, ενώ η λειτουργία βρισκόταν σε εξέλιξη.
+SSL_ERROR_TOKEN_SLOT_NOT_FOUND=Δεν βρέθηκε κανένα διακριτικό PKCS#11 για να εκτελέσει μια απαιτούμενη λειτουργία.
+SSL_ERROR_NO_COMPRESSION_OVERLAP=Αδυναμία ασφαλούς επικοινωνίας με τον κόμβο: κανένας κοινός αλγόριθμος συμπίεσης.
+SSL_ERROR_HANDSHAKE_NOT_COMPLETED=Αδυναμία εκκίνησης άλλης χειραψίας SSL μέχρι να ολοκληρωθεί η τρέχουσα χειραψία.
+SSL_ERROR_BAD_HANDSHAKE_HASH_VALUE=Ελήφθησαν εσφαλμένες hash τιμές χειραψιών από τον κόμβο.
+SSL_ERROR_CERT_KEA_MISMATCH=Το παρεχόμενο πιστοποιητικό δεν μπορεί να χρησιμοποιηθεί με τον επιλεγμένο αλγόριθμο ανταλλαγής κλειδιού.
+SSL_ERROR_NO_TRUSTED_SSL_CLIENT_CA=Καμία αρχή πιστοποιητικών δεν είναι αξιόπιστη για τον έλεγχο ταυτότητας του υπολογιστή-πελάτη SSL.
+SSL_ERROR_SESSION_NOT_FOUND=To ID συνεδρίας πελάτη SSL δεν βρέθηκε στη μνήμη cache συνεδριών του διακομιστή.
+SSL_ERROR_DECRYPTION_FAILED_ALERT=Ο κόμβος δεν μπόρεσε να αποκρυπτογραφήσει μια εγγραφή SSL που έλαβε.
+SSL_ERROR_RECORD_OVERFLOW_ALERT=Ο κόμβος έλαβε μια εγγραφή SSL που ήταν μεγαλύτερη από το επιτρεπτό.
+SSL_ERROR_UNKNOWN_CA_ALERT=Ο κόμβος δεν αναγνωρίζει ούτε εμπιστεύεται την αρχή πιστοποιητικών που εξέδωσε το πιστοποιητικό σας.
+SSL_ERROR_ACCESS_DENIED_ALERT=Ο κόμβος έλαβε ένα έγκυρο πιστοποιητικό, αλλά δεν επιτράπηκε η πρόσβαση.
+SSL_ERROR_DECODE_ERROR_ALERT=Ο κόμβος δεν μπόρεσε να αποκωδικοποιήσει ένα μήνυμα χειραψίας SSL.
+SSL_ERROR_DECRYPT_ERROR_ALERT=Ο κόμβος αναφέρει αποτυχία επαλήθευσης της υπογραφής ή της ανταλλαγής κλειδιών.
+SSL_ERROR_EXPORT_RESTRICTION_ALERT=Ο κόμβος αναφέρει ότι η διαπραγμάτευση δεν υπακούει στους κανονισμούς εξαγωγής.
+SSL_ERROR_PROTOCOL_VERSION_ALERT=Ο κόμβος αναφέρει ασύμβατη ή μη υποστηριζόμενη έκδοση πρωτοκόλλου.
+SSL_ERROR_INSUFFICIENT_SECURITY_ALERT=Ο διακομιστής απαιτεί πιο ασφαλή κρυπτογράφηση από αυτήν που υποστηρίζει το πρόγραμμα-πελάτης.
+SSL_ERROR_INTERNAL_ERROR_ALERT=Ο κόμβος αναφέρει ότι διαπίστωσε εσωτερικό σφάλμα.
+SSL_ERROR_USER_CANCELED_ALERT=Ο χρήστης του κόμβου ακύρωσε τη χειραψία.
+SSL_ERROR_NO_RENEGOTIATION_ALERT=Ο κόμβος δεν επιτρέπει επαναδιαπραγμάτευση των SSL παραμέτρων ασφαλείας.
+SSL_ERROR_SERVER_CACHE_NOT_CONFIGURED=Η προσωρινή μνήμη του διακομιστή SSL δεν έχει ρυθμιστεί και δεν έχει απενεργοποιηθεί για αυτήν την υποδοχή.
+SSL_ERROR_UNSUPPORTED_EXTENSION_ALERT=Ο κόμβος SSL δεν υποστηρίζει την ζητούμενη επέκταση TLS Hello.
+SSL_ERROR_CERTIFICATE_UNOBTAINABLE_ALERT=Ο κόμβος SSL δεν μπόρεσε να λάβει το πιστοποιητικό σας από το παρεχόμενο URL.
+SSL_ERROR_UNRECOGNIZED_NAME_ALERT=Ο κόμβος SSL δεν έχει κανένα πιστοποιητικό για το ζητούμενο όνομα DNS.
+SSL_ERROR_BAD_CERT_STATUS_RESPONSE_ALERT=Ο κόμβος SSL δεν μπόρεσε να λάβει απόκριση OCSP για το πιστοποιητικό του.
+SSL_ERROR_BAD_CERT_HASH_VALUE_ALERT=Ο κόμβος SSL αναφέρεται εσφαλμένη τιμή hash πιστοποιητικού.
+SSL_ERROR_RX_UNEXPECTED_NEW_SESSION_TICKET=Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας New Session Ticket.
+SSL_ERROR_RX_MALFORMED_NEW_SESSION_TICKET=Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας New Session Ticket.
+SSL_ERROR_DECOMPRESSION_FAILURE=Το SSL έλαβε μια συμπιεσμένη εγγραφή που δεν μπόρεσε να αποσυμπιέσει.
+SSL_ERROR_RENEGOTIATION_NOT_ALLOWED=Η επαναδιαπραγμάτευση δεν επιτρέπεται σε αυτή την υποδοχή SSL.
+SSL_ERROR_UNSAFE_NEGOTIATION=Ο κόμβος επιχείρησε παλιό στυλ (δυνητικά ευάλωτης) χειραψίας.
+SSL_ERROR_RX_UNEXPECTED_UNCOMPRESSED_RECORD=Το SSL έλαβε μια μη αναμενόμενη ασυμπίεστη εγγραφή.
+SSL_ERROR_WEAK_SERVER_EPHEMERAL_DH_KEY=Το SSL έλαβε ένα αδύναμο εφήμερο κλειδί Diffie-Hellman στο μήνυμα χειραψίας Server Key Exchange.
+SSL_ERROR_NEXT_PROTOCOL_DATA_INVALID=Το SSL έλαβε άγκυρα δεδομένα επέκτασης NPN.
+SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_SSL2=Η δυνατότητα SSL δεν υποστηρίζεται για συνδέσεις SSL 2.0.
+SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_SERVERS=Η λειτουργία SSL δεν υποστηρίζεται για διακομιστές.
+SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_CLIENTS=Η λειτουργία SSL δεν υποστηρίζεται για δέκτες.
+SSL_ERROR_INVALID_VERSION_RANGE=Η περιοχή έκδοσης SSL δεν είναι έγκυρη.
+SSL_ERROR_CIPHER_DISALLOWED_FOR_VERSION=Ο κόμβος SSL επέλεξε μια σουίτα κρυπτογράφησης μη επιτρεπτή στην έκδοση του επιλεγμένου πρωτοκόλλου.
+SSL_ERROR_RX_MALFORMED_HELLO_VERIFY_REQUEST=Το SSL έλαβε ένα ακατάλληλο μήνυμα χειραψίας Hello Verify Request.
+SSL_ERROR_RX_UNEXPECTED_HELLO_VERIFY_REQUEST=Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Hello Verify Request.
+SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_VERSION=Η δυνατότητα SSL δεν υποστηρίζεται για την έκδοση του πρωτοκόλλου.
+SSL_ERROR_RX_UNEXPECTED_CERT_STATUS=Το SSL έλαβε ένα μη αναμενόμενο μήνυμα χειραψίας Certificate Status.
+SSL_ERROR_UNSUPPORTED_HASH_ALGORITHM=Μη υποστηριζόμενος αλγόριθμος hash χρησιμοποιείται από τον κόμβο TLS.
+SSL_ERROR_DIGEST_FAILURE=Η λειτουργία digest απέτυχε.
+SSL_ERROR_INCORRECT_SIGNATURE_ALGORITHM=Καθορίστηκε εσφαλμένος αλγόριθμος υπογραφής σε στοιχείο με ψηφιακή υπογραφή.
+SSL_ERROR_NEXT_PROTOCOL_NO_CALLBACK=Ενεργοποιήθηκε η επόμενη επέκταση διαπραγμάτευσης πρωτοκόλλου, αλλά η επιστροφή κλήσης εγκρίθηκε πριν χρειαστεί.
+SSL_ERROR_NEXT_PROTOCOL_NO_PROTOCOL=Ο διακομιστής δεν υποστηρίζει πρωτόκολλα που διαφημίζει ο πελάτης στην επέκταση ALPN.
+SSL_ERROR_INAPPROPRIATE_FALLBACK_ALERT=Ο διακομιστής απέρριψε την χειραψία, επειδή το πρόγραμμα-πελάτης την υποβάθμισε σε χαμηλότερη έκδοση TLS από αυτήν που υποστηρίζει ο διακομιστής.
+SSL_ERROR_WEAK_SERVER_CERT_KEY=Το πιστοποιητικό του διακομιστή περιείχε ένα δημόσιο κλειδί, που ήταν πολύ αδύναμο.
+SSL_ERROR_RX_SHORT_DTLS_READ=Ανεπαρκής χώρος στο buffer για εγγραφή DTLS.
+SSL_ERROR_NO_SUPPORTED_SIGNATURE_ALGORITHM=Κανένας υποστηριζόμενος αλγόριθμος υπογραφής TLS δεν έχει ρυθμιστεί.
+SSL_ERROR_UNSUPPORTED_SIGNATURE_ALGORITHM=Ο κόμβος χρησιμοποίησε έναν μη υποστηριζόμενο συνδυασμό υπογραφής και αλγόριθμου hash.
+SSL_ERROR_MISSING_EXTENDED_MASTER_SECRET=Ο κόμβος προσπάθησε να συνεχίσει χωρίς σωστή επέκταση extended_master_secret.
+SSL_ERROR_UNEXPECTED_EXTENDED_MASTER_SECRET=Ο κόμβος προσπάθησε να συνεχίσει με μη αναμενόμενη επέκταση extended_master_secret.
+SEC_ERROR_IO=Προέκυψε σφάλμα I/O κατά τη διάρκεια της αδειοδότησης ασφάλειας.
+SEC_ERROR_LIBRARY_FAILURE=αποτυχία βιβλιοθήκης ασφαλείας.
+SEC_ERROR_BAD_DATA=βιβλιοθήκη ασφάλειας: ελήφθησαν εσφαλμένα δεδομένα.
+SEC_ERROR_OUTPUT_LEN=βιβλιοθήκη ασφάλειας: σφάλμα μήκους εξόδου.
+SEC_ERROR_INPUT_LEN=η βιβλιοθήκη ασφάλειας διαπίστωσε σφάλμα μήκους εισόδου.
+SEC_ERROR_INVALID_ARGS=βιβλιοθήκη ασφάλειας: άκυρες παράμετροι.
+SEC_ERROR_INVALID_ALGORITHM=βιβλιοθήκη ασφάλειας: άκυρος αλγόριθμος.
+SEC_ERROR_INVALID_AVA=βιβλιοθήκη ασφάλειας: άκυρο AVA.
+SEC_ERROR_INVALID_TIME=Ακατάλληλα μορφοποιημένη συμβολοσειρά χρόνου.
+SEC_ERROR_BAD_DER=βιβλιοθήκη ασφάλειας: ακατάλληλα μορφοποιημένο μήνυμα κωδικοποίησης DER.
+SEC_ERROR_BAD_SIGNATURE=Το πιστοποιητικό κόμβου έχει άκυρη υπογραφή.
+SEC_ERROR_EXPIRED_CERTIFICATE=Το πιστοποιητικό κόμβου έχει λήξει.
+SEC_ERROR_REVOKED_CERTIFICATE=Το πιστοποιητικό κόμβου έχει ανακληθεί.
+SEC_ERROR_UNKNOWN_ISSUER=Ο εκδότης του πιστοποιητικού κόμβου δεν αναγνωρίζεται.
+SEC_ERROR_BAD_KEY=Το δημόσιο κλειδί του κόμβου είναι άκυρο.
+SEC_ERROR_BAD_PASSWORD=Ο κωδικός πρόσβασης που δώσατε είναι εσφαλμένος.
+SEC_ERROR_RETRY_PASSWORD=Ο νέος κωδικός πρόσβασης εισήχθη εσφαλμένα. Παρακαλώ προσπαθήστε ξανά.
+SEC_ERROR_NO_NODELOCK=βιβλιοθήκη ασφάλειας: κανένα κλείδωμα κόμβου.
+SEC_ERROR_BAD_DATABASE=βιβλιοθήκη ασφάλειας: ελαττωματική βάση δεδομένων.
+SEC_ERROR_NO_MEMORY=βιβλιοθήκη ασφάλειας: αποτυχία εκχώρησης μνήμης.
+SEC_ERROR_UNTRUSTED_ISSUER=Ο εκδότης του πιστοποιητικού κόμβου έχει σημανθεί ως αναξιόπιστος από το χρήστη.
+SEC_ERROR_UNTRUSTED_CERT=Το πιστοποιητικό κόμβου έχει σημανθεί ως αναξιόπιστο από το χρήστη.
+SEC_ERROR_DUPLICATE_CERT=Το πιστοποιητικό υπάρχει ήδη στη βάση δεδομένων σας.
+SEC_ERROR_DUPLICATE_CERT_NAME=Το όνομα του πιστοποιητικού που κατέβηκε βρίσκεται ήδη στη βάση δεδομένων σας.
+SEC_ERROR_ADDING_CERT=Σφάλμα κατά την προσθήκη του πιστοποιητικού στη βάση δεδομένων.
+SEC_ERROR_FILING_KEY=Σφάλμα κατά την συμπλήρωση του κλειδιού για αυτό το πιστοποιητικό.
+SEC_ERROR_NO_KEY=Το ιδιωτικό κλειδί αυτού του πιστοποιητικού δεν μπορεί να βρεθεί στη βάση δεδομένων κλειδιών
+SEC_ERROR_CERT_VALID=Αυτό το πιστοποιητικό είναι έγκυρο.
+SEC_ERROR_CERT_NOT_VALID=Αυτό το πιστοποιητικό είναι άκυρο.
+SEC_ERROR_CERT_NO_RESPONSE=Βιβλιοθήκη πιστοποιητικών: Καμία απάντηση
+SEC_ERROR_EXPIRED_ISSUER_CERTIFICATE=Το πιστοποιητικό του εκδότη πιστοποιητικών έχει λήξει. Ελέγξτε την ημερομηνία και την ώρα συστήματός σας.
+SEC_ERROR_CRL_EXPIRED=Η λίστα CRL του εκδότη πιστοποιητικών έχει λήξει. Ενημερώστε την ή ελέγξτε την ημερομηνία και την ώρα συστήματός σας.
+SEC_ERROR_CRL_BAD_SIGNATURE=Η λίστα CRL του εκδότη πιστοποιητικών έχει άκυρη υπογραφή.
+SEC_ERROR_CRL_INVALID=Το νέο CRL έχει άκυρη μορφή.
+SEC_ERROR_EXTENSION_VALUE_INVALID=Η τιμή επέκτασης του πιστοποιητικού είναι άκυρη.
+SEC_ERROR_EXTENSION_NOT_FOUND=Η επέκταση του πιστοποιητικού δεν βρέθηκε.
+SEC_ERROR_CA_CERT_INVALID=Το πιστοποιητικό του εκδότη είναι άκυρο.
+SEC_ERROR_PATH_LEN_CONSTRAINT_INVALID=Ο περιορισμός μήκους διαδρομής του πιστοποιητικού είναι άκυρος.
+SEC_ERROR_CERT_USAGES_INVALID=Το πεδίο χρήσεων πιστοποιητικού είναι άκυρο.
+SEC_INTERNAL_ONLY=**ΜΟΝΟ εσωτερική μονάδα**
+SEC_ERROR_INVALID_KEY=Το κλειδί δεν υποστηρίζει την λειτουργία που ζητήθηκε.
+SEC_ERROR_UNKNOWN_CRITICAL_EXTENSION=Το πιστοποιητικό περιέχει άγνωστη κρίσιμη επέκταση.
+SEC_ERROR_OLD_CRL=Η νέα λίστα CRL δεν είναι νεότερη από την τρέχουσα.
+SEC_ERROR_NO_EMAIL_CERT=Δεν έχει κρυπτογραφηθεί ή υπογραφεί: δεν έχετε ακόμα πιστοποιητικό ηλεκτρονικού ταχυδρομείου.
+SEC_ERROR_NO_RECIPIENT_CERTS_QUERY=Δεν έχει κρυπτογραφηθεί: δεν έχετε πιστοποιητικά για κάθε έναν από τους παραλήπτες.
+SEC_ERROR_NOT_A_RECIPIENT=Αδυναμία αποκρυπτογράφησης: δεν είστε παραλήπτης, ή δεν βρέθηκε το αντίστοιχο πιστοποιητικό και το ιδιωτικό κλειδί.
+SEC_ERROR_PKCS7_KEYALG_MISMATCH=Αδυναμία αποκρυπτογράφησης: ο αλγόριθμος κρυπτογράφησης κλειδιών δεν ταιριάζει με το πιστοποιητικό σας.
+SEC_ERROR_PKCS7_BAD_SIGNATURE=Η επαλήθευση της υπογραφής απέτυχε: δεν βρέθηκε ο υπογράφων, βρέθηκαν πολλοί υπογράφοντες, ή τα δεδομένα ήταν ακατάλληλα ή κατεστραμμένα.
+SEC_ERROR_UNSUPPORTED_KEYALG=Μη υποστηριζόμενος ή άγνωστος αλγόριθμος κλειδιού.
+SEC_ERROR_DECRYPTION_DISALLOWED=Αδυναμία αποκρυπτογράφησης: κρυπτογραφήθηκε με μη επιτρεπόμενο αλγόριθμο ή μέγεθος κλειδιού.
+XP_SEC_FORTEZZA_BAD_CARD=Η κάρτα Fortezza δεν έχει προετοιμαστεί σωστά. Παρακαλώ αφαιρέστε την και επιστρέψτε την στον εκδότη σας.
+XP_SEC_FORTEZZA_NO_CARD=Δεν βρέθηκαν κάρτες Fortezza
+XP_SEC_FORTEZZA_NONE_SELECTED=Δεν έχει επιλεγεί κάρτα Fortezza
+XP_SEC_FORTEZZA_MORE_INFO=Παρακαλώ επιλέξτε ένα πρόσωπο για περισσότερες πληροφορίες
+XP_SEC_FORTEZZA_PERSON_NOT_FOUND=Δεν βρέθηκε προσωπικότητα
+XP_SEC_FORTEZZA_NO_MORE_INFO=Καμία επιπλέον πληροφορία σχετικά με αυτή την προσωπικότητα
+XP_SEC_FORTEZZA_BAD_PIN=Άκυρο PIN
+XP_SEC_FORTEZZA_PERSON_ERROR=Αδυναμία προετοιμασίας προσωπικοτήτων Fortezza.
+SEC_ERROR_NO_KRL=Δεν βρέθηκε KRL για το πιστοποιητικό αυτής της ιστοσελίδας.
+SEC_ERROR_KRL_EXPIRED=Το KRL για το πιστοποιητικό αυτής της ιστοσελίδας έχει λήξει.
+SEC_ERROR_KRL_BAD_SIGNATURE=Το KRL για το πιστοποιητικό αυτής της ιστοσελίδας έχει άκυρη υπογραφή.
+SEC_ERROR_REVOKED_KEY=Το κλειδί για το πιστοποιητικό αυτής της ιστοσελίδας έχει ανακληθεί.
+SEC_ERROR_KRL_INVALID=Το νέο KRL έχει άκυρη μορφή.
+SEC_ERROR_NEED_RANDOM=βιβλιοθήκη ασφαλείας: χρειάζονται τυχαία δεδομένα.
+SEC_ERROR_NO_MODULE=βιβλιοθήκη ασφαλείας: καμία μονάδα ασφαλείας δεν μπορεί να εκτελέσει τη λειτουργία που ζητήθηκε.
+SEC_ERROR_NO_TOKEN=Η κάρτα ή το διακριτικό ασφάλειας δεν υπάρχει, πρέπει να προετοιμαστεί, ή έχει αφαιρεθεί.
+SEC_ERROR_READ_ONLY=βιβλιοθήκη ασφάλειας: βάση δεδομένων μόνο για ανάγνωση.
+SEC_ERROR_NO_SLOT_SELECTED=Δεν επιλέχθηκε καμία υποδοχή ή σύμβολο.
+SEC_ERROR_CERT_NICKNAME_COLLISION=Υπάρχει ήδη ένα πιστοποιητικό με το ίδιο ψευδώνυμο.
+SEC_ERROR_KEY_NICKNAME_COLLISION=Υπάρχει ήδη ένα κλειδί με το ίδιο ψευδώνυμο.
+SEC_ERROR_SAFE_NOT_CREATED=σφάλμα κατά τη δημιουργία ασφαλούς αντικειμένου
+SEC_ERROR_BAGGAGE_NOT_CREATED=σφάλμα κατά τη δημιουργία αντικειμένου αποσκευών
+XP_JAVA_REMOVE_PRINCIPAL_ERROR=Αδυναμία αφαίρεσης αρχής
+XP_JAVA_DELETE_PRIVILEGE_ERROR=Αδυναμία διαγραφής προνομίου
+XP_JAVA_CERT_NOT_EXISTS_ERROR=Αυτή η αρχή δεν διαθέτει πιστοποιητικό
+SEC_ERROR_BAD_EXPORT_ALGORITHM=Ο απαιτούμενος αλγόριθμος δεν επιτρέπεται.
+SEC_ERROR_EXPORTING_CERTIFICATES=Σφάλμα κατά την προσπάθεια εξαγωγής πιστοποιητικών.
+SEC_ERROR_IMPORTING_CERTIFICATES=Σφάλμα κατά την προσπάθεια εισαγωγής πιστοποιητικών.
+SEC_ERROR_PKCS12_DECODING_PFX=Δεν ήταν δυνατή η εισαγωγή. Σφάλμα αποκωδικοποίησης. Μη έγκυρο αρχείο.
+SEC_ERROR_PKCS12_INVALID_MAC=Δεν ήταν δυνατή η εισαγωγή. Μη έγκυρη MAC. Λάθος κωδικός πρόσβασης ή κατεστραμμένο αρχείο.
+SEC_ERROR_PKCS12_UNSUPPORTED_MAC_ALGORITHM=Δεν ήταν δυνατή η εισαγωγή. Μη υποστηριζόμενος αλγόριθμος MAC.
+SEC_ERROR_PKCS12_UNSUPPORTED_TRANSPORT_MODE=Δεν ήταν δυνατή η εισαγωγή. Υποστηρίζονται μόνο οι λειτουργίες ακεραιότητας και απορρήτου κωδικού πρόσβασης.
+SEC_ERROR_PKCS12_CORRUPT_PFX_STRUCTURE=Δεν ήταν δυνατή η εισαγωγή. Κατεστραμμένη δομή αρχείου.
+SEC_ERROR_PKCS12_UNSUPPORTED_PBE_ALGORITHM=Δεν ήταν δυνατή η εισαγωγή. Μη υποστηριζόμενος αλγόριθμος κρυπτογράφησης.
+SEC_ERROR_PKCS12_UNSUPPORTED_VERSION=Δεν ήταν δυνατή η εισαγωγή. Μη υποστηριζόμενη έκδοση αρχείου.
+SEC_ERROR_PKCS12_PRIVACY_PASSWORD_INCORRECT=Δεν ήταν δυνατή η εισαγωγή. Λάθος κωδικός πρόσβασης απορρήτου.
+SEC_ERROR_PKCS12_CERT_COLLISION=Δεν ήταν δυνατή η εισαγωγή. Το ίδιο ψευδώνυμο υπάρχει ήδη στη βάση δεδομένων.
+SEC_ERROR_USER_CANCELLED=Ο χρήστης πάτησε ακύρωση.
+SEC_ERROR_PKCS12_DUPLICATE_DATA=Δεν εισήχθη, είναι ήδη στη βάση δεδομένων.
+SEC_ERROR_MESSAGE_SEND_ABORTED=Το μήνυμα δεν εστάλη.
+SEC_ERROR_INADEQUATE_KEY_USAGE=Η χρήση κλειδιού πιστοποιητικού δεν επαρκεί για την αποπειραθείσα λειτουργία.
+SEC_ERROR_INADEQUATE_CERT_TYPE=Ο τύπος του πιστοποιητικού δεν εγκρίθηκε για εφαρμογή.
+SEC_ERROR_CERT_ADDR_MISMATCH=Η διεύθυνση στο πιστοποιητικό υπογραφής δεν συμφωνεί με αυτήν στις επικεφαλίδες μηνυμάτων.
+SEC_ERROR_PKCS12_UNABLE_TO_IMPORT_KEY=Δεν ήταν δυνατή η εισαγωγή. Σφάλμα προσπάθειας εισαγωγής ιδιωτικού κλειδιού.
+SEC_ERROR_PKCS12_IMPORTING_CERT_CHAIN=Δεν ήταν δυνατή η εισαγωγή. Σφάλμα προσπάθειας εισαγωγής αλυσίδας πιστοποιητικών.
+SEC_ERROR_PKCS12_UNABLE_TO_LOCATE_OBJECT_BY_NAME=Δεν ήταν δυνατή η εξαγωγή. Δεν ήταν δυνατός ο εντοπισμός πιστοποιητικού ή κλειδιού από το ψευδώνυμο.
+SEC_ERROR_PKCS12_UNABLE_TO_EXPORT_KEY=Δεν ήταν δυνατή η εξαγωγή. Δεν ήταν δυνατός ο εντοπισμός και η εξαγωγή του ιδιωτικού κλειδιού.
+SEC_ERROR_PKCS12_UNABLE_TO_WRITE=Δεν ήταν δυνατή η εξαγωγή. Δεν ήταν δυνατή η εγγραφή του αρχείου εξαγωγής.
+SEC_ERROR_PKCS12_UNABLE_TO_READ=Δεν ήταν δυνατή η εισαγωγή. Δεν ήταν δυνατή η ανάγνωση του αρχείου εισαγωγής.
+SEC_ERROR_PKCS12_KEY_DATABASE_NOT_INITIALIZED=Δεν ήταν δυνατή η εξαγωγή. Κατεστραμμένη ή διαγραμμένη βάση δεδομένων κλειδιών.
+SEC_ERROR_KEYGEN_FAIL=Δεν ήταν δυνατή η δημιουργία ζεύγους δημόσιων/ιδιωτικών κλειδιών.
+SEC_ERROR_INVALID_PASSWORD=Ο κωδικός πρόσβασης είναι άκυρος. Παρακαλώ επιλέξτε άλλον.
+SEC_ERROR_RETRY_OLD_PASSWORD=Ο παλιός κωδικός πρόσβασης εισήχθη εσφαλμένα. Παρακαλώ προσπαθήστε ξανά.
+SEC_ERROR_BAD_NICKNAME=Το ψευδώνυμο του πιστοποιητικού είναι ήδη σε χρήση.
+SEC_ERROR_NOT_FORTEZZA_ISSUER=Ο κόμβος στην αλυσίδα FORTEZZA έχει μη-FORTEZZA πιστοποιητικό.
+SEC_ERROR_CANNOT_MOVE_SENSITIVE_KEY=Ένα ευαίσθητο κλειδί δεν μπορεί να μετακινηθεί στην υποδοχή όπου χρειάζεται.
+SEC_ERROR_JS_INVALID_MODULE_NAME=Άκυρο όνομα μονάδας.
+SEC_ERROR_JS_INVALID_DLL=Άκυρη διαδρομή/όνομα αρχείου μονάδας
+SEC_ERROR_JS_ADD_MOD_FAILURE=Δεν ήταν δυνατή η προσθήκη μονάδας
+SEC_ERROR_JS_DEL_MOD_FAILURE=Δεν ήταν δυνατή η διαγραφή της μονάδας
+SEC_ERROR_OLD_KRL=Το νέο KRL δεν είναι νεότερο από το τρέχον.
+SEC_ERROR_CKL_CONFLICT=Η νέα CKL έχει διαφορετικό εκδότη από την τρέχουσα CKL. Διαγράψτε την τρέχουσα CKL.
+SEC_ERROR_CERT_NOT_IN_NAME_SPACE=Η αρχή πιστοποίησης αυτού του πιστοποιητικού δεν επιτρέπεται να εκδώσει πιστοποιητικό με αυτό το όνομα.
+SEC_ERROR_KRL_NOT_YET_VALID=Η λίστα ανάκλησης κλειδιών για αυτό το πιστοποιητικό δεν είναι ακόμα έγκυρη.
+SEC_ERROR_CRL_NOT_YET_VALID=Η λίστα ανάκλησης πιστοποιητικών για αυτό το πιστοποιητικό δεν είναι ακόμα έγκυρη.
+SEC_ERROR_UNKNOWN_CERT=Το πιστοποιητικό που ζητήθηκε δεν βρέθηκε.
+SEC_ERROR_UNKNOWN_SIGNER=Το πιστοποιητικό του υπογράφοντα δεν βρέθηκε.
+SEC_ERROR_CERT_BAD_ACCESS_LOCATION=Η θέση του διακομιστή κατάστασης πιστοποιητικού έχει μη έγκυρη μορφή.
+SEC_ERROR_OCSP_UNKNOWN_RESPONSE_TYPE=Η απόκριση OCSP δεν μπορεί να αποκωδικοποιηθεί πλήρως· είναι άγνωστου τύπου.
+SEC_ERROR_OCSP_BAD_HTTP_RESPONSE=Ο διακομιστής OCSP επέστρεψε μη αναμενόμενα/άκυρα δεδομένα HTTP.
+SEC_ERROR_OCSP_MALFORMED_REQUEST=Ο διακομιστής OCSP βρήκε ότι η αίτηση είναι κατεστραμμένη ή αφύσικα διαμορφωμένη.
+SEC_ERROR_OCSP_SERVER_ERROR=Ο διακομιστής OCSP διαπίστωσε εσωτερικό σφάλμα.
+SEC_ERROR_OCSP_TRY_SERVER_LATER=Ο διακομιστής OCSP προτείνει να δοκιμάσετε ξανά αργότερα.
+SEC_ERROR_OCSP_REQUEST_NEEDS_SIG=Ο διακομιστής OCSP απαιτεί υπογραφή σε αυτή η αίτηση.
+SEC_ERROR_OCSP_UNAUTHORIZED_REQUEST=Ο διακομιστής OCSP αρνήθηκε αυτήν την αίτηση ως μη εξουσιοδοτημένη.
+SEC_ERROR_OCSP_UNKNOWN_RESPONSE_STATUS=Ο διακομιστής OCSP επέστρεψε μη αναγνωρίσιμη κατάσταση.
+SEC_ERROR_OCSP_UNKNOWN_CERT=Ο διακομιστής OCSP δεν έχει την κατάσταση για το πιστοποιητικό.
+SEC_ERROR_OCSP_NOT_ENABLED=Πρέπει να ενεργοποιήσετε το OCSP πριν εκτελέσετε αυτή την λειτουργία.
+SEC_ERROR_OCSP_NO_DEFAULT_RESPONDER=Πρέπει να ορίσετε έναν προεπιλεγμένο ανταποκριτή OCSP πριν εκτελέσετε αυτή την λειτουργία.
+SEC_ERROR_OCSP_MALFORMED_RESPONSE=Η απόκριση του διακομιστή OCSP ήταν κατεστραμμένη ή αφύσικα διαμορφωμένη.
+SEC_ERROR_OCSP_UNAUTHORIZED_RESPONSE=Ο υπογράφων της απόκρισης OCSP δεν είναι εξουσιοδοτημένος για να δώσει την κατάσταση αυτού του πιστοποιητικού.
+SEC_ERROR_OCSP_FUTURE_RESPONSE=Η απόκριση OCSP δεν είναι ακόμη έγκυρη (περιέχει μελλοντική ημερομηνία).
+SEC_ERROR_OCSP_OLD_RESPONSE=Η απόκριση OCSP περιέχει παλαιές πληροφορίες.
+SEC_ERROR_DIGEST_NOT_FOUND=Το CMS ή PKCS #7 Digest δεν βρέθηκε στο υπογεγραμμένο μήνυμα.
+SEC_ERROR_UNSUPPORTED_MESSAGE_TYPE=Ο τύπος μηνύματος CMS ή PKCS #7 δεν υποστηρίζεται.
+SEC_ERROR_MODULE_STUCK=Η μονάδα PKCS #11 δεν μπορεί να αφαιρεθεί, επειδή είναι ακόμα σε χρήση.
+SEC_ERROR_BAD_TEMPLATE=Αδυναμία αποκωδικοποίησης δεδομένων ASN.1. Το καθορισμένο πρότυπο ήταν άκυρο.
+SEC_ERROR_CRL_NOT_FOUND=Δεν βρέθηκε αντίστοιχη CRL.
+SEC_ERROR_REUSED_ISSUER_AND_SERIAL=Προσπαθείτε να εισαγάγετε πιστοποιητικό με ίδιο εκδότη/σειριακό με ένα υπάρχον, ενώ δεν είναι το ίδιο πιστοποιητικό.
+SEC_ERROR_BUSY=Αδυναμία τερματισμού NSS. Χρησιμοποιούνται ακόμη αντικείμενα.
+SEC_ERROR_EXTRA_INPUT=Το μήνυμα κωδικοποίησης DER περιείχε επιπλέον περιττά δεδομένα.
+SEC_ERROR_UNSUPPORTED_ELLIPTIC_CURVE=Μη υποστηριζόμενη ελλειπτική καμπύλη.
+SEC_ERROR_UNSUPPORTED_EC_POINT_FORM=Μη υποστηριζόμενη μορφή σημείου ελλειπτικής καμπύλης.
+SEC_ERROR_UNRECOGNIZED_OID=Μη αναγνωρίσιμο αναγνωριστικό αντικειμένου.
+SEC_ERROR_OCSP_INVALID_SIGNING_CERT=Άκυρο πιστοποιητικό υπογραφής OCSP στην απόκριση OCSP.
+SEC_ERROR_REVOKED_CERTIFICATE_CRL=Το πιστοποιητικό έχει ανακληθεί στη λίστα ανάκλησης πιστοποιητικών του εκδότη.
+SEC_ERROR_REVOKED_CERTIFICATE_OCSP=Ο ανταποκριτής OCSP του εκδότη αναφέρει ότι το πιστοποιητικό έχει ανακληθεί.
+SEC_ERROR_CRL_INVALID_VERSION=Η λίστα ανάκλησης πιστοποιητικών του εκδότη έχει άγνωστο αριθμό έκδοσης.
+SEC_ERROR_CRL_V1_CRITICAL_EXTENSION=Η λίστα ανάκλησης πιστοποιητικών V1 του εκδότη έχει μια κρίσιμη επέκταση.
+SEC_ERROR_CRL_UNKNOWN_CRITICAL_EXTENSION=Η λίστα ανάκλησης πιστοποιητικών V2 του εκδότη έχει άγνωστη κρίσιμη επέκταση.
+SEC_ERROR_UNKNOWN_OBJECT_TYPE=Καθορίστηκε άγνωστος τύπος αντικειμένου.
+SEC_ERROR_INCOMPATIBLE_PKCS11=Ο οδηγός PKCS #11 παραβιάζει τις προδιαγραφές με ασύμβατο τρόπο.
+SEC_ERROR_NO_EVENT=Δεν υπάρχει διαθέσιμο συμβάν νέας υποδοχής αυτή τη στιγμή.
+SEC_ERROR_CRL_ALREADY_EXISTS=Το CRL υπάρχει ήδη.
+SEC_ERROR_NOT_INITIALIZED=Το NSS δεν έχει προετοιμαστεί.
+SEC_ERROR_TOKEN_NOT_LOGGED_IN=Η λειτουργία απέτυχε επειδή το διακριτικό PKCS#11 δεν είναι συνδεδεμένο.
+SEC_ERROR_OCSP_RESPONDER_CERT_INVALID=Το πιστοποιητικό του ρυθμισμένου ανταποκριτή OCSP είναι άκυρο.
+SEC_ERROR_OCSP_BAD_SIGNATURE=Η απόκριση OCSP έχει άκυρη υπογραφή.
+SEC_ERROR_OUT_OF_SEARCH_LIMITS=Η αναζήτηση επικύρωσης πιστοποιητικού είναι εκτός ορίων
+SEC_ERROR_INVALID_POLICY_MAPPING=Η αντιστοίχιση πολιτικής περιέχει anypolicy
+SEC_ERROR_POLICY_VALIDATION_FAILED=Η αλυσίδα πιστοποιητικών αποτυγχάνει στην επικύρωση πολιτικής
+SEC_ERROR_UNKNOWN_AIA_LOCATION_TYPE=Άγνωστος τύπος τοποθεσίας στην επέκταση AIA του πιστοποιητικού
+SEC_ERROR_BAD_HTTP_RESPONSE=Ο διακομιστής επέστρεψε κακή απόκριση HTTP
+SEC_ERROR_BAD_LDAP_RESPONSE=Ο διακομιστής επέστρεψε κακή απόκριση LDAP
+SEC_ERROR_FAILED_TO_ENCODE_DATA=Απέτυχε η κωδικοποίηση δεδομένων με κωδικοποιητή ASN1
+SEC_ERROR_BAD_INFO_ACCESS_LOCATION=Κακή τοποθεσία πρόσβασης πληροφοριών στην επέκταση πιστοποιητικού
+SEC_ERROR_LIBPKIX_INTERNAL=Παρουσιάστηκε εσωτερικό σφάλμα libpkix κατά την επικύρωση πιστοποιητικού.
+SEC_ERROR_PKCS11_GENERAL_ERROR=Μια μονάδα PKCS #11 επέστρεψε CKR_GENERAL_ERROR, υποδεικνύοντας ότι προέκυψε ανεπανόρθωτο σφάλμα.
+SEC_ERROR_PKCS11_FUNCTION_FAILED=Μια μονάδα PKCS #11 επέστρεψε CKR_FUNCTION_FAILED, υποδεικνύοντας ότι ήταν αδύνατη η εκτέλεση της ζητούμενης λειτουργίας. Η επανεκτέλεση της ίδιας λειτουργίας ίσως να επιτύχει.
+SEC_ERROR_PKCS11_DEVICE_ERROR=Μια μονάδα PKCS #11 επέστρεψε CKR_DEVICE_ERROR, υποδεικνύοντας ότι παρουσιάστηκε πρόβλημα με το διακριτικό ή την υποδοχή.
+SEC_ERROR_BAD_INFO_ACCESS_METHOD=Άγνωστη μέθοδος πρόσβασης πληροφοριών στην επέκταση πιστοποιητικού.
+SEC_ERROR_CRL_IMPORT_FAILED=Σφάλμα κατά την απόπειρα εισαγωγής CRL.
+SEC_ERROR_EXPIRED_PASSWORD=Ο κωδικός πρόσβασης έληξε.
+SEC_ERROR_LOCKED_PASSWORD=Ο κωδικός πρόσβασης είναι κλειδωμένος.
+SEC_ERROR_UNKNOWN_PKCS11_ERROR=Άγνωστο σφάλμα PKCS #11.
+SEC_ERROR_BAD_CRL_DP_URL=Άκυρο ή μη υποστηριζόμενο URL στο όνομα του σημείου διανομής CRL.
+SEC_ERROR_CERT_SIGNATURE_ALGORITHM_DISABLED=Το πιστοποιητικό έχει υπογραφεί με αλγόριθμο υπογραφής που είναι ανενεργός, επειδή δεν είναι ασφαλής.
+MOZILLA_PKIX_ERROR_KEY_PINNING_FAILURE=Ο διακομιστής χρησιμοποιεί καρφίτσωμα κλειδιού (HPKP), αλλά δεν μπόρεσε να δημιουργηθεί αξιόπιστη αλυσίδα πιστοποιητικών που να ταιριάζει. Οι παραβιάσεις καρφιτσώματος κλειδιών δεν μπορούν να παρακαμφθούν.
+MOZILLA_PKIX_ERROR_CA_CERT_USED_AS_END_ENTITY=Ο διακομιστής χρησιμοποιεί πιστοποιητικό με επέκταση των βασικών περιορισμών, προσδιορίζοντάς το ως αρχή έκδοσης πιστοποιητικών. Για ένα πιστοποιητικό που έχει εκδοθεί σωστά, αυτό δεν πρέπει να συμβαίνει.
+MOZILLA_PKIX_ERROR_INADEQUATE_KEY_SIZE=Ο διακομιστής παρουσίασε πιστοποιητικό με μέγεθος κλειδιού που είναι πολύ μικρό για να δημιουργηθεί ασφαλής σύνδεση.
+MOZILLA_PKIX_ERROR_V1_CERT_USED_AS_CA=Ένα πιστοποιητικό X.509 έκδοσης 1, που δεν είναι αξιόπιστο στήριγμα, χρησιμοποιήθηκε για να εκδώσει το πιστοποιητικό του διακομιστή. Τα πιστοποιητικά X.509 έκδοσης 1 είναι παρωχημένα και δεν πρέπει να χρησιμοποιούνται για υπογραφή άλλων πιστοποιητικών.
+MOZILLA_PKIX_ERROR_NOT_YET_VALID_CERTIFICATE=Ο διακομιστής παρουσίασε ένα πιστοποιητικό που δεν είναι ακόμα έγκυρο.
+MOZILLA_PKIX_ERROR_NOT_YET_VALID_ISSUER_CERTIFICATE=Ένα πιστοποιητικό, που δεν είναι ακόμα έγκυρο, χρησιμοποιήθηκε για την έκδοση του πιστοποιητικού του διακομιστή.
+MOZILLA_PKIX_ERROR_SIGNATURE_ALGORITHM_MISMATCH=Ο αλγόριθμος υπογραφής στο πεδίο υπογραφής του πιστοποιητικού δεν συμφωνεί με τον αλγόριθμο στο πεδίο signatureAlgorithm.
+MOZILLA_PKIX_ERROR_OCSP_RESPONSE_FOR_CERT_MISSING=Ο ανταποκριτής OCSP δεν περιλαμβάνει την κατάσταση του πιστοποιητικού που επαληθεύεται.
+MOZILLA_PKIX_ERROR_VALIDITY_TOO_LONG=Ο διακομιστής παρουσίασε ένα πιστοποιητικό που ισχύει για πάρα πολύ καιρό.
+MOZILLA_PKIX_ERROR_REQUIRED_TLS_FEATURE_MISSING=Λείπει ένα απαιτούμενο χαρακτηριστικό TLS.
+MOZILLA_PKIX_ERROR_INVALID_INTEGER_ENCODING=Ο διακομιστής παρουσίασε ένα πιστοποιητικό που περιέχει μια μη έγκυρη κωδικοποίηση ακεραίου. Οι κοινές αιτίες συμπεριλαμβάνουν αρνητικούς σειριακούς αριθμούς, αρνητικές ενότητες RSA και κωδικοποιήσεις που δεν απαιτούνται πλέον.
+MOZILLA_PKIX_ERROR_EMPTY_ISSUER_NAME=Ο διακομιστής παρουσίασε ένα πιστοποιητικό με κενό επιφανές όνομα εκδότη.
+MOZILLA_PKIX_ERROR_ADDITIONAL_POLICY_CONSTRAINT_FAILED=Ένας περιορισμός πρόσθετης πολιτικής απέτυχε κατά την επικύρωση αυτού του πιστοποιητικού.
+MOZILLA_PKIX_ERROR_SELF_SIGNED_CERT=Το πιστοποιητικό δεν είναι αξιόπιστο επειδή είναι αυτοϋπογεγραμμένο.
diff --git a/l10n-el/security/manager/chrome/pipnss/pipnss.properties b/l10n-el/security/manager/chrome/pipnss/pipnss.properties
new file mode 100755
index 0000000000..73f75f415d
--- /dev/null
+++ b/l10n-el/security/manager/chrome/pipnss/pipnss.properties
@@ -0,0 +1,308 @@
+#
+# 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/.
+
+CertPassPrompt=Εισάγετε τον κύριο κωδικό πρόσβασης για το %S.
+
+CertPassPromptDefault=Παρακαλούμε εισάγετε το κύριο συνθηματικό σας.
+
+CertPasswordPrompt=Παρακαλούμε εισάγετε τον κωδικό πρόσβασης για το PKCS#11 token %S.
+
+CertPasswordPromptDefault=Παρακαλούμε εισάγετε τον κύριο κωδικό πρόσβασής σας.
+
+# The following strings have special requirements: they must fit in a 32 or 64
+# bytes buffer after being encoded to UTF-8.
+#
+# It's possible to verify the length of a translation using the Browser Console
+# in Firefox and evaluating the following code:
+#
+# (new TextEncoder('utf-8').encode('YOURSTRING')).length
+#
+# Simply replace YOURSTRING with your translation.
+#
+# If it's not possible to produce an understandable translation within these
+# limits, keeping the English text is an acceptable workaround.
+
+# LOCALIZATION NOTE (RootCertModuleName): string limit is 64 bytes after
+# conversion to UTF-8.
+# length_limit = 64 bytes
+RootCertModuleName=Μονάδα ενσωματωμένης ρίζας
+# LOCALIZATION NOTE (ManufacturerID): string limit is 32 bytes after conversion
+# to UTF-8.
+# length_limit = 32 bytes
+ManufacturerID=Mozilla.org
+# LOCALIZATION NOTE (LibraryDescription): string limit is 32 bytes after
+# conversion to UTF-8.
+# length_limit = 32 bytes
+LibraryDescription=PSM Internal Crypto Services
+# LOCALIZATION NOTE (TokenDescription): string limit is 32 bytes after
+# conversion to UTF-8.
+# length_limit = 32 bytes
+TokenDescription=Generic Crypto Services
+# LOCALIZATION NOTE (PrivateTokenDescription): string limit is 32 bytes after
+# conversion to UTF-8.
+# length_limit = 32 bytes
+PrivateTokenDescription=Software Security Device
+# LOCALIZATION NOTE (SlotDescription): string limit is 64 bytes after conversion
+# to UTF-8.
+# length_limit = 64 bytes
+SlotDescription=PSM Internal Cryptographic Services
+# LOCALIZATION NOTE (PrivateSlotDescription): string limit is 64 bytes after
+# conversion to UTF-8.
+# length_limit = 64 bytes
+PrivateSlotDescription=Ιδιωτικά κλειδιά PSM
+# LOCALIZATION NOTE (Fips140TokenDescription): string limit is 32 bytes after
+# conversion to UTF-8.
+# length_limit = 32 bytes
+Fips140TokenDescription=Software Security Device (FIPS)
+# LOCALIZATION NOTE (Fips140SlotDescription): string limit is 64 bytes after
+# conversion to UTF-8.
+# length_limit = 64 bytes
+Fips140SlotDescription=FIPS 140 Cryptographic, Key and Certificate Services
+
+# LOCALIZATION NOTE (nick_template): $1s is the common name from a cert (e.g. "Mozilla"), $2s is the CA name (e.g. VeriSign)
+nick_template=Αναγνωριστικό %2$s του %1$s
+#These are the strings set for the ASN1 objects in a certificate.
+CertDumpCertificate=Πιστοποιητικό
+CertDumpVersion=Έκδοση
+# LOCALIZATION NOTE (CertDumpVersionValue): %S is a version number (e.g. "3" in "Version 3")
+CertDumpVersionValue=Έκδοση %S
+CertDumpSerialNo=Σειριακός αριθμός
+CertDumpMD2WithRSA=PKCS #1 MD2 με κρυπτογράφηση RSA
+CertDumpMD5WithRSA=PKCS #1 MD5 με κρυπτογράφηση RSA
+CertDumpSHA1WithRSA=PKCS #1 SHA-1 με κρυπτογράφηση RSA
+CertDumpSHA256WithRSA=PKCS #1 SHA-256 με κρυπτογράφηση RSA
+CertDumpSHA384WithRSA=PKCS #1 SHA-384 με κρυπτογράφηση RSA
+CertDumpSHA512WithRSA=PKCS #1 SHA-512 με κρυπτογράφηση RSA
+CertDumpDefOID=Αναγνωριστικό αντικειμένου (%S)
+CertDumpIssuer=Εκδότης
+CertDumpSubject=Θέμα
+CertDumpAVACountry=C
+CertDumpAVAState=ST
+CertDumpAVALocality=L
+CertDumpAVAOrg=O
+CertDumpAVAOU=OU
+CertDumpAVACN=CN
+CertDumpUserID=UID
+CertDumpPK9Email=E
+CertDumpAVADN=DN
+CertDumpAVADC=DC
+CertDumpSurname=Επώνυμο
+CertDumpGivenName=Όνομα
+CertDumpValidity=Εγκυρότητα
+CertDumpNotBefore=Όχι πριν
+CertDumpNotAfter=Όχι μετά
+CertDumpSPKI=Πληροφορίες δημοσίου κλειδιού
+CertDumpSPKIAlg=Δημόσιο Αλγοριθμικό κλειδί υποκειμένου
+CertDumpAlgID=Πιστοποίηση αλγορίθμου
+CertDumpParams=Παράμετροι αλγορίθμου
+CertDumpRSAEncr=Κρυπτογράφηση PKCS #1 RSA
+CertDumpRSAPSSSignature=Υπογραφή PKCS #1 RSASSA-PSS
+CertDumpRSATemplate=Μέτρο (%S bits):\n%S\nΕκθέτης (%S bits):\n%S
+CertDumpECTemplate=Μέγεθος κλειδιού: %S bits\nΜήκος σειράς βασικού σημείου: %S bits\nΔημόσια τιμή:\n%S
+CertDumpIssuerUniqueID=Μοναδικό ID εκδότη
+CertDumpSubjPubKey=Δημόσιο κλειδί υποκειμένου
+CertDumpSubjectUniqueID=Μοναδική ταυτότητα υποκειμένου
+CertDumpExtensions=Επεκτάσεις
+CertDumpSubjectDirectoryAttr=Γνωρίσματα καταλόγου θέματος πιστοποιητικού
+CertDumpSubjectKeyID=ID κλειδιού θέματος πιστοποιητικού
+CertDumpKeyUsage=Χρήση κλειδιού πιστοποιητικού
+CertDumpSubjectAltName=Εναλλακτικό όνομα θέματος πιστοποιητικού
+CertDumpIssuerAltName=Εναλλακτικό όνομα εκδότη πιστοποιητικού
+CertDumpBasicConstraints=Βασικοί περιορισμοί πιστοποιητικού
+CertDumpNameConstraints=Περιορισμοί ονόματος πιστοποιητικού
+CertDumpCrlDistPoints=Σημεία διανομής CRL
+CertDumpCertPolicies=Πολιτικές πιστοποιητικού
+CertDumpPolicyMappings=Αντιστοιχίσεις πολιτικής πιστοποιητικού
+CertDumpPolicyConstraints=Περιορισμοί πολιτικής πιστοποιητικού
+CertDumpAuthKeyID=Κλειδί αναγνώρισης Αρχής πιστοποίησης
+CertDumpExtKeyUsage=Εκτεταμένη χρήση κλειδιού
+CertDumpAuthInfoAccess=Πρόσβαση πληροφοριών αρχών
+CertDumpAnsiX9DsaSignature=Υπογραφή ANSI X9.57 DSA
+CertDumpAnsiX9DsaSignatureWithSha1=Υπογραφή ANSI X9.57 DSA με SHA1 Digest
+CertDumpAnsiX962ECDsaSignatureWithSha1=ANSI X9.62 ECDSA Υπογραφή με SHA1
+CertDumpAnsiX962ECDsaSignatureWithSha224=ANSI X9.62 ECDSA Υπογραφή με SHA224
+CertDumpAnsiX962ECDsaSignatureWithSha256=ANSI X9.62 ECDSA Υπογραφή με SHA256
+CertDumpAnsiX962ECDsaSignatureWithSha384=ANSI X9.62 ECDSA Υπογραφή με SHA384
+CertDumpAnsiX962ECDsaSignatureWithSha512=ANSI X9.62 ECDSA Υπογραφή με SHA512
+
+CertDumpKUSign=Υπογραφή
+CertDumpKUNonRep=Μη-απάρνηση
+CertDumpKUEnc=Κρυπτογράφηση κλειδιού
+CertDumpKUDEnc=Κρυπτογράφηση δεδομένων
+CertDumpKUKA=Συμφωνία κλειδιού
+CertDumpKUCertSign=Υπογραφέας πιστοποιητικού
+CertDumpKUCRLSigner=Υπογραφέας CRL
+CertDumpCritical=Κρίσιμο
+CertDumpNonCritical=Μη κρίσιμο
+CertDumpSigAlg=Αλγόριθμος υπογραφής πιστοποιητικού
+CertDumpCertSig=Τιμή υπογραφής πιστοποιητικού
+CertDumpExtensionFailure=Σφάλμα: Αδυναμία ανάλυσης επέκτασης
+CertDumpIsCA=Είναι μια αρχή πιστοποίησης
+CertDumpIsNotCA=Δεν είναι μια αρχή πιστοποίησης
+CertDumpPathLen=Μέγιστος αριθμός ενδιάμεσων CAs: %S
+CertDumpPathLenUnlimited=απεριόριστος
+CertDumpEKU_1_3_6_1_5_5_7_3_1=Πιστοποίηση TLS Web Server
+CertDumpEKU_1_3_6_1_5_5_7_3_2=Πιστοποίηση TLS Web Client
+CertDumpEKU_1_3_6_1_5_5_7_3_3=Υπογραφή κώδικα
+CertDumpEKU_1_3_6_1_5_5_7_3_4=Προστασία email
+CertDumpEKU_1_3_6_1_5_5_7_3_8=Αποτύπωση ημερομηνίας
+CertDumpEKU_1_3_6_1_5_5_7_3_9=Υπογραφή OCSP
+CertDumpEKU_1_3_6_1_4_1_311_2_1_21=Υπογραφή ατομικού κωδικού της Microsoft
+CertDumpEKU_1_3_6_1_4_1_311_2_1_22=Υπογραφή εμπορικού κωδικού της Microsoft
+CertDumpEKU_1_3_6_1_4_1_311_10_3_1=Υπογραφή λίστας εμπιστοσύνης της Microsoft
+CertDumpEKU_1_3_6_1_4_1_311_10_3_2=Χρονοσήμανση της Microsoft
+CertDumpEKU_1_3_6_1_4_1_311_10_3_3=Διακομιστής Microsoft Gated Crypto
+CertDumpEKU_1_3_6_1_4_1_311_10_3_4=Σύστημα αρχείων κρυπτογράφησης της Microsoft
+CertDumpEKU_1_3_6_1_4_1_311_10_3_4_1=Ανάκτηση αρχείων της Microsoft
+CertDumpEKU_1_3_6_1_4_1_311_10_3_5=Επαλήθευση προγράμματος οδήγησης υλικού των Microsoft Windows
+CertDumpEKU_1_3_6_1_4_1_311_10_3_10=Ειδικευόμενη υποταγή της Microsoft
+CertDumpEKU_1_3_6_1_4_1_311_10_3_11=Ανάκτηση κλειδιού της Microsoft
+CertDumpEKU_1_3_6_1_4_1_311_10_3_12=Υπογραφή εγγράφου της Microsoft
+CertDumpEKU_1_3_6_1_4_1_311_10_3_13=Εφόρου ζωής υπογραφή της Microsoft
+CertDumpEKU_1_3_6_1_4_1_311_20_2_2=Σύνδεση έξυπνης κάρτας της Microsoft
+CertDumpEKU_1_3_6_1_4_1_311_21_6=Πράκτορας ανάκτησης κλειδιού της Microsoft
+CertDumpMSCerttype=Όνομα προτύπου πιστοποιητικού της Microsoft
+CertDumpMSNTPrincipal=Όνομα αρχής της Microsoft
+CertDumpMSCAVersion=Έκδοση CA της Microsoft
+CertDumpMSDomainGUID=Τομέας GUID της Microsoft
+CertDumpEKU_2_16_840_1_113730_4_1=Διακομιστής Netscape Gated Crypto
+CertDumpRFC822Name=Διεύθυνση email
+CertDumpDNSName=Όνομα DNS
+CertDumpX400Address=Διεύθυνση X.400
+CertDumpDirectoryName=Όνομα X.500
+CertDumpEDIPartyName=Όνομα ομάδας EDI
+CertDumpURI=URI
+CertDumpIPAddress=Διεύθυνση IP
+CertDumpRegisterID=Εγγεγραμμένο OID
+CertDumpKeyID=ID κλειδιού
+CertDumpVerisignNotices=Σημειώσεις χρήστη της Verisign
+CertDumpUnused=Δεν χρησιμοποιείται
+CertDumpKeyCompromise=Κίνδυνος κλειδιού
+CertDumpCACompromise=Διακινδύνευση CA
+CertDumpAffiliationChanged=Η σχέση άλλαξε
+CertDumpSuperseded=Αντικαταστάθηκε
+CertDumpCessation=Παύση λειτουργίας
+CertDumpHold=Κατοχή πιστοποιητικού
+CertDumpOCSPResponder=OCSP
+CertDumpCAIssuers=Εκδότες CA
+CertDumpCPSPointer=Βεβαίωση Δήλωσης Πρακτικής Πιστοποίησης
+CertDumpUserNotice=Σημείωση χρήστη
+CertDumpLogotype=Λογότυπος
+CertDumpECPublicKey=Elliptic Curve Public Key
+CertDumpECDSAWithSHA1=Υπογραφή X9.62 ECDSA με SHA1
+CertDumpECprime192v1=ANSI X9.62 elliptic curve prime192v1 (γνωστό και ως secp192r1, NIST P-192)
+CertDumpECprime192v2=ANSI X9.62 elliptic curve prime192v2
+CertDumpECprime192v3=ANSI X9.62 elliptic curve prime192v3
+CertDumpECprime239v1=ANSI X9.62 elliptic curve prime239v1
+CertDumpECprime239v2=ANSI X9.62 elliptic curve prime239v2
+CertDumpECprime239v3=ANSI X9.62 elliptic curve prime239v3
+CertDumpECprime256v1=ANSI X9.62 elliptic curve prime256v1 (γνωστό και ως secp256r1, NIST P-256)
+CertDumpECsecp112r1=SECG elliptic curve secp112r1
+CertDumpECsecp112r2=SECG elliptic curve secp112r2
+CertDumpECsecp128r1=SECG elliptic curve secp128r1
+CertDumpECsecp128r2=SECG elliptic curve secp128r2
+CertDumpECsecp160k1=SECG elliptic curve secp160k1
+CertDumpECsecp160r1=SECG elliptic curve secp160r1
+CertDumpECsecp160r2=SECG elliptic curve secp160r2
+CertDumpECsecp192k1=SECG elliptic curve secp192k1
+CertDumpECsecp224k1=SECG elliptic curve secp224k1
+CertDumpECsecp224r1=SECG elliptic curve secp224r1 (γνωστό και ως NIST P-224)
+CertDumpECsecp256k1=SECG elliptic curve secp256k1
+CertDumpECsecp384r1=SECG elliptic curve secp384r1 (γνωστό και ως NIST P-384)
+CertDumpECsecp521r1=SECG elliptic curve secp521r1 (γνωστό και ως NIST P-521)
+CertDumpECc2pnb163v1=ANSI X9.62 elliptic curve c2pnb163v1
+CertDumpECc2pnb163v2=ANSI X9.62 elliptic curve c2pnb163v2
+CertDumpECc2pnb163v3=ANSI X9.62 elliptic curve c2pnb163v3
+CertDumpECc2pnb176v1=ANSI X9.62 elliptic curve c2pnb176v1
+CertDumpECc2tnb191v1=ANSI X9.62 elliptic curve c2tnb191v1
+CertDumpECc2tnb191v2=ANSI X9.62 elliptic curve c2tnb191v2
+CertDumpECc2tnb191v3=ANSI X9.62 elliptic curve c2tnb191v3
+CertDumpECc2onb191v4=ANSI X9.62 elliptic curve c2onb191v4
+CertDumpECc2onb191v5=ANSI X9.62 elliptic curve c2onb191v5
+CertDumpECc2pnb208w1=ANSI X9.62 elliptic curve c2pnb208w1
+CertDumpECc2tnb239v1=ANSI X9.62 elliptic curve c2tnb239v1
+CertDumpECc2tnb239v2=ANSI X9.62 elliptic curve c2tnb239v2
+CertDumpECc2tnb239v3=ANSI X9.62 elliptic curve c2tnb239v3
+CertDumpECc2onb239v4=ANSI X9.62 elliptic curve c2onb239v4
+CertDumpECc2onb239v5=ANSI X9.62 elliptic curve c2onb239v5
+CertDumpECc2pnb272w1=ANSI X9.62 elliptic curve c2pnb272w1
+CertDumpECc2pnb304w1=ANSI X9.62 elliptic curve c2pnb304w1
+CertDumpECc2tnb359v1=ANSI X9.62 elliptic curve c2tnb359v1
+CertDumpECc2pnb368w1=ANSI X9.62 elliptic curve c2pnb368w1
+CertDumpECc2tnb431r1=ANSI X9.62 elliptic curve c2tnb431r1
+CertDumpECsect113r1=SECG elliptic curve sect113r1
+CertDumpECsect113r2=SECG elliptic curve sect113r2
+CertDumpECsect131r1=SECG elliptic curve sect131r1
+CertDumpECsect131r2=SECG elliptic curve sect131r2
+CertDumpECsect163k1=SECG elliptic curve sect163k1 (γνωστό και ως NIST K-163)
+CertDumpECsect163r1=SECG elliptic curve sect163r1
+CertDumpECsect163r2=SECG elliptic curve sect163r2 (γνωστό και ως NIST B-163)
+CertDumpECsect193r1=SECG elliptic curve sect193r1
+CertDumpECsect193r2=SECG elliptic curve sect193r2
+CertDumpECsect233k1=SECG elliptic curve sect233k1 (γνωστό και ως NIST K-233)
+CertDumpECsect233r1=SECG elliptic curve sect233r1 (γνωστό και ως NIST B-233)
+CertDumpECsect239k1=SECG elliptic curve sect239k1
+CertDumpECsect283k1=SECG elliptic curve sect283k1 (γνωστό και ως NIST K-283)
+CertDumpECsect283r1=SECG elliptic curve sect283r1 (γνωστό και ως NIST B-283)
+CertDumpECsect409k1=SECG elliptic curve sect409k1 (γνωστό και ως NIST K-409)
+CertDumpECsect409r1=SECG elliptic curve sect409r1 (γνωστό και ως NIST B-409)
+CertDumpECsect571k1=SECG elliptic curve sect571k1 (γνωστό και ως NIST K-571)
+CertDumpECsect571r1=SECG elliptic curve sect571r1 (γνωστό και ως NIST B-571)
+CertDumpRawBytesHeader=Μέγεθος: %S Bytes / %S Bits
+AVATemplate=%S = %S
+
+PSMERR_SSL_Disabled=Αδυναμία ασφαλούς σύνδεσης λόγω απενεργοποίησης του πρωτοκόλλου SSL.
+PSMERR_SSL2_Disabled=Αδυναμία ασφαλούς σύνδεσης. επειδή η σελίδα χρησιμοποιεί μια παλαιότερη, μη ασφαλή έκδοση του πρωτοκόλλου SSL.
+PSMERR_HostReusedIssuerSerial=Έχετε λάβει ένα μη έγκυρο πιστοποιητικό. Παρακαλώ επικοινωνήστε με το διαχειριστή του συστήματος ή με τον αποστολέα και δώστε του αυτές τις πληροφορίες:\n\nΤο πιστοποιητικό σας περιέχει τον ίδιο σειριακό αριθμό με ένα άλλο πιστοποιητικό που εκδόθηκε από την αρχή πιστοποίησης. Παρακαλώ αποκτήστε ένα νέο πιστοποιητικό που να περιέχει έναν μοναδικό σειριακό αριθμό.
+
+# LOCALIZATION NOTE (SSLConnectionErrorPrefix2): %1$S is the host string, %2$S is more detailed information (localized as well).
+SSLConnectionErrorPrefix2=Προέκυψε σφάλμα κατά την σύνδεση στο %1$S. %2$S\n
+
+certErrorIntro=Το %S χρησιμοποιεί ένα άκυρο πιστοποιητικό ασφαλείας.
+
+certErrorTrust_SelfSigned=Το πιστοποιητικό δεν είναι έμπιστο επειδή έχει αυτο-υπογραφεί.
+certErrorTrust_UnknownIssuer=Το πιστοποιητικό δεν είναι έμπιστο επειδή ο εκδότης είναι άγνωστος.
+certErrorTrust_UnknownIssuer2=Ο διακομιστής ενδέχεται να μην στέλνει τα κατάλληλα, ενδιάμεσα πιστοποιητικά.
+certErrorTrust_UnknownIssuer3=Ίσως πρέπει να εισαχθεί ένα επιπρόσθετο πιστοποιητικό ρίζας.
+certErrorTrust_CaInvalid=Το πιστοποιητικό δεν είναι έμπιστο επειδή έχει εκδοθεί από μια μη έγκυρη αρχή πιστοποίησης.
+certErrorTrust_Issuer=Το πιστοποιητικό δεν είναι έμπιστο επειδή ο εκδότης δεν είναι έμπιστος.
+certErrorTrust_SignatureAlgorithmDisabled=Το πιστοποιητικό δεν είναι έμπιστο επειδή υπογράφηκε με έναν αλγόριθμό υπογραφής που απενεργοποιήθηκε, καθώς ο αλγόριθμος δεν είναι ασφαλής.
+certErrorTrust_ExpiredIssuer=Το πιστοποιητικό δεν είναι έμπιστο επειδή το πιστοποιητικό εκδότη έχει λήξει.
+certErrorTrust_Untrusted=Το πιστοποιητικό δεν προέρχεται από αξιόπιστη πηγή.
+certErrorTrust_MitM=Η σύνδεσή σας παρεμποδίζεται από ένα διακομιστή μεσολάβησης TLS. Καταργήστε την εγκατάσταση εάν είναι δυνατό ή ρυθμίστε τις παραμέτρους της συσκευής σας ώστε να εμπιστεύεστε το πιστοποιητικό ρίζας.
+
+certErrorMismatch=Το πιστοποιητικό δεν είναι έγκυρο για το όνομα %S.
+# LOCALIZATION NOTE (certErrorMismatchSinglePrefix): %S is replaced by the domain for which the certificate is valid
+certErrorMismatchSinglePrefix=Το πιστοποιητικό είναι έγκυρο μόνο για %S.
+certErrorMismatchMultiple=Το πιστοποιητικό είναι έγκυρο μόνο για τα ακόλουθα ονόματα:
+
+# LOCALIZATION NOTE (certErrorExpiredNow): Do not translate %1$S (date+time of expired certificate) or %2$S (current date+time)
+certErrorExpiredNow=Το πιστοποιητικό έληξε στις %1$S. Η τρέχουσα ημερομηνία και ώρα είναι %2$S.
+
+# LOCALIZATION NOTE (certErrorNotYetValidNow): Do not translate %1$S (date+time certificate will become valid) or %2$S (current date+time)
+certErrorNotYetValidNow=Το πιστοποιητικό δεν θα είναι έγκυρο μέχρι τις %1$S. Η τρέχουσα ημερομηνία και ώρα είναι %2$S.
+
+certErrorMitM=Οι ιστοσελίδες αποδεικνύουν την ταυτότητά τους μέσω πιστοποιητικών, τα οποία εκδίδονται από αρχές πιστοποιητικών.
+# LOCALIZATION NOTE (certErrorMitM2): %S is brandShortName
+certErrorMitM2=Το %S υποστηρίζεται από τη μη κερδοσκοπική Mozilla, η οποία διαχειρίζεται ένα πλήρως ανοικτό κατάστημα αρχής πιστοποιητικών (CA). Το κατάστημα CA εξασφαλίζει ότι οι αρχές πιστοποιητικών εφαρμόζουν τις καλύτερες πρακτικές για την ασφάλεια των χρηστών.
+# LOCALIZATION NOTE (certErrorMitM3): %S is brandShortName
+certErrorMitM3=Το %S χρησιμοποιεί το κατάστημα Mozilla CA για να επαληθεύσει ότι μια σύνδεση είναι ασφαλής, αντί για τα πιστοποιητικά που παρέχονται από το λειτουργικό σύστημα του χρήστη. Έτσι, αν ένα πρόγραμμα προστασίας από ιούς ή ένα δίκτυο παρεμβάλλεται σε μια σύνδεση με ένα πιστοποιητικό ασφαλείας που εκδίδεται από ένα CA που δεν είναι στο κατάστημα Mozilla CA, η σύνδεση θεωρείται επισφαλής.
+
+certErrorSymantecDistrustAdministrator=Μπορείτε να ειδοποιήσετε το διαχειριστή της ιστοσελίδας σχετικά με αυτό το πρόβλημα.
+
+# LOCALIZATION NOTE (certErrorCodePrefix3): %S is replaced by the error code.
+certErrorCodePrefix3=Κωδικός σφάλματος: %S
+
+P12DefaultNickname=Εισηγμένο πιστοποιητικό
+CertUnknown=Άγνωστο
+CertNoEmailAddress=(χωρίς ηλεκτρονική διεύθυνση)
+CaCertExists=Αυτό το πιστοποιητικό έχει ήδη εγκατασταθεί ως αρχή πιστοποίησης.
+NotACACert=Αυτό δεν είναι ένα πιστοποιητικό αρχής πιστοποίησης, και έτσι δεν μπορεί να εισαχθεί στη λίστα πιστοποιητικών αρχών πιστοποίησης.
+UserCertIgnoredNoPrivateKey=Αυτό το προσωπικό πιστοποιητικό δεν μπορεί να εγκατασταθεί επειδή δεν κατέχετε το αντίστοιχο ιδιωτικό κλειδί που δημιουργήθηκε μαζί με το πιστοποιητικό.
+UserCertImported=Το προσωπικό σας πιστοποιητικό έχει ήδη εγκατασταθεί. Θα πρέπει να κάνετε ένα αντίγραφο ασφαλείας αυτού του πιστοποιητικού.
+CertOrgUnknown=(Άγνωστο)
+CertNotStored=(Μη αποθηκευμένο)
+CertExceptionPermanent=Μόνιμα
+CertExceptionTemporary=Προσωρινά
diff --git a/l10n-el/security/manager/chrome/pippki/pippki.properties b/l10n-el/security/manager/chrome/pippki/pippki.properties
new file mode 100644
index 0000000000..e2ec7af179
--- /dev/null
+++ b/l10n-el/security/manager/chrome/pippki/pippki.properties
@@ -0,0 +1,85 @@
+# 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/.
+
+# Download Cert dialog
+# LOCALIZATION NOTE(newCAMessage1):
+# %S is a string representative of the certificate being downloaded/imported.
+newCAMessage1=Θέλετε να εμπιστευθείτε το "%S" για τους παρακάτω σκοπούς;
+unnamedCA=Αρχή πιστοποίησης (χωρίς όνομα)
+
+# PKCS#12 file dialogs
+getPKCS12FilePasswordMessage=Εισάγετε το συνθηματικό που χρησιμοποιήθηκε για την κρυπτογράφηση του αντιγράφου ασφαλείας του πιστοποιητικού:
+
+# Client auth
+clientAuthRemember=Απομνημόνευση απόφασης
+# LOCALIZATION NOTE(clientAuthNickAndSerial): Represents a single cert when the
+# user is choosing from a list of certificates.
+# %1$S is the nickname of the cert.
+# %2$S is the serial number of the cert in AA:BB:CC hex format.
+clientAuthNickAndSerial=%1$S [%2$S]
+# LOCALIZATION NOTE(clientAuthHostnameAndPort):
+# %1$S is the hostname of the server.
+# %2$S is the port of the server.
+clientAuthHostnameAndPort=%1$S:%2$S
+# LOCALIZATION NOTE(clientAuthMessage1): %S is the Organization of the server
+# cert.
+clientAuthMessage1=Οργανισμός: "%S"
+# LOCALIZATION NOTE(clientAuthMessage2): %S is the Organization of the issuer
+# cert of the server cert.
+clientAuthMessage2=Εκδόθηκε από: "%S"
+# LOCALIZATION NOTE(clientAuthIssuedTo): %1$S is the Distinguished Name of the
+# currently selected client cert, such as "CN=John Doe,OU=Example" (without
+# quotes).
+clientAuthIssuedTo=Έκδοση για: %1$S
+# LOCALIZATION NOTE(clientAuthSerial): %1$S is the serial number of the selected
+# cert in AA:BB:CC hex format.
+clientAuthSerial=Σειριακός αριθμός: %1$S
+# LOCALIZATION NOTE(clientAuthValidityPeriod):
+# %1$S is the already localized notBefore date of the selected cert.
+# %2$S is the already localized notAfter date of the selected cert.
+clientAuthValidityPeriod=Έγκυρο από %1$S έως %2$S
+# LOCALIZATION NOTE(clientAuthKeyUsages): %1$S is a comma separated list of
+# already localized key usages the selected cert is valid for.
+clientAuthKeyUsages=Χρήσεις κλειδιού: %1$S
+# LOCALIZATION NOTE(clientAuthEmailAddresses): %1$S is a comma separated list of
+# e-mail addresses the selected cert is valid for.
+clientAuthEmailAddresses=Διευθύνσεις email: %1$S
+# LOCALIZATION NOTE(clientAuthIssuedBy): %1$S is the Distinguished Name of the
+# cert which issued the selected cert.
+clientAuthIssuedBy=Εκδόθηκε από: %1$S
+# LOCALIZATION NOTE(clientAuthStoredOn): %1$S is the name of the PKCS #11 token
+# the selected cert is stored on.
+clientAuthStoredOn=Αποθηκευμένο σε: %1$S
+
+# Page Info
+pageInfo_NoEncryption=Μη κρυπτογραφημένη σύνδεση
+pageInfo_Privacy_None1=Η ιστοσελίδα %S δεν υποστηρίζει κρυπτογράφηση για τη σελίδα που βλέπετε.
+pageInfo_Privacy_None2=Οι πληροφορίες που στέλνονται μέσω διαδικτύου χωρίς κρυπτογράφηση δεν είναι ασφαλείς και μπορεί να τις δουν τρίτοι. \n
+pageInfo_Privacy_None4=Η σελίδα που προβάλετε δεν ήταν κρυπτογραφημένη πριν τη μεταφορά μέσω του διαδικτύου.
+# LOCALIZATION NOTE (pageInfo_EncryptionWithBitsAndProtocol and pageInfo_BrokenEncryption):
+# %1$S is the name of the encryption standard,
+# %2$S is the key size of the cipher.
+# %3$S is protocol version like "SSL 3" or "TLS 1.2"
+pageInfo_EncryptionWithBitsAndProtocol=Κρυπτογραφημένη σύνδεση (%1$S, %2$S bit κλειδιά, %3$S)
+pageInfo_BrokenEncryption=Εσφαλμένη κρυπτογράφηση (%1$S, %2$S bit κλειδιά, %3$S)
+pageInfo_Privacy_Encrypted1=Η σελίδα που βλέπετε κρυπτογραφήθηκε προτού μεταδοθεί μέσω του διαδικτύου.
+pageInfo_Privacy_Encrypted2=Η κρυπτογράφηση καθιστά δύσκολη την προβολή πληροφοριών που ανταλλάσσονται μεταξύ των υπολογιστών από μη εξουσιοδοτημένα άτομα. Συνεπώς, είναι απίθανο να διαβάζει κάποιος αυτή τη σελίδα, ενώ μεταφέρεται μέσω του δικτύου.
+pageInfo_MixedContent=Η σύνδεση είναι μερικώς κρυπτογραφημένη
+pageInfo_MixedContent2=Τμήματα της σελίδας που βλέπετε δεν κρυπτογραφήθηκαν προτού μεταδοθούν μέσω του διαδικτύου.
+pageInfo_WeakCipher=Η σύνδεσή σας με τον ιστότοπο χρησιμοποιεί αδύναμη κρυπτογράφηση και δεν είναι ιδιωτική. Άλλα άτομα δύνανται να βλέπουν τις πληροφορίες σας ή να τροποποιούν την συμπεριφορά του ιστοτόπου.
+pageInfo_CertificateTransparency_Compliant=Αυτή η ιστοσελίδα συμμορφώνεται με την πολιτική Διαφάνειας Πιστοποιητικού.
+
+# Token Manager
+password_not_set=(δεν έχει καθορισθεί)
+failed_pw_change=Αποτυχία αλλαγής κωδικού.
+incorrect_pw=Καταχωρήθηκε εσφαλμένος κωδικός.
+pw_change_ok=Επιτυχής αλλαγή του κύριου κωδικού πρόσβασης.
+pw_erased_ok=Προειδοποίηση! Διαγράψατε τον Κύριο κωδικό σας
+pw_not_wanted=Προειδοποίηση: Αποφασίσατε να μη χρησιμοποιήσετε ένα Κύριο κωδικό.
+pw_empty_warning=Τα αποθηκευμένα δεδομένα, κωδικοί και ιδιωτικά κλειδιά δεν θα προστατεύονται.
+pw_change2empty_in_fips_mode=Βρίσκεστε σε κατάσταση FIPS. Το FIPS απαιτεί έναν κύριο κωδικό που δεν είναι άδειος.
+enable_fips=Ενεργοποίηση FIPS
+
+resetPasswordConfirmationTitle=Επαναφορά κυρίου κωδικού
+resetPasswordConfirmationMessage=Ο κωδικός σας αρχικοποιήθηκε.
diff --git a/l10n-el/security/manager/security/certificates/certManager.ftl b/l10n-el/security/manager/security/certificates/certManager.ftl
new file mode 100644
index 0000000000..9af88f0d2b
--- /dev/null
+++ b/l10n-el/security/manager/security/certificates/certManager.ftl
@@ -0,0 +1,251 @@
+# 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/.
+
+certmgr-title =
+ .title = Διαχείριση πιστοποιητικών
+certmgr-tab-mine =
+ .label = Τα πιστοποιητικά σας
+certmgr-tab-remembered =
+ .label = Αποφάσεις ταυτοποίησης
+certmgr-tab-people =
+ .label = Άτομα
+certmgr-tab-servers =
+ .label = Διακομιστές
+certmgr-tab-ca =
+ .label = Αρχές
+certmgr-mine = Έχετε πιστοποιητικά από αυτούς τους οργανισμούς που σάς ταυτοποιούν
+certmgr-remembered = Αυτά τα πιστοποιητικά χρησιμοποιούνται για την ταυτοποίηση σας στις ιστοσελίδες
+certmgr-people = Έχετε πιστοποιητικά στο αρχείο που ταυτοποιούν αυτά τα άτομα
+certmgr-servers = Έχετε πιστοποιητικά στο αρχείο που ταυτοποιούν αυτούς τους διακομιστές
+certmgr-server = Αυτές οι καταχωρήσεις αναγνωρίζουν εξαιρέσεις σφαλμάτων πιστοποιητικού διακομιστή
+certmgr-ca = Έχετε πιστοποιητικά στο αρχείο που ταυτοποιούν αυτές τις αρχές πιστοποιητικών
+certmgr-detail-general-tab-title =
+ .label = Γενικά
+ .accesskey = Γ
+certmgr-detail-pretty-print-tab-title =
+ .label = Λεπτομέρειες
+ .accesskey = Λ
+certmgr-pending-label =
+ .value = Γίνεται προβολή πιστοποιητικού…
+certmgr-subject-label = Έκδοση για
+certmgr-issuer-label = Έκδοση από
+certmgr-period-of-validity = Περίοδος ισχύος
+certmgr-fingerprints = Αποτυπώματα
+certmgr-cert-detail =
+ .title = Λεπτομέρεια πιστοποιητικού
+ .buttonlabelaccept = Κλείσιμο
+ .buttonaccesskeyaccept = Κ
+certmgr-cert-detail-commonname = Κοινό όνομα (CN)
+certmgr-cert-detail-org = Οργανισμός (O)
+certmgr-cert-detail-orgunit = Μονάδα Οργανισμού (OU)
+certmgr-cert-detail-serial-number = Σειριακός αριθμός
+certmgr-cert-detail-sha-256-fingerprint = Αποτύπωμα SHA-256
+certmgr-cert-detail-sha-1-fingerprint = Αποτύπωμα SHA1
+certmgr-edit-ca-cert =
+ .title = Επεξεργασία ρυθμίσεων εμπιστοσύνης πιστοποιητικών CA
+ .style = width: 48em;
+certmgr-edit-cert-edit-trust = Επεξεργασία ρυθμίσεων εμπιστοσύνης:
+certmgr-edit-cert-trust-ssl =
+ .label = Το παρόν πιστοποιεί ιστοσελίδες.
+certmgr-edit-cert-trust-email =
+ .label = Το παρόν πιστοποιεί χρήστες email.
+certmgr-delete-cert =
+ .title = Διαγραφή πιστοποιητικού
+ .style = width: 48em; height: 24em;
+certmgr-cert-host =
+ .label = Host
+certmgr-cert-name =
+ .label = Όνομα πιστοποιητικού
+certmgr-cert-server =
+ .label = Διακομιστής
+certmgr-override-lifetime =
+ .label = Εφ' όρου ζωής
+certmgr-token-name =
+ .label = Συσκευή ασφάλειας
+certmgr-begins-on = Αρχίζει στις
+certmgr-begins-label =
+ .label = Αρχίζει στις
+certmgr-expires-on = Λήγει στις
+certmgr-expires-label =
+ .label = Λήγει στις
+certmgr-email =
+ .label = Διεύθυνση email
+certmgr-serial =
+ .label = Σειριακός αριθμός
+certmgr-view =
+ .label = Προβολή…
+ .accesskey = β
+certmgr-edit =
+ .label = Επεξεργασία εμπιστοσύνης…
+ .accesskey = Ε
+certmgr-export =
+ .label = Εξαγωγή…
+ .accesskey = ξ
+certmgr-delete =
+ .label = Διαγραφή…
+ .accesskey = Δ
+certmgr-delete-builtin =
+ .label = Διαγραφή ή άρση εμπιστοσύνης…
+ .accesskey = Δ
+certmgr-backup =
+ .label = Αντίγραφο ασφαλείας…
+ .accesskey = φ
+certmgr-backup-all =
+ .label = Αντίγραφο όλων…
+ .accesskey = ν
+certmgr-restore =
+ .label = Εισαγωγή…
+ .accesskey = ι
+certmgr-details =
+ .value = Πεδία πιστοποιητικού
+ .accesskey = δ
+certmgr-fields =
+ .value = Τιμή πεδίου
+ .accesskey = μ
+certmgr-hierarchy =
+ .value = Ιεραρχία πιστοποιητικού
+ .accesskey = χ
+certmgr-add-exception =
+ .label = Προσθήκη εξαίρεσης…
+ .accesskey = θ
+exception-mgr =
+ .title = Προσθήκη εξαίρεσης ασφαλείας
+exception-mgr-extra-button =
+ .label = Επιβεβαίωση εξαίρεσης ασφαλείας
+ .accesskey = β
+exception-mgr-supplemental-warning = Οι νόμιμες τράπεζες, καταστήματα, και άλλες δημόσιες σελίδες δεν θα σας ζητήσουν να το κάνετε.
+exception-mgr-cert-location-url =
+ .value = Τοποθεσία:
+exception-mgr-cert-location-download =
+ .label = Λήψη πιστοποιητικού
+ .accesskey = η
+exception-mgr-cert-status-view-cert =
+ .label = Προβολή…
+ .accesskey = ο
+exception-mgr-permanent =
+ .label = Μόνιμη αποθήκευση αυτής της εξαίρεσης
+ .accesskey = Μ
+pk11-bad-password = Ο κωδικός που εισάγατε ήταν εσφαλμένος.
+pkcs12-decode-err = Αποτυχία αποκωδικοποίησης αρχείου. Είτε δεν είναι σε μορφή PKCS#12, είτε ο κωδικός που εισάγατε δεν είναι σωστός.
+pkcs12-unknown-err-restore = Αποτυχία ανάκτησης του αρχείου PKCS#12 για άγνωστους λόγους
+pkcs12-unknown-err-backup = Αποτυχία δημιουργίας αντιγράφου ασφαλείας του αρχείου PKCS#12 για άγνωστους λόγους.
+pkcs12-unknown-err = Η λειτουργία PKCS #12 απέτυχε για άγνωστους λόγους.
+pkcs12-info-no-smartcard-backup = Δεν είναι δυνατή η αντιγραφή πιστοποιητικών από συσκευές ασφαλείας hardware όπως οι "έξυπνες κάρτες"
+pkcs12-dup-data = Το πιστοποιητικό και το ιδιωτικό κλειδί υπάρχουν ήδη στη συσκευή ασφάλειας.
+
+## PKCS#12 file dialogs
+
+choose-p12-backup-file-dialog = Όνομα αρχείου για αντίγραφο ασφάλειας
+file-browse-pkcs12-spec = Αρχεία PKCS12
+choose-p12-restore-file-dialog = Αρχείο πιστοποιητικού προς εισαγωγή
+
+## Import certificate(s) file dialog
+
+file-browse-certificate-spec = Αρχεία πιστοποιητικού
+import-ca-certs-prompt = Επιλογή αρχείου που περιέχει πιστοποιητικό CA για εισαγωγή
+import-email-cert-prompt = Επιλογή αρχείου που περιέχει πιστοποιητικό κάποιου για εισαγωγή
+
+## For editing certificates trust
+
+# Variables:
+# $certName: the name of certificate
+edit-trust-ca = Το πιστοποιητικό "{ $certName }" αντιπροσωπεύει μια Αρχή Πιστοποίησης.
+
+## For Deleting Certificates
+
+delete-user-cert-title =
+ .title = Διαγραφή των πιστοποιητικών σας
+delete-user-cert-confirm = Θέλετε σίγουρα να διαγράψετε αυτά τα πιστοποιητικά;
+delete-user-cert-impact = Αν διαγράψετε τα δικά σας πιστοποιητικά δεν θα μπορείτε πλέον να τα χρησιμοποιήσετε για να πιστοποιήσετε τον εαυτό σας.
+delete-ssl-cert-title =
+ .title = Διαγραφή εξαιρέσεων πιστοποιητικών ιστοσελίδων
+delete-ssl-cert-confirm = Θέλετε σίγουρα να διαγράψετε αυτές τις εξαιρέσεις διακομιστή;
+delete-ssl-cert-impact = Αν διαγράψετε μια εξαίρεση ιστοσελίδας, θα επαναφέρετε τους συνήθεις ελέγχους ασφαλείας της σελίδας και την απαίτηση ενός έγκυρου πιστοποιητικού.
+delete-ssl-override-title =
+ .title = Διαγραφή εξαίρεσης πιστοποιητικού διακομιστή
+delete-ssl-override-confirm = Θέλετε σίγουρα να διαγράψετε αυτή την εξαίρεση διακομιστή;
+delete-ssl-override-impact = Αν διαγράψετε μια εξαίρεση διακομιστή, θα επαναφέρετε τους συνήθεις ελέγχους ασφαλείας για το διακομιστή αυτό, καθώς και την απαίτηση ενός έγκυρου πιστοποιητικού.
+delete-ca-cert-title =
+ .title = Διαγραφή ή άρση εμπιστοσύνης πιστοποητικών CA
+delete-ca-cert-confirm = Ζητήσατε να διαγράψετε αυτά τα πιστοποιητικά CA. Για τα ενσωματωμένα πιστοποιητικά υπάρχει και η επιλογή της άρσης εμπιστοσύνης που έχει το ίδιο αποτέλεσμα. Θέλετε τα τα διαγράψετε ή να άρετε την εμπιστοσύνη σας;
+delete-ca-cert-impact = Αν διαγράψετε ή άρετε την εμπιστοσύνη σας σε ένα πιστοποιητικό αρχής πιστοποίησης (CA), αυτή η εφαρμογή δεν θα εμπιστεύεται πια πιστοποιητικά από αυτή την CA.
+delete-email-cert-title =
+ .title = Διαγραφή πιστοποιητικών email
+delete-email-cert-confirm = Θέλετε σίγουρα να διαγράψετε τα πιστοποιητικά email αυτών των ατόμων;
+delete-email-cert-impact = Εάν διαγράψετε ένα πιστοποιητικό e-mail, δεν θα μπορείτε πια να στέλνετε κρυπτογραφημένη αλληλογραφία σε αυτούς τους ανθρώπους.
+# Used for semi-uniquely representing a cert.
+#
+# Variables:
+# $serialNumber : the serial number of the cert in AA:BB:CC hex format.
+cert-with-serial =
+ .value = Πιστοποιητικό με σειριακό αριθμό: { $serialNumber }
+
+## Cert Viewer
+
+# Title used for the Certificate Viewer.
+#
+# Variables:
+# $certificate : a string representative of the certificate being viewed.
+cert-viewer-title =
+ .title = Προβολή πιστοποιητικού: “{ $certName }”
+not-present =
+ .value = <Δεν είναι μέρος του πιστοποιητικού>
+# Cert verification
+cert-verified = Το παρόν πιστοποιητικό έχει επαληθευθεί για τις παρακάτω χρήσεις:
+# Add usage
+verify-ssl-client =
+ .value = Πιστοποιητικό πελάτη SSL
+verify-ssl-server =
+ .value = Πιστοποιητικό εξυπηρετητή SSL
+verify-ssl-ca =
+ .value = Αρχή πιστοποιητικού SSL
+verify-email-signer =
+ .value = Πιστοποιητικό υπογραφής Email
+verify-email-recip =
+ .value = Πιστοποιητικό αποδέκτη αλληλογραφίας
+# Cert verification
+cert-not-verified-cert-revoked = Δεν είναι δυνατή η επαλήθευση του παρόντος πιστοποιητικού επειδή έχει ακυρωθεί.
+cert-not-verified-cert-expired = Δεν είναι δυνατή η επαλήθευση του παρόντος πιστοποιητικού επειδή έχει λήξει.
+cert-not-verified-cert-not-trusted = Δεν είναι δυνατή η επαλήθευση του παρόντος πιστοποιητικού επειδή δεν είναι έμπιστο.
+cert-not-verified-issuer-not-trusted = Δεν είναι δυνατή η επαλήθευση του παρόντος πιστοποιητικού επειδή ο εκδότης δεν είναι έμπιστος.
+cert-not-verified-issuer-unknown = Δεν είναι δυνατή η επαλήθευση του παρόντος πιστοποιητικού επειδή ο εκδότης είναι άγνωστος.
+cert-not-verified-ca-invalid = Δεν είναι δυνατή η επαλήθευση του παρόντος επειδή η αρχή πιστοποίησης είναι άκυρη.
+cert-not-verified_algorithm-disabled = Δεν ήταν δυνατή η επαλήθευση του πιστοποιητικού επειδή υπογράφηκε με ένα αλγόριθμο που έχει απενεργοποιηθεί επειδή θεωρούνταν μη ασφαλής.
+cert-not-verified-unknown = Δεν είναι δυνατή η επαλήθευση του παρόντος πιστοποιητικού για άγνωστους λόγους.
+# Used to indicate that the user chose not to send a client authentication certificate to a server that requested one in a TLS handshake.
+send-no-client-certificate = Χωρίς αποστολή πιστοποιητικού πελάτη
+# Used when no cert is stored for an override
+no-cert-stored-for-override = (Μη αποθηκευμένο)
+
+## Used to show whether an override is temporary or permanent
+
+permanent-override = Μόνιμο
+temporary-override = Προσωρινό
+
+## Add Security Exception dialog
+
+add-exception-branded-warning = Πρόκειται να παρακάμψετε τον τρόπο με τον οποίο ο { -brand-short-name } αναγνωρίζει την σελίδα.
+add-exception-invalid-header = Αυτή σελίδα προσπαθεί να πιστοποιήσει τον εαυτό της με μη έγκυρες πληροφορίες.
+add-exception-domain-mismatch-short = Λάθος σελίδα
+add-exception-domain-mismatch-long = Το πιστοποιητικό ανήκει σε διαφορετική σελίδα, πράγμα το οποίο μπορεί να σημαίνει ότι κάποιος προσπαθεί να υποδυθεί αυτήν την ιστοσελίδα.
+add-exception-expired-short = Παρωχημένες πληροφορίες
+add-exception-expired-long = Το πιστοποιητικό δεν είναι αυτή τη στιγμή έγκυρο. Είναι πιθανό να έχει κλαπεί ή χαθεί, και να χρησιμοποιείται από κάποιον για να υποδυθεί αυτήν την ιστοσελίδα.
+add-exception-unverified-or-bad-signature-short = Άγνωστη ταυτότητα
+add-exception-unverified-or-bad-signature-long = Το πιστοποιητικό δεν είναι έγκυρο, επειδή δεν έχει επικυρωθεί από μια αναγνωρισμένη αρχή με χρήση ασφαλούς υπογραφής.
+add-exception-valid-short = Έγκυρο πιστοποιητικό
+add-exception-valid-long = Αυτή η σελίδα παρέχει έγκυρη και επικυρωμένη πιστοποίηση. Δεν υπάρχει λόγος να εξαιρεθεί.
+add-exception-checking-short = Έλεγχος πληροφοριών
+add-exception-checking-long = Γίνεται προσπάθεια πιστοποίησης της σελίδας…
+add-exception-no-cert-short = Δεν υπάρχουν διαθέσιμες πληροφορίες
+add-exception-no-cert-long = Αδυναμία λήψης κατάστασης ταυτότητας για αυτή τη σελίδα.
+
+## Certificate export "Save as" and error dialogs
+
+save-cert-as = Αποθήκευση πιστοποιητικού στο αρχείο
+cert-format-base64 = Πιστοποιητικό X.509 (PEM)
+cert-format-base64-chain = Πιστοποιητικό X.509 με chain (PKCS#7)
+cert-format-der = Πιστοποιητικό X.509 (DER)
+cert-format-pkcs7 = Πιστοποιητικό X.509 (PKCS#7)
+cert-format-pkcs7-chain = Πιστοποιητικό X.509 με chain (PKCS#7)
+write-file-failure = Σφάλμα αρχείου
diff --git a/l10n-el/security/manager/security/certificates/deviceManager.ftl b/l10n-el/security/manager/security/certificates/deviceManager.ftl
new file mode 100644
index 0000000000..399412e7b2
--- /dev/null
+++ b/l10n-el/security/manager/security/certificates/deviceManager.ftl
@@ -0,0 +1,101 @@
+# 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/.
+
+
+## Strings used for device manager
+
+devmgr =
+ .title = Διαχείριση συσκευών
+ .style = width: 67em; height: 32em;
+devmgr-devlist =
+ .label = Μονάδες ασφάλειας και συσκευές
+devmgr-header-details =
+ .label = Λεπτομέρειες
+devmgr-header-value =
+ .label = Τιμή
+devmgr-button-login =
+ .label = Σύνδεση
+ .accesskey = Σ
+devmgr-button-logout =
+ .label = Αποσύνδεση
+ .accesskey = π
+devmgr-button-changepw =
+ .label = Αλλαγή κωδικού πρόσβασης
+ .accesskey = κ
+devmgr-button-load =
+ .label = Φόρτωση
+ .accesskey = Φ
+devmgr-button-unload =
+ .label = Εκφόρτωση
+ .accesskey = κ
+devmgr-button-enable-fips =
+ .label = Ενεργοποίηση FIPS
+ .accesskey = F
+devmgr-button-disable-fips =
+ .label = Απενεργοποίηση FIPS
+ .accesskey = F
+
+## Strings used for load device
+
+load-device =
+ .title = Φόρτωση προγράμματος οδήγησης συσκευής PKCS#11
+load-device-info = Εισάγετε τις πληροφορίες για τη μονάδα που θέλετε να προσθέσετε.
+load-device-modname =
+ .value = Όνομα μονάδας
+ .accesskey = Μ
+load-device-modname-default =
+ .value = Νέα μονάδα PKCS#11
+load-device-filename =
+ .value = Όνομα αρχείου μονάδας
+ .accesskey = α
+load-device-browse =
+ .label = Περιήγηση…
+ .accesskey = Π
+
+## Token Manager
+
+devinfo-status =
+ .label = Κατάσταση
+devinfo-status-disabled =
+ .label = Ανενεργό
+devinfo-status-not-present =
+ .label = Δεν υπάρχει
+devinfo-status-uninitialized =
+ .label = Δεν έχει αρχικοποιηθεί
+devinfo-status-not-logged-in =
+ .label = Χωρίς σύνδεση
+devinfo-status-logged-in =
+ .label = Έγινε σύνδεση
+devinfo-status-ready =
+ .label = Έτοιμο
+devinfo-desc =
+ .label = Περιγραφή
+devinfo-man-id =
+ .label = Κατασκευαστής
+devinfo-hwversion =
+ .label = Έκδοση HW
+devinfo-fwversion =
+ .label = Έκδοση FW
+devinfo-modname =
+ .label = Μονάδα
+devinfo-modpath =
+ .label = Διαδρομή
+login-failed = Αποτυχία σύνδεσης
+devinfo-label =
+ .label = Ετικέτα
+devinfo-serialnum =
+ .label = Σειριακός αριθμός
+fips-nonempty-password-required = Η κατάσταση FIPS απαιτεί να έχετε έναν κύριο κωδικό για κάθε συσκευή ασφαλείας. Ορίστε τον κωδικό πριν να ενεργοποιήσετε τη λειτουργία FIPS.
+fips-nonempty-primary-password-required = Η λειτουργία FIPS απαιτεί έναν κύριο κωδικό πρόσβασης για κάθε συσκευή ασφαλείας. Παρακαλούμε ορίστε τον κωδικό πρόσβασης πριν την ενεργοποίηση της λειτουργίας FIPS.
+unable-to-toggle-fips = Δεν ήταν δυνατή η αλλαγή κατάστασης λειτουργίας FIPS για την συσκευή ασφαλείας. Προτείνεται να κάνετε έξοδο και επανεκκίνηση της εφαρμογής.
+load-pk11-module-file-picker-title = Επιλέξτε ένα πρόγραμμα οδήγησης συσκευής PKCS#11 για φόρτωση
+# Load Module Dialog
+load-module-help-empty-module-name =
+ .value = Το όνομα αρθρώματος δεν μπορεί να είναι κενό.
+# Do not translate 'Root Certs'
+load-module-help-root-certs-module-name =
+ .value = Το ‘Πιστοποιητικά Ρίζας‘ είναι δεσμευμένο και δεν μπορεί να χρησιμοποιηθεί ως όνομα αρθρώματος.
+add-module-failure = Αδυναμία προσθήκης λειτουργικής μονάδας
+del-module-warning = Θέλετε σίγουρα να διαγράψετε αυτή τη μονάδα ασφάλειας;
+del-module-error = Αδυναμία διαγραφής λειτουργικής μονάδας
diff --git a/l10n-el/security/manager/security/pippki/pippki.ftl b/l10n-el/security/manager/security/pippki/pippki.ftl
new file mode 100644
index 0000000000..eec8d8ff18
--- /dev/null
+++ b/l10n-el/security/manager/security/pippki/pippki.ftl
@@ -0,0 +1,84 @@
+# 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/.
+
+password-quality-meter = Μέτρηση ποιότητας πιστοποιητικού
+
+## Change Password dialog
+
+change-password-window =
+ .title = Αλλαγή κύριου κωδικού πρόσβασης
+change-device-password-window =
+ .title = Αλλαγή κωδικού πρόσβασης
+# Variables:
+# $tokenName (String) - Security device of the change password dialog
+change-password-token = Συσκευή ασφάλειας: { $tokenName }
+change-password-old = Τρέχων κωδικός πρόσβασης:
+change-password-new = Εισάγετε ένα νέο κωδικό
+change-password-reenter = Εισάγετε τον κωδικό ξανά
+
+## Reset Password dialog
+
+reset-password-window =
+ .title = Επαναφορά κύριου κωδικού
+ .style = width: 40em
+pippki-failed-pw-change = Αδυναμία αλλαγής κωδικού πρόσβασης.
+pippki-incorrect-pw = Δεν εισήγατε το σωστό κωδικό πρόσβασης. Παρακαλούμε δοκιμάστε ξανά.
+pippki-pw-change-ok = Επιτυχής αλλαγή κωδικού πρόσβασης.
+pippki-pw-empty-warning = Δεν θα προστατεύονται οι αποθηκευμένοι κωδικοί πρόσβασης και τα ιδιωτικά κλειδιά σας.
+pippki-pw-erased-ok = Ο κωδικός πρόσβασής σας έχει διαγραφεί. { pippki-pw-empty-warning }
+pippki-pw-not-wanted = Προσοχή! Αποφασίσατε να μη χρησιμοποιήσετε κωδικό πρόσβασης. { pippki-pw-empty-warning }
+pippki-pw-change2empty-in-fips-mode = Βρίσκεστε σε λειτουργία FIPS . Το FIPS απαιτεί ένα μη κενό κωδικό πρόσβασης.
+
+## Reset Primary Password dialog
+
+reset-primary-password-window =
+ .title = Επαναφορά κύριου κωδικού πρόσβασης
+ .style = width: 40em
+reset-password-button-label =
+ .label = Επαναφορά
+reset-password-text = Αν επαναφέρετε τον κύριο κωδικό σας, όλοι οι αποθηκευμένοι κωδικοί πρόσβασης από ιστοσελίδες και e-mail, τα δεδομένα φορμών, τα προσωπικά πιστοποιητικά και τα ιδιωτικά κλειδιά σας θα διαγραφούν. Θέλετε σίγουρα να επαναφέρετε τον κύριο κωδικό σας;
+reset-primary-password-text = Εάν επαναφέρετε τον κύριο κωδικό πρόσβασής σας, θα διαγραφούν από την μνήμη όλοι οι αποθηκευμένοι κωδικοί πρόσβασης ιστοσελίδων και email, προσωπικών πιστοποιητικών και ιδιωτικών κλειδιών. Θέλετε σίγουρα να επαναφέρετε τον κύριο κωδικό πρόσβασης;
+pippki-reset-password-confirmation-title = Επαναφορά κύριου κωδικού πρόσβασης
+pippki-reset-password-confirmation-message = Έγινε επαναφορά του κύριου κωδικού πρόσβασής σας.
+
+## Downloading cert dialog
+
+download-cert-window =
+ .title = Λήψη πιστοποιητικού
+ .style = width: 46em
+download-cert-message = Σας ζητήθηκε να εμπιστευθείτε μια νέα Αρχή Πιστοποίησης (CA).
+download-cert-trust-ssl =
+ .label = Να είναι έμπιστη αυτή η CA για την πιστοποίηση ιστοσελίδων.
+download-cert-trust-email =
+ .label = Να είναι έμπιστη αυτή η CA για την πιστοποίηση χρηστών email
+download-cert-message-desc = Πριν να εμπιστευθείτε αυτήν την Αρχή Πιστοποίησης για οποιοδήποτε σκοπό, θα πρέπει να εξετάσετε το πιστοποιητικό και τις διαδικασίες και τις πολιτικές του (αν είναι διαθέσιμες).
+download-cert-view-cert =
+ .label = Προβολή
+download-cert-view-text = Εξέταση CA πιστοποιητικού
+
+## Client Authorization Ask dialog
+
+client-auth-window =
+ .title = Ειδοποίηση Αναγνώρισης Χρήστη
+client-auth-site-description = Η ιστοσελίδα ζήτησε να πιστοποιήσετε τον εαυτό σας με ένα πιστοποιητικό ασφάλειας:
+client-auth-choose-cert = Επιλέξτε ένα πιστοποιητικό για να το παρουσιάσετε ως ταυτότητα:
+client-auth-cert-details = Λεπτομέρειες επιλεγμένου πιστοποιητικού:
+
+## Set password (p12) dialog
+
+set-password-window =
+ .title = Επιλογή κωδικού αντιγράφου ασφαλείας πιστοποιητικού
+set-password-message = Ο κωδικός αντιγράφου ασφάλειας πιστοποιητικού προστατεύει το αντίγραφο που πρόκειται να δημιουργήσετε. Θα πρέπει να καθορίσετε αυτόν τον κωδικό ώστε να προχωρήσει η διαδικασία
+set-password-backup-pw =
+ .value = Κωδικός αντιγράφου ασφάλειας πιστοποιητικού:
+set-password-repeat-backup-pw =
+ .value = Κωδικός αντιγράφου ασφάλειας πιστοποιητικού (ξανά):
+set-password-reminder = Προειδοποίηση: Αν ξεχάσετε τον κωδικό ασφάλειας, δεν θα μπορείτε να ανακτήσετε αυτό το αντίγραφο αργότερα. Φυλάξτε το σε ασφαλή τοποθεσία.
+
+## Protected Auth dialog
+
+protected-auth-window =
+ .title = Προστατευμένη πιστοποίηση με διακριτικό
+protected-auth-msg = Παρακαλώ πιστοποιήστε το διακριτικό. Η μέθοδος πιστοποίησης εξαρτάται από το είδος του διακριτικού.
+protected-auth-token = Διακριτικό:
diff --git a/l10n-el/services/sync/sync.properties b/l10n-el/services/sync/sync.properties
new file mode 100644
index 0000000000..2aafdd2a2a
--- /dev/null
+++ b/l10n-el/services/sync/sync.properties
@@ -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/.
+
+# %1: the user name (Ed), %2: the app name (Firefox), %3: the operating system (Android)
+client.name2 = Το %2$S του %1$S στο %3$S
+
+# %S is the relative time at which the last sync successfully completed (e.g. 5 min. ago)
+lastSync2.label = Τελευταίος συγχρονισμός: %S
+
+# signInToSync.description is the tooltip for the Sync buttons when Sync is
+# not configured.
+signInToSync.description = Σύνδεση στο Sync
+
diff --git a/l10n-el/suite/branding/seamonkey/brand.dtd b/l10n-el/suite/branding/seamonkey/brand.dtd
new file mode 100644
index 0000000000..8942de9976
--- /dev/null
+++ b/l10n-el/suite/branding/seamonkey/brand.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 brandFullName "SeaMonkey">
+<!ENTITY brandShortName "SeaMonkey">
+<!ENTITY brandShorterName "SeaMonkey">
+<!ENTITY vendorShortName "SeaMonkey e.V.">
+<!ENTITY sidebarName "Πλευρική στήλη">
diff --git a/l10n-el/suite/branding/seamonkey/brand.properties b/l10n-el/suite/branding/seamonkey/brand.properties
new file mode 100644
index 0000000000..6bde62491c
--- /dev/null
+++ b/l10n-el/suite/branding/seamonkey/brand.properties
@@ -0,0 +1,32 @@
+# 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/.
+
+brandFullName=SeaMonkey
+brandShortName=SeaMonkey
+brandShorterName=SeaMonkey
+vendorShortName=SeaMonkey e.V.
+sidebarName=Πλευρική στήλη
+
+# Only change these links if you are providing a localized website including
+# release notes.
+# LOCALIZATION NOTE (app.releaseNotesURL): Only translate this string if
+# providing a localized version of the release notes.
+app.releaseNotesURL=https://www.seamonkey-project.org/releases/seamonkey%VERSION%/
+# LOCALIZATION NOTE (app.troubleshootingURL): Only translate this string if
+# providing a localized version of the release notes.
+app.troubleshootingURL=https://www.seamonkey-project.org/releases/seamonkey%VERSION%/#troubleshooting
+# LOCALIZATION NOTE (app.vendorURL): Only translate this string if
+# providing a localized version of the SeaMonkey website.
+app.vendorURL=https://www.seamonkey-project.org/
+# LOCALIZATION NOTE (app.support.baseURL): Only translate this string if
+# providing a localized version of the SeaMonkey documentation.
+app.support.baseURL=https://www.seamonkey-project.org/doc/
+# LOCALIZATION NOTE (app.update.url.details): Only translate this string if
+# providing a localized version of the release notes. More information about
+# this update link available in the update wizard.
+app.update.url.details=https://www.seamonkey-project.org/releases/
+# LOCALIZATION NOTE (app.update.url.manual): Only translate this string if
+# providing a localized version of the SeaMonkey website. Available if for some
+# reason all update installation attempts fail.
+app.update.url.manual=https://www.seamonkey-project.org/
diff --git a/l10n-el/suite/chrome/branding/aboutRights.dtd b/l10n-el/suite/chrome/branding/aboutRights.dtd
new file mode 100644
index 0000000000..57086b22a5
--- /dev/null
+++ b/l10n-el/suite/chrome/branding/aboutRights.dtd
@@ -0,0 +1,82 @@
+<!-- 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 This file is very similar to the one in Firefox from browser/locales/en-US/chrome/browser/aboutRights.dtd so you can use that file as a starting point -->
+<!-- rights.locale-direction instead of the usual local.dir entity, so RTL can skip translating page. -->
+<!ENTITY rights.locale-direction "ltr">
+<!ENTITY rights.pagetitle "about:rights">
+<!ENTITY rights.intro-header "Σχετικά με τα δικαιώματά σας">
+<!ENTITY rights.intro "Το &brandFullName; είναι ελεύθερο λογισμικό ανοικτού κώδικα που αναπτύσσεται από μια κοινότητα χιλιάδων ατόμων από όλο τον κόσμο. Υπάρχουν μερικά πράγματα που πρέπει να γνωρίζετε:">
+
+<!-- Note on pointa / pointb / pointc form:
+ These points each have an embedded link in the HTML, so each point is
+ split into chunks for text before the link, the link text, and the text
+ after the link. If a localized grammar doesn't need the before or after
+ chunk, it can be left blank.
+
+ Also note the leading/trailing whitespace in strings here, which is
+ deliberate for formatting around the embedded links. -->
+<!ENTITY rights.intro-point1a "Το &brandShortName; είναι διαθέσιμο σε εσάς υπό τους όρους της ">
+<!ENTITY rights.intro-point1b "άδειας Mozilla Public License">
+<!ENTITY rights.intro-point1c ". Δηλαδή, μπορείτε να χρησιμοποιήσετε, να αντιγράψετε και να διανείμετε το &brandShortName; σε τρίτους. Είστε ευπρόσδεκτοι να τροποποιήσετε τον πηγαίο κώδικα του &brandShortName; ώστε να ταιριάζει στις ανάγκες σας. Η άδεια Mozilla Public License σάς δίνει επίσης το δικαίωμα να διανείμετε τις τροποποιημένες εκδόσεις σας.">
+
+<!ENTITY rights.intro-point2aa "Η &vendorShortName; δεν σας παραχωρεί κανένα δικαίωμα για τα εμπορικά σήματα ή τα λογότυπα του &quot;&brandFullName;&quot;. Περισσότερες πληροφορίες σχετικά με τα εμπορικά σήματα μπορείτε να βρείτε ">
+<!ENTITY rights.intro-point2b "εδώ">
+<!ENTITY rights.intro-point2c ".">
+
+<!-- point 2da is technically point 3. in the list -->
+<!ENTITY rights.intro-point2da "Ορισμένες λειτουργίες στο &brandShortName;, όπως η Αναφορά καταρρεύσεων, σας παρέχουν την επιλογή για αποστολή σχολείων στη &vendorShortName;. Επιλέγοντας την υποβολή σχολίων, παραχωρείτε στη &vendorShortName; το δικαίωμα χρήσης των σχολίων για βελτίωση των εφαρμογών της, τη δημοσίευση των σχολίων στις ιστοσελίδες της, καθώς και τη διανομή των σχολίων.">
+
+<!-- point 3 text for official branded builds -->
+<!ENTITY rights.intro-point3a "Μπορείτε να βρείτε τις πολιτικές απορρήτου για τα προϊόντα της &vendorShortName;">
+<!ENTITY rights.intro-point3b "εδώ">
+<!ENTITY rights.intro-point3c ".">
+
+<!-- point 4 text for official branded builds -->
+<!ENTITY rights2.intro-point4a "Το &brandShortName; προσφέρει προαιρετικές υπηρεσίες πληροφοριών ιστοσελίδας, όπως υπηρεσίες προσθέτων ή ασφαλούς περιήγησης· ωστόσο, δεν μπορούμε να εγγυηθούμε ότι είναι 100&#37; ακριβή ή απαλλαγμένα από σφάλματα. Περισσότερες λεπτομέρειες, καθώς και πληροφορίες για την απενεργοποίηση αυτών των υπηρεσιών, μπορείτε να βρείτε στους ">
+<!ENTITY rights.intro-point4b "όρους υπηρεσίας">
+<!ENTITY rights.intro-point4c ".">
+
+<!ENTITY rights.webservices-header "Υπηρεσίες ιστοσελίδας &brandFullName;">
+
+<!-- Note that this paragraph references entities from extensions.dtd,
+ preferences.dtd, pref-smartupdate.dtd, and pref-security.dtd,
+ so that we can refer to text the user sees in the UI, without
+ this page being forgotten every time those strings are updated. -->
+<!-- intro paragraph for branded builds -->
+<!ENTITY rights3.webservices-aa "Η &vendorShortName; παρέχει προαιρετικές υπηρεσίες ιστού (&quot;Υπηρεσίες&quot;) που διατίθενται για χρήση σε αυτή την έκδοση του &brandShortName;, όπως περιγράφεται παρακάτω. Ορισμένες από αυτές τις υπηρεσίες (όπως η πρόταση προσθέτων και οι υπηρεσίες ενημερώσεων, η υπηρεσία ασφαλούς περιήγησης, ή η λειτουργία ειδοποίησης κατά την περιήγηση βάσει τοποθεσίας) είναι ενεργές από προεπιλογή. Αν δεν θέλετε να χρησιμοποιήσετε κάποια από αυτές τις Υπηρεσίες ή δεν αποδέχεστε τους παρακάτω όρους, μπορείτε να βρείτε τις οδηγίες απενεργοποίησης μιας συγκεκριμένης λειτουργίας ή Υπηρεσίας ">
+<!ENTITY rights3.webservices-b "εδώ">
+<!ENTITY rights3.webservices-c ". Άλλες λειτουργίες και υπηρεσίες μπορούν να (απ)ενεργοποιηθούν στις προτιμήσεις της εφαρμογής.">
+
+<!-- add-on related points for branded builds -->
+<!ENTITY rights.addons-a "Υπηρεσίες προσθέτων:">
+<!ENTITY rights.addons-b "Από προεπιλογή, το &brandShortName; θα προτείνει πρόσθετα στη σελίδα &view.discover.label; και θα κάνει έλεγχο για ενημερώσεις σε τακτά χρονικά διαστήματα. Αν θέλετε να απενεργοποιήσετε αυτές τις λειτουργίες για να εμποδίσετε την κοινοποίηση στοιχείων για τα εγκατεστημένα πρόσθετα στον διακομιστή, ακολουθήστε αυτά τα βήματα:">
+<!ENTITY rights.addons-term1 "Άνοιγμα προτιμήσεων εφαρμογής">
+<!ENTITY rights.addons-term2 "Επιλέξτε την καρτέλα &smart.label; στην κατηγορία &advance.label;">
+<!ENTITY rights.addons-term3 "Καταργήστε τις επιλογές &quot;&autoAddOnsUpdates.label;&quot; και &quot;&enablePersonalized.label;&quot;">
+<!ENTITY rights.addons-term4 "Οι υπηρεσίες προσθέτων είναι πλέον ανενεργές">
+
+<!-- safe browsing points for branded builds -->
+<!ENTITY rights.safebrowsing-a "Ασφαλής περιήγηση:">
+<!ENTITY rights.safebrowsing-b "Η απενεργοποίηση της ασφαλούς περιήγησης δεν προτείνεται, καθώς μπορεί να οδηγηθείτε σε επικίνδυνες ιστοσελίδες. Αν επιθυμείτε να απενεργοποιήσετε πλήρως τη λειτουργία, ακολουθήστε αυτά τα βήματα:">
+<!ENTITY rights.safebrowsing-term1 "Ανοίξτε τις προτιμήσεις της εφαρμογής">
+<!ENTITY rights.safebrowsing-term2 "Επιλέξτε την κύρια καρτέλα &security.label;">
+<!ENTITY rights.safebrowsing-term3 "Καταργήστε τις επιλογές &quot;&blockAttackSites.label;&quot; και &quot;&blockWebForgeries.label;&quot;">
+<!ENTITY rights.safebrowsing-term4 "Η ασφαλής περιήγηση είναι πλέον ανενεργή">
+
+<!-- location aware browsing points for branded builds -->
+<!ENTITY rights.locationawarebrowsing-a "Περιήγηση βάσει τοποθεσίας: ">
+<!ENTITY rights.locationawarebrowsing-b "είναι πάντα προαιρετική. Δεν αποστέλλονται ποτέ πληροφορίες τοποθεσίας χωρίς την άδειά σας. Αν θέλετε να απενεργοποιήσετε εντελώς τη λειτουργία, ακολουθήστε αυτά τα βήματα:">
+<!ENTITY rights.locationawarebrowsing-term1 "Ανοίξτε τις προτιμήσεις της εφαρμογής">
+<!ENTITY rights.locationawarebrowsing-term2 "Επιλέξτε την κύρια καρτέλα &security.label;">
+<!ENTITY rights.locationawarebrowsing-term3 "Επιλέξτε &quot;&geoDisabled.label;&quot;">
+<!ENTITY rights.locationawarebrowsing-term4 "Η περιήγηση βάσει τοποθεσίας είναι πλέον ανενεργή">
+
+<!-- points 0-6 text for branded builds -->
+<!ENTITY rights.webservices-term0a "Η &vendorShortName; οι συντελεστές, οι συνεργάτες και οι διανομείς της εργάζονται για να παρέχουν τις πιο ακριβείς και ενημερωμένες Υπηρεσίες. Ωστόσο, δεν μπορούμε να εγγυηθούμε ότι αυτές οι πληροφορίες είναι κατανοητές και χωρίς σφάλματα. Για παράδειγμα, η Υπηρεσία ασφαλούς περιήγησης ενδέχεται να μην αναγνωρίσει κάποιες επικίνδυνες ιστοσελίδες και ενδεχομένως να θεωρήσει ορισμένες ασφαλείς ιστοσελίδες ως ύποπτες, ενώ η Υπηρεσία περιήγησης βάσει τοποθεσίας μπορεί να μην είναι ακριβής. Ούτε εμείς ούτε οι πάροχοι υπηρεσιών μας δεν μπορούμε να εγγυηθούμε την ακρίβεια των παρεχόμενων τοποθεσιών.">
+<!ENTITY rights.webservices-term1 "Η &vendorShortName; διατηρεί το δικαίωμα να διακόψει ή να αλλάξει τις Υπηρεσίες κατά βούληση.">
+<!ENTITY rights.webservices-term2a "Είστε ευπρόσδεκτοι να χρησιμοποιείτε αυτές τις Υπηρεσίες μαζί με την συνοδευόμενη έκδοση του &brandShortName; και έχετε όλα τα απαραίτητα δικαιώματα να το κάνετε. Η &vendorShortName; και οι συνεργάτες του διατηρούν όλα τα άλλα δικαιώματα στις Υπηρεσίες. Αυτοί οι όροι δεν σκοπεύουν να περιορίσουν οποιαδήποτε δικαιώματα που προέρχονται από τις άδεις ανοικτού λογισμικού που συνοδεύουν το &brandShortName; και τις αντίστοιχες εκδόσεις πηγαίου κώδικα του &brandShortName;.">
+<!ENTITY rights.webservices-term3 "Οι Υπηρεσίες παρέχονται &quot;ως έχουν.&quot; Η &vendorShortName;, οι συντελεστές, οι συνεργάτες και οι διανομείς της παρέχουν τις Υπηρεσίες χωρίς οποιουδήποτε είδους εγγύηση, είτε ρητή είτε σιωπηρή, συμπεριλαμβανομένης ενδεικτικά και όχι περιοριστικά, της σιωπηρής εγγύησης εμπορευσιμότητας και καταλληλότητας των Υπηρεσιών για συγκεκριμένη χρήση. Ο κίνδυνος ως προς την ποιότητα και επίδοση των υπηρεσιών βαρύνει εξ ολοκλήρου εσάς. Μερικές νομοθεσίες δεν επιτρέπουν την εξαίρεση ή τον περιορισμό των σιωπηλών εγγυήσεων και έτσι αυτή η παράγραφος αποποίησης μπορεί να μην ισχύει για εσάς.">
+<!ENTITY rights.webservices-term4 "Σε καμία περίπτωση, εκτός εάν απαιτείται από την κείμενη νομοθεσία, η &vendorShortName;, οι συντελεστές, οι συνεργάτες και οι διανομείς της δεν είναι υπεύθυνοι απέναντί σας για ζημίες, συμπεριλαμβανομένων όλων των γενικών, ειδικών, τυχαίων ή συνεπακόλουθων ζημιών που μπορεί να προκύψουν από τη χρήση ή την αδυναμία χρήσης του &brandShortName; και των υπηρεσιών. Η συλλογική υπαιτιότητα κάτω από αυτούς τους όρους δεν μπορεί να υπερβαίνει τα 500$ (πεντακόσια δολάρια). Μερικές νομοθεσίες δεν επιτρέπουν την εξαίρεση ή τον περιορισμό κάποιων ζημιών, επομένως αυτή η εξαίρεση ή ο περιορισμός μπορεί να μην ισχύουν για εσάς.">
+<!ENTITY rights.webservices-term5 "Η &vendorShortName; μπορεί να ενημερώνει περιοδικά αυτούς τους όρους αν κριθεί απαραίτητο. Δεν είναι δυνατή η τροποποίηση ή η ακύρωση αυτών των όρων χωρίς την έγγραφη συναίνεση της &vendorShortName;.">
+<!ENTITY rights.webservices-term6a "Αυτοί οι όροι διέπονται και ερμηνεύονται σύμφωνα με τους νόμους της Γερμανίας και όλες οι διαφορές που προκύπτουν σε σχέση με αυτούς τους όρους υποβάλλονται στην αποκλειστική δικαιοδοσία του αρμόδιου δικαστηρίου στη Γερμανία. Εάν οποιοδήποτε τμήμα αυτών των όρων θεωρείται άκυρο ή μη εφαρμόσιμο, τα υπόλοιπα τμήματα θα παραμείνουν σε πλήρη ισχύ και πρακτική εφαρμογή. Σε περίπτωση διένεξης μεταξύ μιας μεταφρασμένης έκδοσης αυτών των όρων και της έκδοσης στην αγγλική γλώσσα, θα υπερισχύει η έκδοση της αγγλικής γλώσσας.">
diff --git a/l10n-el/suite/chrome/branding/aboutRights.properties b/l10n-el/suite/chrome/branding/aboutRights.properties
new file mode 100644
index 0000000000..e9bf51bbe7
--- /dev/null
+++ b/l10n-el/suite/chrome/branding/aboutRights.properties
@@ -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/.
+
+buttonLabel = Μάθετε τα δικαιώματά σας
+buttonAccessKey = Μ
+# LOCALIZATION NOTE (notifyRightsText2): Please check if the usage of vendorShortName in your translated
+# content is still correct too.
+notifyRightsText2 = Το %S είναι δωρεάν λογισμικό ανοικτού κώδικα από τη γερμανική οργάνωση SeaMonkey e.V.
diff --git a/l10n-el/suite/chrome/browser/linkToolbar.dtd b/l10n-el/suite/chrome/browser/linkToolbar.dtd
new file mode 100644
index 0000000000..a26da61e53
--- /dev/null
+++ b/l10n-el/suite/chrome/browser/linkToolbar.dtd
@@ -0,0 +1,48 @@
+<!-- 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/. -->
+
+<!-- Link Toolbar Title -->
+<!ENTITY linkToolbar.label "Γραμμή πλοήγησης ιστοσελίδας">
+<!ENTITY linkToolbar.accesskey "μ">
+<!ENTITY linkToolbar.tooltip "Γραμμή πλοήγησης ιστοσελίδας">
+
+<!-- Link Toolbar visibility options -->
+<!ENTITY linkToolbarAlways.label "Πάντα εμφάνιση">
+<!ENTITY linkToolbarAlways.accesskey "ε">
+<!ENTITY linkToolbarAsNeeded.label "Εμφάνιση μόνο αν χρειάζεται">
+<!ENTITY linkToolbarAsNeeded.accesskey "μ">
+<!ENTITY linkToolbarNever.label "Πάντα απόκρυψη">
+<!ENTITY linkToolbarNever.accesskey "α">
+
+<!-- Toolbar buttons, menus, and menuitems -->
+<!ENTITY topButton.label "Κορυφή">
+<!ENTITY upButton.label "Πάνω">
+<!ENTITY firstButton.label "Πρώτο">
+<!ENTITY prevButton.label "Προηγούμενο">
+<!ENTITY nextButton.label "Επόμενο">
+<!ENTITY lastButton.label "Τελευταίο">
+
+<!ENTITY documentButton.label "Έγγραφο">
+
+<!ENTITY tocButton.label "Πίνακας περιεχομένων">
+<!ENTITY chapterButton.label "Κεφάλαια">
+<!ENTITY sectionButton.label "Ενότητες">
+<!ENTITY subSectionButton.label "Υπό-ενότητες">
+<!ENTITY appendixButton.label "Παραρτήματα">
+<!ENTITY glossaryButton.label "Γλωσσάριο">
+<!ENTITY indexButton.label "Ευρετήριο">
+
+<!ENTITY moreButton.label "Περισσότερα">
+
+<!ENTITY helpButton.label "Βοήθεια">
+<!ENTITY searchButton.label "Αναζήτηση">
+
+<!ENTITY authorButton.label "Δημιουργός(οί)">
+<!ENTITY copyrightButton.label "Πνευματικά δικαιώματα">
+
+<!ENTITY bookmarkButton.label "Σελιδοδείκτες">
+
+<!ENTITY alternateButton.label "Άλλες εκδόσεις">
+
+<!ENTITY feedButton.label "Εγγραφή">
diff --git a/l10n-el/suite/chrome/browser/mailNavigatorOverlay.dtd b/l10n-el/suite/chrome/browser/mailNavigatorOverlay.dtd
new file mode 100644
index 0000000000..aefc50c807
--- /dev/null
+++ b/l10n-el/suite/chrome/browser/mailNavigatorOverlay.dtd
@@ -0,0 +1,30 @@
+<!-- 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 newMessageCmd.label "Μήνυμα">
+<!ENTITY newMessageCmd.accesskey "Μ">
+<!ENTITY newMessageCmd.key "M">
+
+<!ENTITY newContactCmd.label "Επαφή…">
+<!ENTITY newContactCmd.accesskey "Ε">
+
+<!ENTITY sendPage.label "Αποστολή σελίδας…">
+<!ENTITY sendPage.accesskey "Α">
+
+<!ENTITY contextSendThisPage.label "Αποστολή σελίδας…">
+<!ENTITY contextSendThisPage.accesskey "λ">
+<!ENTITY contextSendThisLink.label "Αποστολή συνδέσμου…">
+<!ENTITY contextSendThisLink.accesskey "δ">
+<!ENTITY contextSendImage.label "Αποστολή εικόνας…">
+<!ENTITY contextSendImage.accesskey "κ">
+<!ENTITY contextSendVideo.label "Αποστολή βίντεο…">
+<!ENTITY contextSendVideo.accesskey "β">
+<!ENTITY contextSendAudio.label "Αποστολή ήχου…">
+<!ENTITY contextSendAudio.accesskey "χ">
+<!ENTITY contextSendFrame.label "Αποστολή καρέ…">
+<!ENTITY contextSendFrame.accesskey "κ">
+
+<!ENTITY sendLinkCmd.label "Αποστολή συνδέσμου…">
+<!ENTITY sendLinkCmd.accesskey "σ">
+
diff --git a/l10n-el/suite/chrome/browser/metadata.dtd b/l10n-el/suite/chrome/browser/metadata.dtd
new file mode 100644
index 0000000000..0a7b5f6a81
--- /dev/null
+++ b/l10n-el/suite/chrome/browser/metadata.dtd
@@ -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/. -->
+
+<!ENTITY no-properties.label "Δεν έχουν οριστεί ιδιότητες.">
+
+<!ENTITY caption.label "Ιδιότητες στοιχείου">
+<!ENTITY image-sec.label "Ιδιότητες εικόνας">
+<!ENTITY image-url.label "Τοποθεσία:">
+<!ENTITY image-desc.label "Περιγραφή:">
+<!ENTITY image-alt.label "Εναλλακτικό κείμενο:">
+<!ENTITY image-width.label "Πλάτος:">
+<!ENTITY image-height.label "Ύψος:">
+<!ENTITY image-filesize.label "Μέγεθος αρχείου:">
+<!ENTITY image-filesize.value "Άγνωστο">
+<!ENTITY insdel-sec.label "Εισαγωγή/διαγραφή ιδιοτήτων">
+<!ENTITY insdel-cite.label "Πληροφορίες:">
+<!ENTITY insdel-date.label "Ημερομηνία:">
+<!ENTITY link-sec.label "Ιδιότητες συνδέσμου">
+<!ENTITY link-url.label "Διεύθυνση:">
+<!ENTITY link-target.label "Θα ανοίξει σε:">
+<!ENTITY link-type.label "Τύπος προορισμού:">
+<!ENTITY link-lang.label "Γλώσσα προορισμού:">
+<!ENTITY link-rel.label "Σχέση:">
+<!ENTITY link-rev.label "Αντίστροφη σχέση:">
+<!ENTITY misc-sec.label "Διάφορες ιδιότητες">
+<!ENTITY misc-lang.label "Γλώσσα κειμένου:">
+<!ENTITY misc-title.label "Τίτλος:">
+<!ENTITY misc-tblsummary.label "Περίληψη πίνακα:">
+<!ENTITY quote-sec.label "Ιδιότητες παράθεσης">
+<!ENTITY quote-cite.label "Πληροφορίες:">
diff --git a/l10n-el/suite/chrome/browser/metadata.properties b/l10n-el/suite/chrome/browser/metadata.properties
new file mode 100644
index 0000000000..cdbb4786fc
--- /dev/null
+++ b/l10n-el/suite/chrome/browser/metadata.properties
@@ -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/.
+
+sameWindowText=Ίδιο παράθυρο
+newWindowText=Νέο παράθυρο
+parentFrameText=Γονικό καρέ
+sameFrameText=Ίδιο καρέ
+embeddedText=Ενσωματωμένο
+unableToShowProps=Καμία διαθέσιμη ιδιότητα.
+altTextMissing=Λείπει
+altTextBlank=Κενό
+imageSize=%S KB (%S bytes)
+imageSizeUnknown=Άγνωστο (όχι σε προσωρινή μνήμη)
+imageWidth=%Spx
+imageHeight=%Spx
+# LOCALIZATION NOTE: Next two strings are for language name representations
+# %1$S = language name, %2$S = region name
+languageRegionFormat=%1$S (%2$S)
diff --git a/l10n-el/suite/chrome/browser/navigator.dtd b/l10n-el/suite/chrome/browser/navigator.dtd
new file mode 100644
index 0000000000..c194e2da11
--- /dev/null
+++ b/l10n-el/suite/chrome/browser/navigator.dtd
@@ -0,0 +1,87 @@
+<!-- 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/. -->
+
+<!-- extracted from content/navigator.xul -->
+
+<!-- LOCALIZATION NOTE : FILE This file contains the browser main menu items -->
+<!-- LOCALIZATION NOTE : FILE Do not translate commandkeys -->
+
+<!-- LOCALIZATION NOTE (mainWindow.title): DONT_TRANSLATE -->
+<!ENTITY mainWindow.title "&brandShortName;">
+<!-- LOCALIZATION NOTE (mainWindow.titlemodifier) : DONT_TRANSLATE -->
+<!ENTITY mainWindow.titlemodifier "&brandShortName;">
+<!-- LOCALIZATION NOTE (mainWindow.titlemodifiermenuseparator): DONT_TRANSLATE -->
+<!ENTITY mainWindow.titlemodifiermenuseparator " - ">
+
+<!ENTITY mainWindow.titleprivate "Ιδιωτική περιήγηση">
+
+<!ENTITY editPageCmd.label "Επεξεργασία σελίδας">
+<!ENTITY editPageCmd.accesskey "Ε">
+<!ENTITY editPageCmd.commandkey "e">
+
+<!ENTITY navbarCmd.label "Γραμμή πλοήγησης">
+<!ENTITY navbarCmd.accesskey "π">
+<!ENTITY bookmarksToolbarCmd.label "Γραμμή σελιδοδεικτών">
+<!ENTITY bookmarksToolbarCmd.accesskey "δ">
+
+<!ENTITY closeWindow.label "Κλείσιμο παραθύρου">
+<!ENTITY closeWindow.accesskey "π">
+
+<!ENTITY minimizeButton.tooltip "Ελαχιστοποίηση">
+<!ENTITY restoreButton.tooltip "Επαναφορά">
+
+<!ENTITY feedsMenu.label "Συνδρομή σε αυτή τη σελίδα">
+<!ENTITY feedsMenu.accesskey "Σ">
+
+<!ENTITY menuBar.tooltip "Γραμμή μενού">
+<!ENTITY bookmarksToolbar.tooltip "Γραμμή σελιδοδεικτών">
+<!ENTITY navigationToolbar.tooltip "Γραμμή πλοήγησης">
+
+<!ENTITY editBookmark.done.label "Τέλος">
+<!ENTITY editBookmark.cancel.label "Ακύρωση">
+<!ENTITY editBookmark.removeBookmark.accessKey "Α">
+
+<!-- Toolbar items -->
+<!ENTITY backButton.label "Πίσω">
+<!ENTITY backButton.tooltip "Μετάβαση μια σελίδα πίσω">
+<!ENTITY forwardButton.label "Εμπρός">
+<!ENTITY forwardButton.tooltip "Μετάβαση μια σελίδα μπροστά">
+<!ENTITY reloadButton.label "Ανανέωση">
+<!ENTITY reloadButton.tooltip "Ανανέωση τρέχουσας σελίδας">
+<!ENTITY stopButton.label "Διακοπή">
+<!ENTITY stopButton.tooltip "Διακοπή φόρτωσης σελίδας">
+<!ENTITY searchButton.label "Αναζήτηση">
+<!ENTITY searchButton.tooltip 'Πληκτρολογήστε μια λέξη στο πεδίο στα αριστερά και κάντε κλικ στο "Αναζήτηση"'>
+<!ENTITY goButton.label "Μετάβαση">
+<!ENTITY goButton.tooltip 'Πληκτρολογήστε μια διεύθυνση στο πεδίο στα αριστερά και κάντε κλικ στο "Μετάβαση"'>
+<!ENTITY printButton.label "Εκτύπωση">
+<!ENTITY printButton.tooltip "Εκτύπωση σελίδας">
+
+<!ENTITY locationBar.tooltip "Εισάγετε όρο αναζήτησης, λέξη-κλειδί ή διεύθυνση ιστού">
+<!ENTITY locationBar.accesskey "θ">
+<!ENTITY locationBar.title "Διεύθυνση">
+<!ENTITY proxyIcon.tooltip "Σύρετε και εναποθέστε αυτό το εικονίδιο για δημιουργία συνδέσμου για αυτή τη σελίδα">
+
+<!ENTITY searchItem.title "Αναζήτηση">
+
+<!ENTITY bookmarksButton.label "Σελιδοδείκτες">
+<!ENTITY bookmarksButton.tooltip "Λίστα σελιδοδεικτών">
+<!ENTITY homeButton.label "Αρχική">
+<!ENTITY bookmarksToolbarItem.label "Στοιχεία γραμμής σελιδοδεικτών">
+<!ENTITY bookmarksToolbarChevron.tooltip "Προβολή περισσότερων σελιδοδεικτών">
+
+<!-- Statusbar -->
+<!ENTITY statusText.label "Τέλος">
+
+<!ENTITY popupIcon.tooltiptext "Αποδοχή αναδυόμενων παραθύρων ιστοσελίδας">
+
+<!ENTITY viewSecurityInfo.label "Προβολή πληροφοριών ασφάλειας">
+<!ENTITY viewSecurityInfo.accesskey "α">
+<!ENTITY viewCertificate.label "Προβολή πιστοποιητικού">
+<!ENTITY viewCertificate.accesskey "π">
+<!ENTITY viewCertManager.label "Άνοιγμα διαχείρισης πιστοποιητικών">
+<!ENTITY viewCertManager.accesskey "δ">
+
+<!ENTITY zoomIn.tooltiptext "Μεγαλύτερο">
+<!ENTITY zoomOut.tooltiptext "Μικρότερο">
diff --git a/l10n-el/suite/chrome/browser/navigator.properties b/l10n-el/suite/chrome/browser/navigator.properties
new file mode 100644
index 0000000000..91434ee810
--- /dev/null
+++ b/l10n-el/suite/chrome/browser/navigator.properties
@@ -0,0 +1,78 @@
+# 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/.
+
+nv_done=Τέλος
+nv_timeout=Λήξη χρόνου
+nv_stopped=Διακόπηκε
+openFile=Άνοιγμα αρχείου
+uploadFile=Μεταφόρτωση αρχείου
+
+droponhomebutton=Αποθέστε έναν σύνδεσμο ή αρχείο για ορισμό αρχικής σελίδας
+droponhometitle=Ορισμός αρχικής σελίδας
+droponhomemsg=Θέλετε να γίνει αυτό το έγγραφο η νέα σας αρχική σελίδα;
+droponhomeokbutton=Ορισμός αρχικής σελίδας
+
+jserror=Προέκυψε σφάλμα σε αυτή τη σελίδα. Κάντε διπλό κλικ εδώ για λεπτομέρειες.
+
+#SessionHistory.js
+nothingAvailable=(Τίποτα διαθέσιμο)
+
+#nsBrowserStatusHandler.js
+# LOCALIZATION NOTE: %S is the security certifiate issuer
+securityButtonTooltipSecure=Υπογράφηκε από %S
+securityButtonTooltipMixedContent=Προειδοποίηση: Περιέχει μη πιστοποιημένο περιεχόμενο
+securityButtonTooltipInsecure=Εμφανίζει πληροφορίες ασφαλείας για την τρέχουσα σελίδα
+
+# menu_close labels
+tabs.closeTab.label=Κλείσιμο καρτέλας
+tabs.closeTab.accesskey=Κ
+tabs.close.label=Κλείσιμο
+tabs.close.accesskey=Κ
+
+tabs.recentlyClosed.format=%1$S %2$S
+
+windows.recentlyClosed.format=%1$S %2$S
+
+tabs.historyItem=Ομάδα καρτελών
+
+menuOpenAllInTabs.label=Άνοιγμα όλων σε καρτέλες
+
+# urlbarBindings.xml
+# LOCALIZATION NOTE: This is for the location bar drop-down string:
+# "Search " + search_engine_name + " for " + user_input
+# e.g. "Search Google for abc"
+# DO NOT change the %S order when translate, the first %S must be the search engine name.
+searchFor=Αναζήτηση στο %S για "%S"
+
+# Star button
+starButtonOn.tooltip=Επεξεργασία σελιδοδείκτη
+starButtonOff.tooltip=Προσθήκη σελιδοδείκτη σελίδας
+
+# Edit Bookmark UI
+editBookmarkPanel.pageBookmarkedTitle=Η σελίδα αποθηκεύτηκε
+editBookmarkPanel.pageBookmarkedDescription=Το %S θα απομνημονεύσει αυτή τη σελίδα για εσάς.
+editBookmarkPanel.bookmarkedRemovedTitle=Ο σελιδοδείκτης αφαιρέθηκε
+editBookmarkPanel.editBookmarkTitle=Επεξεργασία σελιδοδείκτη
+
+# LOCALIZATION NOTE (editBookmark.removeBookmarks.label)
+# Semi-colon list of plural forms. Replacement for #1 is
+# the number of bookmarks to be removed.
+# If this causes problems with localization you can also do "Remove Bookmarks (#1)"
+# instead of "Remove #1 Bookmarks".
+editBookmark.removeBookmarks.label=Αφαίρεση σελιδοδείκτη;Αφαίρεση #1 σελιδοδεικτών
+
+# bookmark dialog strings
+
+bookmarkAllTabsDefault=[Όνομα φακέλου]
+
+# LOCALIZATION NOTE (addKeywordTitleAutoFill): %S will be replaced by the page's title
+# Used as the bookmark name when saving a keyword for a search field.
+addKeywordTitleAutoFill=Αναζήτηση %S
+
+extensions.{972ce4c6-7e08-4474-a285-3208198ce6fd}.name=Προεπιλεγμένο θέμα SeaMonkey
+extensions.{972ce4c6-7e08-4474-a285-3208198ce6fd}.description=Αυτό το θέμα χρησιμοποιεί στυλ και χρώματα από το σύστημά σας για να ταιριάζει με άλλες εφαρμογές.
+
+extensions.modern@themes.mozilla.org.name=Σύγχρονο θέμα SeaMonkey
+extensions.modern@themes.mozilla.org.description=Ένα σύγχρονο θέμα για όλα τα στοιχεία.
+
diff --git a/l10n-el/suite/chrome/browser/navigatorOverlay.dtd b/l10n-el/suite/chrome/browser/navigatorOverlay.dtd
new file mode 100644
index 0000000000..87665cdeb3
--- /dev/null
+++ b/l10n-el/suite/chrome/browser/navigatorOverlay.dtd
@@ -0,0 +1,157 @@
+<!-- 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/. -->
+
+<!-- File Menu -->
+<!ENTITY tabCmd.label "Καρτέλα προγράμματος περιήγησης">
+<!ENTITY tabCmd.accesskey "Κ">
+<!ENTITY tabCmd.commandkey "t">
+<!ENTITY openCmd.label "Άνοιγμα διαδικτυακής τοποθεσίας…">
+<!ENTITY openCmd.accesskey "τ">
+<!ENTITY openCmd.commandkey "l">
+<!ENTITY openFileCmd.label "Άνοιγμα αρχείου…">
+<!ENTITY openFileCmd.accesskey "Ά">
+<!ENTITY openFileCmd.commandkey "o">
+
+<!ENTITY closeOtherTabs.label "Κλείσιμο άλλων καρτελών">
+<!ENTITY closeOtherTabs.accesskey "κ">
+<!-- LOCALIZATION NOTE (closeTabsToTheEnd.label): This should indicate the
+direction in which tabs are closed, i.e. locales that use RTL mode should say
+left instead of right. -->
+<!ENTITY closeTabsToTheEnd.label "Κλείσιμο καρτελών στα δεξιά">
+<!ENTITY closeTabsToTheEnd.accesskey "δ">
+
+<!ENTITY uploadFile.label "Μεταφόρτωση αρχείου…">
+<!ENTITY uploadFile.accesskey "Μ">
+
+<!-- Edit Menu -->
+<!ENTITY findOnCmd.label "Εύρεση στη σελίδα…">
+
+<!-- View Menu -->
+<!ENTITY toolbarsCmd.label "Εμφάνιση/Απόκρυψη">
+<!ENTITY toolbarsCmd.accesskey "σ">
+<!ENTITY tabbarCmd.label "Γραμμή καρτελών">
+<!ENTITY tabbarCmd.accesskey "κ">
+<!ENTITY taskbarCmd.label "Γραμμή κατάστασης">
+<!ENTITY taskbarCmd.accesskey "σ">
+<!ENTITY componentbarCmd.label "Γραμμή στοιχείων">
+<!ENTITY componentbarCmd.accesskey "σ">
+
+<!ENTITY fullScreenCmd.label "Πλήρης οθόνη">
+<!ENTITY fullScreenCmd.accesskey "Π">
+
+<!ENTITY useStyleSheetMenu.label "Χρήση στυλ">
+<!ENTITY useStyleSheetMenu.accesskey "Χ">
+<!ENTITY useStyleSheetNone.label "Κανένα">
+<!ENTITY useStyleSheetNone.accesskey "Κ">
+<!ENTITY useStyleSheetPersistentOnly.label "Προεπιλεγμένο στυλ">
+<!ENTITY useStyleSheetPersistentOnly.accesskey "Π">
+<!ENTITY bidiSwitchPageDirectionItem.label "Αλλαγή κατεύθυνσης σελίδας">
+<!ENTITY bidiSwitchPageDirectionItem.accesskey "κ">
+<!ENTITY pageSourceCmd.label "Κώδικας σελίδας">
+<!ENTITY pageSourceCmd.accesskey "δ">
+<!ENTITY pageSourceCmd.commandkey "u">
+<!ENTITY pageInfoCmd.label "Πληροφορίες σελίδας">
+<!ENTITY pageInfoCmd.accesskey "Π">
+<!ENTITY pageInfoCmd.commandkey "i">
+
+<!-- Go Menu -->
+<!ENTITY goMenu.label "Μετάβαση">
+<!ENTITY goMenu.accesskey "Μ">
+<!ENTITY goBackCmd.commandKey "[">
+<!ENTITY goForwardCmd.commandKey "]">
+<!ENTITY goHomeCmd.label "Αρχική">
+<!ENTITY goHomeCmd.accesskey "Α">
+<!ENTITY historyCmd.label "Ιστορικό">
+<!ENTITY historyCmd.accesskey "σ">
+<!-- LOCALIZATION NOTE (historyCmd.key): This is used only on the mac. -->
+<!ENTITY historyCmd.key "H">
+<!-- LOCALIZATION NOTE (history.commandKey): This is used on platforms other
+ than the mac instead of historyCmd.key. -->
+<!ENTITY history.commandKey "h">
+<!ENTITY recentTabs.label "Πρόσφατα κλεισμένες καρτέλες">
+<!ENTITY recentTabs.accesskey "κ">
+<!ENTITY recentTabs.commandkey "t">
+<!ENTITY recentWindows.label "Πρόσφατα κλεισμένα παράθυρα">
+<!ENTITY recentWindows.accesskey "π">
+<!ENTITY recentWindows.commandkey "y">
+<!ENTITY historyRestoreLastSession.label "Επαναφορά προηγούμενης συνεδρίας">
+<!ENTITY historyRestoreLastSession.accesskey "Ε">
+<!ENTITY syncTabsMenu.label "Καρτέλες από άλλους υπολογιστές">
+<!ENTITY syncTabsMenu.accesskey "υ">
+
+<!-- Bookmarks Menu -->
+<!ENTITY bookmarksMenu.label "Σελιδοδείκτες">
+<!ENTITY bookmarksMenu.accesskey "Σ">
+<!ENTITY addCurPageCmd.label "Προσθήκη σελιδοδείκτη σελίδας">
+<!ENTITY addCurPageCmd.accesskey "σ">
+<!ENTITY addCurPageAsCmd.label "Σελιδοδείκτης αρχείου…">
+<!ENTITY addCurPageAsCmd.accesskey "α">
+<!ENTITY addCurPageAsCmd.commandkey "d">
+<!ENTITY addCurTabsAsCmd.label "Προσθήκη σελιδοδείκτη για την ομάδα καρτελών…">
+<!ENTITY addCurTabsAsCmd.accesskey "ο">
+<!ENTITY manBookmarksCmd.label "Διαχείριση σελιδοδεικτών…">
+<!ENTITY manBookmarksCmd.accesskey "Δ">
+<!ENTITY manBookmarksCmd.commandkey "b">
+
+<!-- Tools Menu -->
+<!ENTITY searchInternetCmd.label "Αναζήτηση στο διαδίκτυο">
+<!ENTITY searchInternetCmd.accesskey "ζ">
+<!ENTITY searchInternet.commandKey "s">
+<!ENTITY translateMenu.label "Μετάφραση σελίδας">
+<!ENTITY translateMenu.accesskey "Μ">
+
+<!ENTITY cookieMessageTitle.label "Τα δικαιώματα cookies άλλαξαν">
+<!ENTITY cookieDisplayCookiesCmd.label "Διαχείριση αποθηκευμένων cookies">
+<!ENTITY cookieDisplayCookiesCmd.accesskey "Δ">
+<!ENTITY cookieAllowCookiesCmd.label "Αποδοχή cookies από την ιστοσελίδα">
+<!ENTITY cookieAllowCookiesCmd.accesskey "Α">
+<!ENTITY cookieAllowCookiesMsg.label "Τα cookies από αυτή την ιστοσελίδα θα επιτρέπονται πάντα.">
+<!ENTITY cookieAllowSessionCookiesCmd.label "Αποδοχή cookies συνεδρίας από αυτή την ιστοσελίδα">
+<!ENTITY cookieAllowSessionCookiesCmd.accesskey "σ">
+<!ENTITY cookieAllowSessionCookiesMsg.label "Αυτή η ιστοσελίδα θα μπορεί να τοποθετεί cookies μόνο στην τρέχουσα συνεδρία.">
+<!ENTITY cookieCookiesDefaultCmd.label "Χρήση προεπιλεγμένων δικαιωμάτων cookie">
+<!ENTITY cookieCookiesDefaultCmd.accesskey "Χ">
+<!ENTITY cookieCookiesDefaultMsg.label "Τα cookies της ιστοσελίδας θα επιτρέπονται ή θα απορρίπτονται σύμφωνα με τις προεπιλεγμένες ρυθμίσεις.">
+<!ENTITY cookieBlockCookiesCmd.label "Φραγή cookies από την ιστοσελίδα">
+<!ENTITY cookieBlockCookiesCmd.accesskey "Φ">
+<!ENTITY cookieBlockCookiesMsg.label "Τα cookies από αυτή την ιστοσελίδα θα απορρίπτονται πάντα.">
+
+<!ENTITY cookieImageMessageTitle.label "Τα δικαιώματα εικόνων άλλαξαν">
+<!ENTITY cookieDisplayImagesCmd.label "Διαχείριση δικαιωμάτων εικόνων">
+<!ENTITY cookieDisplayImagesCmd.accesskey "Δ">
+<!ENTITY cookieAllowImagesCmd.label "Αποδοχή εικόνων από την ιστοσελίδα">
+<!ENTITY cookieAllowImagesCmd.accesskey "Α">
+<!ENTITY cookieAllowImagesMsg.label "Θα γίνεται πάντα λήψη εικόνων από αυτή την ιστοσελίδα.">
+<!ENTITY cookieImagesDefaultCmd.label "Χρήση προεπιλεγμένων δικαιωμάτων εικόνων">
+<!ENTITY cookieImagesDefaultCmd.accesskey "Χ">
+<!ENTITY cookieImagesDefaultMsg.label "Οι εικόνες από αυτή την ιστοσελίδα θα ληφθούν βάσει των προεπιλεγμένων ρυθμίσεων.">
+<!ENTITY cookieBlockImagesCmd.label "Φραγή εικόνων από την ιστοσελίδα">
+<!ENTITY cookieBlockImagesCmd.accesskey "Φ">
+<!ENTITY cookieBlockImagesMsg.label "Δεν θα γίνεται ποτέ λήψη εικόνων από αυτή την ιστοσελίδα.">
+
+<!ENTITY popupsMessageChangeTitle.label "Τα δικαιώματα αναδυόμενων παραθύρων άλλαξαν">
+<!ENTITY popupAllowCmd.label "Αποδοχή αναδυόμενων από την ιστοσελίδα">
+<!ENTITY popupAllowCmd.accesskey "Α">
+<!ENTITY popupAllowMsg.label "Τα αναδυόμενα από αυτή την ιστοσελίδα θα εμφανίζονται πάντα.">
+<!ENTITY popupDefaultCmd.label "Χρήση προεπιλεγμένων δικαιωμάτων αναδυόμενων">
+<!ENTITY popupDefaultCmd.accesskey "Χ">
+<!ENTITY popupDefaultMsg.label "Τα αναδυόμενα παράθυρα από αυτή την ιστοσελίδα θα εμφανίζονται βάσει των προεπιλεγμένων ρυθμίσεων.">
+<!ENTITY popupBlockCmd.label "Φραγή αναδυόμενων από την ιστοσελίδα">
+<!ENTITY popupBlockCmd.accesskey "Φ">
+<!ENTITY popupBlockMsg.label "Δεν θα εμφανίζονται αναδυόμενα από αυτή την ιστοσελίδα.">
+<!ENTITY popupsManage.label "Διαχείριση αναδυόμενων παραθύρων">
+<!ENTITY popupsManage.accesskey "Δ">
+
+<!ENTITY cookieCookieManager.label "Διαχείριση cookies">
+<!ENTITY cookieCookieManager.accesskey "c">
+<!ENTITY cookieImageManager.label "Διαχείριση εικόνων">
+<!ENTITY cookieImageManager.accesskey "ε">
+<!ENTITY popupsManager.label "Διαχείριση αναδυόμενων παραθύρων">
+<!ENTITY popupsManager.accesskey "χ">
+
+<!ENTITY clearPrivateDataCmd.label "Εκκαθάριση ιδιωτικών δεδομένων…">
+<!ENTITY clearPrivateDataCmd.accesskey "κ">
+
+<!ENTITY stopCmd.macCommandKey ".">
+<!ENTITY fullScreenCmd.commandKey "f">
diff --git a/l10n-el/suite/chrome/browser/pageInfo.dtd b/l10n-el/suite/chrome/browser/pageInfo.dtd
new file mode 100644
index 0000000000..c91b5c20b2
--- /dev/null
+++ b/l10n-el/suite/chrome/browser/pageInfo.dtd
@@ -0,0 +1,111 @@
+<!--
+# 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/.
+-->
+
+<!-- Note to localizers, don't localize the strings 'width' or 'height' -->
+<!ENTITY pageInfoWindow.dimensions "width: 100ch; height: 38em;">
+
+<!ENTITY copy.key "C">
+<!ENTITY copy.label "Αντιγραφή">
+<!ENTITY copy.accesskey "Α">
+<!ENTITY selectall.key "A">
+<!ENTITY selectall.label "Επιλογή όλων">
+<!ENTITY selectall.accesskey "ό">
+<!ENTITY openHelpMac.key "?">
+<!ENTITY closeWindow.key "w">
+<!ENTITY copyLinks.label "Αντιγραφή συνδέσμου(ων)">
+<!ENTITY copyLinks.accesskey "σ">
+<!ENTITY openInNewTab.label "Άνοιγμα σε νέα καρτέλα">
+<!ENTITY openInNewTab.accesskey "κ">
+<!ENTITY openInNewWindow.label "Άνοιγμα σε νέο παράθυρο">
+<!ENTITY openInNewWindow.accesskey "π">
+
+<!ENTITY generalTab "Γενικά">
+<!ENTITY generalTab.accesskey "Γ">
+<!ENTITY generalTitle "Τίτλος:">
+<!ENTITY generalURL "Διεύθυνση:">
+<!ENTITY generalType "Τύπος:">
+<!ENTITY generalMode "Λειτουργία εμφάνισης:">
+<!ENTITY generalSize "Μέγεθος:">
+<!ENTITY generalReferrer "URL παραπομπής:">
+<!ENTITY generalSource "Πηγή προσωρινής μνήμης:">
+<!ENTITY generalModified "Τροποποίηση:">
+<!ENTITY generalEncoding2 "Κωδικοποίηση κειμένου:">
+<!ENTITY generalMetaName "Όνομα">
+<!ENTITY generalMetaContent "Περιεχόμενο">
+<!ENTITY generalSecurityDetails "Λεπτομέρειες">
+<!ENTITY generalSecurityDetails.accesskey "Λ">
+
+<!ENTITY formsTab "Φόρμες">
+<!ENTITY formsTab.accesskey "Φ">
+<!ENTITY formAction "Ενέργεια φόρμας">
+<!ENTITY formMethod "Μέθοδος">
+<!ENTITY formName "Όνομα">
+<!ENTITY formEncoding "Κωδικοποίηση:">
+<!ENTITY formTarget "Προορισμός:">
+<!ENTITY formFields "Πεδία:">
+<!ENTITY formLabel "Ετικέτα">
+<!ENTITY formFName "Όνομα πεδίου">
+<!ENTITY formType "Τύπος">
+<!ENTITY formCValue "Τρέχουσα τιμή">
+
+<!ENTITY linksTab "Σύνδεσμοι">
+<!ENTITY linksTab.accesskey "Σ">
+<!ENTITY linkName "Όνομα">
+<!ENTITY linkAddress "Διεύθυνση">
+<!ENTITY linkType "Τύπος">
+<!ENTITY linkTarget "Προορισμός">
+<!ENTITY linkAccessKey "Κλειδί πρόσβασης">
+
+<!ENTITY mediaTab "Πολυμέσα">
+<!ENTITY mediaTab.accesskey "Π">
+<!ENTITY mediaLocation "Τοποθεσία:">
+<!ENTITY mediaText "Σχετικό κείμενο:">
+<!ENTITY mediaAltHeader "Εναλλακτικό κείμενο">
+<!ENTITY mediaAddress "Διεύθυνση">
+<!ENTITY mediaType "Τύπος">
+<!ENTITY mediaSize "Μέγεθος">
+<!ENTITY mediaCount "Αριθμός">
+<!ENTITY mediaDimension "Διαστάσεις:">
+<!ENTITY mediaLongdesc "Μεγάλη περιγραφή:">
+<!ENTITY mediaBlockImage.accesskey "Φ">
+<!ENTITY mediaSaveAs "Αποθήκευση ως…">
+<!ENTITY mediaSaveAs.accesskey "Α">
+<!ENTITY mediaSaveAs2.accesskey "θ">
+<!ENTITY mediaPreview "Προεπισκόπηση πολυμέσων:">
+
+<!ENTITY feedTab "Ροές">
+<!ENTITY feedTab.accesskey "Ρ">
+<!ENTITY feedSubscribe "Συνδρομή">
+<!ENTITY feedSubscribe.accesskey "ν">
+
+<!ENTITY permTab "Δικαιώματα">
+<!ENTITY permTab.accesskey "Δ">
+<!ENTITY permissionsFor "Δικαιώματα για:">
+
+<!ENTITY securityTab "Ασφάλεια">
+<!ENTITY securityTab.accesskey "Α">
+<!ENTITY securityHeader "Πληροφορίες ασφαλείας για αυτή τη σελίδα">
+<!ENTITY securityView.certView "Προβολή πιστοποιητικού">
+<!ENTITY securityView.accesskey "Π">
+<!ENTITY securityView.unknown "Άγνωστο">
+
+
+<!ENTITY securityView.identity.header "Ταυτότητα ιστοσελίδας">
+<!ENTITY securityView.identity.owner "Ιδιοκτήτης:">
+<!ENTITY securityView.identity.domain "Ιστοσελίδα:">
+<!ENTITY securityView.identity.verifier "Επαληθεύτηκε από:">
+<!ENTITY securityView.identity.validity "Λήγει στις:">
+
+<!ENTITY securityView.privacy.header "Απόρρητο &amp; ιστορικό">
+<!ENTITY securityView.privacy.history "Έχω επισκεφθεί αυτή την ιστοσελίδα στο παρελθόν;">
+<!ENTITY securityView.privacy.cookies "Αποθηκεύει αυτή η ιστοσελίδα πληροφορίες (cookies) στον υπολογιστή μου;">
+<!ENTITY securityView.privacy.viewCookies "Προβολή cookies">
+<!ENTITY securityView.privacy.viewCookies.accessKey "k">
+<!ENTITY securityView.privacy.passwords "Έχω αποθηκεύσει κωδικούς πρόσβασης για αυτή την ιστοσελίδα;">
+<!ENTITY securityView.privacy.viewPasswords "Προβολή αποθηκευμένων κωδικών πρόσβασης">
+<!ENTITY securityView.privacy.viewPasswords.accessKey "β">
+
+<!ENTITY securityView.technical.header "Τεχνικές λεπτομέρειες">
diff --git a/l10n-el/suite/chrome/browser/pageInfo.properties b/l10n-el/suite/chrome/browser/pageInfo.properties
new file mode 100644
index 0000000000..096ab769d6
--- /dev/null
+++ b/l10n-el/suite/chrome/browser/pageInfo.properties
@@ -0,0 +1,77 @@
+# 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/.
+
+pageInfo.page.title=Πληροφορίες σελίδας - %S
+pageInfo.frame.title=Πληροφορίες καρέ - %S
+
+noPageTitle=Σελίδα χωρίς τίτλο:
+unknown=Άγνωστο
+default=Προεπιλογή
+notSet=Δεν έχει οριστεί
+yes=Ναι
+no=Όχι
+
+mediaImg=Εικόνα
+mediaVideo=Βίντεο
+mediaAudio=Ήχος
+mediaBGImg=Φόντο
+mediaBorderImg=Περίγραμμα
+mediaListImg=Κουκκίδα
+mediaCursor=Κέρσορας
+mediaObject=Αντικείμενο
+mediaEmbed=Ενσωμάτωση
+mediaLink=Εικονίδιο
+mediaInput=Είσοδος
+mediaFileSize=%S KB
+mediaSize=%Spx \u00D7 %Spx
+mediaSelectFolder=Επιλέξτε φάκελο για αποθήκευση εικόνων
+mediaBlockImage=Φραγή εικόνων από %S
+mediaUnknownNotCached=Άγνωστο (όχι σε προσωρινή μνήμη)
+mediaImageType=Εικόνα %S
+mediaAnimatedImageType=Εικόνα %S (κινούμενη, %S καρέ)
+mediaDimensions=%Spx \u00D7 %Spx
+mediaDimensionsScaled=%Spx \u00D7 %Spx (κλίμακα σε %Spx \u00D7 %Spx)
+
+generalQuirksMode=Λειτουργία συμβατότητας
+generalStrictMode=Λειτουργία σύμφωνα με τα πρότυπα
+generalNotCached=Όχι στην προσωρινή μνήμη
+generalDiskCache=Προσωρινή μνήμη δίσκου
+generalMemoryCache=Προσωρινή μνήμη
+generalSize=%S KB (%S bytes)
+generalMetaTag=Μεταδεδομένα (1 ετικέτα)
+generalMetaTags=Μεταδεδομένα (%S ετικέτες)
+generalSiteIdentity=Αυτή η ιστοσελίδα ανήκει στο %S\nΑυτό έχει επαληθευτεί από %S
+
+formTitle=Φόρμα %S:
+formUntitled=Ανώνυμη φόρμα:
+formDefaultTarget=Κανένα (ανοίγει στο ίδιο παράθυρο)
+formChecked=Επιλεγμένο
+formUnchecked=Μη επιλεγμένο
+formPassword=••••••••
+
+linkAnchor=Άγκυρα
+linkArea=Περιοχή
+linkSubmission=Υποβολή φόρμας
+linkSubmit=Υποβολή ερωτήματος
+linkRel=Σχετικό στοιχείο
+linkStylesheet=Φύλλο στυλ
+linkRev=Αντίστροφος σύνδεσμος
+linkX=Απλό XLink
+linkScript=Δέσμη ενεργειών
+linkScriptInline=εντός μηνύματος
+
+feedRss=RSS
+feedAtom=Atom
+feedXML=XML
+
+securityNoOwner=Αυτή η ιστοσελίδα δεν παρέχει πληροφορίες ιδιοκτησίας.
+# LOCALIZATION NOTE (securityVisitsNumber):
+# Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of visits and can be used in all plural forms as needed, e.g.
+# for '1': 'Yes, #1 time'
+securityVisitsNumber=Ναι, μία φορά;Ναι, #1 φορές
+securityNoVisits=Όχι
+
+permissions.useDefault=Χρήση προεπιλογής
diff --git a/l10n-el/suite/chrome/browser/tabbrowser.dtd b/l10n-el/suite/chrome/browser/tabbrowser.dtd
new file mode 100644
index 0000000000..71a9017262
--- /dev/null
+++ b/l10n-el/suite/chrome/browser/tabbrowser.dtd
@@ -0,0 +1,27 @@
+<!-- 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 untitledTab "(Χωρίς τίτλο)">
+<!ENTITY newTab.label "Νέα καρτέλα">
+<!ENTITY newTab.accesskey "Ν">
+<!ENTITY closeTab.label "Κλείσιμο καρτέλας">
+<!ENTITY closeTab.accesskey "Κ">
+<!ENTITY closeOtherTabs.label "Κλείσιμο άλλων καρτελών">
+<!ENTITY closeOtherTabs.accesskey "ά">
+<!-- LOCALIZATION NOTE (closeTabsToTheEnd.label): This should indicate the
+direction in which tabs are closed, i.e. locales that use RTL mode should say
+left instead of right. -->
+<!ENTITY closeTabsToTheEnd.label "Κλείσιμο καρτελών στα δεξιά">
+<!ENTITY closeTabsToTheEnd.accesskey "δ">
+<!ENTITY reloadAllTabs.label "Ανανέωση όλων των καρτελών">
+<!ENTITY reloadAllTabs.accesskey "Α">
+<!ENTITY reloadTab.label "Ανανέωση καρτέλας">
+<!ENTITY reloadTab.accesskey "Α">
+<!ENTITY bookmarkGroup.label "Προσθήκη σελιδοδείκτη σε αυτή την ομάδα καρτελών">
+<!ENTITY bookmarkGroup.accesskey "Π">
+<!ENTITY closeTabButton.tooltip "Κλείσιμο τρέχουσας καρτέλας">
+<!ENTITY newTabButton.tooltip "Άνοιγμα νέας καρτέλας">
+<!ENTITY listAllTabs.tooltip "Λίστα όλων των καρτελών">
+<!ENTITY undoCloseTab.label "Αναίρεση κλεισίματος καρτέλας">
+<!ENTITY undoCloseTab.accesskey "Α">
diff --git a/l10n-el/suite/chrome/browser/tabbrowser.properties b/l10n-el/suite/chrome/browser/tabbrowser.properties
new file mode 100644
index 0000000000..7f46c0e040
--- /dev/null
+++ b/l10n-el/suite/chrome/browser/tabbrowser.properties
@@ -0,0 +1,32 @@
+# 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/.
+
+tabs.loading=Φόρτωση…
+tabs.untitled=Χωρίς τίτλο
+tabs.closeWarningTitle=Επιβεβαίωση κλεισίματος άλλων καρτελών
+# LOCALIZATION NOTE (tabs.closeWarningOther):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# The singular form is not considered since this string is used only for
+# multiple tabs.
+tabs.closeWarningOther=;Πρόκειται να κλείσετε #1 ακόμη καρτέλες. Θέλετε σίγουρα να συνεχίσετε;
+tabs.closeButton=Κλείσιμο των άλλων καρτελών
+tabs.closeWarningPromptMe=Προειδοποίηση πριν το κλείσιμο άλλων καρτελών
+tabs.closeWarningTitleAll=Επιβεβαίωση κλεισίματος
+# LOCALIZATION NOTE (tabs.closeWarningAll):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# The singular form is not considered since this string is used only for
+# multiple tabs.
+tabs.closeWarningAll=;Αυτό το παράθυρο προγράμματος περιήγησης έχει #1 ανοικτές καρτέλες. Θέλετε να το κλείσετε μαζί με τις καρτέλες του;
+tabs.closeButtonAll=Κλείσιμο όλων των καρτελών
+tabs.closeWarningPromptMeAll=Προειδοποίηση κατά το κλείσιμο πολλαπλών καρτελών
+
+# LOCALIZATION NOTE (tabs.openWarningTitle, tabs.openWarningMultipleBranded, tabs.openButtonMultiple, tabs.openWarningPromptMeBranded):
+# These items were moved from /chrome/common/places/places.properties.
+# Now they are not specific to bookmarks.
+tabs.openWarningTitle=Επιβεβαίωση ανοίγματος
+tabs.openWarningMultipleBranded=Πρόκειται να ανοίξετε %S καρτέλες. Αυτό ενδέχεται να επιβραδύνει το %S κατά τη φόρτωση των σελίδων. Θέλετε σίγουρα να συνεχίσετε;
+tabs.openButtonMultiple=Άνοιγμα καρτελών
+tabs.openWarningPromptMeBranded=Προειδοποίηση όταν το άνοιγμα πολλαπλών καρτελών ενδέχεται να επιβραδύνει το %S
diff --git a/l10n-el/suite/chrome/browser/taskbar.properties b/l10n-el/suite/chrome/browser/taskbar.properties
new file mode 100644
index 0000000000..f315ef96d0
--- /dev/null
+++ b/l10n-el/suite/chrome/browser/taskbar.properties
@@ -0,0 +1,21 @@
+# 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/.
+
+taskbar.tasks.newTab.label=Άνοιγμα νέας καρτέλας
+taskbar.tasks.newTab.description=Άνοιγμα νέας καρτέλας προγράμματος περιήγησης.
+taskbar.tasks.newWindow.label=Άνοιγμα νέου παραθύρου
+taskbar.tasks.newWindow.description=Άνοιγμα νέου παραθύρου προγράμματος περιήγησης.
+taskbar.tasks.newPrivate.label=Άνοιγμα ιδιωτικού παραθύρου
+taskbar.tasks.newPrivate.description=Άνοιγμα νέου παραθύρου ιδιωτικής περιήγησης.
+taskbar.tasks.mailWindow.label=Άνοιγμα αλληλογραφίας & ομάδων συζήτησης
+taskbar.tasks.mailWindow.description=Άνοιγμα του παραθύρου "Αλληλογραφία & ομάδες συζήτησης".
+taskbar.tasks.composeMessage.label=Σύνταξη νέου μηνύματος
+taskbar.tasks.composeMessage.description=Σύνταξη νέου μηνύματος.
+taskbar.tasks.openAddressBook.label=Άνοιγμα ευρετηρίου
+taskbar.tasks.openAddressBook.description=Άνοιγμα του ευρετηρίου σας.
+taskbar.tasks.openEditor.label=Άνοιγμα νέας σελίδας σύνθεσης
+taskbar.tasks.openEditor.description=Άνοιγμα νέας σελίδας σύνθεσης.
+taskbar.frequent.label=Συχνά
+taskbar.recent.label=Πρόσφατα
+
diff --git a/l10n-el/suite/chrome/browser/webDeveloper.dtd b/l10n-el/suite/chrome/browser/webDeveloper.dtd
new file mode 100644
index 0000000000..bbd4e30096
--- /dev/null
+++ b/l10n-el/suite/chrome/browser/webDeveloper.dtd
@@ -0,0 +1,72 @@
+<!-- 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 validatePage.label "Επικύρωση σελίδας">
+<!ENTITY validatePage.accesskey "Ε">
+<!ENTITY allowRemoteDebugging.label "Να επιτρέπεται ο απομακρυσμένος εντοπισμός σφαλμάτων">
+<!ENTITY allowRemoteDebugging.accesskey "Ν">
+
+<!ENTITY devToolsCmd.keycode "VK_F12">
+<!ENTITY devToolsCmd.keytext "F12">
+
+<!ENTITY devtoolsConnect.label "Σύνδεση…">
+<!ENTITY devtoolsConnect.accesskey "ε">
+
+<!ENTITY browserConsoleCmd.label "Κονσόλα προγρ. περιήγησης">
+<!ENTITY browserConsoleCmd.commandkey "Ζ">
+<!ENTITY browserConsoleCmd.accesskey "Κ">
+
+<!ENTITY responsiveDesignTool.label "Λειτουργία αποκρίσιμου σχεδιασμού">
+<!ENTITY responsiveDesignTool.accesskey "α">
+
+<!ENTITY eyedropper.label "Σταγονόμετρο χρωμάτων">
+<!ENTITY eyedropper.accesskey "γ">
+
+<!-- LOCALIZATION NOTE (scratchpad.label): This menu item label appears
+ - in the Tools menu. See bug 653093.
+ - The Scratchpad is intended to provide a simple text editor for creating
+ - and evaluating bits of JavaScript code for the purposes of function
+ - prototyping, experimentation and convenient scripting.
+ -
+ - It's quite possible that you won't have a good analogue for the word
+ - "Scratchpad" in your locale. You should feel free to find a close
+ - approximation to it or choose a word (or words) that means
+ - "simple discardable text editor". -->
+<!ENTITY scratchpad.label "Σημειωματάριο">
+<!ENTITY scratchpad.accesskey "Σ">
+<!ENTITY scratchpad.keycode "VK_F4">
+<!ENTITY scratchpad.keytext "F4">
+
+<!-- LOCALIZATION NOTE (browserToolboxMenu.label): This is the label for the
+ - application menu item that opens the browser toolbox UI in the Tools menu. -->
+<!ENTITY browserToolboxMenu.label "Εργαλειοθήκη περιηγητή">
+<!ENTITY browserToolboxMenu.accesskey "η">
+<!ENTITY browserToolboxCmd.commandkey "I">
+
+<!-- LOCALIZATION NOTE (browserContentToolboxMenu.label): This is the label for the
+ - application menu item that opens the browser content toolbox UI in the Tools menu.
+ - This toolbox allows to debug the chrome of the content process in multiprocess builds. -->
+<!ENTITY browserContentToolboxMenu.label "Εργαλειοθήκη περιεχομένου περιηγητή">
+<!ENTITY browserContentToolboxMenu.accesskey "χ">
+
+<!ENTITY devToolbarCloseButton.tooltiptext "Κλείσιμο εργαλειοθήκης προγραμματιστή">
+<!ENTITY devToolbarMenu.label "Γραμμή εργαλείων προγραμματιστή">
+<!ENTITY devToolbarMenu.accesskey "π">
+
+<!ENTITY webide.label "WebIDE">
+<!ENTITY webide.accesskey "W">
+<!ENTITY webide.keycode "VK_F8">
+<!ENTITY webide.keytext "F8">
+
+<!ENTITY devToolbar.keycode "VK_F2">
+<!ENTITY devToolbar.keytext "F2">
+
+<!ENTITY devToolboxMenuItem.label "(Απ)ενεργοποίηση εργαλείων">
+<!ENTITY devToolboxMenuItem.accesskey "ε">
+<!ENTITY devToolboxMenuItem.keytext "I">
+
+<!ENTITY devToolbarToolsButton.tooltip "Εναλλαγή εργαλείων προγραμματιστή">
+
+<!ENTITY getMoreDevtoolsCmd.label "Λήψη περισσότερων εργαλείων">
+<!ENTITY getMoreDevtoolsCmd.accesskey "π">
diff --git a/l10n-el/suite/chrome/common/about.dtd b/l10n-el/suite/chrome/common/about.dtd
new file mode 100644
index 0000000000..4cd24816ee
--- /dev/null
+++ b/l10n-el/suite/chrome/common/about.dtd
@@ -0,0 +1,70 @@
+<!-- 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 the following declarations were copied from
+ mozilla/toolkit/locales/en-US/chrome/global/about.dtd which was removed
+ by bug 1408044. -->
+
+<!ENTITY about.version "έκδοση">
+
+<!-- LOCALIZATION NOTE (about.credits.beforeLink): note that there is no space
+ between this phrase and the linked about.credits.linkTitle phrase, so if
+ your locale needs a space between words, add it at the end of this
+ entity. -->
+<!ENTITY about.credits.beforeLink "Δείτε τη λίστα με τους ">
+<!ENTITY about.credits.linkTitle "συντελεστές">
+<!-- LOCALIZATION NOTE (about.credits.afterLink): note that there is no space
+ between the linked about.credits.linkTitle phrase and this phrase, so if
+ your locale needs a space between words, add it at the start of this
+ entity. -->
+<!ENTITY about.credits.afterLink " στο έργο της Mozilla.">
+
+<!-- LOCALIZATION NOTE (about.license.beforeTheLink): note that there is no
+ space between this phrase and the linked about.license.linkTitle phrase,
+ so if your locale needs a space between words, add it at the end of this
+ entity. -->
+<!ENTITY about.license.beforeTheLink "Διαβάστε τις ">
+<!ENTITY about.license.linkTitle "πληροφορίες αδειοδότησης">
+<!-- LOCALIZATION NOTE (about.license.afterTheLink): note that there is no
+ space between the linked about.license.linkTitle phrase and this phrase,
+ so if your locale needs a space between words, add it at the start of
+ this entity. -->
+<!ENTITY about.license.afterTheLink " για αυτό το προϊόν.">
+
+<!-- LOCALIZATION NOTE (about.relnotes.beforeTheLink): note that there is no
+ space between this phrase and the linked about.relnotes.linkTitle phrase,
+ so if your locale needs a space between words, add it at the end of this
+ entity. -->
+<!ENTITY about.relnotes.beforeTheLink "Διαβάστε τις ">
+<!ENTITY about.relnotes.linkTitle "σημειώσεις έκδοσης">
+<!-- LOCALIZATION NOTE (about.relnotes.afterTheLink): note that there is no
+ space between the linked about.relnotes.linkTitle phrase and this phrase,
+ so if your locale needs a space between words, add it at the start of
+ this entity. -->
+<!ENTITY about.relnotes.afterTheLink " για αυτή την έκδοση.">
+
+<!-- LOCALIZATION NOTE (about.buildconfig.beforeTheLink): note that there is
+ no space between this phrase and the linked about.buildconfig.linkTitle
+ phrase, so if your locale needs a space between words, add it at the end
+ of this entity. -->
+<!ENTITY about.buildconfig.beforeTheLink "Δείτε τις ">
+<!ENTITY about.buildconfig.linkTitle "ρυθμίσεις δόμησης">
+<!-- LOCALIZATION NOTE (about.buildconfig.afterTheLink): note that there is no
+ space between the linked about.buildconfig.linkTitle phrase and this
+ phrase, so if your locale needs a space between words, add it at the
+ start of this entity. -->
+<!ENTITY about.buildconfig.afterTheLink " για αυτή την έκδοση.">
+
+<!ENTITY about.buildIdentifier "Αναγνωριστικό έκδοσης: ">
+
+<!-- LOCALIZATION NOTE end of declarations that were copied from
+ mozilla/toolkit/locales/en-US/chrome/global/about.dtd -->
+
+<!-- LOCALIZATION NOTE (channel.description.start,channel.description.end):
+ channel.description.start and channel.description.end create one sentence,
+ with the current channel label inserted in between.
+ example: You are currently on the _Stable_ update channel. -->
+<!ENTITY channel.description.start "Αυτή τη στιγμή, βρίσκεστε στο κανάλι ενημερώσεων ">
+<!ENTITY channel.description.end " .">
+<!ENTITY about.userAgent "Πλατφόρμα χρήστη: ">
diff --git a/l10n-el/suite/chrome/common/aboutPrivateBrowsing.dtd b/l10n-el/suite/chrome/common/aboutPrivateBrowsing.dtd
new file mode 100644
index 0000000000..bde042f1b6
--- /dev/null
+++ b/l10n-el/suite/chrome/common/aboutPrivateBrowsing.dtd
@@ -0,0 +1,26 @@
+<!-- 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: where ".private" and ".normal" variants exist,
+ - the former is shown in a private browsing window and the latter in
+ - a regular (non-private) browsing window. -->
+
+<!ENTITY privatebrowsingpage.title.private "Βρίσκεστε σε παράθυρο ιδιωτικής περιήγησης">
+<!ENTITY privatebrowsingpage.title.normal "Θέλετε να εκκινήσετε την ιδιωτική περιήγηση;">
+
+<!ENTITY privatebrowsingpage.status.private "Το &brandShortName; δεν θα αποθηκεύει ιστορικό για τα ιδιωτικά παράθυρα.">
+<!ENTITY privatebrowsingpage.status.normal "Αυτή τη στιγμή, δεν βρίσκεστε σε ιδιωτικό παράθυρο.">
+
+<!ENTITY privatebrowsingpage.common.description "Στα παράθυρα ιδιωτικής περιήγησης, το &brandShortName; δεν καταγράφει το ιστορικό περιήγησης, αναζήτησης, λήψεων, φορμών ιστού, τα cookies ή τα προσωρινά αρχεία διαδικτύου. Ωστόσο, διατηρούνται οι σελιδοδείκτες και τα ληφθέντα αρχεία.">
+<!ENTITY privatebrowsingpage.track.warn "Αν και ο υπολογιστής δεν θα καταγράφει το ιστορικό περιήγησής σας, ο εργοδότης ή ο πάροχος υπηρεσιών διαδικτύου σας ενδέχεται να μπορούν να καταγράψουν τις σελίδες που επισκέπτεστε.">
+<!ENTITY privatebrowsingpage.learnmore.label "Μάθετε περισσότερα">
+<!ENTITY privatebrowsingpage.learnmore.accesskey "Μ">
+
+<!ENTITY privatebrowsingpage.close.info "Μόλις τελειώσετε, κλείστε το παράθυρο για διακοπή ιδιωτικής περιήγησης.">
+<!ENTITY privatebrowsingpage.close.label "Κλείσιμο παραθύρου τώρα">
+<!ENTITY privatebrowsingpage.close.accesskey "Κ">
+
+<!ENTITY privatebrowsingpage.start.info "Για έναρξη της ιδιωτικής περιήγησης, κάντε κλικ στο παρακάτω κουμπί ή επιλέξτε Αρχείο ▶ Νέο ▶ Ιδιωτικό παράθυρο, από το μενού.">
+<!ENTITY privatebrowsingpage.private.label "Άνοιγμα νέου ιδιωτικού παραθύρου">
+<!ENTITY privatebrowsingpage.private.accesskey "Ά">
diff --git a/l10n-el/suite/chrome/common/aboutSessionRestore.dtd b/l10n-el/suite/chrome/common/aboutSessionRestore.dtd
new file mode 100644
index 0000000000..445a8dd281
--- /dev/null
+++ b/l10n-el/suite/chrome/common/aboutSessionRestore.dtd
@@ -0,0 +1,22 @@
+<!-- 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 restorepage.tabtitle "Επαναφορά συνεδρίας">
+<!ENTITY restorepage.pagetitle "Θέλετε να επαναφέρετε τη συνεδρία σας;">
+<!-- LOCALIZATION NOTE: If "closed unexpectedly" sounds too awkward in the translation,
+ you may translate "crash" instead (even though it's IT-speak) -->
+<!ENTITY restorepage.issueDesc "Η προηγούμενη συνεδρία σας στο &brandShortName; έκλεισε απροσδόκητα. Ζητούμε συγγνώμη για την αναστάτωση. Μπορείτε να ανακτήσετε τις καρτέλες και τα παράθυρα από την προηγούμενη συνεδρία σας, ή να ξεκινήσετε μια νέα συνεδρία αν δεν τα χρειάζεστε πλέον.">
+<!ENTITY restorepage.remedies "Αν το &brandShortName; κλείνει επανειλημμένα:">
+<!ENTITY restorepage.dueToChrome "Δοκιμάστε να απενεργοποιήσετε τυχόν επεκτάσεις που προσθέσατε πρόσφατα στη Διαχείριση προσθέτων.">
+<!ENTITY restorepage.dueToContent "Δοκιμάστε να επαναφέρετε τη συνεδρία σας χωρίς τις ιστοσελίδες που υποψιάζεστε ότι προκαλούν το πρόβλημα:">
+
+<!ENTITY restorepage.restoreButton "Επαναφορά προηγούμενης συνεδρίας">
+<!ENTITY restorepage.restore.access "Ε">
+<!ENTITY restorepage.cancelButton "Έναρξη νέας συνεδρίας">
+<!ENTITY restorepage.cancel.access "Έ">
+
+<!ENTITY restorepage.restoreHeader "Επαναφορά">
+<!ENTITY restorepage.listHeader "Παραθύρων και καρτελών">
+<!-- LOCALIZATION NOTE: &#37;S will be replaced with a number. -->
+<!ENTITY restorepage.windowLabel "Παραθύρου &#37;S">
diff --git a/l10n-el/suite/chrome/common/aboutSyncTabs.dtd b/l10n-el/suite/chrome/common/aboutSyncTabs.dtd
new file mode 100644
index 0000000000..08b3d20b2a
--- /dev/null
+++ b/l10n-el/suite/chrome/common/aboutSyncTabs.dtd
@@ -0,0 +1,22 @@
+<!-- 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 (tabs.otherComputers.label): Keep this in sync with syncTabsMenu.label from navigator.dtd -->
+<!ENTITY tabs.otherComputers.label "Καρτέλες από άλλους υπολογιστές">
+
+<!ENTITY tabs.searchText.label "Πληκτρολογήστε εδώ για εύρεση καρτελών…">
+
+<!-- LOCALIZATION NOTE (tabs.context.openTab.accesskey, tabs.context.openMultipleTabs.accesskey;
+ tabs.context.bookmarkSingleTab.accesskey, tabs.context.bookmarkMultipleTabs.accesskey):
+ Only one of each of these pairs will show at a time (based on selection), so reusing accesskey is ok. -->
+<!ENTITY tabs.context.openTab.label "Άνοιγμα καρτέλας">
+<!ENTITY tabs.context.openTab.accesskey "Ά">
+<!ENTITY tabs.context.openMultipleTabs.label "Άνοιγμα επιλεγμένων καρτελών">
+<!ENTITY tabs.context.openMultipleTabs.accesskey "Ά">
+<!ENTITY tabs.context.bookmarkSingleTab.label "Προσθήκη καρτέλας στους σελιδοδείκτες…">
+<!ENTITY tabs.context.bookmarkSingleTab.accesskey "Π">
+<!ENTITY tabs.context.bookmarkMultipleTabs.label "Προσθήκη επιλεγμένων καρτελών στους σελιδοδείκτες…">
+<!ENTITY tabs.context.bookmarkMultipleTabs.accesskey "Π">
+<!ENTITY tabs.context.refreshList.label "Ανανέωση λίστας">
+<!ENTITY tabs.context.refreshList.accesskey "Α">
diff --git a/l10n-el/suite/chrome/common/askViewZoom.dtd b/l10n-el/suite/chrome/common/askViewZoom.dtd
new file mode 100644
index 0000000000..137b150ee3
--- /dev/null
+++ b/l10n-el/suite/chrome/common/askViewZoom.dtd
@@ -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/. -->
+
+<!ENTITY askViewZoom.title "Ζουμ">
+<!ENTITY selectZoom.label "Επιλογή ζουμ (&#37;):">
diff --git a/l10n-el/suite/chrome/common/certError.dtd b/l10n-el/suite/chrome/common/certError.dtd
new file mode 100644
index 0000000000..0419ae22c3
--- /dev/null
+++ b/l10n-el/suite/chrome/common/certError.dtd
@@ -0,0 +1,44 @@
+<!-- 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/. -->
+
+<!-- These strings are used by SeaMonkey's custom about:certerror page,
+a replacement for the standard security certificate errors produced
+by NSS/PSM via netError.xhtml. -->
+
+<!ENTITY certerror.pagetitle "Μη έμπιστη σύνδεση">
+<!ENTITY certerror.longpagetitle "Η σύνδεση δεν είναι αξιόπιστη">
+
+<!-- Localization note (certerror.introPara1a) - The text content of the span
+tag will be replaced at runtime with the name of the server to which the user
+was trying to connect. -->
+<!ENTITY certerror.introPara1a "Ζητήσατε από το &brandShortName; να συνδεθεί
+με ασφάλεια στο <span class='hostname'/>, αλλά δεν μπορούμε να επαληθεύσουμε
+ότι η σύνδεση είναι ασφαλής.">
+<!ENTITY certerror.introPara2 "Κανονικά, όταν προσπαθείτε να συνδεθείτε με ασφάλεια, οι ιστοσελίδες
+παραθέτουν αξιόπιστα πιστοποιητικά που αποδεικνύουν ότι είστε στο
+σωστό μέρος. Ωστόσο, η ταυτότητα αυτής της σελίδας δεν μπορεί να επαληθευτεί.">
+
+<!ENTITY certerror.whatShouldIDo.heading "Τι πρέπει να κάνω;">
+<!ENTITY certerror.whatShouldIDo.content "Αν συνδέεστε συχνά σε
+αυτή την ιστοσελίδα χωρίς προβλήματα, αυτό το σφάλμα σημαίνει ότι κάποιος
+προσπαθεί να την υποδυθεί και δεν πρέπει να συνεχίσετε.">
+<!ENTITY certerror.whatShouldIDo.badStsCertExplanation "Αυτή η ιστοσελίδα χρησιμοποιεί το πρωτόκολλο HSTS
+(HTTP Strict Transport Security) για να καθορίσει την ασφαλή σύνδεση με το
+&brandShortName;. Συνεπώς, δεν είναι δυνατή η εξαίρεση αυτού του
+πιστοποιητικού.">
+<!ENTITY certerror.getMeOutOfHere.label "Δεν μου αρέσει αυτό, επιστροφή στην αρχική μου σελίδα">
+
+<!ENTITY certerror.expert.heading "Κατανοώ τους κινδύνους">
+<!ENTITY certerror.expert.content "Αν καταλαβαίνετε τι συμβαίνει, μπορείτε να ρυθμίσετε
+το &brandShortName; ώστε να εμπιστεύεται την ταυτότητα της ιστοσελίδας.
+<b>Ακόμα κι αν εμπιστεύεστε την ιστοσελίδα, αυτό το σφάλμα υποδεικνύει ότι
+κάποιος ενδέχεται να έχει παραβιάσει τη σύνδεσή σας.</b>">
+<!ENTITY certerror.expert.contentPara2 "Μην προσθέστε εξαίρεση εκτός αν υπάρχει
+λόγος που η ιστοσελίδα αυτή δεν χρησιμοποιεί αξιόπιστη ταυτοποίηση.">
+<!ENTITY certerror.addException.label "Προσθήκη εξαίρεσης…">
+
+<!ENTITY certerror.technical.heading "Τεχνικές λεπτομέρειες">
+
+<!ENTITY dnsNotFound.pageTitle "Ο διακομιστής δεν βρέθηκε">
+<!ENTITY malformedURI.pageTitle "Μη έγκυρο URL">
diff --git a/l10n-el/suite/chrome/common/console/console.dtd b/l10n-el/suite/chrome/common/console/console.dtd
new file mode 100644
index 0000000000..dac8bf0b8a
--- /dev/null
+++ b/l10n-el/suite/chrome/common/console/console.dtd
@@ -0,0 +1,47 @@
+<!-- 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 errorConsole.title "Κονσόλα σφαλμάτων">
+
+<!ENTITY errFile.label "Αρχείο προέλευσης:">
+<!ENTITY errLine.label "Γραμμή:">
+<!ENTITY errColumn.label "Στήλη:">
+
+<!ENTITY all.label "Όλα">
+<!ENTITY all.accesskey "Ό">
+<!ENTITY errors.label "Σφάλματα">
+<!ENTITY errors.accesskey "φ">
+<!ENTITY warnings.label "Προειδοποιήσεις">
+<!ENTITY warnings.accesskey "δ">
+<!ENTITY messages.label "Μηνύματα">
+<!ENTITY messages.accesskey "Μ">
+<!ENTITY clear.label "Απαλοιφή">
+<!ENTITY clear.accesskey "λ">
+<!ENTITY codeEval.label "Κώδικας:">
+<!ENTITY codeEval.accesskey "ώ">
+<!ENTITY evaluate.label "Εκτίμηση">
+<!ENTITY evaluate.accesskey "κ">
+<!ENTITY filter2.label "Φίλτρο:">
+<!ENTITY filter2.accesskey "ί">
+
+<!ENTITY copyCmd.label "Αντιγραφή">
+<!ENTITY copyCmd.accesskey "Α">
+<!ENTITY copyCmd.commandkey "C">
+<!ENTITY sortFirst.label "Σειρά ταξινόμησης: Πρώτο > Τελευταίο">
+<!ENTITY sortFirst.accesskey "Π">
+<!ENTITY sortLast.label "Σειρά ταξινόμησης: Τελευταίο > Πρώτο">
+<!ENTITY sortLast.accesskey "Τ">
+<!ENTITY closeCmd.commandkey "w">
+<!ENTITY focus1.commandkey "l">
+<!ENTITY focus2.commandkey "d">
+
+<!ENTITY menuBar.tooltip "Γραμμή μενού">
+<!ENTITY modeToolbar.tooltip "Γραμμή λειτουργίας">
+<!ENTITY entryToolbar.tooltip "Γραμμή καταχωρήσεων Javascript">
+<!ENTITY toolbarsCmd.label "Εμφάνιση/Απόκρυψη">
+<!ENTITY toolbarsCmd.accesskey "ν">
+<!ENTITY toolbarMode.label "Λειτουργία">
+<!ENTITY toolbarMode.accesskey "Λ">
+<!ENTITY toolbarEval.label "Καταχώρηση JavaScript">
+<!ENTITY toolbarEval.accesskey "J">
diff --git a/l10n-el/suite/chrome/common/console/console.properties b/l10n-el/suite/chrome/common/console/console.properties
new file mode 100644
index 0000000000..dc1aed410e
--- /dev/null
+++ b/l10n-el/suite/chrome/common/console/console.properties
@@ -0,0 +1,17 @@
+# 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/.
+
+typeError=Σφάλμα:
+typeWarning=Προειδοποίηση:
+typeMessage=Μήνυμα:
+errFile=Αρχείο προέλευσης: %S
+errLine=Γραμμή: %S
+errLineCol=Γραμμή: %S, Στήλη: %S
+errCode=Πηγαίος κώδικας:
+errTime=Χρονοσήμανση: %S
+
+# LOCALIZATION NOTE (evaluationContextChanged): The message displayed when the
+# browser console's evaluation context (window against which input is evaluated)
+# changes.
+evaluationContextChanged=Το πλαίσιο αξιολόγησης της κονσόλας άλλαξε, επειδή έκλεισε το παράθυρο-στόχος ή επειδή ανοίξατε ένα κύριο παράθυρο από το παράθυρο κονσόλας του προγράμματος περιήγησης.
diff --git a/l10n-el/suite/chrome/common/contentAreaCommands.dtd b/l10n-el/suite/chrome/common/contentAreaCommands.dtd
new file mode 100644
index 0000000000..aae2fd3756
--- /dev/null
+++ b/l10n-el/suite/chrome/common/contentAreaCommands.dtd
@@ -0,0 +1,170 @@
+<!-- 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/. -->
+
+<!-- Context Menu -->
+<!ENTITY popupWindowRejectCmd.label "Απόρριψη αναδυόμενων παραθύρων από αυτή την ιστοσελίδα">
+<!ENTITY popupWindowRejectCmd.accesskey "ο">
+<!ENTITY popupWindowAllowCmd.label "Αποδοχή αναδυόμενων από την ιστοσελίδα">
+<!ENTITY popupWindowAllowCmd.accesskey "ο">
+<!ENTITY openLinkCmdInTab.label "Άνοιγμα συνδέσμου σε νέα καρτέλα">
+<!ENTITY openLinkCmdInTab.accesskey "κ">
+<!ENTITY openLinkCmd.label "Άνοιγμα συνδέσμου σε νέο παράθυρο">
+<!ENTITY openLinkCmd.accesskey "ν">
+<!ENTITY openLinkCmdInPrivateWindow.label "Άνοιγμα συνδέσμου σε ιδιωτικό παράθυρο">
+<!ENTITY openLinkCmdInPrivateWindow.accesskey "δ">
+<!ENTITY openLinkInWindowCmd.label "Άνοιγμα">
+<!ENTITY openLinkInWindowCmd.accesskey "ν">
+<!ENTITY openFrameCmd.label "Άνοιγμα καρέ σε νέο παράθυρο">
+<!ENTITY openFrameCmd.accesskey "π">
+<!ENTITY openFrameCmdInTab.label "Άνοιγμα καρέ σε νέα καρτέλα">
+<!ENTITY openFrameCmdInTab.accesskey "κ">
+<!ENTITY keywordfield.label "Προσθήκη λέξης-κλειδιού αναζήτησης…">
+<!ENTITY keywordfield.accesskey "λ">
+<!ENTITY showOnlyThisFrameCmd.label "Εμφάνιση μόνο αυτού του καρέ">
+<!ENTITY showOnlyThisFrameCmd.accesskey "Ε">
+<!ENTITY goBackCmd.label "Πίσω">
+<!ENTITY goBackCmd.accesskey "Π">
+<!ENTITY goForwardCmd.label "Εμπρός">
+<!ENTITY goForwardCmd.accesskey "Ε">
+<!ENTITY goUpCmd.label "Πάνω">
+<!ENTITY goUpCmd.accesskey "Π">
+<!ENTITY reloadCmd.label "Ανανέωση">
+<!ENTITY reloadCmd.accesskey "Α">
+<!ENTITY reloadCmd.commandkey "r">
+<!ENTITY stopCmd.label "Διακοπή">
+<!ENTITY stopCmd.accesskey "Δ">
+<!ENTITY reloadFrameCmd.label "Ανανέωση καρέ">
+<!ENTITY reloadFrameCmd.accesskey "Α">
+<!ENTITY viewPartialSourceForSelectionCmd.label "Προβολή πηγαίου κώδικα επιλογής">
+<!ENTITY viewPartialSourceForMathMLCmd.label "Προβολή πηγαίου κώδικα MathML">
+<!ENTITY viewPartialSourceCmd.accesskey "β">
+<!ENTITY viewPageSourceCmd.label "Προβολή πηγαίου κώδικα σελίδας">
+<!ENTITY viewPageSourceCmd.accesskey "Π">
+<!ENTITY viewFrameSourceCmd.label "Προβολή πηγαίου κώδικα καρέ">
+<!ENTITY viewFrameSourceCmd.accesskey "Π">
+<!ENTITY viewPageInfoCmd.label "Προβολή πληροφοριών σελίδας">
+<!ENTITY viewPageInfoCmd.accesskey "Π">
+<!ENTITY viewFrameInfoCmd.label "Προβολή πληροφοριών πλαισίου">
+<!ENTITY viewFrameInfoCmd.accesskey "λ">
+<!ENTITY fitImageCmd.label "Προσαρμογή εικόνας στο παράθυρο">
+<!ENTITY fitImageCmd.accesskey "Π">
+<!ENTITY reloadImageCmd.label "Ανανέωση εικόνας">
+<!ENTITY reloadImageCmd.accesskey "Α">
+<!ENTITY viewImageCmd.label "Προβολή εικόνας">
+<!ENTITY viewImageCmd.accesskey "ε">
+<!ENTITY viewImageInfoCmd.label "Προβολή πληροφοριών εικόνας">
+<!ENTITY viewImageInfoCmd.accesskey "ι">
+<!ENTITY viewVideoCmd.label "Προβολή βίντεο">
+<!ENTITY viewVideoCmd.accesskey "β">
+<!ENTITY viewBGImageCmd.label "Προβολή εικόνας φόντου">
+<!ENTITY viewBGImageCmd.accesskey "λ">
+<!ENTITY setDesktopBackgroundCmd.label "Ορισμός φόντου επιφάνειας εργασίας…">
+<!ENTITY setDesktopBackgroundCmd.accesskey "α">
+<!ENTITY bookmarkPageCmd.label "Προσθήκη σελιδοδείκτη σελίδας…">
+<!ENTITY bookmarkPageCmd.accesskey "κ">
+<!ENTITY bookmarkLinkCmd.label "Προσθήκη σελιδοδείκτη συνδέσμου…">
+<!ENTITY bookmarkLinkCmd.accesskey "Π">
+<!ENTITY bookmarkFrameCmd.label "Προσθήκη σελιδοδείκτη καρέ…">
+<!ENTITY bookmarkFrameCmd.accesskey "ρ">
+<!ENTITY savePageAsCmd.label "Αποθήκευση σελίδας ως…">
+<!ENTITY savePageCmd.label "Αποθήκευση σελίδας">
+<!ENTITY savePageCmd.accesskey "σ">
+<!ENTITY savePageCmd.commandkey "s">
+<!ENTITY saveFrameAsCmd.label "Αποθήκευση καρέ ως…">
+<!ENTITY saveFrameCmd.label "Αποθήκευση καρέ">
+<!ENTITY saveFrameCmd.accesskey "κ">
+<!ENTITY printFrameCmd.label "Εκτύπωση καρέ…">
+<!ENTITY printFrameCmd.accesskey "Ε">
+<!ENTITY saveLinkAsCmd.label "Αποθήκευση συνδέσμου προορισμού ως…">
+<!ENTITY saveLinkCmd.label "Αποθήκευση συνδέσμου προορισμού">
+<!ENTITY saveLinkCmd.accesskey "Α">
+<!ENTITY saveImageAsCmd.label "Αποθήκευση εικόνας ως…">
+<!ENTITY saveImageCmd.label "Αποθήκευση εικόνας">
+<!ENTITY saveImageCmd.accesskey "κ">
+<!ENTITY saveVideoCmd.label "Αποθήκευση βίντεο ως…">
+<!ENTITY saveVideoCmd.accesskey "β">
+<!ENTITY saveAudioCmd.label "Αποθήκευση ήχου ως…">
+<!ENTITY saveAudioCmd.accesskey "θ">
+<!ENTITY copyLinkCmd.label "Αντιγραφή τοποθεσίας συνδέσμου">
+<!ENTITY copyLinkCmd.accesskey "τ">
+<!ENTITY copyImageCmd.label "Αντιγραφή εικόνας">
+<!ENTITY copyImageCmd.accesskey "γ">
+<!ENTITY copyVideoURLCmd.label "Αντιγραφή τοποθεσίας βίντεο">
+<!ENTITY copyVideoURLCmd.accesskey "Α">
+<!ENTITY copyAudioURLCmd.label "Αντιγραφή τοποθεσίας ήχου">
+<!ENTITY copyAudioURLCmd.accesskey "τ">
+<!ENTITY metadataCmd.label "Ιδιότητες">
+<!ENTITY metadataCmd.accesskey "Ι">
+<!ENTITY copyEmailCmd.label "Αντιγραφή διεύθυνσης email">
+<!ENTITY copyEmailCmd.accesskey "φ">
+<!ENTITY thisFrameMenu.label "Αυτό το καρέ">
+<!ENTITY thisFrameMenu.accesskey "ρ">
+<!ENTITY mediaPlay.label "Αναπαραγωγή">
+<!ENTITY mediaPlay.accesskey "Α">
+<!ENTITY mediaPause.label "Παύση">
+<!ENTITY mediaPause.accesskey "Π">
+<!ENTITY mediaMute.label "Σίγαση">
+<!ENTITY mediaMute.accesskey "Σ">
+<!ENTITY mediaUnmute.label "Άρση σίγασης">
+<!ENTITY mediaUnmute.accesskey "γ">
+<!ENTITY mediaPlaybackRate.label "Ταχύτητα αναπαραγωγής">
+<!ENTITY mediaPlaybackRate.accesskey "ν">
+<!ENTITY mediaPlaybackRate050.label "Αργή κίνηση (½×)">
+<!ENTITY mediaPlaybackRate050.accesskey "Α">
+<!ENTITY mediaPlaybackRate100.label "Κανονική ταχύτητα">
+<!ENTITY mediaPlaybackRate100.accesskey "Κ">
+<!ENTITY mediaPlaybackRate125.label "Υψηλή ταχύτητα (1¼×)">
+<!ENTITY mediaPlaybackRate125.accesskey "Υ">
+<!ENTITY mediaPlaybackRate150.label "Πολύ υψηλή ταχύτητα (1½×)">
+<!ENTITY mediaPlaybackRate150.accesskey "Π">
+<!ENTITY mediaPlaybackRate200.label "Διπλή ταχύτητα">
+<!ENTITY mediaPlaybackRate200.accesskey "Δ">
+<!ENTITY mediaLoop.label "Επανάληψη">
+<!ENTITY mediaLoop.accesskey "λ">
+<!-- LOCALIZATION NOTE: The access keys for "Show Controls" and
+"Hide Controls" are the same because the two context-menu
+items are mutually exclusive. -->
+<!ENTITY mediaShowControls.label "Εμφάνιση στοιχείων ελέγχου πολυμέσων">
+<!ENTITY mediaShowControls.accesskey "φ">
+<!ENTITY mediaHideControls.label "Απόκρυψη στοιχείων ελέγχου πολυμέσων">
+<!ENTITY mediaHideControls.accesskey "κ">
+<!ENTITY videoFullScreen.label "Πλήρης οθόνη">
+<!ENTITY videoFullScreen.accesskey "Π">
+<!ENTITY videoSaveImage.label "Αποθήκευση στιγμιότυπου ως…">
+<!ENTITY videoSaveImage.accesskey "Α">
+<!ENTITY videoShowStats.label "Εμφάνιση στατιστικών">
+<!ENTITY videoShowStats.accesskey "σ">
+<!ENTITY videoHideStats.label "Απόκρυψη στατιστικών">
+<!ENTITY videoHideStats.accesskey "σ">
+<!ENTITY search.accesskey "ζ">
+<!ENTITY bidiSwitchPageDirectionItem.label "Αλλαγή κατεύθυνσης σελίδας">
+<!ENTITY bidiSwitchPageDirectionItem.accesskey "σ">
+<!ENTITY bidiSwitchTextDirectionItem.label "Αλλαγή κατεύθυνσης κειμένου">
+<!ENTITY bidiSwitchTextDirectionItem.accesskey "κ">
+<!ENTITY spellAddToDictionary.label "Προσθήκη στο λεξικό">
+<!ENTITY spellAddToDictionary.accesskey "ξ">
+<!ENTITY spellUndoAddToDictionary.label "Αναίρεση προσθήκης στο λεξικό">
+<!ENTITY spellUndoAddToDictionary.accesskey "ρ">
+<!ENTITY spellIgnoreWord.label "Παράβλεψη λέξης">
+<!ENTITY spellIgnoreWord.accesskey "λ">
+<!ENTITY spellCheckEnable.label "Ορθογραφικός έλεγχος">
+<!ENTITY spellCheckEnable.accesskey "Ο">
+<!ENTITY spellNoSuggestions.label "(Καμία πρόταση ορθογραφίας)">
+<!ENTITY spellDictionaries.label "Γλώσσες">
+<!ENTITY spellDictionaries.accesskey "Γ">
+<!ENTITY spellAddDictionaries.label "Λήψη περισσότερων λεξικών…">
+<!ENTITY spellAddDictionaries.accesskey "Λ">
+
+<!ENTITY fillLoginMenu.label "Συμπλήρωση σύνδεσης">
+<!ENTITY fillLoginMenu.accesskey "Σ">
+<!ENTITY fillPasswordMenu.label "Συμπλήρωση κωδικού πρόσβασης">
+<!ENTITY fillPasswordMenu.accesskey "Σ">
+<!ENTITY fillUsernameMenu.label "Συμπλήρωση ονόματος χρήστη">
+<!ENTITY fillUsernameMenu.accesskey "Σ">
+<!ENTITY noLoginSuggestions.label "(Καμία πρόταση σύνδεσης)">
+<!ENTITY viewSavedLogins.label "Προβολή αποθηκευμένων συνδέσεων">
+
+<!-- Developer Tools -->
+<!ENTITY devtoolsInspect.label "Επιθεώρηση στοιχείου">
+<!ENTITY devtoolsInspect.accesskey "σ">
diff --git a/l10n-el/suite/chrome/common/contentAreaCommands.properties b/l10n-el/suite/chrome/common/contentAreaCommands.properties
new file mode 100644
index 0000000000..0b318bf735
--- /dev/null
+++ b/l10n-el/suite/chrome/common/contentAreaCommands.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/.
+
+# context menu strings
+
+# LOCALIZATION NOTE (searchSelected): %1$S is the search engine,
+# %2$S is the selection string.
+searchSelected=Αναζήτηση στο %1$S για "%2$S"
+searchSelected.accesskey=ζ
+
+blockImage=Φραγή εικόνων από %S
+blockImage.accesskey=γ
+unblockImage=Αποδοχή εικόνων από %S
+unblockImage.accesskey=χ
diff --git a/l10n-el/suite/chrome/common/customizeToolbar.dtd b/l10n-el/suite/chrome/common/customizeToolbar.dtd
new file mode 100644
index 0000000000..4a3cfea62e
--- /dev/null
+++ b/l10n-el/suite/chrome/common/customizeToolbar.dtd
@@ -0,0 +1,18 @@
+<!-- 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 below used to be in mozilla-central's
+ toolkit/locales/en-US/chrome/global/customizeToolbar.dtd -->
+<!ENTITY dialog.title "Προσαρμογή γραμμής εργαλείων">
+<!ENTITY dialog.dimensions "width: 92ch; height: 36em;">
+<!ENTITY instructions.description "Μπορείτε να προσθέσετε ή να αφαιρέσετε στοιχεία σύροντας εντός ή εκτός των γραμμών εργαλείων.">
+<!ENTITY show.label "Εμφάνιση:">
+<!ENTITY iconsAndText.label "Εικονίδια και κείμενο">
+<!ENTITY icons.label "Εικονίδια">
+<!ENTITY text.label "Κείμενο">
+<!ENTITY useSmallIcons.label "Χρήση μικρών εικονιδίων">
+<!ENTITY restoreDefaultSet.label "Επαναφορά προεπιλογών">
+<!ENTITY addNewToolbar.label "Προσθήκη νέας γραμμής">
+<!ENTITY saveChanges.label "Τέλος">
+<!ENTITY undoChanges.label "Αναίρεση αλλαγών">
diff --git a/l10n-el/suite/chrome/common/customizeToolbar.properties b/l10n-el/suite/chrome/common/customizeToolbar.properties
new file mode 100644
index 0000000000..b151be0291
--- /dev/null
+++ b/l10n-el/suite/chrome/common/customizeToolbar.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/.
+
+# LOCALIZATION NOTE: Strings below used to be in mozilla-central's
+# toolkit/locales/en-US/chrome/global/customizeToolbar.properties
+enterToolbarTitle=Νέα γραμμή εργαλείων
+enterToolbarName=Εισάγετε όνομα για αυτή τη γραμμή:
+enterToolbarDup=Υπάρχει ήδη μια γραμμή εργαλείων με όνομα “%S”. Παρακαλούμε εισάγετε ένα διαφορετικό όνομα.
+enterToolbarBlank=Πρέπει να εισάγετε ένα όνομα για τη δημιουργία νέας γραμμής.
+separatorTitle=Διαχωριστικό
+springTitle=Ευέλικτο διάστημα
+spacerTitle=Διάστημα
diff --git a/l10n-el/suite/chrome/common/dataman/dataman.dtd b/l10n-el/suite/chrome/common/dataman/dataman.dtd
new file mode 100644
index 0000000000..5b48c69dc5
--- /dev/null
+++ b/l10n-el/suite/chrome/common/dataman/dataman.dtd
@@ -0,0 +1,156 @@
+<!-- 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 dataman.windowTitle "Διαχείριση δεδομένων">
+
+<!ENTITY selectAll.key "a">
+
+<!ENTITY select.all.label "Όλοι οι τύποι δεδομένων">
+<!ENTITY select.cookies.label "Μόνο cookies">
+<!ENTITY select.permissions.label "Μόνο δικαιώματα">
+<!ENTITY select.preferences.label "Μόνο προτιμήσεις">
+<!ENTITY select.passwords.label "Μόνο κωδικοί πρόσβασης">
+<!ENTITY select.storage.label "Μόνο αποθήκευση">
+
+<!ENTITY domain.search.placeholder "Αναζήτηση τομέων">
+<!ENTITY domain.search.key "f">
+
+<!ENTITY domain.tree.domain.label "Τομέας">
+
+<!ENTITY domain.ctx.forgetdomain.label "Διαγραφή στοιχείων τομέα">
+<!ENTITY domain.ctx.forgetdomain.accesskey "Δ">
+<!ENTITY domain.ctx.forgetglobal.label "Διαγραφή γενικών δεδομένων">
+<!ENTITY domain.ctx.forgetglobal.accesskey "Δ">
+
+<!ENTITY data.search.key "k">
+
+<!ENTITY tab.cookies.label "Cookies">
+<!ENTITY tab.permissions.label "Δικαιώματα">
+<!ENTITY tab.preferences.label "Προτιμήσεις">
+<!ENTITY tab.passwords.label "Κωδικοί πρόσβασης">
+<!ENTITY tab.storage.label "Αποθήκευση">
+<!ENTITY tab.formdata.label "Δεδομένα φορμών">
+<!ENTITY tab.forget.label "Διαγραφή">
+
+<!-- cookies -->
+<!ENTITY cookies.description "Αυτός ο τομέας έχει αποθηκεύσει τα εξής cookies στον υπολογιστή σας:">
+
+<!ENTITY cookies.tree.host.label "Ιστοσελίδα">
+<!ENTITY cookies.tree.name.label "Όνομα cookie">
+<!ENTITY cookies.tree.expires.label "Λήξη">
+
+<!ENTITY cookies.infobox.label "Πληροφορίες για το επιλεγμένο cookie">
+
+<!ENTITY cookies.info.name.label "Όνομα:">
+<!ENTITY cookies.info.value.label "Περιεχόμενο:">
+<!ENTITY cookies.info.host.label "Κεντρικός υπολογιστής:">
+<!ENTITY cookies.info.domain.label "Τομέας:">
+<!ENTITY cookies.info.path.label "Διαδρομή:">
+<!ENTITY cookies.info.sendtype.label "Αποστολή για:">
+<!ENTITY cookies.info.expires.label "Λήγει:">
+
+<!ENTITY cookies.ctx.remove.label "Αφαίρεση">
+<!ENTITY cookies.ctx.remove.accesskey "Α">
+<!ENTITY cookies.ctx.selectAll.label "Επιλογή όλων">
+<!ENTITY cookies.ctx.selectAll.accesskey "ό">
+
+<!ENTITY cookies.button.remove.label "Αφαίρεση">
+<!ENTITY cookies.button.remove.accesskey "Α">
+
+<!ENTITY cookies.blockOnRemove.label "Κατά την αφαίρεση, να αποκλείεται η τοποθέτηση νέων cookies από τις παρακάτω ιστοσελίδες">
+<!ENTITY cookies.blockOnRemove.accesskey "Κ">
+
+<!-- permissions -->
+<!ENTITY perm.UseDefault "Χρήση προεπιλογής">
+<!ENTITY perm.AskAlways "Πάντα ερώτηση">
+<!ENTITY perm.NeverSave "Ποτέ αποθήκευση">
+<!ENTITY perm.Allow "Αποδοχή">
+<!ENTITY perm.AllowSameDomain "Αποδοχή για τον ίδιο τομέα">
+<!ENTITY perm.AllowSession "Αποδοχή για τη συνεδρία">
+<!ENTITY perm.Block "Φραγή">
+
+<!ENTITY perm.host.placeholder "Εισάγετε όνομα συστήματος">
+<!ENTITY perm.button.add.label "Προσθήκη">
+<!ENTITY perm.button.add.accesskey "Π">
+
+<!-- preferences -->
+<!ENTITY prefs.description "Οι προτιμήσεις περιεχομένου είναι ένας τρόπος για να αποθηκεύει το &brandShortName; τις ρυθμίσεις του, όπως επίπεδα ζουμ, συγκεκριμένα για κάθε ιστοσελίδα.">
+
+<!ENTITY prefs.tree.host.label "Ιστοσελίδα">
+<!ENTITY prefs.tree.name.label "Όνομα προτίμησης">
+<!ENTITY prefs.tree.value.label "Τιμή">
+
+<!ENTITY prefs.ctx.remove.label "Αφαίρεση">
+<!ENTITY prefs.ctx.remove.accesskey "Α">
+<!ENTITY prefs.ctx.selectAll.label "Επιλογή όλων">
+<!ENTITY prefs.ctx.selectAll.accesskey "ό">
+
+<!ENTITY prefs.button.remove.label "Αφαίρεση">
+<!ENTITY prefs.button.remove.accesskey "Α">
+
+<!-- passwords -->
+<!ENTITY pwd.description "Έχετε αποθηκεύσει τους παρακάτω κωδικούς πρόσβασης για τον τομέα:">
+
+<!ENTITY pwd.tree.host.label "Ιστοσελίδα">
+<!ENTITY pwd.tree.username.label "Όνομα χρήστη">
+<!ENTITY pwd.tree.password.label "Κωδικός πρόσβασης">
+
+<!ENTITY pwd.ctx.remove.label "Αφαίρεση">
+<!ENTITY pwd.ctx.remove.accesskey "Α">
+<!ENTITY pwd.ctx.copyPasswordCmd.label "Αντιγραφή κωδικού πρόσβασης">
+<!ENTITY pwd.ctx.copyPasswordCmd.accesskey "Α">
+<!ENTITY pwd.ctx.selectAll.label "Επιλογή όλων">
+<!ENTITY pwd.ctx.selectAll.accesskey "ό">
+
+<!ENTITY pwd.button.remove.label "Αφαίρεση">
+<!ENTITY pwd.button.remove.accesskey "Α">
+
+<!-- storage -->
+<!ENTITY storage.description "Ο τομέας χρησιμοποιεί τα εξής δεδομένα αποθήκευση ιστού στον υπολογιστή σας:">
+
+<!ENTITY storage.tree.host.label "Ιστοσελίδα">
+<!ENTITY storage.tree.type.label "Τύπος">
+<!ENTITY storage.tree.size.label "Μέγεθος">
+
+<!ENTITY storage.ctx.remove.label "Αφαίρεση">
+<!ENTITY storage.ctx.remove.accesskey "Α">
+<!ENTITY storage.ctx.selectAll.label "Επιλογή όλων">
+<!ENTITY storage.ctx.selectAll.accesskey "ό">
+
+<!ENTITY storage.button.remove.label "Αφαίρεση">
+<!ENTITY storage.button.remove.accesskey "Α">
+
+<!-- form data -->
+<!ENTITY fdata.search.placeholder "Δεδομένα πεδίου αναζήτησης">
+
+<!ENTITY fdata.tree.fieldname.label "Όνομα πεδίου">
+<!ENTITY fdata.tree.value.label "Εισηγμένη τιμή">
+<!ENTITY fdata.tree.usecount.label "Αριθμός χρήσεων">
+<!ENTITY fdata.tree.firstused.label "Πρώτη χρήση">
+<!ENTITY fdata.tree.lastused.label "Τελευταία χρήση">
+
+<!ENTITY fdata.ctx.remove.label "Αφαίρεση">
+<!ENTITY fdata.ctx.remove.accesskey "Α">
+<!ENTITY fdata.ctx.selectAll.label "Επιλογή όλων">
+<!ENTITY fdata.ctx.selectAll.accesskey "ό">
+
+<!ENTITY fdata.button.remove.label "Αφαίρεση">
+<!ENTITY fdata.button.remove.accesskey "Α">
+
+<!-- forget -->
+<!ENTITY forget.cookies.label "Cookies">
+<!ENTITY forget.cookies.accesskey "C">
+<!ENTITY forget.permissions.label "Δικαιώματα">
+<!ENTITY forget.permissions.accesskey "Δ">
+<!ENTITY forget.preferences.label "Προτιμήσεις περιεχομένου">
+<!ENTITY forget.preferences.accesskey "ο">
+<!ENTITY forget.passwords.label "Κωδικοί πρόσβασης">
+<!ENTITY forget.passwords.accesskey "ω">
+<!ENTITY forget.storage.label "Αποθηκευτικός χώρος">
+<!ENTITY forget.storage.accesskey "Α">
+<!ENTITY forget.formdata.label "Δεδομένα φορμών">
+<!ENTITY forget.formdata.accesskey "Δ">
+
+<!ENTITY forget.button.label "Διαγραφή δεδομένων">
+<!ENTITY forget.button.accesskey "φ">
diff --git a/l10n-el/suite/chrome/common/dataman/dataman.properties b/l10n-el/suite/chrome/common/dataman/dataman.properties
new file mode 100644
index 0000000000..3c11cf3951
--- /dev/null
+++ b/l10n-el/suite/chrome/common/dataman/dataman.properties
@@ -0,0 +1,73 @@
+# 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/.
+
+# cookies
+cookies.expireAtEndOfSession=Στο τέλος της συνεδρίας
+
+cookies.secureOnly.httponly=Μόνο κρυπτογραφημένες συνδέσεις και χωρίς πρόσβαση σεναρίων
+cookies.secureOnly.all=Μόνο κρυπτογραφημένες συνδέσεις
+cookies.anyConnection.httponly=Κάθε τύπος σύνδεσης, χωρίς πρόσβαση σεναρίων
+cookies.anyConnection.all=Κάθε τύπος σύνδεσης
+
+cookies.deleteSelected=Θέλετε σίγουρα να διαγράψετε τα επιλεγμένα cookies;
+cookies.deleteSelectedTitle=Αφαίρεση επιλεγμένων cookies
+cookies.deleteSelectedYes=&Αφαίρεση
+
+# permissions
+perm.allowXULXBL.label=Χρήση σήμανσης XUL/XBL
+perm.cookie.label=Τοποθέτηση cookies
+perm.geo.label=Γνωστοποίηση τοποθεσίας
+perm.image.label=Φόρτωση εικόνων
+perm.indexedDB.label=Αποθήκευση τοπικών βάσεων δεδομένων
+perm.install.label=Εγκατάσταση προσθέτων
+perm.offline-app.label=Εφαρμογές ιστού εκτός σύνδεσης
+perm.object.label=Εκτέλεση αρθρωμάτων
+perm.login-saving.label=Αποθήκευση κωδικών πρόσβασης
+perm.plugins.label=Ενεργοποίηση αρθρωμάτων
+perm.popup.label=Άνοιγμα αναδυόμενων παραθύρων
+perm.script.label=Εκτέλεση σεναρίων
+perm.stylesheet.label=Φόρτωση φύλλων στυλ
+perm.trackingprotection.label=Καταγραφή δραστηριότητας
+
+perm.type.default=Επιλογή τύπου
+perm.validation.invalidurl=Το εισηγμένο URL δεν είναι έγκυρο
+
+# passwords
+pwd.hidePasswords=Απόκρυψη κωδικών πρόσβασης
+pwd.hidePasswords.accesskey=κ
+pwd.showPasswords=Εμφάνιση κωδικών πρόσβασης
+pwd.showPasswords.accesskey=π
+pwd.noMasterPasswordPrompt=Θέλετε σίγουρα να γίνει εμφάνιση των κωδικών πρόσβασής σας;
+
+pwd.deleteSelected=Θέλετε σίγουρα να διαγράψετε τους επιλεγμένους κωδικούς πρόσβασης;
+pwd.deleteSelectedTitle=Αφαίρεση επιλεγμένων κωδικών πρόσβασης
+pwd.deleteSelectedYes=&Αφαίρεση
+
+# preferences
+prefs.deleteSelected=Θέλετε σίγουρα να διαγράψετε τις επιλεγμένες προτιμήσεις;
+prefs.deleteSelectedTitle=Αφαίρεση επιλεγμένων προτιμήσεων
+prefs.deleteSelectedYes=&Αφαίρεση
+
+# storage
+
+# LOCALIZATION NOTE: The next string is for disk usage of any storage
+# e.g. storageUsage: "50.23 MB"
+# %1$S = size (in bytes or megabytes, ...)
+# %2$S = unit of measure (bytes, KB, MB, ...)
+storageUsage=%1$S %2$S
+
+storage.deleteSelected=Θέλετε σίγουρα να διαγράψετε τα επιλεγμένα δεδομένα αποθήκευσης ιστού;
+storage.deleteSelectedTitle=Αφαίρεση επιλεγμένων δεδομένων αποθήκευσης
+storage.deleteSelectedYes=&Αφαίρεση
+
+# form data
+fdata.deleteSelected=Θέλετε σίγουρα να διαγράψετε τις επιλεγμένες καταχωρήσεις ιστορικού φορμών;
+fdata.deleteSelectedTitle=Αφαίρεση επιλεγμένων δεδομένων φορμών
+fdata.deleteSelectedYes=&Αφαίρεση
+
+# forget
+forget.desc.domain.pre=Διαγραφή όλων των παρακάτω τύπων δεδομένων που σχετίζονται με τον τομέα "%S":
+forget.desc.domain.post=Όλα τα δεδομένα των ακόλουθων τύπων που σχετίζονται με τον τομέα "%S" έχουν διαγραφεί:
+forget.desc.global.pre=Διαγραφή όλων των γενικών δεδομένων των παρακάτω τύπων:
+forget.desc.global.post=Όλα τα γενικά δεδομένα των ακόλουθων τύπων έχουν διαγραφεί:
diff --git a/l10n-el/suite/chrome/common/datetimepicker.dtd b/l10n-el/suite/chrome/common/datetimepicker.dtd
new file mode 100644
index 0000000000..b010c48313
--- /dev/null
+++ b/l10n-el/suite/chrome/common/datetimepicker.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/. -->
+
+<!-- first day of week to display in datepicker, a value from 0 to 6,
+ 0 = Sunday, 1 = Monday, etc. -->
+<!ENTITY firstdayofweek.default "0">
diff --git a/l10n-el/suite/chrome/common/defaultClientDialog.dtd b/l10n-el/suite/chrome/common/defaultClientDialog.dtd
new file mode 100644
index 0000000000..9f6e9342a7
--- /dev/null
+++ b/l10n-el/suite/chrome/common/defaultClientDialog.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/. -->
+
+<!ENTITY defaultClient.title "Προεπιλεγμένο πρόγραμμα">
+<!ENTITY defaultClient.intro "Χρήση του &brandShortName; ως προεπιλεγμένη εφαρμογή για:">
+
+<!ENTITY browser.label "Πρόγραμμα περιήγησης">
+<!ENTITY email.label "Email">
+<!ENTITY newsgroups.label "Ομάδες συζήτησης">
+<!ENTITY feeds.label "Ροές">
+
+<!ENTITY checkOnStartup.label "Πάντα έλεγχος κατά την εκκίνηση του &brandShortName;">
+<!ENTITY checkOnStartup.accesskey "Π">
diff --git a/l10n-el/suite/chrome/common/downloads/downloadmanager.dtd b/l10n-el/suite/chrome/common/downloads/downloadmanager.dtd
new file mode 100644
index 0000000000..800501387e
--- /dev/null
+++ b/l10n-el/suite/chrome/common/downloads/downloadmanager.dtd
@@ -0,0 +1,95 @@
+<!-- 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 downloadManager.title "Διαχείριση λήψεων">
+
+<!ENTITY menuBar.tooltip "Γραμμή μενού">
+<!ENTITY searchBar.tooltip "Γραμμή αναζήτησης">
+
+<!ENTITY search.placeholder "Αναζήτηση λήψεων">
+<!ENTITY search.label "Αναζήτηση λήψεων">
+<!ENTITY search.accesskey "Α">
+<!ENTITY search.key "f">
+
+<!ENTITY cmd.clearList.label "Απαλοιφή λίστας">
+<!ENTITY cmd.clearList.tooltip "Θα αφαιρεθούν οι επιτυχείς, οι ακυρωμένες και οι αποτυχημένες λήψεις από τη λίστα">
+<!ENTITY cmd.clearList.accesskey "Α">
+
+<!ENTITY col.name.label "Όνομα">
+<!ENTITY col.name.accesskey "Ό">
+<!ENTITY col.name.tooltip "Όνομα αρχείου">
+<!ENTITY col.status.label "Κατάσταση">
+<!ENTITY col.status.accesskey "Κ">
+<!ENTITY col.status.tooltip "Κατάσταση">
+<!ENTITY col.actionPlay.label "Παύση/Συνέχιση/Επανάληψη">
+<!ENTITY col.actionPlay.accesskey "ύ">
+<!ENTITY col.actionPlay.tooltip "Παύση/Συνέχιση/Επανάληψη">
+<!ENTITY col.actionStop.label "Ακύρωση/Αφαίρεση">
+<!ENTITY col.actionStop.accesskey "Α">
+<!ENTITY col.actionStop.tooltip "Ακύρωση/Αφαίρεση">
+<!ENTITY col.progress.label "Πρόοδος">
+<!ENTITY col.progress.accesskey "Π">
+<!ENTITY col.progress.tooltip "Πρόοδος">
+<!ENTITY col.timeremaining.label "Χρόνος που απομένει">
+<!ENTITY col.timeremaining.accesskey "Χ">
+<!ENTITY col.timeremaining.tooltip "Χρόνος που απομένει">
+<!ENTITY col.transferred.label "Μεταφέρθηκαν">
+<!ENTITY col.transferred.accesskey "Μ">
+<!ENTITY col.transferred.tooltip "Μεταφέρθηκαν">
+<!ENTITY col.transferrate.label "Ταχύτητα">
+<!ENTITY col.transferrate.accesskey "χ">
+<!ENTITY col.transferrate.tooltip "Ταχύτητα">
+<!ENTITY col.timeelapsed.label "Χρόνος που έχει παρέλθει">
+<!ENTITY col.timeelapsed.accesskey "Χ">
+<!ENTITY col.timeelapsed.tooltip "Χρόνος που έχει παρέλθει">
+<!ENTITY col.starttime.label "Ώρα έναρξης">
+<!ENTITY col.starttime.accesskey "έ">
+<!ENTITY col.starttime.tooltip "Ώρα έναρξης">
+<!ENTITY col.endtime.label "Ώρα λήξης">
+<!ENTITY col.endtime.accesskey "ή">
+<!ENTITY col.endtime.tooltip "Ώρα λήξης">
+<!ENTITY col.progresstext.label "&#37;">
+<!ENTITY col.progresstext.accesskey "&#37;">
+<!ENTITY col.progresstext.tooltip "Πρόοδος (&#37;)">
+<!ENTITY col.source.label "Προέλευση">
+<!ENTITY col.source.accesskey "ρ">
+<!ENTITY col.source.tooltip "Προέλευση">
+
+<!ENTITY view.columns.label "Εμφάνιση στηλών">
+<!ENTITY view.columns.accesskey "σ">
+<!ENTITY view.sortBy.label "Ταξινόμηση κατά">
+<!ENTITY view.sortBy.accesskey "Τ">
+
+<!ENTITY view.unsorted.label "Χωρίς ταξινόμηση">
+<!ENTITY view.unsorted.accesskey "Χ">
+<!ENTITY view.sortAscending.label "Σειρά ταξινόμησης Α > Ω">
+<!ENTITY view.sortAscending.accesskey "Α">
+<!ENTITY view.sortDescending.label "Σειρά ταξινόμησης Ω > Α">
+<!ENTITY view.sortDescending.accesskey "Ω">
+
+<!ENTITY cmd.pause.label "Παύση">
+<!ENTITY cmd.pause.accesskey "Π">
+<!ENTITY cmd.resume.label "Συνέχιση">
+<!ENTITY cmd.resume.accesskey "Σ">
+<!ENTITY cmd.retry.label "Επανάληψη">
+<!ENTITY cmd.retry.accesskey "ψ">
+<!ENTITY cmd.cancel.label "Ακύρωση">
+<!ENTITY cmd.cancel.accesskey "Α">
+<!ENTITY cmd.remove.label "Αφαίρεση από τη λίστα">
+<!ENTITY cmd.remove.accesskey "φ">
+<!ENTITY cmd.open.label "Άνοιγμα">
+<!ENTITY cmd.open.accesskey "Ά">
+<!ENTITY cmd.show.label "Άνοιγμα φακέλου λήψης">
+<!ENTITY cmd.show.accesskey "φ">
+<!ENTITY cmd.goToDownloadPage.label "Μετάβαση στη σελίδα λήψης">
+<!ENTITY cmd.goToDownloadPage.accesskey "Μ">
+<!ENTITY cmd.copyDownloadLink.label "Αντιγραφή συνδέσμου λήψης">
+<!ENTITY cmd.copyDownloadLink.accesskey "λ">
+<!ENTITY cmd.properties.label "Ιδιότητες…">
+<!ENTITY cmd.properties.accesskey "δ">
+<!-- LOCALIZATION NOTE (cmd.unblock2.label):
+ This command is shown in the context menu when downloads are blocked.
+ -->
+<!ENTITY cmd.unblock2.label "Αποδοχή λήψης">
+<!ENTITY cmd.unblock2.accesskey "π">
diff --git a/l10n-el/suite/chrome/common/downloads/downloadmanager.properties b/l10n-el/suite/chrome/common/downloads/downloadmanager.properties
new file mode 100644
index 0000000000..a21511fefe
--- /dev/null
+++ b/l10n-el/suite/chrome/common/downloads/downloadmanager.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/.
+
+# LOCALIZATION NOTE (stateUnknown):
+# Indicates that the download stat is unknown.
+# You should never see this in the ui.
+stateUnknown=Άγνωστο
+# LOCALIZATION NOTE (stateDownloading):
+# Indicates that the download is in progress.
+stateDownloading=Λήψη
+# LOCALIZATION NOTE (stateUploading):
+# Indicates that the upload is in progress.
+stateUploading=Μεταφόρτωση
+# LOCALIZATION NOTE (stateStarting):
+# Indicates that the download is starting.
+# You won't probably ever see this in the ui.
+stateStarting=Εκκίνηση…
+# LOCALIZATION NOTE (stateNotStarted):
+# Indicates that the download has not started yet.
+# You won't probably ever see this in the ui.
+stateNotStarted=Δεν ξεκίνησε
+# LOCALIZATION NOTE (stateScanning):
+# Indicates that an external program is scanning the download for viruses.
+stateScanning=Σάρωση για ιούς…
+# LOCALIZATION NOTE (stateFailed):
+# Indicates that the download failed because of an error.
+stateFailed=Αποτυχία
+# LOCALIZATION NOTE (statePaused):
+# Indicates that the download was paused by the user.
+statePaused=Σε παύση
+# LOCALIZATION NOTE (stateCanceled):
+# Indicates that the download was canceled by the user.
+stateCanceled=Ακυρώθηκε
+# LOCALIZATION NOTE (stateCompleted):
+# Indicates that the download was completed.
+stateCompleted=Ολοκληρώθηκε
+# LOCALIZATION NOTE (stateBlockedParentalControls):
+# Indicates that the download was blocked by the Parental Controls feature of
+# Windows. "Parental Controls" should be consistently named and capitalized
+# with the display of this feature in Windows. The following article can
+# provide a reference for the translation of "Parental Controls" in various
+# languages:
+# http://windows.microsoft.com/en-US/windows-vista/Set-up-Parental-Controls
+stateBlockedParentalControls=Αποκλείστηκε από τον γονικό έλεγχο
+# LOCALIZATION NOTE (stateBlockedPolicy):
+# Indicates that the download was blocked on Windows because of the "Launching
+# applications and unsafe files" setting of the "security zone" associated with
+# the target site. "Security zone" should be consistently named and capitalized
+# with the display of this feature in Windows. The following article can
+# provide a reference for the translation of "security zone" in various
+# languages:
+# http://support.microsoft.com/kb/174360
+stateBlockedPolicy=Αποκλείστηκε από την πολιτική ζώνης ασφαλείας σας
+# LOCALIZATION NOTE (stateDirty):
+# Indicates that the download was blocked after scanning.
+stateDirty=Αποκλείστηκε: Μάλλον περιέχει ιό ή κατασκοπικό λογισμικό
+
+# LOCALIZATION NOTE (blockedMalware, blockedPotentiallyUnwanted,
+# blockedUncommon2):
+# These strings are shown in the panel for some types of blocked downloads, and
+# are immediately followed by the "Learn More" link, thus they must end with a
+# period. You may need to adjust "downloadDetails.width" in "downloads.dtd" if
+# this turns out to be longer than the other existing status strings.
+# Note: These strings don't exist in the UI yet. See bug 1053890.
+blockedMalware=Αυτό το αρχείο περιέχει ιό ή κακόβουλο λογισμικό.
+blockedPotentiallyUnwanted=Αυτό το αρχείο ενδέχεται να βλάψει τον υπολογιστή σας.
+blockedUncommon2=Δεν γίνεται συχνά λήψη αυτού του αρχείου.
+
+# LOCALIZATION NOTE (unblockHeaderUnblock, unblockHeaderOpen,
+# unblockTypeMalware, unblockTypePotentiallyUnwanted2,
+# unblockTypeUncommon2, unblockTip2, unblockButtonOpen,
+# unblockButtonUnblock, unblockButtonConfirmBlock):
+# These strings are displayed in the dialog shown when the user asks a blocked
+# download to be unblocked. The severity of the threat is expressed in
+# descending order by the unblockType strings, it is higher for files detected
+# as malware and lower for uncommon downloads.
+unblockHeaderUnblock=Θέλετε σίγουρα να επιτρέψετε αυτή τη λήψη;
+unblockHeaderOpen=Θέλετε σίγουρα να ανοίξετε αυτό το αρχείο;
+unblockTypeMalware=Το αρχείο περιέχει ιό ή άλλο κακόβουλο λογισμικό που θα βλάψει τον υπολογιστή σας.
+unblockTypePotentiallyUnwanted2=Το αρχείο είναι μεταμφιεσμένο ως χρήσιμο, αλλά μπορεί να προκαλέσει μη αναμενόμενες αλλαγές στα προγράμματα και τις ρυθμίσεις σας.
+unblockTypeUncommon2=Δεν γίνεται συχνά λήψη αυτού του αρχείου και μπορεί να μην είναι ασφαλές. Ενδέχεται να περιέχει ιό ή να προκαλέσει μη αναμενόμενες αλλαγές στα προγράμματα και τις ρυθμίσεις σας.
+unblockTip2=Μπορείτε να αναζητήσετε μια εναλλακτική πηγή λήψης ή να δοκιμάσετε ξανά αργότερα.
+unblockButtonOpen=Άνοιγμα
+unblockButtonUnblock=Αποδοχή λήψης
+unblockButtonConfirmBlock=Αφαίρεση αρχείου
+
+fileExecutableSecurityWarning=Το “%S” είναι ένα εκτελέσιμο αρχείο. Τα εκτελέσιμα αρχεία ενδέχεται να περιέχουν ιούς ή άλλο κακόβουλο κώδικα που θα μπορούσε να βλάψει τον υπολογιστή σας. Ανοίξτε με προσοχή αυτό το αρχείο. Θέλετε σίγουρα να εκκινήσετε το “%S”;
+fileExecutableSecurityWarningTitle=Άνοιγμα εκτελέσιμου αρχείου;
+fileExecutableSecurityWarningDontAsk=Να μην ερωτηθώ ξανά
+
+# LOCALIZATION NOTE (otherDownloads3):
+# This is displayed in an item at the bottom of the Downloads Panel when
+# there are more downloads than can fit in the list in the panel. Use a
+# semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/Localization_and_Plurals
+otherDownloads3=Λήψη %1$S αρχείου;Λήψη %1$S αρχείων
+
+# LOCALIZATION NOTE (downloadsTitleFiles, downloadsTitlePercent): Semi-colon list of
+# plural forms. See: http://developer.mozilla.org/en/Localization_and_Plurals
+# %1$S number of files; %2$S overall download percent (only for downloadsTitlePercent)
+# %% will appear as a single % sign, so %2$S%% is the percent number plus the % sign
+# examples: 2% of 1 file - Download Manager; 22% of 11 files - Download Manager
+downloadsTitleFiles=%1$S αρχείο - Διαχείριση λήψεων;%1$S αρχεία - Διαχείριση λήψεων
+downloadsTitlePercent=%2$S%% από %1$S αρχείο - Διαχείριση λήψεων;%2$S%% από %1$S αρχεία - Διαχείριση λήψεων
+
+# LOCALIZATION NOTE (progressTitle):
+# %1$S is the file name, %2$S is the download state
+# examples: coolvideo.ogg - Finished; seamonkey-nightly.zip - Paused
+progressTitle=%1$S - %2$S
+# LOCALIZATION NOTE (progressTitlePercent):
+# %1$S is download percent, %2$S is the file name, %3$S is the download state
+# %% will appear as a single % sign, so %1$S%% is the percent number plus the % sign
+# examples: 42% of coolvideo.ogg - Paused; 98% of seamonkey-nightly.zip - Downloading
+progressTitlePercent=%1$S%% από %2$S - %3$S
+
+# LOCALIZATION NOTE (percentFormat): %1$S is download percent
+# %% will appear as a single % sign, so %1$S%% is the percent number plus the % sign
+percentFormat=%1$S%%
+
+# LOCALIZATION NOTE (speedFormat):
+# %1$S rate number; %2$S rate unit
+# units are taken from toolkit's downloads.properties
+# example: 2.2 MB/sec
+speedFormat=%1$S %2$S/δευτ
+
+# LOCALIZATION NOTE (timeSingle): %1$S time number; %2$S time unit
+# example: 1 minute; 11 hours
+timeSingle=%1$S %2$S
+# LOCALIZATION NOTE (timeDouble):
+# %1$S time number; %2$S time unit; %3$S time sub number; %4$S time sub unit
+# example: 11 hours, 2 minutes; 1 day, 22 hours
+timeDouble=%1$S %2$S, %3$S %4$S
+
+# LOCALIZATION NOTE (sizeSpeed):
+# %1$S is transfer progress; %2$S download speed
+# example: 1.1 of 11.1 GB (2.2 MB/sec)
+sizeSpeed=%1$S (%2$S)
+
+# LOCALIZATION NOTE (statusActive): — is the "em dash" (long dash)
+# %1$S download status; %2$S time remaining
+# example: Paused — 11 hours, 2 minutes remaining
+statusActive=%1$S — %2$S
+
+fromSource=Από %S
+toTarget=Προς %S
diff --git a/l10n-el/suite/chrome/common/downloads/progressDialog.dtd b/l10n-el/suite/chrome/common/downloads/progressDialog.dtd
new file mode 100644
index 0000000000..4b61a24ed7
--- /dev/null
+++ b/l10n-el/suite/chrome/common/downloads/progressDialog.dtd
@@ -0,0 +1,20 @@
+<!-- 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 progress.title "Λήψη σε εξέλιξη…">
+<!ENTITY closeWindow.key "w">
+<!ENTITY cmd.pause.tooltip "Παύση">
+<!ENTITY cmd.resume.tooltip "Συνέχιση">
+<!ENTITY cmd.retry.tooltip "Επανάληψη">
+<!ENTITY cmd.cancel.tooltip "Ακύρωση">
+<!ENTITY cmd.open.label "Άνοιγμα">
+<!ENTITY cmd.open.accesskey "Ά">
+<!ENTITY cmd.show.label "Άνοιγμα φακέλου λήψης">
+<!ENTITY cmd.show.accesskey "φ">
+<!ENTITY cmd.goToDownloadPage.label "Μετάβαση στη σελίδα λήψης">
+<!ENTITY cmd.goToDownloadPage.accesskey "Μ">
+<!ENTITY cmd.copyDownloadLink.label "Αντιγραφή συνδέσμου λήψης">
+<!ENTITY cmd.copyDownloadLink.accesskey "σ">
+<!ENTITY closeWhenDone.label "Κλείσιμο παραθύρου όταν ολοκληρωθεί η λήψη.">
+<!ENTITY closeWhenDone.accesskey "π">
diff --git a/l10n-el/suite/chrome/common/feeds/subscribe.dtd b/l10n-el/suite/chrome/common/feeds/subscribe.dtd
new file mode 100644
index 0000000000..5d64f4c0e1
--- /dev/null
+++ b/l10n-el/suite/chrome/common/feeds/subscribe.dtd
@@ -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/. -->
+
+<!ENTITY feedPage.title "Προβολή ροής">
+<!ENTITY feedSubscribeNow "Συνδρομή τώρα">
+<!ENTITY feedMessenger "Ειδήσεις &amp; blog">
+<!ENTITY feedLiveBookmarks "Δυναμικοί σελιδοδείκτες">
diff --git a/l10n-el/suite/chrome/common/feeds/subscribe.properties b/l10n-el/suite/chrome/common/feeds/subscribe.properties
new file mode 100644
index 0000000000..cdae90730e
--- /dev/null
+++ b/l10n-el/suite/chrome/common/feeds/subscribe.properties
@@ -0,0 +1,52 @@
+# 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/.
+
+linkTitleTextFormat=Μετάβαση σε %S
+addHandler=Προσθήκη του "%S" (%S) ως εφαρμογής ροών;
+addHandlerAddButton=Προσθήκη εφαρμογής ροών
+addHandlerAddButtonAccesskey=Π
+handlerRegistered=Το "%S" έχει ήδη καταχωρηθεί ως εφαρμογή ροών
+subscribeNow=Συνδρομή τώρα
+chooseApplicationMenuItem=Επιλογή εφαρμογής…
+chooseApplicationDialogTitle=Επιλογή εφαρμογής
+alwaysUse=Πάντα χρήση του %S για εγγραφή σε ροές
+mediaLabel=Αρχεία πολυμέσων
+
+# LOCALIZATION NOTE: The next string is for the size of the enclosed media.
+# e.g. enclosureSizeText : "50.23 MB"
+# %1$S = size (in bytes or megabytes, ...)
+# %2$S = unit of measure (bytes, KB, MB, ...)
+enclosureSizeText=%1$S %2$S
+
+bytes=bytes
+kilobytes=KB
+megabytes=MB
+gigabytes=GB
+
+# LOCALIZATION NOTE: The next three strings explains to the user what they're
+# doing.
+# e.g. alwaysUseForVideoPodcasts : "Always use Miro to subscribe to video podcasts."
+# %S = application to use (Miro, iTunes, ...)
+alwaysUseForFeeds=Να γίνεται πάντα χρήση του %S για συνδρομή σε ροές.
+alwaysUseForAudioPodcasts=Να γίνεται πάντα χρήση του %S για συνδρομή σε podcasts.
+alwaysUseForVideoPodcasts=Να γίνεται πάντα χρήση του %S για συνδρομή σε video podcasts.
+
+subscribeFeedUsing=Εγγραφή στη ροή με χρήση
+subscribeAudioPodcastUsing=Εγγραφή στο podcast με χρήση
+subscribeVideoPodcastUsing=Εγγραφή στο βίντεο podcast με χρήση
+
+feedSubscriptionFeed1=Αυτό είναι μια "ροή" περιεχομένου συχνών αλλαγών σε αυτή την ιστοσελίδα.
+feedSubscriptionAudioPodcast1=Αυτό είναι ένα "podcast" περιεχομένου συχνών αλλαγών σε αυτή την ιστοσελίδα.
+feedSubscriptionVideoPodcast1=Αυτό είναι ένα "video podcast" περιεχομένου συχνών αλλαγών σε αυτή την ιστοσελίδα.
+
+feedSubscriptionFeed2=Μπορείτε να εγγραφείτε σε αυτή τη ροή για λήψη ενημερώσεων όταν αλλάζει αυτό το περιεχόμενο.
+feedSubscriptionAudioPodcast2=Μπορείτε να εγγραφείτε σε αυτό το podcast για λήψη ενημερώσεων όταν αλλάζει αυτό το περιεχόμενο.
+feedSubscriptionVideoPodcast2=Μπορείτε να εγγραφείτε σε αυτό το video podcast για λήψη ενημερώσεων όταν αλλάζει αυτό το περιεχόμενο.
+
+# Protocol Handling
+# "Add %appName (%appDomain) as an application for %protocolType links?"
+addProtocolHandler=Προσθήκη του %S (%S) ως εφαρμογής για συνδέσμους %S;
+addProtocolHandlerAddButton=Προσθήκη εφαρμογής
+# "%appName has already been added as an application for %protocolType links."
+protocolHandlerRegistered=Το %S έχει ήδη προστεθεί ως εφαρμογή για συνδέσμους %S.
diff --git a/l10n-el/suite/chrome/common/gopherAddon.dtd b/l10n-el/suite/chrome/common/gopherAddon.dtd
new file mode 100644
index 0000000000..fc8681d94f
--- /dev/null
+++ b/l10n-el/suite/chrome/common/gopherAddon.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 loadError.label "Σφάλμα φόρτωσης σελίδας">
+<!ENTITY gopherAddon.title "Πρωτόκολλο Gopher">
+<!ENTITY gopherAddon.shortDesc "Το gopher δεν είναι καταχωρημένο πρωτόκολλο.">
+<!ENTITY gopherAddon.longDesc "Αυτή η διεύθυνση καθορίζει το πρωτόκολλο gopher που δεν υποστηρίζεται πλέον, επομένως το πρόγραμμα περιήγησης δεν μπορεί να συνδεθεί στην ιστοσελίδα. Μπορείτε να λάβετε ένα συμβατό πρόσθετο για πρόσβαση σε αυτό τον διακομιστή από τα Πρόσθετα Mozilla.">
+<!ENTITY goToAddOn.label "Μεταβείτε στη σελίδα προσθέτων">
diff --git a/l10n-el/suite/chrome/common/helpviewer/help.dtd b/l10n-el/suite/chrome/common/helpviewer/help.dtd
new file mode 100644
index 0000000000..62b5236637
--- /dev/null
+++ b/l10n-el/suite/chrome/common/helpviewer/help.dtd
@@ -0,0 +1,56 @@
+<!-- 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 printCmd.commandkey "p">
+
+<!ENTITY findOnCmd.commandkey "F">
+<!ENTITY findAgainCmd.commandkey "G">
+<!ENTITY findAgainCmd.commandkey2 "VK_F3">
+
+<!ENTITY backButton.label "Πίσω">
+<!ENTITY backButton.accesskey "Π">
+<!ENTITY backButton.tooltip "Μετάβαση μια σελίδα πίσω">
+<!ENTITY forwardButton.label "Εμπρός">
+<!ENTITY forwardButton.accesskey "Ε">
+<!ENTITY forwardButton.tooltip "Μετάβαση μια σελίδα μπροστά">
+<!ENTITY copyCmd.label "Αντιγραφή">
+<!ENTITY copyCmd.accesskey "Α">
+<!ENTITY selectAllCmd.label "Επιλογή όλων">
+<!ENTITY selectAllCmd.accesskey "ό">
+<!ENTITY goBackCmd.commandkey "[">
+<!ENTITY goForwardCmd.commandkey "]">
+<!ENTITY homeButton.label "Αρχική">
+<!ENTITY homeButton.tooltip "Μετάβαση στην αρχική σελίδα βοήθειας">
+<!ENTITY printButton.label "Εκτύπωση">
+<!ENTITY printButton.tooltip "Εκτύπωση σελίδας">
+<!ENTITY closeWindow.commandkey "W">
+
+<!ENTITY search.emptytext "Αναζήτηση">
+<!ENTITY searchHeader.label "Αποτελέσματα αναζήτησης">
+<!ENTITY toctab.label "Περιεχόμενα">
+<!ENTITY toctab.accesskey "Π">
+
+<!-- LOCALIZATION NOTE :
+fullZoomEnlargeCmd.commandkey3, fullZoomReduceCmd.commandkey2 and
+fullZoomResetCmd.commandkey2 are alternative acceleration keys for zoom.
+If shift key is needed with your locale popular keyboard for them,
+you can use these alternative items. Otherwise, their values should be empty. -->
+
+<!ENTITY fullZoomReduceCmd.commandkey "-">
+<!ENTITY fullZoomReduceCmd.commandkey2 "">
+<!ENTITY fullZoomEnlargeCmd.commandkey "+">
+<!ENTITY fullZoomEnlargeCmd.commandkey2 "="> <!-- + is above this key on many keyboards -->
+<!ENTITY fullZoomEnlargeCmd.commandkey3 "">
+<!ENTITY fullZoomResetCmd.commandkey "0">
+<!ENTITY fullZoomResetCmd.commandkey2 "">
+
+<!ENTITY helpSearch.commandkey "k">
+
+<!ENTITY zLevel.label "Πάντα σε πρώτο πλάνο">
+<!ENTITY zLevel.accesskey "π">
+
+<!ENTITY fullZoomReduceBtn.label "Σμίκρυνση">
+<!ENTITY fullZoomReduceBtn.accesskey "Σ">
+<!ENTITY fullZoomEnlargeBtn.label "Μεγέθυνση">
+<!ENTITY fullZoomEnlargeBtn.accesskey "Μ">
diff --git a/l10n-el/suite/chrome/common/helpviewer/help.properties b/l10n-el/suite/chrome/common/helpviewer/help.properties
new file mode 100644
index 0000000000..4a7cc7ed82
--- /dev/null
+++ b/l10n-el/suite/chrome/common/helpviewer/help.properties
@@ -0,0 +1,5 @@
+# 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/.
+
+emptySearchText=Δεν βρέθηκαν στοιχεία αναζήτησης.
diff --git a/l10n-el/suite/chrome/common/migration/migration.dtd b/l10n-el/suite/chrome/common/migration/migration.dtd
new file mode 100644
index 0000000000..ee3fce34bc
--- /dev/null
+++ b/l10n-el/suite/chrome/common/migration/migration.dtd
@@ -0,0 +1,28 @@
+<!-- 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 migrationWizard.title "Βοηθός εισαγωγής">
+
+<!ENTITY importAllFrom.label "Εισαγωγή όλων των στοιχείων από:">
+<!ENTITY importBookmarksFrom.label "Εισαγωγή σελιδοδεικτών από:">
+
+<!ENTITY importFromThunderbird.label "Thunderbird">
+<!ENTITY importFromThunderbird.accesskey "T">
+<!ENTITY importFromFile.label "Αρχείο">
+<!ENTITY importFromFile.accesskey "Α">
+<!ENTITY importFromNothing.label "Να μην εισαχθεί τίποτα">
+<!ENTITY importFromNothing.accesskey "Ν">
+
+<!ENTITY importSource.title "Εισαγωγή ρυθμίσεων και δεδομένων">
+<!ENTITY importItems.title "Στοιχεία προς εισαγωγή">
+<!ENTITY importItems.label "Επιλέξτε στοιχεία προς εισαγωγή:">
+
+<!ENTITY selectProfile.title "Επιλογή προφίλ">
+<!ENTITY selectProfile.label "Τα ακόλουθα προφίλ είναι διαθέσιμα για εισαγωγή από:">
+
+<!ENTITY migrating.title "Εισαγωγή…">
+<!ENTITY migrating.label "Γίνεται εισαγωγή των εξής στοιχείων αυτή τη στιγμή…">
+
+<!ENTITY done.title "Η εισαγωγή ολοκληρώθηκε">
+<!ENTITY done.label "Τα ακόλουθα στοιχεία εισήχθησαν επιτυχώς:">
diff --git a/l10n-el/suite/chrome/common/migration/migration.properties b/l10n-el/suite/chrome/common/migration/migration.properties
new file mode 100644
index 0000000000..4d5088c003
--- /dev/null
+++ b/l10n-el/suite/chrome/common/migration/migration.properties
@@ -0,0 +1,52 @@
+# 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/.
+
+# the following section is used in the first-time migration wizard
+# new and scary, however if these strings are not present, we will simply
+# skip this wizard page
+homePageStartDefault=Προεπιλεγμένη αρχική σελίδα του SeaMonkey
+homePageStartCurrent=Τρέχουσα αρχική σελίδα του SeaMonkey
+homePageImport=Εισαγωγή αρχικής σελίδας από %S
+
+homePageMigrationPageTitle=Επιλογή αρχικής σελίδας
+homePageMigrationDescription=Παρακαλώ επιλέξτε την επιθυμητή σας αρχική σελίδα:
+# end safe-to-not-have section
+
+# note that the names of apps are in lower case to fit in with the
+# protocol specifications.
+sourceNamethunderbird=Thunderbird
+
+importedBookmarksFolder=Από %S
+
+importedSeamonkeyBookmarksTitle=SeaMonkey 1.x, Netscape 6/7 ή Mozilla 1.x
+
+# Import Sources
+# These are the string names for the values given in nsISuiteProfileMigrator.idl
+# _generic will apply to all import sources unless specifically overriden by another
+# item.
+# e.g. 1_ie=Internet Options will display "Internet Options" rather than "Preferences" when
+# importing from Internet Explorer.
+1_generic=Προτιμήσεις
+
+2_generic=Cookies
+
+4_generic=Ιστορικό περιήγησης
+
+8_generic=Αρχική σελίδα
+
+16_generic=Αποθηκευμένοι κωδικοί πρόσβασης
+
+32_generic=Σελιδοδείκτες
+
+64_generic=Άλλα δεδομένα
+
+128_generic=Ρυθμίσεις λογαριασμού
+
+256_generic=Ευρετήρια
+
+512_generic=Εκμάθηση ανεπιθύμητων email
+
+1024_generic=Φάκελοι ομάδων συζήτησης
+
+2048_generic=Φάκελοι email
diff --git a/l10n-el/suite/chrome/common/notification.dtd b/l10n-el/suite/chrome/common/notification.dtd
new file mode 100644
index 0000000000..22972e7e44
--- /dev/null
+++ b/l10n-el/suite/chrome/common/notification.dtd
@@ -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/. -->
+
+<!ENTITY closeNotification.tooltip "Κλείσιμο μηνύματος">
+
+<!-- LOCALIZATION NOTE (closeNotificationItem.label): This entity is used
+ to replace the Toolkit default closeNotificationItem.label ("Not Now")
+ which is ambiguous in some cases. Thus, make sure to select a phrase
+ that clearly relates to closing the current doorhanger. -->
+<!ENTITY closeNotificationItem.label "Απόρριψη ειδοποίησης">
+
+<!ENTITY checkForUpdates "Έλεγχος για ενημερώσεις…">
+
+<!ENTITY learnMore "Μάθετε περισσότερα…">
diff --git a/l10n-el/suite/chrome/common/notification.properties b/l10n-el/suite/chrome/common/notification.properties
new file mode 100644
index 0000000000..aab48d7550
--- /dev/null
+++ b/l10n-el/suite/chrome/common/notification.properties
@@ -0,0 +1,189 @@
+# 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/.
+
+outdatedpluginsMessage.title=Μερικά αρθρώματα σε αυτή τη σελίδα είναι παρωχημένα.
+outdatedpluginsMessage.button.label=Ενημέρωση αρθρωμάτων…
+outdatedpluginsMessage.button.accesskey=Ε
+
+missingpluginsMessage.title=Απαιτούνται επιπλέον αρθρώματα για την προβολή όλων των πολυμέσων της σελίδας.
+
+blockedpluginsMessage.title=Μερικά από τα αρθρώματα που απαιτούνται από τη σελίδα έχουν αποκλειστεί για την προστασία σας.
+blockedpluginsMessage.infoButton.label=Λεπτομέρειες…
+blockedpluginsMessage.infoButton.accesskey=Λ
+
+crashedpluginsMessage.title=Το άρθρωμα %S κατέρρευσε.
+crashedpluginsMessage.reloadButton.label=Ανανέωση σελίδας
+crashedpluginsMessage.reloadButton.accesskey=Α
+crashedpluginsMessage.submitButton.label=Υποβολή αναφοράς κατάρρευσης
+crashedpluginsMessage.submitButton.accesskey=Υ
+crashedpluginsMessage.learnMore=Μάθετε περισσότερα…
+
+activatepluginsMessage.title=Θέλετε να ενεργοποιήσετε τα αρθρώματα σε αυτή τη σελίδα;
+activatepluginsMessage.activate.label=Ενεργοποίηση αρθρωμάτων
+activatepluginsMessage.activate.accesskey=Ε
+activatepluginsMessage.dismiss.label=Να μην ενεργοποιηθεί
+activatepluginsMessage.dismiss.accesskey=Ν
+activatepluginsMessage.remember=Απομνημόνευση για την ιστοσελίδα
+activatepluginsMessage.always.label=Πάντα ενεργοποίηση αρθρωμάτων στην ιστοσελίδα
+activatepluginsMessage.always.accesskey=γ
+activatepluginsMessage.never.label=Ποτέ ενεργοποίηση αρθρωμάτων στην ιστοσελίδα
+activatepluginsMessage.never.accesskey=Π
+activateSinglePlugin=Ενεργοποίηση
+PluginClickToActivate=Ενεργοποίηση του %S.
+PluginVulnerableUpdatable=Αυτό το άρθρωμα είναι επισφαλές και πρέπει να ενημερωθεί.
+PluginVulnerableNoUpdate=Αυτό το άρθρωμα έχει κενά ασφαλείας.
+vulnerableUpdatablePluginWarning=Παρωχημένη έκδοση!
+vulnerableNoUpdatePluginWarning=Επισφαλές άρθρωμα!
+vulnerablePluginsMessage=Ορισμένα αρθρώματα έχουν απενεργοποιηθεί για την ασφάλειά σας.
+pluginInfo.unknownPlugin=Άγνωστο
+
+# LOCALIZATION NOTE (popupWarning.message): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is brandShortName and #2 is the number of popups blocked.
+popupWarning.message=Το #1 εμπόδισε το άνοιγμα αναδυόμενου παραθύρου από την ιστοσελίδα.;Το #1 εμπόδισε το άνοιγμα #2 αναδυόμενων παραθύρων από την ιστοσελίδα.
+popupWarningButton=Προτιμήσεις
+popupWarningButton.accesskey=Π
+
+xpinstallHostNotAvailable=άγνωστος κεντρικός υπολογιστής
+xpinstallPromptWarning=Το %S εμπόδισε την ερώτηση της ιστοσελίδας (%S) για εγκατάσταση λογισμικού στον υπολογιστή σας.
+xpinstallPromptInstallButton=Εγκατάσταση λογισμικού…
+xpinstallPromptInstallButton.accesskey=Ε
+xpinstallDisabledMessageLocked=Η εγκατάσταση λογισμικού έχει απενεργοποιηθεί από τον διαχειριστή του συστήματός σας.
+xpinstallDisabledMessage=Η εγκατάσταση λογισμικού είναι ανενεργή. Κάντε κλικ στο "Ενεργοποίηση" και δοκιμάστε ξανά.
+xpinstallDisabledButton=Ενεργοποίηση
+xpinstallDisabledButton.accesskey=ν
+
+# LOCALIZATION NOTE (addonDownloading, addonDownloadCancelled):
+# Semi-colon list of plural forms. See:
+# http://developer.mozilla.org/en/Localization_and_Plurals
+# The number of add-ons is not itself substituted in the string.
+addonDownloading=Λήψη προσθέτου:;Λήψη προσθέτων:
+addonDownloadCancelled=Η λήψη προσθέτου ακυρώθηκε.;Οι λήψεις προσθέτων ακυρώθηκαν.
+addonDownloadCancelButton=Ακύρωση
+addonDownloadCancelButton.accesskey=Α
+addonDownloadRestartButton=Επανεκκίνηση
+addonDownloadRestartButton.accesskey=Ε
+
+# LOCALIZATION NOTE (addonsInstalled, addonsInstalledNeedsRestart):
+# Semi-colon list of plural forms. See:
+# http://developer.mozilla.org/en/Localization_and_Plurals
+# #1 first add-on's name, #2 number of add-ons, #3 application name
+addonsInstalled=Το #1 εγκαταστάθηκε επιτυχώς.;Εγκαταστάθηκαν επιτυχώς #2 πρόσθετα.
+addonsInstalledNeedsRestart=Το #1 θα εγκατασταθεί μετά την επανεκκίνηση του #3.;#2 πρόσθετα θα εγκατασταθούν μετά την επανεκκίνηση του #3.
+addonInstallRestartButton=Επανεκκίνηση τώρα
+addonInstallRestartButton.accesskey=Ε
+addonInstallManageButton=Άνοιγμα διαχείρισης προσθέτων
+addonInstallManageButton.accesskey=Ά
+
+# LOCALIZATION NOTE (addonError-1, addonError-2, addonError-3, addonError-4, addonErrorIncompatible, addonErrorBlocklisted):
+# #1 is the add-on name, #2 is the host name, #3 is the application name
+# #4 is the application version
+addonError-1=Δεν ήταν δυνατή η λήψη του προσθέτου λόγω αποτυχίας σύνδεσης με το #2.
+addonError-2=Δεν ήταν δυνατή η εγκατάσταση του προσθέτου από το #2, επειδή δεν αντιστοιχεί με το πρόσθετε που περίμενε το #3.
+addonError-3=Δεν ήταν δυνατή η εγκατάσταση του προσθέτου από το #2, επειδή φαίνεται να έχει καταστραφεί.
+addonError-4=Δεν ήταν δυνατή η εγκατάσταση του #1, επειδή το #3 δεν μπορεί να τροποποιήσει το απαραίτητο αρχείο.
+addonErrorBlocklisted=Δεν ήταν δυνατή η εγκατάσταση του #1, επειδή υπάρχει μεγάλος κίνδυνος πρόκλησης προβλημάτων σταθερότητας ή ασφάλειας.
+addonErrorIncompatible=Δεν ήταν δυνατή η εγκατάσταση του #1, επειδή δεν είναι συμβατό με το #3 #4.
+
+# Light Weight Themes
+# LOCALIZATION NOTE (lwthemeInstallRequest.message): %S will be replaced with
+# the host name of the site.
+lwthemeInstallRequest.message=Η ιστοσελίδα (%S) προσπάθησε να εγκαταστήσει ένα θέμα. Κάντε κλικ στο "Αποδοχή" για να συνεχίσετε.
+lwthemeInstallRequest.allowButton=Αποδοχή
+lwthemeInstallRequest.allowButton.accesskey=Α
+
+lwthemeInstallNotification.message=Έχει εγκατασταθεί ένα νέο θέμα.
+lwthemeInstallNotification.undoButton=Αναίρεση
+lwthemeInstallNotification.undoButton.accesskey=ν
+lwthemeInstallNotification.manageButton=Διαχείριση θεμάτων…
+lwthemeInstallNotification.manageButton.accesskey=Δ
+
+# LOCALIZATION NOTE (lwthemeNeedsRestart.message):
+# %S will be replaced with the new theme name.
+lwthemeNeedsRestart.message=Το %S θα εγκατασταθεί μετά από επανεκκίνηση.
+lwthemeNeedsRestart.restartButton=Επανεκκίνηση τώρα
+lwthemeNeedsRestart.restartButton.accesskey=Ε
+
+# Geolocation UI
+geolocation.allowLocation=Αποδοχή πρόσβασης τοποθεσίας
+geolocation.allowLocation.accesskey=Α
+geolocation.dontAllowLocation=Απόρριψη
+geolocation.dontAllowLocation.accesskey=π
+geolocation.shareWithSite3=Θα επιτρέψετε στο %S την πρόσβαση στην τοποθεσία σας;
+geolocation.shareWithFile3=Θα επιτρέψετε σε αυτό το τοπικό αρχείο την πρόσβαση στην τοποθεσία σας;
+geolocation.remember=Απομνημόνευση για την ιστοσελίδα
+
+# Persistent storage UI
+persistentStorage.allow=Αποδοχή
+persistentStorage.allow.accesskey=Α
+persistentStorage.dontAllow=Απόρριψη
+persistentStorage.dontAllow.accesskey=ρ
+persistentStorage.allowWithSite=Θα επιτρέψετε στο %S την αποθήκευση δεδομένων στο μόνιμο χώρο αποθήκευσης;
+persistentStorage.remember=Απομνημόνευση απόφασης
+
+# Desktop Notifications
+webNotifications.allow=Αποδοχή ειδοποιήσεων
+webNotifications.allow.accesskey=Α
+webNotifications.notNow=Όχι τώρα
+webNotifications.notNow.accesskey=ρ
+webNotifications.never=Οριστική απόρριψη
+webNotifications.never.accesskey=Ο
+webNotifications.receiveFromSite2=Αποδοχή αποστολής ειδοποιήσεων από το %S;
+
+# IndexedDB
+offlineApps.permissions=Η ιστοσελίδα (%S) ζητά το δικαίωμα αποθήκευσης δεδομένων στον υπολογιστή σας για χρήση εκτός σύνδεσης.
+offlineApps.private=Βρίσκεστε σε ιδιωτικό παράθυρο. Η ιστοσελίδα (%S) δεν επιτρέπεται να αποθηκεύσει δεδομένα στον υπολογιστή σας για χρήση εκτός σύνδεσης.
+offlineApps.quota=Η ιστοσελίδα (%1$S) προσπαθεί να αποθηκεύσει πάνω από %2$SMB δεδομένων στον υπολογιστή σας για χρήση εκτός σύνδεσης.
+offlineApps.always=Πάντα αποδοχή
+offlineApps.always.accesskey=α
+offlineApps.later=Όχι τώρα
+offlineApps.later.accesskey=Ό
+offlineApps.never=Ποτέ για αυτή την ιστοσελίδα
+offlineApps.never.accesskey=έ
+
+# Block autorefresh
+refreshBlocked.goButton=Αποδοχή
+refreshBlocked.goButton.accesskey=Α
+refreshBlocked.refreshLabel=Το %S εμπόδισε την αυτόματη ανανέωση αυτής της σελίδας.
+refreshBlocked.redirectLabel=Το %S εμπόδισε την αυτόματη ανακατεύθυνση αυτής της σελίδας σε μια άλλη σελίδα.
+
+# LOCALIZATION NOTE (updatePrompt.text)
+# %S will be replaced with the application name.
+updatePrompt.text=Το αντίγραφο του %S που διαθέτετε είναι παλιό και πιθανώς έχει γνωστά θέματα ασφαλείας, αλλά έχετε απενεργοποιήσει τους αυτόματους ελέγχους για ενημερώσεις. Παρακαλούμε κάντε ενημέρωση σε νεότερη έκδοση.
+updatePromptCheckButton.label=Έλεγχος για ενημερώσεις
+updatePromptCheckButton.accesskey=Έ
+
+SecurityTitle=Προειδοποίηση ασφαλείας
+MixedContentMessage=Ζητήσατε μια κρυπτογραφημένη σελίδα που περιέχει ορισμένες μη κρυπτογραφημένες πληροφορίες. Οι πληροφορίες που βλέπετε ή εισάγετε σε αυτή τη σελίδα μπορούν εύκολα να διαβαστούν από τρίτους.
+MixedActiveContentMessage=Ζητήσατε μια κρυπτογραφημένη σελίδα που περιέχει επισφαλείς πληροφορίες. Οι πληροφορίες που βλέπετε ή εισάγετε σε αυτή τη σελίδα μπορούν εύκολα να διαβαστούν από τρίτους.
+TrackingContentMessage=Τμήματα αυτής της σελίδας ενδέχεται να καταγράφουν τη διαδικτυακή σας δραστηριότητα.
+MixedDisplayContentMessage=Ζητήσατε μια σελίδα που είναι μόνο μερικώς κρυπτογραφημένη και δεν εμποδίζει την υποκλοπή δεδομένων.
+BlockedActiveContentMessage=Αποκλείστηκαν οι επισφαλείς πληροφορίες σε αυτή τη σελίδα.
+BlockedTrackingContentMessage=Αποκλείστηκαν τμήματα της σελίδας που καταγράφουν τη διαδικτυακή σας δραστηριότητα.
+BlockedDisplayContentMessage=Αποκλείστηκαν μη κρυπτογραφημένες πληροφορίες σε αυτή τη σελίδα.
+EnterInsecureMessage=Αποχωρήσατε από μια κρυπτογραφημένη σελίδα. Οι πληροφορίες που στέλνετε ή λαμβάνετε πλέον μπορούν εύκολα να υποκλαπούν από τρίτους.
+EnterSecureMessage=Ζητήσατε μια κρυπτογραφημένη σελίδα. Η ιστοσελίδα έχει αναγνωριστεί επιτυχώς και οι πληροφορίες που βλέπετε ή εισάγετε σε αυτή τη σελίδα δεν μπορούν εύκολα να διαβαστούν από τρίτους.
+SecurityKeepBlocking.label=Συνέχεια φραγής
+SecurityKeepBlocking.accesskey=Σ
+SecurityUnblock.label=Άρση φραγής
+SecurityUnblock.accesskey=Ά
+SecurityPreferences.label=Προτιμήσεις
+SecurityPreferences.accesskey=Π
+PostToInsecureFromInsecureMessage=Οι πληροφορίες που έχετε εισαγάγει θα σταλούν μέσω μιας μη κρυπτογραφημένης σύνδεσης και θα μπορούν εύκολα να διαβαστούν από τρίτους.\nΘέλετε σίγουρα να συνεχίσετε με την αποστολή αυτών των δεδομένων;
+PostToInsecureFromInsecureShowAgain=Προειδοποίηση όταν υποβάλλω μη κρυπτογραφημένες πληροφορίες.
+PostToInsecureContinue=Συνέχεια
+
+# Phishing/Malware Notification Bar.
+# LOCALIZATION NOTE (notADeceptiveSite, notAnAttack)
+# The two button strings will never be shown at the same time, so
+# it's okay for them to have the same access key.
+safebrowsing.getMeOutOfHereButton.label=Θέλω να φύγω από εδώ!
+safebrowsing.getMeOutOfHereButton.accessKey=Θ
+safebrowsing.deceptiveSite=Παραπλανητική ιστοσελίδα!
+safebrowsing.notADeceptiveSiteButton.label=Δεν είναι παραπλανητική ιστοσελίδα…
+safebrowsing.notADeceptiveSiteButton.accessKey=π
+safebrowsing.reportedAttackSite=Αναφέρθηκε ιστοσελίδα επιθέσεων!
+safebrowsing.notAnAttackButton.label=Δεν είναι σελίδα επιθέσεων…
+safebrowsing.notAnAttackButton.accessKey=ε
+safebrowsing.reportedUnwantedSite=Αναφέρθηκε ιστοσελίδα ανεπιθύμητου λογισμικού!
diff --git a/l10n-el/suite/chrome/common/openLocation.dtd b/l10n-el/suite/chrome/common/openLocation.dtd
new file mode 100644
index 0000000000..2e338272ae
--- /dev/null
+++ b/l10n-el/suite/chrome/common/openLocation.dtd
@@ -0,0 +1,22 @@
+<!-- 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/. -->
+
+<!-- extracted from content/openLocation.xul -->
+
+<!ENTITY enter.label "Εισάγετε τη διεύθυνση ιστού (URL), ή προσδιορίστε το τοπικό αρχείο που θέλετε να ανοίξετε:">
+<!-- LOCALIZATION NOTE (enter.accesskey): should be present in both enter.label
+ as defined above and attachEnterLabel as defined in
+ openLocation.properties -->
+<!ENTITY enter.accesskey "Ε">
+<!ENTITY chooseFile.label "Επιλογή αρχείου…">
+<!ENTITY chooseFile.accesskey "Ε">
+<!ENTITY newPrivate.label "Νέο ιδιωτικό παράθυρο">
+<!ENTITY newWindow.label "Νέο παράθυρο προγράμματος περιήγησης">
+<!ENTITY newTab.label "Νέα καρτέλα προγράμματος περιήγησης">
+<!ENTITY currentTab.label "Τρέχουσα καρτέλα προγράμματος περιήγησης">
+<!ENTITY editNewWindow.label "Νέο παράθυρο σύνθεσης">
+<!ENTITY open.label "Άνοιγμα">
+<!ENTITY caption.label "Άνοιγμα διαδικτυακής τοποθεσίας">
+<!ENTITY openWhere.label "Άνοιγμα σε:">
+<!ENTITY openWhere.accesskey "Ά">
diff --git a/l10n-el/suite/chrome/common/openLocation.properties b/l10n-el/suite/chrome/common/openLocation.properties
new file mode 100644
index 0000000000..5ee58d6970
--- /dev/null
+++ b/l10n-el/suite/chrome/common/openLocation.properties
@@ -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/.
+
+attachTitle=Επισύναψη ιστοσελίδας
+# LOCALIZATION NOTE (attachEnterLabel): should contain "enter.accesskey"
+# as defined in openLocation.dtd
+attachEnterLabel=Εισάγετε την τοποθεσία ιστού (URL), ή προσδιορίστε το τοπικό αρχείο που θέλετε να επισυνάψετε:
+attachButtonLabel=Επισύναψη
+chooseFileDialogTitle=Επιλογή αρχείου
+existingNavigatorWindow=Υπάρχον παράθυρο προγράμματος περιήγησης
diff --git a/l10n-el/suite/chrome/common/permissions/cookieViewer.dtd b/l10n-el/suite/chrome/common/permissions/cookieViewer.dtd
new file mode 100644
index 0000000000..299b94bc31
--- /dev/null
+++ b/l10n-el/suite/chrome/common/permissions/cookieViewer.dtd
@@ -0,0 +1,46 @@
+<!-- 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 tab.cookiesonsystem.label "Αποθηκευμένα cookies">
+<!ENTITY tab.bannedservers.label "Ιστοσελίδες cookie">
+<!ENTITY div.bannedservers.label "Διαχειριστείτε ιστοσελίδες που μπορούν ή όχι, να αποθηκεύσουν cookies στον υπολογιστή σας.">
+<!ENTITY div.cookiesonsystem.label "Δείτε και αφαιρέστε cookies που είναι αποθηκευμένα στον υπολογιστή σας.">
+<!ENTITY treehead.cookiename.label "Όνομα cookie">
+<!ENTITY treehead.cookiedomain.label "Ιστοσελίδα">
+<!ENTITY treehead.cookieexpires.label "Λήξη">
+<!ENTITY treehead.infoselected.label "Πληροφορίες για το επιλεγμένο cookie">
+<!ENTITY button.removecookie.label "Αφαίρεση cookie">
+<!ENTITY button.removecookie.accesskey "Α">
+<!ENTITY button.removeallcookies.label "Αφαίρεση όλων των cookies">
+<!ENTITY button.removeallcookies.accesskey "φ">
+
+<!ENTITY search.placeholder "Αναζήτηση cookies">
+<!ENTITY focusSearch.key "f">
+<!ENTITY selectAll.key "a">
+
+<!ENTITY props.name.label "Όνομα:">
+<!ENTITY props.value.label "Περιεχόμενο:">
+<!ENTITY props.domain.label "Κεντρικός υπολογιστής:">
+<!ENTITY props.path.label "Διαδρομή:">
+<!ENTITY props.secure.label "Αποστολή για:">
+<!ENTITY props.expires.label "Λήγει:">
+
+<!ENTITY treehead.sitename.label "Ιστοσελίδα">
+<!ENTITY treehead.scheme.label "Σχέδιο">
+<!ENTITY treehead.status.label "Κατάσταση">
+<!ENTITY windowtitle.label "Διαχείριση cookies">
+
+<!ENTITY blockSite.label "Φραγή">
+<!ENTITY blockSite.accesskey "Φ">
+<!ENTITY allowSite.label "Αποδοχή">
+<!ENTITY allowSite.accesskey "Α">
+<!ENTITY allowSiteSession.label "Συνεδρία">
+<!ENTITY allowSiteSession.accesskey "Σ">
+<!ENTITY removepermission.label "Αφαίρεση ιστοσελίδας">
+<!ENTITY removepermission.accesskey "Α">
+<!ENTITY removeallpermissions.label "Αφαίρεση όλων των ιστοσελίδων">
+<!ENTITY removeallpermissions.accesskey "φ">
+
+<!ENTITY futureCookies.label "Απόρριψη μελλοντικών cookies από ιστοσελίδες με διαγραμμένα cookies">
+<!ENTITY futureCookies.accesskey "Α">
diff --git a/l10n-el/suite/chrome/common/permissions/cookieViewer.properties b/l10n-el/suite/chrome/common/permissions/cookieViewer.properties
new file mode 100644
index 0000000000..e37c0df0e9
--- /dev/null
+++ b/l10n-el/suite/chrome/common/permissions/cookieViewer.properties
@@ -0,0 +1,30 @@
+# 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/.
+
+# note this section of the code may require some tinkering in other languages =(
+# format in dialog: site [can/cannot] set cookies
+can=η ιστοσελίδα μπορεί να τοποθετήσει cookies
+cannot=η ιστοσελίδα δεν μπορεί να τοποθετήσει cookies
+canSession=η ιστοσελίδα μπορεί να τοποθετήσει cookies συνεδρίας
+domain=Τομέας για τον οποίο ισχύει το cookie:
+host=Διακομιστής που ορίζει το cookie:
+hostColon=Κεντρικός υπολογιστής:
+domainColon=Τομέας:
+forSecureOnly=Μόνο κρυπτογραφημένες συνδέσεις
+forAnyConnection=Κάθε τύπος σύνδεσης
+expireAtEndOfSession=Στο τέλος της συνεδρίας
+allowedURLSchemes=Ελέγξτε το πληκτρολογημένο URL. Μπορείτε επίσης να προσθέσετε δικαιώματα μόνο για http ή https
+errorAddPermission=Αδυναμία προσθήκης δικαιώματος για την ιστοσελίδα
+deleteAllCookies=Θέλετε σίγουρα να διαγράψετε όλα τα cookies;
+deleteAllCookiesTitle=Αφαίρεση όλων των cookies
+deleteAllCookiesYes=&Αφαίρεση
+deleteAllCookiesSites=Θέλετε σίγουρα να διαγράψετε τις ιστοσελίδες cookie;
+deleteAllSitesTitle=Αφαίρεση όλων των ιστοσελίδων
+deleteAllSitesYes=&Αφαίρεση
+deleteSelectedCookies=Θέλετε σίγουρα να διαγράψετε τα επιλεγμένα cookies;
+deleteSelectedCookiesTitle=Αφαίρεση επιλεγμένων cookies
+deleteSelectedCookiesYes=&Αφαίρεση
+deleteSelectedCookiesSites=Θέλετε σίγουρα να διαγράψετε τις επιλεγμένες ιστοσελίδες cookie;
+deleteSelectedSitesTitle=Αφαίρεση επιλεγμένων ιστοσελίδων
+deleteSelectedSitesYes=&Αφαίρεση
diff --git a/l10n-el/suite/chrome/common/permissions/permissionsManager.dtd b/l10n-el/suite/chrome/common/permissions/permissionsManager.dtd
new file mode 100644
index 0000000000..3b2442a6cd
--- /dev/null
+++ b/l10n-el/suite/chrome/common/permissions/permissionsManager.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 windowtitle.label "Εξαιρέσεις">
+<!ENTITY treehead.sitename.label "Ιστοσελίδα">
+<!ENTITY treehead.status.label "Κατάσταση">
+<!ENTITY remove.label "Αφαίρεση ιστοσελίδας">
+<!ENTITY remove.accesskey "Α">
+<!ENTITY removeall.label "Αφαίρεση όλων των ιστοσελίδων">
+<!ENTITY removeall.accesskey "φ">
+<!ENTITY address.label "Διεύθυνση ιστοσελίδας:">
+<!ENTITY address.accesskey "δ">
+<!ENTITY block.label "Φραγή">
+<!ENTITY block.accesskey "Φ">
+<!ENTITY session.label "Αποδοχή για τη συνεδρία">
+<!ENTITY session.accesskey "σ">
+<!ENTITY allow.label "Αποδοχή">
+<!ENTITY allow.accesskey "Α">
diff --git a/l10n-el/suite/chrome/common/permissions/permissionsManager.properties b/l10n-el/suite/chrome/common/permissions/permissionsManager.properties
new file mode 100644
index 0000000000..dc7cb05007
--- /dev/null
+++ b/l10n-el/suite/chrome/common/permissions/permissionsManager.properties
@@ -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/.
+
+installpermissionstext=Μπορείτε να καθορίσετε ποιες ιστοσελίδες μπορούν να εγκαθιστούν επεκτάσεις και ενημερώσεις. Πληκτρολογήστε την ακριβή διεύθυνση της ιστοσελίδας που θέλετε να διαχειριστείτε και στη συνέχεια, κάντε κλικ στο "Αποδοχή".
+installpermissionstitle=Επιτρεπόμενες ιστοσελίδες - Εγκατάσταση λογισμικού
+installpermissionshelp=advanced_pref_installation
+popuppermissionstext=Μπορείτε να καθορίσετε ποιες ιστοσελίδες μπορούν να ανοίγουν αναδυόμενα παράθυρα. Πληκτρολογήστε την ακριβή διεύθυνση της ιστοσελίδας που θέλετε να διαχειριστείτε και στη συνέχεια, κάντε κλικ στο "Αποδοχή".
+popuppermissionstitle=Επιτρεπόμενες ιστοσελίδες - Αναδυόμενα
+popuppermissionshelp=pop_up_blocking
+imagepermissionstext=Μπορείτε να καθορίσετε ποιες ιστοσελίδες μπορούν να φορτώνουν εικόνες. Πληκτρολογήστε την ακριβή διεύθυνση της ιστοσελίδας που θέλετε να διαχειριστείτε και στη συνέχεια, κάντε κλικ στο "Αποδοχή" ή το "Φραγή".
+imagepermissionstitle=Εξαιρέσεις - Εικόνες
+imagepermissionshelp=images-help-managing
+offline-apppermissionstext=Μπορείτε να καθορίσετε ποιες ιστοσελίδες μπορούν να αποθηκεύουν δεδομένα για χρήση εκτός σύνδεσης. Πληκτρολογήστε την ακριβή διεύθυνση της ιστοσελίδας που θέλετε να διαχειριστείτε και στη συνέχεια, κάντε κλικ στο "Αποδοχή" ή το "Φραγή".
+offline-apppermissionstitle=Δεδομένα εκτός σύνδεσης
+offline-apppermissionshelp=offline_apps
+
+can=Αποδοχή
+canSession=Αποδοχή για τη συνεδρία
+cannot=Φραγή
+
+alertInvalidTitle=Εισήχθη μη έγκυρη ιστοσελίδα
+alertInvalid=Η ιστοσελίδα %S δεν είναι έγκυρη.
diff --git a/l10n-el/suite/chrome/common/places/bookmarkProperties.properties b/l10n-el/suite/chrome/common/places/bookmarkProperties.properties
new file mode 100644
index 0000000000..c5106b245c
--- /dev/null
+++ b/l10n-el/suite/chrome/common/places/bookmarkProperties.properties
@@ -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/.
+
+dialogAcceptLabelAddItem=Προσθήκη
+dialogAcceptLabelSaveItem=Αποθήκευση
+dialogAcceptLabelAddLivemark=Συνδρομή
+dialogAcceptLabelAddMulti=Προσθήκη σελιδοδεικτών
+dialogAcceptLabelEdit=Αποθήκευση
+dialogTitleAddBookmark=Νέος σελιδοδείκτης
+dialogTitleAddLivemark=Συνδρομή με δυναμικό σελιδοδείκτη
+dialogTitleAddFolder=Νέος φάκελος
+dialogTitleAddMulti=Νέοι σελιδοδείκτες
+dialogTitleEdit=Ιδιότητες για “%S”
+
+bookmarkAllTabsDefault=[Όνομα φακέλου]
+newFolderDefault=Νέος φάκελος
+newBookmarkDefault=Νέος σελιδοδείκτης
+newLivemarkDefault=Νέος δυναμικός σελιδοδείκτης
diff --git a/l10n-el/suite/chrome/common/places/editBookmarkOverlay.dtd b/l10n-el/suite/chrome/common/places/editBookmarkOverlay.dtd
new file mode 100644
index 0000000000..b06e51eac2
--- /dev/null
+++ b/l10n-el/suite/chrome/common/places/editBookmarkOverlay.dtd
@@ -0,0 +1,28 @@
+<!-- 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 editBookmarkOverlay.name.label "Όνομα:">
+<!ENTITY editBookmarkOverlay.name.accesskey "Ό">
+<!ENTITY editBookmarkOverlay.location.label "Τοποθεσία:">
+<!ENTITY editBookmarkOverlay.location.accesskey "Τ">
+<!ENTITY editBookmarkOverlay.feedLocation.label "Διεύθυνση ροής:">
+<!ENTITY editBookmarkOverlay.feedLocation.accesskey "Δ">
+<!ENTITY editBookmarkOverlay.siteLocation.label "Διεύθυνση ιστοσελίδας:">
+<!ENTITY editBookmarkOverlay.siteLocation.accesskey "ι">
+<!ENTITY editBookmarkOverlay.folder.label "Φάκελος:">
+<!ENTITY editBookmarkOverlay.foldersExpanderDown.tooltip "Προβολή όλων των φακέλων σελιδοδεικτών">
+<!ENTITY editBookmarkOverlay.expanderUp.tooltip "Απόκρυψη">
+<!ENTITY editBookmarkOverlay.tags.label "Ετικέτες:">
+<!ENTITY editBookmarkOverlay.tags.accesskey "Ε">
+<!ENTITY editBookmarkOverlay.tagsEmptyDesc.label "Διαχωρίστε τις ετικέτες με κόμματα">
+<!ENTITY editBookmarkOverlay.description.label "Περιγραφή:">
+<!ENTITY editBookmarkOverlay.description.accesskey "Π">
+<!ENTITY editBookmarkOverlay.keyword.label "Λέξη-κλειδί:">
+<!ENTITY editBookmarkOverlay.keyword.accesskey "Λ">
+<!ENTITY editBookmarkOverlay.tagsExpanderDown.tooltip "Εμφάνιση όλων των ετικετών">
+<!ENTITY editBookmarkOverlay.loadInSidebar.label "Φόρτωση σελιδοδείκτη στην πλευρική στήλη">
+<!ENTITY editBookmarkOverlay.loadInSidebar.accesskey "δ">
+<!ENTITY editBookmarkOverlay.choose.label "Επιλογή…">
+<!ENTITY editBookmarkOverlay.newFolderButton.label "Νέος φάκελος">
+<!ENTITY editBookmarkOverlay.newFolderButton.accesskey "ο">
diff --git a/l10n-el/suite/chrome/common/places/places.dtd b/l10n-el/suite/chrome/common/places/places.dtd
new file mode 100644
index 0000000000..7ed8b68e5f
--- /dev/null
+++ b/l10n-el/suite/chrome/common/places/places.dtd
@@ -0,0 +1,106 @@
+<!-- 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 (places.library.title): use "Library", "Archive" or "Repository" -->
+<!ENTITY places.library.title "Βιβλιοθήκη">
+<!ENTITY places.library.width "700">
+<!ENTITY places.library.height "500">
+<!ENTITY organize.label "Οργάνωση">
+<!ENTITY organize.accesskey "Ο">
+<!ENTITY organize.tooltip "Οργάνωση των σελιδοδεικτών σας">
+
+<!ENTITY file.close.label "Κλείσιμο">
+<!ENTITY file.close.accesskey "Κ">
+<!ENTITY cmd.close.key "w">
+<!ENTITY views.label "Προβολές">
+<!ENTITY views.accesskey "Π">
+<!ENTITY views.tooltip "Αλλαγή προβολής">
+<!ENTITY view.columns.label "Εμφάνιση στηλών">
+<!ENTITY view.columns.accesskey "Ε">
+<!ENTITY view.sort.label "Ταξινόμηση">
+<!ENTITY view.sort.accesskey "Τ">
+<!ENTITY view.unsorted.label "Χωρίς ταξινόμηση">
+<!ENTITY view.unsorted.accesskey "Χ">
+<!ENTITY view.sortAscending.label "Σειρά ταξινόμησης Α > Ω">
+<!ENTITY view.sortAscending.accesskey "Α">
+<!ENTITY view.sortDescending.label "Σειρά ταξινόμησης Ω > Α">
+<!ENTITY view.sortDescending.accesskey "Ω">
+
+<!ENTITY importBookmarksFromHTML.label "Εισαγωγή σελιδοδεικτών από HTML…">
+<!ENTITY importBookmarksFromHTML.accesskey "Ε">
+<!ENTITY exportBookmarksToHTML.label "Εξαγωγή σελιδοδεικτών σε HTML…">
+<!ENTITY exportBookmarksToHTML.accesskey "Ε">
+<!ENTITY importOtherBrowser.label "Εισαγωγή δεδομένων από άλλο φυλλομετρητή…">
+<!ENTITY importOtherBrowser.accesskey "ά">
+
+<!ENTITY cmd.backup.label "Αντίγραφο ασφαλείας…">
+<!ENTITY cmd.backup.accesskey "Α">
+<!ENTITY cmd.restore2.label "Επαναφορά">
+<!ENTITY cmd.restore2.accesskey "Ε">
+<!ENTITY cmd.restoreFromFile.label "Επιλογή αρχείου…">
+<!ENTITY cmd.restoreFromFile.accesskey "Ε">
+
+<!ENTITY cmd.deleteDomainData.label "Χωρίς απομνημόνευση σελίδας">
+<!ENTITY cmd.deleteDomainData.accesskey "Χ">
+
+<!ENTITY cmd.open.label "Άνοιγμα">
+<!ENTITY cmd.open.accesskey "Ά">
+<!ENTITY cmd.open_window.label "Άνοιγμα σε νέο παράθυρο">
+<!ENTITY cmd.open_window.accesskey "ν">
+<!ENTITY cmd.open_private_window.label "Άνοιγμα σε νέο ιδιωτικό παράθυρο">
+<!ENTITY cmd.open_private_window.accesskey "ι">
+<!ENTITY cmd.open_tab.label "Άνοιγμα σε νέα καρτέλα">
+<!ENTITY cmd.open_tab.accesskey "ν">
+<!ENTITY cmd.open_all_in_tabs.label "Άνοιγμα όλων σε καρτέλες">
+<!ENTITY cmd.open_all_in_tabs.accesskey "Ά">
+
+<!ENTITY cmd.properties.label "Ιδιότητες">
+<!ENTITY cmd.properties.accesskey "ι">
+
+<!ENTITY cmd.sortby_name.label "Ταξινόμηση κατά όνομα">
+<!ENTITY cmd.sortby_name.accesskey "Τ">
+<!ENTITY cmd.context_sortby_name.accesskey "ξ">
+
+<!ENTITY cmd.new_bookmark.label "Νέος σελιδοδείκτης…">
+<!ENTITY cmd.new_bookmark.accesskey "σ">
+<!ENTITY cmd.new_folder.label "Νέος φάκελος…">
+<!ENTITY cmd.new_folder.accesskey "κ">
+<!ENTITY cmd.context_new_folder.accesskey "φ">
+<!ENTITY cmd.new_separator.label "Νέο διαχωριστικό">
+<!ENTITY cmd.new_separator.accesskey "δ">
+
+<!ENTITY cmd.reloadLivebookmark.label "Ανανέωση δυναμικού σελιδοδείκτη">
+<!ENTITY cmd.reloadLivebookmark.accesskey "Α">
+
+<!ENTITY col.name.label "Όνομα">
+<!ENTITY col.tags.label "Ετικέτες">
+<!ENTITY col.url.label "Τοποθεσία">
+<!ENTITY col.mostrecentvisit.label "Πιο πρόσφατη επίσκεψη">
+<!ENTITY col.visitcount.label "Αριθμός επισκέψεων">
+<!ENTITY col.description.label "Περιγραφή">
+<!ENTITY col.dateadded.label "Προσθήκη">
+<!ENTITY col.lastmodified.label "Τελευταία τροποποίηση">
+
+<!ENTITY search.placeholder "Αναζήτηση">
+
+<!ENTITY cmd.find.key "f">
+
+<!ENTITY detailsPane.more.label "Περισσότερα">
+<!ENTITY detailsPane.more.accesskey "ρ">
+<!ENTITY detailsPane.less.label "Λιγότερα">
+<!ENTITY detailsPane.less.accesskey "γ">
+<!ENTITY detailsPane.selectAnItemText.description "Επιλέξτε ένα στοιχείο για προβολή και επεξεργασία των ιδιοτήτων του">
+
+<!ENTITY view.label "Προβολή">
+<!ENTITY view.accesskey "β">
+<!ENTITY byDate.label "Κατά ημερομηνία">
+<!ENTITY byDate.accesskey "η">
+<!ENTITY bySite.label "Κατά ιστοσελίδα">
+<!ENTITY bySite.accesskey "ι">
+<!ENTITY byMostVisited.label "Κατά συχνότητα">
+<!ENTITY byMostVisited.accesskey "σ">
+<!ENTITY byLastVisited.label "Κατά τελευταία επίσκεψη">
+<!ENTITY byLastVisited.accesskey "τ">
+<!ENTITY byDayAndSite.label "Κατά ημερομηνία και σελίδα">
+<!ENTITY byDayAndSite.accesskey "μ">
diff --git a/l10n-el/suite/chrome/common/places/places.properties b/l10n-el/suite/chrome/common/places/places.properties
new file mode 100644
index 0000000000..524cb92d41
--- /dev/null
+++ b/l10n-el/suite/chrome/common/places/places.properties
@@ -0,0 +1,100 @@
+# 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/.
+
+load-js-data-url-error=Για λόγους ασφαλείας, τα URL με JavaScript ή δεδομένα δεν μπορούν να φορτωθούν από το παράθυρο ιστορικού ή την πλευρική στήλη.
+noTitle=(χωρίς τίτλο)
+
+bookmarksMenuEmptyFolder=(Κενό)
+
+bookmarksBackupTitle=Όνομα αντιγράφου ασφαλείας σελιδοδεικτών
+
+bookmarksRestoreAlertTitle=Ανάκτηση σελιδοδεικτών
+bookmarksRestoreAlert=Θα αντικατασταθούν όλοι οι τρέχοντες σελιδοδείκτες με το αντίγραφο ασφαλείας. Θέλετε σίγουρα να συνεχίσετε;
+bookmarksRestoreTitle=Επιλογή αντιγράφου σελιδοδεικτών
+bookmarksRestoreFilterName=JSON
+
+bookmarksRestoreFormatError=Μη υποστηριζόμενος τύπος αρχείου.
+bookmarksRestoreParseError=Αδυναμία επεξεργασίας αντίγραφου ασφαλείας.
+
+bookmarksLivemarkLoading=Φόρτωση δυναμικού σελιδοδείκτη…
+bookmarksLivemarkFailed=Αποτυχία φόρτωσης ροής δυναμικού σελιδοδείκτη.
+
+menuOpenLivemarkOrigin.label=Άνοιγμα “%S”
+
+sortByName=Ταξινόμηση ‘%S’ κατά όνομα
+sortByNameGeneric=Ταξινόμηση κατά όνομα
+# LOCALIZATION NOTE (view.sortBy.1.name.label): sortBy properties are versioned.
+# When any of these changes, all of the properties must be bumped, and the
+# change must be annotated here. Both label and accesskey must be updated.
+# - version 1: changed view.sortBy.1.date.
+view.sortBy.1.name.label=Ταξινόμηση κατά όνομα
+view.sortBy.1.name.accesskey=ό
+view.sortBy.1.url.label=Ταξινόμηση κατά τοποθεσία
+view.sortBy.1.url.accesskey=τ
+view.sortBy.1.date.label=Ταξινόμηση κατά πιο πρόσφατη επίσκεψη
+view.sortBy.1.date.accesskey=ε
+view.sortBy.1.visitCount.label=Ταξινόμηση κατά αριθμό επισκέψεων
+view.sortBy.1.visitCount.accesskey=ω
+view.sortBy.1.description.label=Ταξινόμηση κατά περιγραφή
+view.sortBy.1.description.accesskey=π
+view.sortBy.1.dateAdded.label=Ταξινόμηση κατά προσθήκη
+view.sortBy.1.dateAdded.accesskey=θ
+view.sortBy.1.lastModified.label=Ταξινόμηση κατά τελευταία τροποποίηση
+view.sortBy.1.lastModified.accesskey=τ
+view.sortBy.1.tags.label=Ταξινόμηση κατά ετικέτες
+view.sortBy.1.tags.accesskey=ε
+
+searchBookmarks=Αναζήτηση σελιδοδεικτών
+searchHistory=Αναζήτηση ιστορικού
+
+SelectImport=Εισαγωγή αρχείου σελιδοδεικτών
+EnterExport=Εξαγωγή αρχείου σελιδοδεικτών
+
+detailsPane.noItems=Κανένα στοιχείο
+# LOCALIZATION NOTE (detailsPane.itemsCountLabel): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of items
+# example: 111 items
+detailsPane.itemsCountLabel=Ένα στοιχείο;#1 στοιχεία
+
+mostVisitedTitle=Συχνές επισκέψεις
+recentlyBookmarkedTitle=Πρόσφατοι σελιδοδείκτες
+recentTagsTitle=Πρόσφατες ετικέτες
+
+OrganizerQueryHistory=Ιστορικό
+OrganizerQueryAllBookmarks=Όλοι οι σελιδοδείκτες
+OrganizerQueryTags=Ετικέτες
+
+# LOCALIZATION NOTE (tagResultLabel, bookmarkResultLabel, switchtabResultLabel,
+# keywordResultLabel, searchengineResultLabel)
+# Noun used to describe the location bar autocomplete result type
+# to users with screen readers
+# See createResultLabel() in urlbarBindings.xml
+tagResultLabel=Ετικέτα
+bookmarkResultLabel=Σελιδοδείκτης
+switchtabResultLabel=Καρτέλα
+keywordResultLabel=Λέξη-κλειδί
+searchengineResultLabel=Αναζήτηση
+
+# LOCALIZATION NOTE (lockPrompt.text)
+# %S will be replaced with the application name.
+lockPrompt.text=Το σύστημα σελιδοδεικτών και ιστορικού δεν θα λειτουργεί, επειδή ένα από τα αρχεία του %S χρησιμοποιείται από άλλη εφαρμογή. Αυτό το πρόβλημα μπορεί να οφείλεται σε ορισμένα προγράμματα ασφάλειας.
+lockPromptInfoButton.label=Μάθετε περισσότερα
+lockPromptInfoButton.accesskey=Μ
+
+# LOCALIZATION NOTE (cmd.deleteSinglePage.accesskey,
+# cmd.deleteMultiplePages.accesskey): these accesskeys can use the same
+# character, since they're never displayed at the same time
+cmd.deleteSinglePage.label=Διαγραφή σελίδας
+cmd.deleteSinglePage.accesskey=Δ
+cmd.deleteMultiplePages.label=Διαγραφή σελίδων
+cmd.deleteMultiplePages.accesskey=Δ
+
+# LOCALIZATION NOTE (cmd.bookmarkSinglePage.accesskey,
+# cmd.bookmarkMultiplePages.accesskey): these accesskeys can use the same
+# character, since they're never displayed at the same time
+cmd.bookmarkSinglePage.label=Προσθήκη σελιδοδείκτη σελίδας
+cmd.bookmarkSinglePage.accesskey=σ
+cmd.bookmarkMultiplePages.label=Προσθήκη σελιδοδεικτών σελίδων
+cmd.bookmarkMultiplePages.accesskey=σ
diff --git a/l10n-el/suite/chrome/common/pref/pref-advanced.dtd b/l10n-el/suite/chrome/common/pref/pref-advanced.dtd
new file mode 100644
index 0000000000..0132369b20
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-advanced.dtd
@@ -0,0 +1,33 @@
+<!-- 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 : FILE 'Advanced' prefs settings -->
+<!ENTITY pref.advanced.title "Για προχωρημένους">
+
+<!ENTITY systemPref.caption "Προτιμήσεις συστήματος">
+<!ENTITY systemPrefCheck.label "Χρήση προτιμήσεων από το σύστημα">
+<!ENTITY systemPrefCheck.accesskey "Χ">
+<!ENTITY systemPref.desc "Με αυτή την επιλογή, το &brandShortName; κληρονομεί προτιμήσεις από το σύστημα. Αυτές οι ρυθμίσεις συστήματος θα αντικαταστήσουν τις προτιμήσεις του &brandShortName;.">
+
+<!ENTITY prefCheckDefault.caption "Ενσωμάτωση συστήματος">
+<!ENTITY prefCheckDefaultClient.label "Έλεγχος ρυθμίσεων προεπιλεγμένης εφαρμογής κατά την εκκίνησης">
+<!ENTITY prefCheckDefaultClient.accesskey "Έ">
+
+<!ENTITY printing.label "Εκτύπωση">
+<!ENTITY useGlobalPrintSettings.label "Χρήση γενικών ρυθμίσεων εκτύπωσης">
+<!ENTITY useGlobalPrintSettings.accesskey "γ">
+
+<!ENTITY crashReports.caption "Αναφορά καταρρεύσεων">
+<!ENTITY submitCrashes.label "Υποβολή αναφορών κατάρρευσης">
+<!ENTITY submitCrashes.accesskey "Υ">
+
+<!ENTITY devTools.caption "Εργαλεία προγραμματιστή">
+<!ENTITY allowDebugger.label "Να επιτρέπεται σύνδεση με το &brandShortName; για εντοπισμό σφαλμάτων">
+<!ENTITY allowDebugger.accesskey "Ν">
+<!ENTITY allowRemoteConnections.label "Αποδοχή συνδέσεων από άλλους υπολογιστές">
+<!ENTITY allowRemoteConnections.accesskey "ο">
+<!ENTITY connectionPrompt.label "Ερώτηση για εισερχόμενες συνδέσεις">
+<!ENTITY connectionPrompt.accesskey "ώ">
+<!ENTITY remoteDebuggerPort.label "Αριθμός θύρας για σύνδεση:">
+<!ENTITY remoteDebuggerPort.accesskey "θ">
diff --git a/l10n-el/suite/chrome/common/pref/pref-appearance.dtd b/l10n-el/suite/chrome/common/pref/pref-appearance.dtd
new file mode 100644
index 0000000000..8ad50a5585
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-appearance.dtd
@@ -0,0 +1,37 @@
+<!-- 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 : FILE The Appearance prefs dialog. -->
+
+<!ENTITY pref.appearance.title "Εμφάνιση">
+<!--LOCALIZATION NOTE (onStartLegend.label): Don't translate "&brandShortName;".
+ Place &brandShortName; in the phrase where the name of the application should appear
+-->
+<!ENTITY onStartLegend.label "Κατά την εκκίνηση του &brandShortName;, άνοιγμα">
+<!ENTITY navCheck.label "Πρόγραμμα περιήγησης">
+<!ENTITY navCheck.accesskey "Π">
+<!ENTITY showToolsLegend.label "Εμφάνιση γραμμών ως">
+<!ENTITY picsNtextRadio.label "Εικόνες και κείμενο">
+<!ENTITY picsNtextRadio.accesskey "Ε">
+<!ENTITY picsOnlyRadio.label "Μόνο εικόνες">
+<!ENTITY picsOnlyRadio.accesskey "ό">
+<!ENTITY textonlyRadio.label "Μόνο κείμενο">
+<!ENTITY textonlyRadio.accesskey "ν">
+<!ENTITY showHideTooltips.label "Εμφάνιση υποδείξεων">
+<!ENTITY showHideTooltips.accesskey "υ">
+<!ENTITY showHideGrippies.label "Απόκρυψη λαβών γραμμών εργαλείων">
+<!ENTITY showHideGrippies.accesskey "λ">
+
+<!ENTITY pref.locales.title "Γλώσσα περιβάλλοντος χρήστη">
+<!ENTITY selectLocale.label "Επιλέξτε τη γλώσσα για το κείμενο που εμφανίζεται στα παράθυρα διαλόγου, τα μενού, τις γραμμές εργαλείων και τις ετικέτες κουμπιών:">
+
+<!--LOCALIZATION NOTE (dateTimeFormatting.label): labels/accesskeys for
+ radiobuttons are set dynamically from prefutilities.properties
+-->
+<!ENTITY dateTimeFormatting.label "Μορφή ημερομηνίας και ώρας">
+
+<!--LOCALIZATION NOTE (restartOnLocaleChange.label): Don't translate "&brandShortName;".
+ Place &brandShortName; in the phrase where the name of the application should appear
+-->
+<!ENTITY restartOnLocaleChange.label "Οι προτιμήσεις γλώσσας και μορφοποίησης θα τεθούν σε ισχύ όταν κάνετε επανεκκίνηση του &brandShortName;.">
diff --git a/l10n-el/suite/chrome/common/pref/pref-applicationManager.dtd b/l10n-el/suite/chrome/common/pref/pref-applicationManager.dtd
new file mode 100644
index 0000000000..44f18aec75
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-applicationManager.dtd
@@ -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/. -->
+
+<!ENTITY appManager.title "Λεπτομέρειες εφαρμογής">
+<!ENTITY appManager.style "width: 40ch; min-height: 20em;">
+<!ENTITY remove.label "Αφαίρεση">
+<!ENTITY remove.accesskey "Α">
diff --git a/l10n-el/suite/chrome/common/pref/pref-applicationManager.properties b/l10n-el/suite/chrome/common/pref/pref-applicationManager.properties
new file mode 100644
index 0000000000..3521bf50c6
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-applicationManager.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/.
+
+descriptionHandleProtocol=Οι εξής εφαρμογές μπορούν να χρησιμοποιηθούν για το χειρισμό συνδέσμων %S
+descriptionHandleWebFeeds=Οι εξής εφαρμογές μπορούν να χρησιμοποιηθούν για το χειρισμό διαδικτυακών ροών
+descriptionHandleFile=Οι εξής εφαρμογές μπορούν να χρησιμοποιηθούν για το χειρισμό περιεχομένου %S
+
+descriptionWebApp=Αυτή η διαδικτυακή εφαρμογή φιλοξενείται στο:
+descriptionLocalApp=Αυτή η εφαρμογή βρίσκεται στο:
diff --git a/l10n-el/suite/chrome/common/pref/pref-applications.dtd b/l10n-el/suite/chrome/common/pref/pref-applications.dtd
new file mode 100644
index 0000000000..4bfb88120e
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-applications.dtd
@@ -0,0 +1,17 @@
+<!-- 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 : FILE The Applications prefs dialog -->
+<!ENTITY pref.applications.title "Βοηθητικές εφαρμογές">
+
+<!ENTITY typeColumn.label "Τύπος περιεχομένου">
+<!ENTITY typeColumn.accesskey "Τ">
+
+<!ENTITY actionColumn2.label "Ενέργεια">
+<!ENTITY actionColumn2.accesskey "Ε">
+
+<!ENTITY search.placeholder "Αναζήτηση τύπων και ενεργειών">
+
+<!ENTITY useAppChooser.label "Χρήση του εργαλείου συστήματος για επιλογή εφαρμογών όταν είναι διαθέσιμο">
+<!ENTITY useAppChooser.accesskey "Χ">
diff --git a/l10n-el/suite/chrome/common/pref/pref-applications.properties b/l10n-el/suite/chrome/common/pref/pref-applications.properties
new file mode 100644
index 0000000000..77e051ac32
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-applications.properties
@@ -0,0 +1,34 @@
+# 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/.
+
+#### Applications
+
+fileEnding=Αρχείο %S
+saveFile=Αποθήκευση αρχείου
+
+# LOCALIZATION NOTE (useApp, useDefault): %S = Application name
+useApp=Χρήση %S
+useDefault=Χρήση %S (προεπιλογή)
+
+useOtherApp=Χρήση άλλης…
+fpTitleChooseApp=Επιλογή βοηθητικής εφαρμογής
+manageApp=Λεπτομέρειες εφαρμογής…
+webFeed=Διαδικτυακή ροή
+videoPodcastFeed=Video Podcast
+audioPodcastFeed=Podcast
+alwaysAsk=Πάντα ερώτηση
+
+# LOCALIZATION NOTE (usePluginIn):
+# %1$S = plugin name (for example "QuickTime Plugin-in 7.2")
+# %2$S = brandShortName from brand.properties (for example "Minefield")
+usePluginIn=Χρήση %S (σε %S)
+
+# LOCALIZATION NOTE (previewInApp, addNewsBlogsInApp): %S = brandShortName
+previewInApp=Προεπισκόπηση στο %S
+addNewsBlogsInApp=Συνδρομή στο %S
+
+# LOCALIZATION NOTE (typeDescriptionWithType):
+# %1$S = type description (for example "Portable Document Format")
+# %2$S = type (for example "application/pdf")
+typeDescriptionWithType=%S (%S)
diff --git a/l10n-el/suite/chrome/common/pref/pref-cache.dtd b/l10n-el/suite/chrome/common/pref/pref-cache.dtd
new file mode 100644
index 0000000000..175ad33830
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-cache.dtd
@@ -0,0 +1,35 @@
+<!-- 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/. -->
+
+<!-- extracted from content/pref-cache.xul -->
+
+<!--LOCALIZATION NOTE : FILE Cache prefs dialog -->
+<!ENTITY pref.cache.title "Προσωρινή μνήμη">
+<!ENTITY pref.cache.caption "Ορισμός επιλογών προσωρινής μνήμης">
+<!ENTITY cachePara 'Η προσωρινή μνήμη διατηρεί αντίγραφα των ιστοσελίδων που επισκέπτεστε συχνά στον σκληρό σας δίσκο. (Κάνοντας κλικ στο "Ανανέωση" εμφανίζεται πάντα η τελευταία έκδοση μιας σελίδας.)'>
+<!ENTITY cacheCheck.label "Να επιτρέπεται στο &brandShortName; η διαχείριση του μεγέθους της προσωρινής μνήμης μου">
+<!ENTITY cacheCheck.accesskey "Ν">
+<!ENTITY diskCacheUpTo.label "Χρήση έως">
+<!ENTITY diskCacheUpTo.accesskey "Χ">
+<!ENTITY spaceMbytes "MB χώρου δίσκου για την προσωρινή μνήμη">
+<!ENTITY diskCacheFolder.label "Τοποθεσία φακέλου προσωρινής μνήμης:">
+<!ENTITY clearDiskCache.label "Απαλοιφή προσωρινής μνήμης">
+<!ENTITY clearDiskCache.accesskey "Α">
+<!ENTITY chooseDiskCacheFolder.label "Επιλογή φακέλου…">
+<!ENTITY chooseDiskCacheFolder.accesskey "Ε">
+<!ENTITY diskCacheFolderExplanation "Τα αρχεία προσωρινής μνήμης θα αποθηκευτούν σε έναν υποφάκελο με το όνομα &quot;Cache&quot; στον κατάλογο που καθορίσατε. Επανεκκινήστε το &brandShortName; για να εφαρμοστούν οι αλλαγές.">
+<!ENTITY docCache.label "Σύγκριση της σελίδας στην προσωρινή μνήμη με τη σελίδα στο δίκτυο:">
+<!ENTITY docCache.accesskey "γ">
+<!ENTITY checkOncePerSession.label "Μία φορά ανά συνεδρία">
+<!ENTITY checkEveryTime.label "Κάθε φορά που βλέπω τη σελίδα">
+<!ENTITY checkNever.label "Ποτέ">
+<!ENTITY checkAutomatically.label "Όταν η σελίδα δεν είναι ενημερωμένη">
+
+<!ENTITY prefetchTitle.label "Προ-φόρτωση συνδέσμου">
+<!ENTITY enablePrefetch.label "Προφόρτωση ιστοσελίδων στην κατάσταση αδράνειας, ώστε να φορτώνονται ταχύτερα οι σύνδεσμοι σε ιστοσελίδες που έχουν σχεδιαστεί για προφόρτωση">
+<!ENTITY enablePrefetch.accesskey "Π">
+
+<!ENTITY debugCache.label "Εντοπισμός σφαλμάτων">
+<!ENTITY debugEnableDiskCache.label "Ενεργοποίηση προσωρινής μνήμης δίσκου">
+<!ENTITY debugEnableDiskCache.accesskey "δ">
diff --git a/l10n-el/suite/chrome/common/pref/pref-certs.dtd b/l10n-el/suite/chrome/common/pref/pref-certs.dtd
new file mode 100644
index 0000000000..0d481d7108
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-certs.dtd
@@ -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/. -->
+
+<!ENTITY managecerts.caption "Διαχείριση πιστοποιητικών">
+<!ENTITY managecerts.text "Χρησιμοποιήστε τη Διαχείριση πιστοποιητικών για να διαχειριστείτε τα προσωπικά σας πιστοποιητικά, καθώς και τα πιστοποιητικά άλλων ατόμων και αρχών.">
+<!ENTITY managecerts.button "Διαχείριση πιστοποιητικών…">
+<!ENTITY managecerts.accesskey "Δ">
+<!ENTITY managedevices.caption "Διαχείριση συσκευών ασφαλείας">
+<!ENTITY managedevices.text "Χρησιμοποιήστε αυτό το κουμπί για να διαχειριστείτε τις συσκευές ασφαλείας σας, όπως έξυπνες κάρτες.">
+<!ENTITY managedevices.button "Διαχείριση συσκευών ασφαλείας…">
+<!ENTITY managedevices.accesskey "α">
+
+<!ENTITY ssl.label "SSL">
+
+<!ENTITY pref.certs.title "Πιστοποιητικά">
+<!ENTITY certs.label "Πιστοποιητικά">
+
+<!ENTITY validation.ocsp.caption "OCSP">
+<!ENTITY enableOCSP.label "Χρήση του Ηλεκτρονικού πρωτοκόλλου κατάστασης πιστοποιητικού (OCSP) για επιβεβαίωση της τρέχουσας ισχύος των πιστοποιητικών">
+<!ENTITY enableOCSP.accesskey "Χ">
+<!ENTITY validation.requireOCSP.description "Όταν αποτύχει μια σύνδεση διακομιστή OCSP, αντιμετώπιση πιστοποιητικού ως μη έγκυρου">
+<!ENTITY validation.requireOCSP.accesskey "Ό">
diff --git a/l10n-el/suite/chrome/common/pref/pref-colors.dtd b/l10n-el/suite/chrome/common/pref/pref-colors.dtd
new file mode 100644
index 0000000000..8704f097c8
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-colors.dtd
@@ -0,0 +1,35 @@
+<!-- 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/. -->
+
+<!-- extracted from content/pref-colors.xul -->
+
+<!-- LOCALIZATION NOTE : FILE Color management prefs -->
+<!ENTITY pref.colors.title "Χρώματα">
+<!ENTITY color "Κείμενο και παρασκήνιο">
+<!ENTITY textColor.label "Κείμενο:">
+<!ENTITY textColor.accesskey "Κ">
+<!ENTITY backgroundColor.label "Παρασκήνιο:">
+<!ENTITY backgroundColor.accesskey "Π">
+<!ENTITY useSystemColors.label "Χρήση χρωμάτων συστήματος">
+<!ENTITY useSystemColors.accesskey "σ">
+
+<!ENTITY underlineLinks.label "Υπογράμμιση συνδέσμων">
+<!ENTITY underlineLinks.accesskey "Υ">
+<!ENTITY links "Χρώματα συνδέσμων">
+<!ENTITY linkColor.label "Μη ανοιγμένοι σύνδεσμοι:">
+<!ENTITY linkColor.accesskey "Σ">
+<!ENTITY activeLinkColor.label "Ενεργοί σύνδεσμοι:">
+<!ENTITY activeLinkColor.accesskey "ρ">
+<!ENTITY visitedLinkColor.label "Ανοιγμένοι σύνδεσμοι:">
+<!ENTITY visitedLinkColor.accesskey "ε">
+<!-- LOCALIZATION NOTE (someProvColors): This is the start of a sentence and will be followed by the following radio buttons. -->
+<!ENTITY someProvColors "Όταν μια ιστοσελίδα παρέχει τα δικά της χρώματα και φόντο">
+<!-- LOCALIZATION NOTE (alwaysUseDocColors.label): This is option one, and it appends to 'someProvColors' above. -->
+<!ENTITY alwaysUseDocumentColors.label "Πάντα χρήση χρωμάτων και φόντου που ορίζονται από την ιστοσελίδα">
+<!ENTITY alwaysUseDocumentColors.accesskey "Π">
+<!-- LOCALIZATION NOTE (ignoreDocColors.label): This is option two, and it appends to 'someProvColors' above. -->
+<!ENTITY useMyColors.label "Χρήση επιλεγμένων χρωμάτων, αγνοώντας τα καθορισμένα χρώματα και την εικόνα φόντου">
+<!ENTITY useMyColors.accesskey "σ">
+<!ENTITY automaticColors.label "Παράβλεψη χρωμάτων σελίδας μόνο κατά τη χρήση θέματος υψηλής αντίθεσης">
+<!ENTITY automaticColors.accesskey "μ">
diff --git a/l10n-el/suite/chrome/common/pref/pref-content.dtd b/l10n-el/suite/chrome/common/pref/pref-content.dtd
new file mode 100644
index 0000000000..43e5c71e52
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-content.dtd
@@ -0,0 +1,48 @@
+<!-- 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 : FILE The Appearance > Content prefs dialog. -->
+
+<!ENTITY pref.content.title "Περιεχόμενο">
+<!ENTITY pref.content.description "Αυτές οι ρυθμίσεις επηρεάζουν την εμφάνιση του περιεχομένου ιστοσελίδων και μηνυμάτων στο &brandShortName;.">
+
+<!ENTITY siteIcons.label "Εικονίδια ιστοσελίδων">
+<!ENTITY useSiteIcons.label "Εμφάνιση εικονιδίων ιστοσελίδων">
+<!ENTITY useSiteIcons.accesskey "Ε">
+<!ENTITY useFavIcons2.label "Απόπειρα χρήσης εικονιδίων διακομιστών όταν η σελίδα δεν ορίζει εικονίδιο">
+<!ENTITY useFavIcons2.accesskey "χ">
+
+<!ENTITY scrolling.label "Κύλιση">
+<!ENTITY useAutoScroll.label "Χρήση αυτόματης κύλισης">
+<!ENTITY useAutoScroll.accesskey "α">
+<!ENTITY useSmoothScroll.label "Χρήση ομαλής κύλισης">
+<!ENTITY useSmoothScroll.accesskey "Χ">
+
+<!ENTITY zoomPrefs.label "Επιλογές ζουμ">
+<!-- LOCALIZATION NOTE (minZoom.label, maxZoom.label, percent.label):
+ single hbox with minZoom.label preceding the minZoom control and
+ maxZoom.label preceding the maxZoom control; percent.label shows
+ the ASCII '%' character at the end of that string -->
+<!ENTITY minZoom.label "Εύρος από">
+<!ENTITY minZoom.accesskey "π">
+<!ENTITY maxZoom.label "έως">
+<!ENTITY maxZoom.accesskey "ω">
+<!ENTITY percent.label "&#37;">
+
+<!ENTITY defaultZoom.label "Προεπιλεγμένο ζουμ">
+<!ENTITY defaultZoom.accesskey "Π">
+
+<!ENTITY siteSpecific.label "Αποθήκευση επιπέδων ζουμ για κάθε ιστοσελίδα">
+<!ENTITY siteSpecific.accesskey "μ">
+<!ENTITY textZoomOnly.label "Ζουμ μόνο στο κείμενο αντί για την πλήρη σελίδα">
+<!ENTITY textZoomOnly.accesskey "Ζ">
+<!ENTITY enableAutomaticImageResizing.label "Προσαρμογή μεγέθους μεγάλων εικόνων στο παράθυρο προγράμματος περιήγησης">
+<!ENTITY enableAutomaticImageResizing.accesskey "Π">
+
+<!ENTITY allowHWAccel.label "Χρήση επιτάχυνσης υλικού όταν είναι διαθέσιμη">
+<!ENTITY allowHWAccel.accesskey "ρ">
+<!ENTITY blockAutoRefresh.label "Προειδοποίηση όταν οι ιστοσελίδες προσπαθούν να ανακατευθύνουν ή να φορτώσουν ξανά τη σελίδα">
+<!ENTITY blockAutoRefresh.accesskey "Π">
+
+<!ENTITY showZoomStatusPanel.label "Εμφάνιση κουμπιών ζουμ στη γραμμή κατάστασης">
diff --git a/l10n-el/suite/chrome/common/pref/pref-cookies.dtd b/l10n-el/suite/chrome/common/pref/pref-cookies.dtd
new file mode 100644
index 0000000000..196bc8cef4
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-cookies.dtd
@@ -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/. -->
+
+<!ENTITY pref.cookies.title "Cookies">
+
+<!-- cookies -->
+
+<!ENTITY cookiePolicy.label "Πολιτική αποδοχής cookies">
+
+<!ENTITY disableCookies.label "Φραγή cookies">
+<!ENTITY disableCookies.accesskey "Φ">
+
+<!ENTITY accNo3rdPartyCookies.label "Αποδοχή cookies μόνο για την ιστοσελίδα προέλευσης (χωρίς cookies τρίτων)">
+<!ENTITY accNo3rdPartyCookies.accesskey "ο">
+
+<!ENTITY acc3rdPartyVisited.label "Αποδοχή cookies τρίτων μόνο για ιστοσελίδες που έχετε επισκεφθεί">
+<!ENTITY acc3rdPartyVisited.accesskey "δ">
+
+<!ENTITY accAllCookies.label "Αποδοχή όλων των cookies">
+<!ENTITY accAllCookies.accesskey "c">
+
+<!ENTITY cookieRetentionPolicy.label "Πολιτική διατήρησης cookies">
+
+<!ENTITY acceptNormally.label "Χειροκίνητη αποδοχή cookies">
+<!ENTITY acceptNormally.accesskey "ε">
+
+<!ENTITY acceptForSession.label "Αποδοχή μόνο για την τρέχουσα συνεδρία">
+<!ENTITY acceptForSession.accesskey "σ">
+
+<!ENTITY acceptforNDays.label "Αποδοχή cookies για">
+<!ENTITY acceptforNDays.accesskey "γ">
+<!ENTITY days.label "ημέρες">
+
+<!ENTITY manageCookies.label "Διαχείριση cookies και ιστοσελίδων">
+<!ENTITY manageCookiesDescription.label "Σας επιτρέπει να δείτε και να διαχειριστείτε αποθηκευμένα cookies και ρυθμίσεις ανά ιστοσελίδα για αποδοχή και απόρριψη cookies. Οι ρυθμίσεις ανά ιστοσελίδα θα αντικαταστήσουν τις παραπάνω ρυθμίσεις.">
+
+<!ENTITY viewCookies.label "Διαχείριση cookies">
+<!ENTITY viewCookies.accesskey "Δ">
diff --git a/l10n-el/suite/chrome/common/pref/pref-debugging.dtd b/l10n-el/suite/chrome/common/pref/pref-debugging.dtd
new file mode 100644
index 0000000000..34c0f27df5
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-debugging.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/. -->
+
+<!-- extracted from pref-eventdebugging.xul -->
+
+<!ENTITY pref.debugging.title "Εντοπισμός σφαλμάτων">
+
+<!-- Render Debugging -->
+
+<!-- Event Debugging -->
+<!ENTITY debugEvents.label "Συμβάντα">
+
+<!-- Reflow Event Debugging -->
diff --git a/l10n-el/suite/chrome/common/pref/pref-download.dtd b/l10n-el/suite/chrome/common/pref/pref-download.dtd
new file mode 100644
index 0000000000..75a01e2cde
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-download.dtd
@@ -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/. -->
+
+<!ENTITY pref.download.title "Λήψεις">
+
+<!ENTITY downloadBehavior.label "Κατά την έναρξη μιας λήψης">
+<!ENTITY doNothing.label "Να μην ανοίξει τίποτα">
+<!ENTITY doNothing.accesskey "Ν">
+<!ENTITY openProgressDialog.label "Άνοιγμα παραθύρου προόδου">
+<!ENTITY openProgressDialog.accesskey "Ά">
+<!ENTITY openDM.label "Άνοιγμα διαχείρισης λήψεων">
+<!ENTITY openDM.accesskey "μ">
+<!ENTITY flashWhenOpen.label "Ανάδειξη διαχείρισης λήψεων αν είναι ήδη ανοικτή">
+<!ENTITY flashWhenOpen.accesskey "δ">
+
+<!ENTITY downloadLocation.label "Κατά την αποθήκευση ενός αρχείου">
+<!ENTITY saveTo.label "Αποθήκευση αρχείων σε">
+<!ENTITY saveTo.accesskey "θ">
+<!ENTITY chooseDownloadFolder.label "Επιλογή φακέλου…">
+<!ENTITY chooseDownloadFolder.accesskey "Ε">
+<!ENTITY alwaysAsk.label "Πάντα ερώτηση για την τοποθεσία αποθήκευσης αρχείων">
+<!ENTITY alwaysAsk.accesskey "Π">
+
+<!ENTITY finishedBehavior.label "Όταν ολοκληρώνεται μια λήψη">
+<!ENTITY playSound.label "Αναπαραγωγή ήχου">
+<!ENTITY playSound.accesskey "Α">
+<!ENTITY browse.label "Περιήγηση…">
+<!ENTITY browse.accesskey "Π">
+<!ENTITY playButton.label "Αναπαραγωγή">
+<!ENTITY playButton.accesskey "π">
diff --git a/l10n-el/suite/chrome/common/pref/pref-findasyoutype.dtd b/l10n-el/suite/chrome/common/pref/pref-findasyoutype.dtd
new file mode 100644
index 0000000000..3ba6434d07
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-findasyoutype.dtd
@@ -0,0 +1,21 @@
+<!-- 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 pref.findAsYouType.title "Εύρεση κατά την πληκτρολόγηση">
+<!ENTITY findAsYouTypeBehavior.label "Εύρεση κατά την πληκτρολόγηση">
+<!ENTITY findAsYouTypeTip.label "Συμβουλή: Για να αρχίσει χειροκίνητα η εύρεση κατά την πληκτρολόγηση, πληκτρολογήστε / για εύρεση κειμένου ή ' για εύρεση συνδέσμων, ακολουθούμενα από το κείμενο που θέλετε να βρείτε.">
+<!ENTITY findAsYouTypeTimeout.label "Απαλοιφή τρέχουσας αναζήτησης μετά από μερικά δευτερόλεπτα αδράνειας">
+<!ENTITY findAsYouTypeTimeout.accesskey "Α">
+<!ENTITY findAsYouTypeSound.label "Αναπαραγωγή ήχου αν δεν βρεθεί το ζητούμενο κείμενο">
+<!ENTITY findAsYouTypeSound.accesskey "Α">
+<!ENTITY findAsYouTypeEnableAuto.label "Αυτόματη εύρεση κατά την πληκτρολόγηση σε μια ιστοσελίδα:">
+<!ENTITY findAsYouTypeEnableAuto.accesskey "ε">
+<!ENTITY findAsYouTypeAutoText.label "Οποιοδήποτε κείμενο στη σελίδα">
+<!ENTITY findAsYouTypeAutoText.accesskey "Ο">
+<!ENTITY findAsYouTypeAutoLinks.label "Μόνο σύνδεσμοι">
+<!ENTITY findAsYouTypeAutoLinks.accesskey "Μ">
+
+<!ENTITY findAsYouTypeFindbarEnable.label "Εμφάνιση γραμμής εύρεσης όταν γίνεται εύρεση κατά την πληκτρολόγηση">
+<!ENTITY findAsYouTypeFindbarEnable.accesskey "Ε">
+<!ENTITY findAsYouTypeFindbarEnableTip.label "Σημείωση: Η εύρεση κατά την πληκτρολόγηση χωρίς εμφάνιση γραμμής εύρεσης δεν επιτρέπει διεθνή εισαγωγή κειμένου.">
diff --git a/l10n-el/suite/chrome/common/pref/pref-fonts.dtd b/l10n-el/suite/chrome/common/pref/pref-fonts.dtd
new file mode 100644
index 0000000000..a15e1f4e83
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-fonts.dtd
@@ -0,0 +1,79 @@
+<!-- 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/. -->
+
+<!-- extracted from content/pref-fonts.xul -->
+
+<!-- LOCALIZATION NOTE : FILE 'Fonts' prefs dialog -->
+<!ENTITY pref.fonts.title "Γραμματοσειρές">
+
+<!ENTITY language.label "Γραμματοσειρές για:">
+<!ENTITY language.accesskey "ρ">
+
+<!ENTITY typefaces.label "Οικογένεια γραμματοσειρών">
+<!ENTITY sizes.label "Μέγεθος (pixels)">
+
+<!ENTITY proportional.label "Μεταβλητού πλάτους:">
+<!ENTITY proportional.accesskey "Μ">
+
+<!ENTITY serif.label "Serif:">
+<!ENTITY serif.accesskey "S">
+<!ENTITY sans-serif.label "Sans-serif:">
+<!ENTITY sans-serif.accesskey "n">
+<!ENTITY monospace.label "Σταθερού πλάτους:">
+<!ENTITY monospace.accesskey "Σ">
+<!-- LOCALIZATION NOTE (fantasy.label): 'Fantasy' means 'Ornate' -->
+<!ENTITY fantasy.label "Διακόσμησης:">
+<!ENTITY fantasy.accesskey "Δ">
+<!ENTITY cursive.label "Καλλιγραφίας:">
+<!ENTITY cursive.accesskey "Κ">
+
+<!-- LOCALIZATION NOTE (font.langGroup.latin) :
+ Translate "Latin" as the name of Latin (Roman) script, not as the name of
+ the Latin language. -->
+<!ENTITY font.langGroup.latin "Λατινικά">
+<!ENTITY font.langGroup.japanese "Ιαπωνικά">
+<!ENTITY font.langGroup.trad-chinese "Παραδοσιακά Κινεζικά (Ταϊβάν)">
+<!ENTITY font.langGroup.simpl-chinese "Απλοποιημένα Κινεζικά">
+<!ENTITY font.langGroup.trad-chinese-hk "Παραδοσιακά Κινεζικά (Χονγκ Κονγκ)">
+<!ENTITY font.langGroup.korean "Κορεατικά">
+<!ENTITY font.langGroup.cyrillic "Κυριλλικά">
+<!ENTITY font.langGroup.el "Ελληνικά">
+<!ENTITY font.langGroup.thai "Ταϊλανδικά">
+<!ENTITY font.langGroup.hebrew "Εβραϊκά">
+<!ENTITY font.langGroup.arabic "Αραβικά">
+<!ENTITY font.langGroup.devanagari "Ντεβανγκάρι">
+<!ENTITY font.langGroup.tamil "Ταμίλ">
+<!ENTITY font.langGroup.armenian "Αρμενικά">
+<!ENTITY font.langGroup.bengali "Μπενγκάλι">
+<!ENTITY font.langGroup.canadian "Ενοποιημένο καναδικό συλλαβάριο">
+<!ENTITY font.langGroup.ethiopic "Αιθιοπικά">
+<!ENTITY font.langGroup.georgian "Γεωργιανά">
+<!ENTITY font.langGroup.gujarati "Γκουτζαράτι">
+<!ENTITY font.langGroup.gurmukhi "Γκουρμούκι">
+<!ENTITY font.langGroup.khmer "Χμερ">
+<!ENTITY font.langGroup.malayalam "Μαλαισιανά">
+<!ENTITY font.langGroup.math "Μαθηματικά">
+<!ENTITY font.langGroup.odia "Οντία">
+<!ENTITY font.langGroup.telugu "Τελούγκου">
+<!ENTITY font.langGroup.kannada "Κανάντα">
+<!ENTITY font.langGroup.sinhala "Σινχάλα">
+<!ENTITY font.langGroup.tibetan "Θιβετανικά">
+<!ENTITY font.langGroup.other "Άλλα συστήματα γραφής">
+<!-- Minimum font size -->
+<!ENTITY minSize.label "Ελάχιστο μέγεθος γραμματοσειράς:">
+<!ENTITY minSize.accesskey "χ">
+<!ENTITY minSize.none "Κανένα">
+
+<!-- default font type -->
+<!ENTITY useDefaultFontSerif.label "Serif">
+<!ENTITY useDefaultFontSansSerif.label "Sans Serif">
+
+<!ENTITY useDocumentFonts.label "Να επιτρέπεται στα έγγραφα να χρησιμοποιούν άλλες γραμματοσειρές">
+<!ENTITY useDocumentFonts.accesskey "ι">
+
+<!-- leaving this stuff in for now -->
+
+<!ENTITY header2 "Όταν μια ιστοσελίδα επιλέγει τις δικές της γραμματοσειρές">
+<!ENTITY useDefaultFont.label "Χρήση προεπιλεγμένων γραμματοσειρών, αγνοώντας τις γραμματοσειρές της σελίδας">
+<!ENTITY useDefaultFont.accesskey "Χ">
diff --git a/l10n-el/suite/chrome/common/pref/pref-history.dtd b/l10n-el/suite/chrome/common/pref/pref-history.dtd
new file mode 100644
index 0000000000..5a32704db0
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-history.dtd
@@ -0,0 +1,25 @@
+<!-- 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 pref.history.title "Ιστορικό">
+
+<!ENTITY pref.history.caption "Ιστορικό περιήγησης">
+<!ENTITY historyPages.label "Το ιστορικό είναι μια λίστα με σελίδες που επισκεφθήκατε προηγουμένως.">
+<!ENTITY enableHistory.label "Απομνημόνευση σελίδων που έχετε επισκεφθεί">
+<!ENTITY enableHistory.accesskey "Α">
+<!ENTITY clearHistory.label "Εκκαθάριση ιστορικού">
+<!ENTITY clearHistory.accesskey "σ">
+
+<!ENTITY locationBarHistory.caption "Ιστορικό γραμμής διευθύνσεων">
+<!ENTITY urlBarHistoryEnabled.caption "Ενεργοποίηση ιστορικού γραμμής διευθύνσεων">
+<!ENTITY urlBarHistoryEnabled.accesskey "Ε">
+<!ENTITY clearLocationBar.label "Εκκαθάριση της λίστας των ιστοσελίδων που έχει αποθηκευτεί στο μενού της γραμμής διευθύνσεων.">
+<!ENTITY clearLocationBarButton.label "Απαλοιφή γραμμής διευθύνσεων">
+<!ENTITY clearLocationBarButton.accesskey "δ">
+<!ENTITY formfillHistory.caption "Ιστορικό αναζήτησης και φορμών">
+<!ENTITY enableFormfill.label "Ενεργοποίηση ιστορικού φορμών και αναζήτησης">
+<!ENTITY enableFormfill.accesskey "ν">
+<!ENTITY formfillExpire.label "Αποθήκευση ιστορικού φορμών και αναζήτησης για έως και">
+<!ENTITY formfillExpire.accesskey "ω">
+<!ENTITY formfillDays.label "ημέρες">
diff --git a/l10n-el/suite/chrome/common/pref/pref-http.dtd b/l10n-el/suite/chrome/common/pref/pref-http.dtd
new file mode 100644
index 0000000000..463bc859c9
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-http.dtd
@@ -0,0 +1,24 @@
+<!-- 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 pref.http.title "Δικτύωση HTTP">
+
+<!-- Network-->
+<!ENTITY prefDirect.label "Επιλογές άμεσης σύνδεσης">
+<!ENTITY prefProxy.label "Επιλογές σύνδεσης διακομιστή μεσολάβησης">
+<!ENTITY prefEnableHTTP10.label "Χρήση HTTP 1.0">
+<!ENTITY prefEnableHTTP10.accesskey "Χ">
+<!ENTITY prefEnableHTTP10Proxy.accesskey "σ">
+<!ENTITY prefEnableHTTP11.label "Χρήση HTTP 1.1">
+<!ENTITY prefEnableHTTP11.accesskey "ρ">
+<!ENTITY prefEnableHTTP11Proxy.accesskey "T">
+<!ENTITY prefPara "Οι συνδέσεις HTTP μπορούν να βελτιστοποιηθούν με αυτές τις επιλογές για ενίσχυση επιδόσεων ή συμβατότητας. Ορισμένοι διακομιστές μεσολάβησης, για παράδειγμα, είναι γνωστοί για την απαίτηση HTTP/1.0 (δείτε τις σημειώσεις έκδοσης για λεπτομέρειες).">
+<!ENTITY prefUseragent.label "Νήμα λειτουργίας χρήσης">
+<!ENTITY prefFirefoxStrict.label "Αναγνώριση ως Firefox">
+<!ENTITY prefFirefoxStrict.accesskey "Α">
+<!ENTITY prefFirefoxNone.label "Αναγνώριση ως SeaMonkey">
+<!ENTITY prefFirefoxNone.accesskey "M">
+<!ENTITY prefFirefoxCompat2.label "Αναγνώριση ως SeaMonkey και γνωστοποίηση συμβατότητας με το Firefox">
+<!ENTITY prefFirefoxCompat2.accesskey "F">
+<!ENTITY prefCompatWarning2.desc "ΠΡΟΕΙΔΟΠΟΙΗΣΗ: η αλλαγή αυτής της ρύθμισης ενδέχεται να προκαλέσει δυσλειτουργία ιστοσελίδων ή υπηρεσιών.">
diff --git a/l10n-el/suite/chrome/common/pref/pref-images.dtd b/l10n-el/suite/chrome/common/pref/pref-images.dtd
new file mode 100644
index 0000000000..d8466cf28e
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-images.dtd
@@ -0,0 +1,22 @@
+<!-- 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 pref.images.title "Εικόνες">
+
+<!ENTITY imageBlocking.label "Πολιτική αποδοχής εικόνων">
+
+<!--LOCALIZATION NOTE (onStartLegend.label): Don't translate "&brandShortName;".
+ Place "&brandShortName;" in the phrase where the name of the application should
+ appear
+-->
+<!ENTITY imageDetails "Ορίστε τον τρόπο διαχείρισης εικόνων στο &brandShortName;.">
+
+<!ENTITY loadAllImagesRadio.label "Φόρτωση όλων των εικόνων">
+<!ENTITY loadAllImagesRadio.accesskey "Φ">
+<!ENTITY loadOrgImagesRadio.label "Φόρτωση μόνο των εικόνων που προέρχονται από τον διακομιστή προέλευσης">
+<!ENTITY loadOrgImagesRadio.accesskey "ρ">
+<!ENTITY loadNoImagesRadio.label "Να μην γίνεται φόρτωση εικόνων">
+<!ENTITY loadNoImagesRadio.accesskey "Ν">
+<!ENTITY viewPermissions.label "Διαχείριση δικαιωμάτων">
+<!ENTITY viewPermissions.accesskey "Δ">
diff --git a/l10n-el/suite/chrome/common/pref/pref-keynav.dtd b/l10n-el/suite/chrome/common/pref/pref-keynav.dtd
new file mode 100644
index 0000000000..fd6fcab1cd
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-keynav.dtd
@@ -0,0 +1,20 @@
+<!-- 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 pref.keyNav.title "Πλοήγηση με πληκτρολόγιο">
+<!ENTITY tabNavigationBehavior.label "Πλοήγηση με πλήκτρο Tab">
+<!ENTITY tabNavigationLinks.label "Σύνδεσμοι">
+<!ENTITY tabNavigationLinks.accesskey "Σ">
+<!ENTITY tabNavigationForms.label "Κουμπιά, κουμπιά επιλογής, πλαίσια ελέγχου και λίστες επιλογών">
+<!ENTITY tabNavigationForms.accesskey "Κ">
+<!ENTITY tabNavigationTextboxes.label "Σημείωση: τα πλαίσια κειμένου και οι περιοχές με δυνατότητα κύλισης αποτελούν πάντα μέρος της σειράς καρτελών.">
+<!ENTITY tabNavigationDesc.label "Όταν πατήσετε το Tab ή το Shift+Tab, μετακίνηση μεταξύ:">
+<!ENTITY accessibilityBrowseWithCaret.label "Περιήγηση με κέρσορα">
+<!ENTITY browseWithCaretDesc.label "Η περιήγηση με κέρσορα σας επιτρέπει να πλοηγηθείτε και να κάνετε επιλογή μέσα σε σελίδες με τα πλήκτρα του δρομέα για να μετακινήσετε έναν ορατό δείκτη.">
+<!ENTITY browseWithCaretUse.label "Χρήση περιήγησης με κέρσορα">
+<!ENTITY browseWithCaretUse.accesskey "Χ">
+<!ENTITY browseWithCaretShortCut.label "Χρήση της συντόμευσης F7 για εναλλαγή περιήγησης με κέρσορα">
+<!ENTITY browseWithCaretShortCut.accesskey "F">
+<!ENTITY browseWithCaretWarn.label "Προειδοποίηση πριν την ενεργοποίηση περιήγησης με κέρσορα">
+<!ENTITY browseWithCaretWarn.accesskey "Π">
diff --git a/l10n-el/suite/chrome/common/pref/pref-languages.dtd b/l10n-el/suite/chrome/common/pref/pref-languages.dtd
new file mode 100644
index 0000000000..684e848a59
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-languages.dtd
@@ -0,0 +1,30 @@
+<!-- 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 : FILE 'Languages' preferences dialog -->
+
+<!ENTITY languages.customize.prefLangDescript "Μερικές φορές, οι ιστοσελίδες διατίθενται σε παραπάνω από μία γλώσσες. Επιλέξτε τις γλώσσες εμφάνισης ιστοσελίδων με σειρά προτίμησης.">
+<!ENTITY languages.customize.title "Γλώσσες">
+<!ENTITY langtitle.label "Γλώσσες για ιστοσελίδες">
+<!ENTITY languages.customize.prefAddLangDescript "Επιλέξτε τις γλώσσες που θέλετε να προσθέσετε.">
+<!ENTITY languages.customize.addButton.label "Προσθήκη…">
+<!ENTITY languages.customize.addButton.accesskey "Π">
+<!ENTITY languages.customize.deleteButton.label "Αφαίρεση">
+<!ENTITY languages.customize.deleteButton.accesskey "Α">
+<!ENTITY languages.customize.add.title.label "Προσθήκη γλωσσών">
+<!ENTITY languages.customize.available.label "Γλώσσες:">
+<!ENTITY languages.customize.active.label "Γλώσσες σε σειρά προτίμησης:">
+<!ENTITY languages.customize.active.accesskey "Γ">
+<!ENTITY languages.customize.others.label "Άλλες:">
+<!ENTITY languages.customize.others.accesskey "Ά">
+<!ENTITY languages.customize.Fallback2.grouplabel "Κωδικοποίηση κειμένου για παλαιό περιεχόμενο">
+<!ENTITY languages.customize.Fallback2.label "Εφεδρική κωδικοποίηση κειμένου:">
+<!ENTITY languages.customize.Fallback2.accesskey "κ">
+<!ENTITY languages.customize.Fallback2.desc "Για παλαιό περιεχόμενο που δεν δηλώνει την κωδικοποίησή του.">
+<!-- LOCALIZATION NOTE Character Encoding Preferences Dialog: Do NOT localize the terms "en-bz, ar-jo" -->
+<!ENTITY languages.customize.others.examples "π.χ.: en-bz, ar-jo">
+<!ENTITY languages.customize.moveUp.label "Μετακίνηση πάνω">
+<!ENTITY languages.customize.moveUp.accesskey "π">
+<!ENTITY languages.customize.moveDown.label "Μετακίνηση κάτω">
+<!ENTITY languages.customize.moveDown.accesskey "κ">
diff --git a/l10n-el/suite/chrome/common/pref/pref-languages.properties b/l10n-el/suite/chrome/common/pref/pref-languages.properties
new file mode 100644
index 0000000000..c5690114b3
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-languages.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/.
+
+illegalOtherLanguage=Οι εξής καταχωρήσεις δεν περιείχαν έγκυρους κωδικούς γλώσσας:
+illegalOtherLanguageTitle=Μη έγκυρος κωδικός(οί) γλώσσας
+# LOCALIZATION NOTE: Next two strings are for language name representations with
+# and without the region.
+# e.g. languageRegionCodeFormat : "French/Canada [fr-ca]" languageCodeFormat : "French [fr]"
+# %1$S = language name, %2$S = region name, %3$S = language-region code
+languageRegionCodeFormat=%1$S/%2$S [%3$S]
+# %1$S = language name, %2$S = language-region code
+languageCodeFormat=%1$S [%2$S]
diff --git a/l10n-el/suite/chrome/common/pref/pref-links.dtd b/l10n-el/suite/chrome/common/pref/pref-links.dtd
new file mode 100644
index 0000000000..15d800468d
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-links.dtd
@@ -0,0 +1,29 @@
+<!-- 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 linksHeader.label "Συμπεριφορά συνδέσμου">
+<!ENTITY newWindow.label "Συμπεριφορά ανοίγματος συνδέσμου">
+<!ENTITY newWindowDescription.label "Άνοιγμα συνδέσμων που σκοπεύουν να ανοίξουν νέο παράθυρο σε:">
+<!ENTITY newWindowRestriction.label "Όταν τα σενάρια θέλουν να ανοίξουν νέο παράθυρο:">
+<!ENTITY external.label "Σύνδεσμοι από άλλες εφαρμογές">
+<!ENTITY externalDescription.label "Άνοιγμα συνδέσμων από άλλες εφαρμογές:">
+
+<!ENTITY openCurrent.label "Στην τρέχουσα καρτέλα/παράθυρο">
+<!ENTITY newWindowGroupCurrent.accesskey "τ">
+<!ENTITY externalGroupCurrent.accesskey "θ">
+
+<!ENTITY openTab.label "Σε νέα καρτέλα στο τρέχον παράθυρο">
+<!ENTITY newWindowGroupTab.accesskey "κ">
+<!ENTITY externalGroupTab.accesskey "ρ">
+
+<!ENTITY openWindow.label "Σε νέο παράθυρο">
+<!ENTITY newWindowGroupWindow.accesskey "π">
+<!ENTITY externalGroupWindow.accesskey "ο">
+
+<!ENTITY divertAll.label "Πάντα εκτροπή παραθύρων σε καρτέλες">
+<!ENTITY divertAll.accesskey "ε">
+<!ENTITY divertNoFeatures.label "Να μην γίνεται εκτροπή παραθύρων σε καρτέλες">
+<!ENTITY divertNoFeatures.accesskey "μ">
+<!ENTITY dontDivert.label "Πάντα άνοιγμα νέων παραθύρων">
+<!ENTITY dontDivert.accesskey "ν">
diff --git a/l10n-el/suite/chrome/common/pref/pref-locationbar.dtd b/l10n-el/suite/chrome/common/pref/pref-locationbar.dtd
new file mode 100644
index 0000000000..eb3c98275e
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-locationbar.dtd
@@ -0,0 +1,42 @@
+<!-- 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 : FILE The Location Bar prefs panel -->
+<!ENTITY pref.locationBar.title "Γραμμή διευθύνσεων">
+
+<!ENTITY autoComplete.label "Αυτόματη συμπλήρωση">
+<!ENTITY autoCompleteMatchHistory.label "Αυτόματη πρόταση ιστοσελίδων από το ιστορικό">
+<!ENTITY autoCompleteMatchHistory.accesskey "Α">
+<!ENTITY autoCompleteMatchBookmarks.label "Αυτόματη πρόταση ιστοσελίδων από τους σελιδοδείκτες">
+<!ENTITY autoCompleteMatchBookmarks.accesskey "σ">
+<!ENTITY autoCompleteAutoFill.label "Αυτόματη συμπλήρωση καλύτερης αντιστοιχίας">
+<!ENTITY autoCompleteAutoFill.accesskey "υ">
+<!ENTITY autoCompleteShowPopup.label "Εμφάνιση λίστας αποτελεσμάτων">
+<!ENTITY autoCompleteShowPopup.accesskey "Ε">
+<!ENTITY autoCompleteMatchOnlyTyped.label "Αντιστοίχιση μόνο των ιστοσελίδων που έχετε πληκτρολογήσει στο παρελθόν">
+<!ENTITY autoCompleteMatchOnlyTyped.accesskey "χ">
+<!--LOCALIZATION NOTE (autoCompleteMatch.label): This is the common leading
+ part of the menulist items listed below, mainly to make the control available
+ via the accesskey
+-->
+<!ENTITY autoCompleteMatch.label "Αντιστοίχιση">
+<!ENTITY autoCompleteMatch.accesskey "Α">
+<!ENTITY autoCompleteMatchAnywhere "Οπουδήποτε στη διεύθυνση ή τον τίτλο">
+<!ENTITY autoCompleteMatchWordsFirst "Οπουδήποτε, αλλά προτιμώντας τα όρια λέξεων">
+<!ENTITY autoCompleteMatchWords "Μόνο στα όρια των λέξεων">
+<!ENTITY autoCompleteMatchStart "Μόνο στην αρχή της διεύθυνσης ή του τίτλου">
+<!ENTITY showInternetSearch.label "Εμφάνιση προεπιλεγμένης μηχανής αναζήτησης διαδικτύου">
+<!ENTITY showInternetSearch.accesskey "φ">
+
+<!ENTITY formatting.label "Μορφοποίηση">
+<!ENTITY domainFormatting.label "Επισήμανση αποδοτικού τομέα για ιστοσελίδες και διακομιστές FTP">
+<!ENTITY domainFormatting.accesskey "τ">
+<!ENTITY highlightSecure.label "Επισήμανση ιστοσελίδων με υψηλό επίπεδο ασφάλειας σύνδεσης">
+<!ENTITY highlightSecure.accesskey "σ">
+
+<!ENTITY unknownLocations.label "Άγνωστες διευθύνσεις">
+<!ENTITY domainGuessing.label "Προσθέστε &quot;www.&quot; και &quot;.com&quot; στη διεύθυνση αν δεν βρεθεί η ιστοσελίδα">
+<!ENTITY domainGuessing.accesskey "ι">
+<!ENTITY keywords.label "Εκτέλεση αναζήτησης στον ιστό όταν το εισαγόμενο κείμενο δεν είναι διεύθυνση ιστού">
+<!ENTITY keywords.accesskey "Ε">
diff --git a/l10n-el/suite/chrome/common/pref/pref-masterpass.dtd b/l10n-el/suite/chrome/common/pref/pref-masterpass.dtd
new file mode 100644
index 0000000000..5222023c14
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-masterpass.dtd
@@ -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/. -->
+
+<!ENTITY pref.masterpass.title "Κύριοι κωδικοί πρόσβασης">
+
+<!ENTITY changepassword.caption "Αλλαγή κύριου κωδικού πρόσβασης">
+<!ENTITY changepassword.text "Ο κύριος κωδικός πρόσβασης προστατεύει ευαίσθητες πληροφορίες, όπως κωδικούς πρόσβασης και πιστοποιητικά.">
+<!ENTITY changepassword.button "Αλλαγή κωδικού πρόσβασης…">
+<!ENTITY changepassword.accesskey "Α">
+
+<!ENTITY resetpassword.caption "Επαναφορά κύριου κωδικού πρόσβασης">
+<!ENTITY resetpassword.text "Αν επαναφέρετε τον κύριο κωδικό πρόσβασής σας, θα χαθούν όλα τα αποθηκευμένα συνθηματικά, τα δεδομένα φορμών, τα προσωπικά πιστοποιητικά και τα ιδιωτικά κλειδιά.">
+<!ENTITY resetpassword.button "Επαναφορά κωδικού πρόσβασης">
+<!ENTITY resetpassword.accesskey "Ε">
diff --git a/l10n-el/suite/chrome/common/pref/pref-media.dtd b/l10n-el/suite/chrome/common/pref/pref-media.dtd
new file mode 100644
index 0000000000..8e0631b79c
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-media.dtd
@@ -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/. -->
+
+<!-- extracted from content/pref-media.xul -->
+
+<!-- LOCALIZATION NOTE : FILE Media management prefs -->
+<!ENTITY pref.media.title "Πολυμέσα">
+<!ENTITY mediaHTML5Preferences.label "Ήχος/βίντεο">
+<!ENTITY allowMediaAutoplay.label "Ενεργοποίηση αυτόματης αναπαραγωγής πολυμέσων HTML5">
+<!ENTITY allowMediaAutoplay.accesskey "α">
+
+<!ENTITY enableDrmMedia.label "Ενεργοποίηση διαχείρισης ψηφιακών δικαιωμάτων για">
+<!ENTITY enableEmeForSuite.label "Πρόσθετα αποκρυπτογράφησης περιεχομένου τρίτων">
+<!ENTITY enableEmeForSuite.accesskey "Π">
+
+<!ENTITY animLoopingTitle.label "Επανάληψη κινούμενων εικόνων">
+<!ENTITY animLoopAsSpecified.label "Όσες φορές ορίζει η εικόνα">
+<!ENTITY animLoopAsSpecified.accesskey "σ">
+<!ENTITY animLoopOnce.label "Μία φορά">
+<!ENTITY animLoopOnce.accesskey "Μ">
+<!ENTITY animLoopNever.label "Ποτέ">
+<!ENTITY animLoopNever.accesskey "τ">
diff --git a/l10n-el/suite/chrome/common/pref/pref-mousewheel.dtd b/l10n-el/suite/chrome/common/pref/pref-mousewheel.dtd
new file mode 100644
index 0000000000..2938f13965
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-mousewheel.dtd
@@ -0,0 +1,36 @@
+<!-- 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 : FILE Mouse-wheel management prefs, for those lucky OSes that support mouse wheels -->
+
+<!ENTITY pref.mouseWheel.title "Τροχός ποντικιού">
+<!ENTITY mouseWheelPanel.label "Καθορίστε τη συμπεριφορά του τροχού ποντικιού όταν χρησιμοποιείται με αυτό το πλήκτρο τροποποίησης: ">
+<!ENTITY usingJustTheWheel.label "Κανένα πλήκτρο τροποποίησης">
+<!-- Key labels, for mousewheel prefs -->
+<!ENTITY usingWheelAndAlt.label2 "Alt">
+<!ENTITY usingWheelAndOption.label "Option">
+<!ENTITY usingWheelAndCtrl.label2 "Ctrl">
+<!ENTITY usingWheelAndShft.label2 "Shift">
+<!ENTITY mouseWheelGroup.label "Κάθετη κύλιση">
+<!ENTITY mouseWheelHorizGroup.label "Οριζόντια κύλιση">
+<!ENTITY sameAsVertical.label "Ίδια με την κάθετη κύλιση">
+<!ENTITY sameAsVertical.accesskey "κ">
+<!ENTITY doNothing.label "Καμία ενέργεια">
+<!ENTITY doNothing.accesskey "Κ">
+<!ENTITY doNothingHoriz.accesskey "ν">
+<!ENTITY scrollDocument.label "Κύλιση εγγράφου">
+<!ENTITY scrollDocument.accesskey "Κ">
+<!ENTITY scrollDocumentHoriz.accesskey "γ">
+<!ENTITY history.label "Μετάβαση εμπρός και πίσω στο ιστορικό περιήγησης">
+<!ENTITY history.accesskey "Μ">
+<!ENTITY historyHoriz.accesskey "ε">
+<!ENTITY zoom.label "Μεγέθυνση ή σμίκρυνση σελίδας">
+<!ENTITY zoom.accesskey "Μ">
+<!ENTITY zoomHoriz.accesskey "ε">
+<!ENTITY wheelSpeed.label "Ταχύτητα τροχού ποντικιού:">
+<!ENTITY wheelSpeed.accesskey "τ">
+<!ENTITY wheelSpeedHoriz.accesskey "ι">
+<!ENTITY reverseDirection.label "Αντίστροφη κατεύθυνση">
+<!ENTITY reverseDirection.accesskey "Α">
+<!ENTITY reverseDirectionHoriz.accesskey "θ">
diff --git a/l10n-el/suite/chrome/common/pref/pref-navigator.dtd b/l10n-el/suite/chrome/common/pref/pref-navigator.dtd
new file mode 100644
index 0000000000..22b63caac7
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-navigator.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/. -->
+
+<!ENTITY pref.navigator.title "Πρόγραμμα περιήγησης">
+
+<!ENTITY navRadio.label "Προβολή σε">
+<!ENTITY navRadio.accesskey "σ">
+<!ENTITY navStartPageMenu.label "Εκκίνηση προγράμματος περιήγησης">
+<!ENTITY newWinPageMenu.label "Νέο παράθυρο">
+<!ENTITY newTabPageMenu.label "Νέα καρτέλα">
+
+<!ENTITY blankPageRadio.label "Κενή σελίδα">
+<!ENTITY blankPageRadio.accesskey "Κ">
+<!ENTITY homePageRadio.label "Αρχική σελίδα">
+<!ENTITY homePageRadio.accesskey "σ">
+<!ENTITY lastPageRadio.label "Τελευταία σελίδα">
+<!ENTITY lastPageRadio.accesskey "Τ">
+<!ENTITY restoreSessionRadio.label "Επαναφορά προηγούμενης συνεδρίας">
+<!ENTITY restoreSessionRadio.accesskey "π">
+
+<!ENTITY restoreSessionIntro.label "Κατά την επαναφορά συνεδριών και παραθύρων">
+<!ENTITY restoreImmediately.label "Άμεση επαναφορά όλων των καρτελών">
+<!ENTITY restoreImmediately.accesskey "ν">
+<!-- LOCALIZATION NOTE (restoreTabs.label): This will concatenate to
+ "Restore [___] tab(s) at a time",
+ using (restoreTabs.label) and a number (restoreTabsAtATime.label). -->
+<!ENTITY restoreTabs.label "Επαναφορά">
+<!ENTITY restoreTabs.accesskey "φ">
+<!ENTITY restoreTabsAtATime.label "καρτέλας(ών) κάθε φορά">
+<!ENTITY restoreDeferred.label "Επαναφορά καρτελών μόνο όταν τις χρειάζομαι">
+<!ENTITY restoreDeferred.accesskey "μ">
+
+<!ENTITY homePageIntro.label 'Μετάβαση σε αυτή την ομάδα σελίδων με κλικ στο κουμπί "Αρχική σελίδα":'>
+<!ENTITY useCurrent.label "Χρήση τρέχουσας σελίδας">
+<!ENTITY useCurrent.accesskey "Χ">
+<!ENTITY useCurrentGroup.label "Χρήση τρέχουσας ομάδας">
+<!ENTITY useCurrentGroup.accesskey "ο">
+<!ENTITY browseFile.label "Επιλογή αρχείου…">
+<!ENTITY browseFile.accesskey "γ">
+<!ENTITY useDefault.label "Επαναφορά προεπιλογής">
+<!ENTITY useDefault.accesskey "Ε">
+
+<!ENTITY defaultBrowserGroup.label "Προεπιλεγμένο πρόγραμμα περιήγησης">
+<!ENTITY defaultBrowserButton.label "Ορισμός προεπιλεγμένου προγράμματος περιήγησης">
+<!ENTITY defaultBrowserButton.accesskey "π">
+<!ENTITY alreadyDefaultText "Το &brandShortName; είναι ήδη το προεπιλεγμένο πρόγραμμα περιήγησής σας.">
+<!ENTITY defaultPendingText 'Το &brandShortName; θα οριστεί ως το προεπιλεγμένο πρόγραμμα περιήγησής σας όταν κάνετε κλικ στο "OK".'>
+<!ENTITY wasMadeDefaultText "Το &brandShortName; έχει οριστεί ως το προεπιλεγμένο πρόγραμμα περιήγησής σας.">
+<!ENTITY makeDefaultText "Ορισμός του &brandShortName; ως προεπιλογής.">
diff --git a/l10n-el/suite/chrome/common/pref/pref-offlineapps.dtd b/l10n-el/suite/chrome/common/pref/pref-offlineapps.dtd
new file mode 100644
index 0000000000..3d15b025e5
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-offlineapps.dtd
@@ -0,0 +1,24 @@
+<!-- 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/. -->
+<!-- extracted from content/pref-offlineapps.xul -->
+
+<!--LOCALIZATION NOTE : FILE Offline Apps prefs dialog -->
+<!ENTITY pref.offlineapps.title "Εφαρμογές ιστού εκτός σύνδεσης">
+<!ENTITY pref.offlineCache.caption "Περιεχόμενο ιστού και δεδομένα χρήστη εκτός σύνδεσης">
+
+<!ENTITY clearOfflineAppCache.label "Απαλοιφή">
+<!ENTITY clearOfflineAppCache.accesskey "Α">
+
+<!ENTITY offlineAlwaysAllow.label "Αποδοχή δεδομένων για χρήση εκτός σύνδεσης από όλες τις ιστοσελίδες">
+<!ENTITY offlineAlwaysAllow.accesskey "Α">
+<!ENTITY offlineExplicit.label "Να επιτρέπεται μόνο σε ιστοσελίδες με ρητά δικαιώματα">
+<!ENTITY offlineExplicit.accesskey "Ν">
+<!ENTITY offlineNotifyAsk.label "Ειδοποίηση όταν οι ιστοσελίδες θέλουν να αποθηκεύουν δεδομένα για χρήση εκτός σύνδεσης">
+<!ENTITY offlineNotifyAsk.accesskey "Ε">
+<!ENTITY offlineNotifyPermissions.label "Διαχείριση δικαιωμάτων">
+<!ENTITY offlineNotifyPermissions.accesskey "Δ">
+
+<!ENTITY offlineAppsUsage.label "Οι ακόλουθες ιστοσελίδες χρησιμοποιούν χώρο εκτός σύνδεσης:">
+<!ENTITY offlineAppsListRemove.label "Απαλοιφή δεδομένων…">
+<!ENTITY offlineAppsListRemove.accesskey "δ">
diff --git a/l10n-el/suite/chrome/common/pref/pref-passwords.dtd b/l10n-el/suite/chrome/common/pref/pref-passwords.dtd
new file mode 100644
index 0000000000..ec1fa9fc70
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-passwords.dtd
@@ -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/. -->
+
+<!ENTITY pref.passwords.title "Κωδικοί πρόσβασης">
+
+<!ENTITY signonHeader.caption "Διαχείριση κωδικών πρόσβασης">
+<!ENTITY signonDescription.label "Η Διαχείριση κωδικών πρόσβασης αποθηκεύει τα στοιχεία σύνδεσής σας για ιστοσελίδες, διακομιστές αλληλογραφίας και διακομιστές ειδήσεων που προστατεύονται με συνθηματικό, ενώ εισάγει αυτόματα τα στοιχεία όταν χρειάζεται.">
+
+<!ENTITY signonEnabled.label "Απομνημόνευση κωδικών πρόσβασης">
+<!ENTITY signonEnabled.accesskey "Α">
+<!ENTITY viewSignons.label "Διαχείριση αποθηκευμένων κωδικών πρόσβασης">
+<!ENTITY viewSignons.accesskey "Δ">
diff --git a/l10n-el/suite/chrome/common/pref/pref-popups.dtd b/l10n-el/suite/chrome/common/pref/pref-popups.dtd
new file mode 100644
index 0000000000..d469bf368c
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-popups.dtd
@@ -0,0 +1,34 @@
+<!-- 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 pref.popups.title "Αναδυόμενα παράθυρα">
+
+<!ENTITY pref.popups.caption "Αναδυόμενα παράθυρα">
+
+<!ENTITY popupBlock.label "Φραγή ανεπιθύμητων αναδυόμενων παραθύρων">
+<!ENTITY popupBlock.accesskey "Φ">
+
+<!ENTITY viewPermissions.label "Διαχείριση δικαιωμάτων">
+<!ENTITY viewPermissions.accesskey "Δ">
+
+<!ENTITY whenBlock.description "Όταν ένα αναδυόμενο παράθυρο έχει αποκλειστεί:">
+<!ENTITY playSound.label "Αναπαραγωγή ήχου:">
+<!ENTITY playSound.accesskey "Α">
+<!ENTITY systemSound.label "Ήχος συστήματος">
+<!ENTITY systemSound.accesskey "Ή">
+<!ENTITY customSound.label "Προσαρμοσμένο αρχείο ήχου">
+<!ENTITY customSound.accesskey "Π">
+
+<!ENTITY selectSound.label "Περιήγηση…">
+<!ENTITY selectSound.accesskey "ρ">
+<!ENTITY playSoundButton.label "Αναπαραγωγή">
+<!ENTITY playSoundButton.accesskey "π">
+
+<!ENTITY displayIcon.label "Προβολή εικονιδίου στη γραμμή κατάστασης του προγράμματος περιήγησης">
+<!ENTITY displayIcon.accesskey "Π">
+
+<!ENTITY displayNotification.label "Προβολή γραμμής ειδοποιήσεων στο πάνω μέρος της περιοχής περιεχομένου">
+<!ENTITY displayNotification.accesskey "ε">
+
+<!ENTITY popupNote.description 'Σημείωση: Ο αποκλεισμός όλων των αναδυόμενων παραθύρων ενδέχεται να εμποδίσει σημαντικές λειτουργίες ορισμένων ιστοσελίδων, όπως παράθυρα σύνδεσης για τράπεζες και ιστοσελίδες αγορών. Για λεπτομέρειες σχετικά με την αποδοχή αναδυόμενων από συγκεκριμένους ιστότοπους, κάντε κλικ στο "Βοήθεια". Ακόμα και με τη φραγή, οι ιστοσελίδες μπορεί να εμφανίσουν αναδυόμενα με άλλους τρόπους.'>
diff --git a/l10n-el/suite/chrome/common/pref/pref-privatedata.dtd b/l10n-el/suite/chrome/common/pref/pref-privatedata.dtd
new file mode 100644
index 0000000000..f5387de938
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-privatedata.dtd
@@ -0,0 +1,27 @@
+<!-- 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 : FILE 'Private Data' prefs settings
+ These entities go on top of the sanitize.dtd definitions
+-->
+<!ENTITY pref.privatedata.title "Ιδιωτικά δεδομένα">
+
+
+<!ENTITY clearPrivateData.label "Διαγραφή ιδιωτικών δεδομένων">
+
+<!ENTITY alwaysClear.label "Να γίνεται πάντα διαγραφή των ιδιωτικών δεδομένων μου όταν κλείνω το &brandShortName;">
+<!ENTITY alwaysClear.accesskey "λ">
+
+<!ENTITY askBeforeClear.label "Ερώτηση πριν την απαλοιφή ιδιωτικών δεδομένων">
+<!ENTITY askBeforeClear.accesskey "ρ">
+
+<!ENTITY clearDataSettings.label "Όταν ζητώ από το &brandShortName; για διαγράψει τα ιδιωτικά μου δεδομένα, να διαγράφονται:">
+
+<!--LOCALIZATION NOTE (clearDataDialog.label, clearDataSilent.label, clearDataDialog.accesskey):
+ The only difference bettween the two labels is that one calls a dialog, the other doesn't.
+ The same accesskey is used for both labels.
+-->
+<!ENTITY clearDataDialog.label "Απαλοιφή τώρα…">
+<!ENTITY clearDataSilent.label "Απαλοιφή τώρα">
+<!ENTITY clearDataDialog.accesskey "Α">
diff --git a/l10n-el/suite/chrome/common/pref/pref-proxies-advanced.dtd b/l10n-el/suite/chrome/common/pref/pref-proxies-advanced.dtd
new file mode 100644
index 0000000000..f15c767b1d
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-proxies-advanced.dtd
@@ -0,0 +1,32 @@
+<!-- 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 : FILE The Advanced Proxy Preferences dialog -->
+<!ENTITY pref.proxies.advanced.title "Προηγμένες προτιμήσεις διακομιστή μεσολάβησης">
+<!ENTITY protocols.caption "Ειδικοί διακομιστές μεσολάβησης πρωτοκόλλου">
+<!ENTITY protocols.description "Κανονικά, ο ίδιος διακομιστής μεσολάβησης μπορεί να διαχειριστεί όλα τα παρακάτω πρωτόκολλα.">
+<!ENTITY http.label "Διακομιστής μεσολάβησης HTTP:">
+<!ENTITY http.accesskey "μ">
+<!ENTITY ssl.label "Διακομιστής μεσολάβησης SSL:">
+<!ENTITY ssl.accesskey "L">
+<!ENTITY ftp.label "Διακομιστής μεσολάβησης FTP:">
+<!ENTITY ftp.accesskey "F">
+<!ENTITY reuseProxy.label "Χρήση ρυθμίσεων διακομιστή μεσολάβησης HTTP για όλα τα πρωτόκολλα">
+<!ENTITY reuseProxy.accesskey "Χ">
+<!ENTITY port.label "Θύρα:">
+<!ENTITY HTTPPort.accesskey "Θ">
+<!ENTITY SSLPort.accesskey "ύ">
+<!ENTITY FTPPort.accesskey "ρ">
+
+<!ENTITY socks.caption "Γενικός διακομιστής μεσολάβησης">
+<!ENTITY socks.description "Ένας διακομιστής SOCKS είναι ένας γενικός διακομιστής μεσολάβησης που χρησιμοποιείται μερικές φορές σε εταιρικά ή παρόμοια περιβάλλοντα.">
+<!ENTITY socks.label "Διακομιστής μεσολάβησης SOCKS:">
+<!ENTITY socks.accesskey "S">
+<!ENTITY socks4.label "SOCKS v4">
+<!ENTITY socks4.accesskey "C">
+<!ENTITY socks5.label "SOCKS v5">
+<!ENTITY socks5.accesskey "K">
+<!ENTITY socksRemoteDNS.label "Χρήση για επίλυση ονομάτων κεντρικών υπολογιστών (προτείνεται για SOCKS v5)">
+<!ENTITY socksRemoteDNS.accesskey "η">
+<!ENTITY SOCKSport.accesskey "ρ">
diff --git a/l10n-el/suite/chrome/common/pref/pref-proxies.dtd b/l10n-el/suite/chrome/common/pref/pref-proxies.dtd
new file mode 100644
index 0000000000..cf5d3f0d1d
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-proxies.dtd
@@ -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/. -->
+
+<!-- extracted from content/pref-proxies.xul -->
+
+<!--LOCALIZATION NOTE : FILE The Proxies preferences dialog -->
+<!ENTITY pref.proxies.title "Διακομιστές μεσολάβησης">
+<!ENTITY pref.proxies.desc "Ο διακομιστής μεσολάβησης είναι μια υπηρεσία δικτύου που μπορεί να φιλτράρει και να επιταχύνει τη σύνδεση διαδικτύου σας.">
+<!ENTITY proxyTitle.label "Ρύθμιση διακομιστών μεσολάβησης για πρόσβαση στο διαδίκτυο">
+<!ENTITY directTypeRadio.label "Άμεση σύνδεση στο Διαδίκτυο">
+<!ENTITY directTypeRadio.accesskey "Δ">
+<!ENTITY systemTypeRadio.label "Χρήση ρυθμίσεων διαμεσολαβητή συστήματος">
+<!ENTITY systemTypeRadio.accesskey "Χ">
+<!ENTITY manualTypeRadio.label "Χειροκίνητη ρύθμιση διακομιστή μεσολάβησης:">
+<!ENTITY manualTypeRadio.accesskey "ε">
+<!ENTITY wpadTypeRadio.label "Αυτόματη ανίχνευση ρυθμίσεων διακομιστή μεσολάβησης">
+<!ENTITY wpadTypeRadio.accesskey "Α">
+<!ENTITY autoTypeRadio.label "URL αυτόματης ρύθμισης διακομιστή μεσολάβησης:">
+<!ENTITY autoTypeRadio.accesskey "ρ">
+<!ENTITY reload.label "Ανανέωση">
+<!ENTITY reload.accesskey "Α">
+<!ENTITY http.label "Διακομιστής μεσολάβησης:">
+<!ENTITY http.accesskey "Δ">
+<!ENTITY port.label "Θύρα:">
+<!ENTITY HTTPPort.accesskey "ρ">
+<!ENTITY advanced.label "Για προχωρημένους…">
+<!ENTITY advanced.accesskey "ω">
+<!ENTITY noproxy.label "Χωρίς διακομιστή μεσολάβησης για:">
+<!ENTITY noproxy.accesskey "Χ">
+<!ENTITY noproxyExplain.label "Παράδειγμα: .mozilla.org, .net.nz, 192.168.1.0/24">
diff --git a/l10n-el/suite/chrome/common/pref/pref-scripts.dtd b/l10n-el/suite/chrome/common/pref/pref-scripts.dtd
new file mode 100644
index 0000000000..dbde8f928d
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-scripts.dtd
@@ -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/. -->
+
+<!-- extracted from content/pref-scripts.xul -->
+
+<!--LOCALIZATION NOTE : FILE The 'Scripts & Plugins' preferences dialog -->
+<!ENTITY pref.scripts.title "Σενάρια &amp; αρθρώματα">
+
+<!ENTITY navigator.label "Πρόγραμμα περιήγησης">
+<!ENTITY navigator.accesskey "Π">
+
+<!--LOCALIZATION NOTE (enableJavaScript.label): 'JavaScript' should never be translated -->
+<!ENTITY enableJavaScript.label "Ενεργοποίηση JavaScript για">
+<!ENTITY allowScripts.label "Να επιτρέπεται στα σενάρια να κάνουν:">
+<!ENTITY allowScripts.accesskey "σ">
+<!ENTITY allowWindowMoveResize.label "Μετακίνηση ή αλλαγή μεγέθους υπαρχόντων παραθύρων">
+<!ENTITY allowWindowFlip.label "Μετακίνηση παραθύρων στο προσκήνιο ή το παρασκήνιο">
+<!ENTITY allowWindowStatusChange.label "Αλλαγή κειμένου γραμμής κατάστασης">
+<!ENTITY allowContextmenuDisable.label "Απενεργοποίηση ή αντικατάσταση μενού επιλογών">
+<!ENTITY allowHideStatusBar.label "Απόκρυψη γραμμής κατάστασης">
+
+<!ENTITY debugging.label "Εντοπισμός σφαλμάτων JavaScript">
+<!ENTITY debugEnableDump.label "Ενεργοποίηση εξόδου JavaScript dump()">
+<!ENTITY debugEnableDump.accesskey "Ε">
+<!ENTITY debugStrictJavascript.label "Εμφάνιση αυστηρών προειδοποιήσεων JavaScript">
+<!ENTITY debugStrictJavascript.accesskey "J">
+<!ENTITY debugConsoleJavascript.label "Εμφάνιση σφαλμάτων και προειδοποιήσεων chrome JavaScript">
+<!ENTITY debugConsoleJavascript.accesskey "c">
+
+<!ENTITY enablePlugins.label "Ενεργοποίηση αρθρωμάτων για">
+<!ENTITY enablePluginForSuite.label "Σουίτα">
+<!ENTITY enablePluginForSuite.accesskey "υ">
+
+<!ENTITY whenPageRequiresPlugins.label "Όταν μια σελίδα απαιτεί αρθρώματα">
+<!ENTITY activateAllPlugins.label "Ενεργοποίηση όλων των αρθρωμάτων από προεπιλογή">
+<!ENTITY activateAllPlugins.accesskey "π">
+<!ENTITY warnPluginsRequired.label "Προειδοποίηση αν απαιτείται εγκατάσταση επιπρόσθετων αρθρωμάτων">
+<!ENTITY warnPluginsRequired.accesskey "Π">
diff --git a/l10n-el/suite/chrome/common/pref/pref-search.dtd b/l10n-el/suite/chrome/common/pref/pref-search.dtd
new file mode 100644
index 0000000000..8c7137c09c
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-search.dtd
@@ -0,0 +1,21 @@
+<!-- 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/. -->
+
+<!-- extracted from content/pref-search.xul -->
+
+<!-- LOCALIZATION NOTE : FILE The Search prefs dialog -->
+
+<!ENTITY pref.search.title "Διαδικτυακή αναζήτηση">
+<!ENTITY legendHeader "Προεπιλεγμένη μηχανή αναζήτησης">
+<!ENTITY defaultSearchEngine.label "Αναζήτηση με:">
+<!ENTITY defaultSearchEngine.accesskey "Α">
+
+<!ENTITY engineManager.label "Διαχείριση μηχανών αναζήτησης…">
+
+<!ENTITY searchResults.label "Αποτελέσματα αναζήτησης">
+
+<!ENTITY openInTab.label "Άνοιγμα νέων καρτελών για αποτελέσματα αναζήτησης πλευρικής στήλης">
+<!ENTITY openInTab.accesskey "ν">
+<!ENTITY openContextSearchTab.label "Άνοιγμα καρτέλας αντί παραθύρου για αναζήτηση ιστού από το μενού επιλογών">
+<!ENTITY openContextSearchTab.accesskey "κ">
diff --git a/l10n-el/suite/chrome/common/pref/pref-security.dtd b/l10n-el/suite/chrome/common/pref/pref-security.dtd
new file mode 100644
index 0000000000..977656c44f
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-security.dtd
@@ -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 : FILE 'Privacy and Security' prefs settings -->
+<!ENTITY pref.security.title "Απόρρητο &amp; ασφάλεια">
+
+<!ENTITY tracking.label "Παρακολούθηση χρήστη">
+<!ENTITY trackingIntro.label "Οι ιστοσελίδες ενδέχεται να παρακολουθούν το πώς τις χρησιμοποιείτε, επηρεάζοντας έτσι το απόρρητό σας.">
+
+<!ENTITY doNotTrack.label "Να ενημερώνονται οι ιστοσελίδες ότι δεν επιθυμώ να καταγράφεται η περιήγησή μου">
+<!ENTITY doNotTrack.accesskey "Ν">
+<!ENTITY trackProtect.label "Αποτροπή καταγραφής δραστηριοτήτων από γνωστές ιστοσελίδες">
+<!ENTITY trackProtect.accesskey "τ">
+<!ENTITY warnTrackContent.label "Προειδοποίηση όταν ανιχνεύονται γνωστές δραστηριότητες παρακολούθησης">
+<!ENTITY warnTrackContent.accesskey "Π">
+
+<!ENTITY geoLocation.label "Περιήγηση βάσει τοποθεσίας">
+<!ENTITY geoIntro.label "Οι ιστοσελίδες ενδέχεται να ζητήσουν περαιτέρω πληροφορίες σχετικά με την τρέχουσα τοποθεσία σας.">
+
+<!ENTITY geoEnabled.label "Ερώτηση για παραχώρηση δικαιώματος αν υπάρξει αίτημα">
+<!ENTITY geoEnabled.accesskey "ρ">
+<!ENTITY geoDisabled.label "Απενεργοποίηση λειτουργίας και απόρριψη όλων των αιτημάτων">
+<!ENTITY geoDisabled.accesskey "Α">
+
+<!-- LOCALIZATION NOTE (safeBrowsing.label, blockWebForgeries.label, blockAttackSites.label):
+ The methods by which forged (phished) and attack sites will be detected by
+ phishing providers will vary from human review to machine-based heuristics
+ to a combination of both, so it's important that these strings convey the
+ meaning "reported" (and not something like "known").
+-->
+<!ENTITY safeBrowsing.label "Ασφαλής περιήγηση">
+<!ENTITY safeBrowsingIntro.label "Το &brandShortName; μπορεί να αποκλείσει ιστοσελίδες που έχουν αναφερθεί για κακόβουλο περιεχόμενο.">
+
+<!ENTITY blockAttackSites.label "Φραγή ιστοσελίδων με αναφορές για επιθέσεις (κακόβουλο λογισμικό, ιοί)">
+<!ENTITY blockAttackSites.accesskey "Φ">
+
+<!ENTITY blockWebForgeries.label "Φραγή σελίδων με αναφορές για πλαστογραφία (Ηλεκτρονικό ψάρεμα)">
+<!ENTITY blockWebForgeries.accesskey "Η">
diff --git a/l10n-el/suite/chrome/common/pref/pref-smartupdate.dtd b/l10n-el/suite/chrome/common/pref/pref-smartupdate.dtd
new file mode 100644
index 0000000000..fa00dc604f
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-smartupdate.dtd
@@ -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/. -->
+
+<!--LOCALIZATION NOTE : FILE UI for Software Updates prefs -->
+<!ENTITY pref.smartUpdate.title "Εγκατάσταση λογισμικού">
+<!ENTITY addOnsTitle.label "Πρόσθετα">
+<!ENTITY addOnsAllow.label "Να επιτρέπεται στις ιστοσελίδες η εγκατάσταση προσθέτων και ενημερώσεων">
+<!ENTITY addOnsAllow.accesskey "π">
+<!ENTITY allowedSitesLink.label "Επιτρεπόμενες ιστοσελίδες">
+<!ENTITY autoAddOnsUpdates.label "Αυτόματος έλεγχος για ενημερώσεις">
+<!ENTITY autoAddOnsUpdates.accesskey "ο">
+<!ENTITY daily.label "ημερησίως">
+<!ENTITY addOnsDaily.accesskey "η">
+<!ENTITY weekly.label "εβδομαδιαίως">
+<!ENTITY addOnsWeekly.accesskey "β">
+<!ENTITY addOnsModeAutomatic.label "Αυτόματη λήψη και εγκατάσταση ενημερώσεων">
+<!ENTITY addOnsModeAutomatic.accesskey "μ">
+<!ENTITY enablePersonalized.label "Εξατομίκευση προτάσεων προσθέτων">
+<!ENTITY enablePersonalized.accesskey "Ε">
+<!ENTITY addonManagerLink.label "Διαχείριση προσθέτων">
+
+<!ENTITY appUpdates.caption "&brandShortName;">
+<!ENTITY autoAppUpdates.label "Αυτόματος έλεγχος για ενημερώσεις">
+<!ENTITY autoAppUpdates.accesskey "τ">
+<!ENTITY appDaily.accesskey "ρ">
+<!ENTITY appWeekly.accesskey "δ">
+<!ENTITY appModeAutomatic.label "Αυτόματη λήψη και εγκατάσταση ενημέρωσης">
+<!ENTITY appModeAutomatic.accesskey "λ">
+<!ENTITY updateHistoryButton.label "Εμφάνιση ιστορικού ενημερώσεων…">
+<!ENTITY updateHistoryButton.accesskey "Ε">
diff --git a/l10n-el/suite/chrome/common/pref/pref-spelling.dtd b/l10n-el/suite/chrome/common/pref/pref-spelling.dtd
new file mode 100644
index 0000000000..8446ecdece
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-spelling.dtd
@@ -0,0 +1,20 @@
+<!-- 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 prefSpelling.title "Ορθογραφία">
+<!ENTITY generalSpelling.label "Γενικά">
+<!ENTITY checkSpellingWhenTyping.label "Κατά την πληκτρολόγηση, να γίνεται ορθογραφικός έλεγχος:">
+<!ENTITY checkSpellingWhenTyping.accesskey "Κ">
+<!ENTITY dontCheckSpelling.label "Ποτέ">
+<!ENTITY multilineCheckSpelling.label "Σε πλαίσια πολλαπλών γραμμών">
+<!ENTITY alwaysCheckSpelling.label "Σε όλα τα πλαίσια">
+<!ENTITY spellForMailAndNews.label "Αλληλογραφία &amp; ομάδες συζήτησης">
+<!ENTITY checkSpellingBeforeSend.label "Ορθογραφικός έλεγχος πριν την αποστολή">
+<!ENTITY checkSpellingBeforeSend.accesskey "Ο">
+<!ENTITY spellCheckInline.label "Ορθογραφικός έλεγχος κατά την πληκτρολόγηση">
+<!ENTITY spellCheckInline.accesskey "ρ">
+<!ENTITY languagePopup.label "Γλώσσα:">
+<!ENTITY languagePopup.accessKey "Γ">
+<!ENTITY moreDictionaries.label "Λήψη περισσότερων λεξικών&#x2026;">
+<!ENTITY noSpellCheckAvailable.label "Κανένα διαθέσιμο λεξικό.">
diff --git a/l10n-el/suite/chrome/common/pref/pref-ssl.dtd b/l10n-el/suite/chrome/common/pref/pref-ssl.dtd
new file mode 100644
index 0000000000..f1dc634fbb
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-ssl.dtd
@@ -0,0 +1,44 @@
+<!-- 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 SSLTLSProtocolVersions.caption "Εκδόσεις πρωτοκόλλου SSL/TLS">
+<!ENTITY SSLTLSWarnings.caption "Προειδοποιήσεις SSL/TLS">
+<!ENTITY SSLMixedContent.caption "Μεικτό περιεχόμενο">
+<!ENTITY SSLClientAuthMethod.caption "Επιλογή πιστοποιητικού προγράμματος">
+
+<!ENTITY pref.ssltls.title "Transport Layer Security (SSL/TLS)">
+<!ENTITY limit.description "Μπορείτε να περιορίσετε ποια πρωτόκολλα κρυπτογράφησης χρησιμοποιούνται για ασφαλείς συνδέσεις. Επιλέξτε μία ή ένα συνεχόμενο εύρος εκδόσεων.">
+<!ENTITY limit.enable.label "Ενεργοποίηση:">
+<!ENTITY limit.tls10.label "TLS 1.0">
+<!ENTITY limit.tls10.accesskey "T">
+<!ENTITY limit.tls11.label "TLS 1.1">
+<!ENTITY limit.tls11.accesskey "1">
+<!ENTITY limit.tls12.label "TLS 1.2">
+<!ENTITY limit.tls12.accesskey "2">
+<!ENTITY limit.tls13.label "TLS 1.3">
+<!ENTITY limit.tls13.accesskey "3">
+
+<!ENTITY warn.description2 "Το &brandShortName; μπορεί να σας ειδοποιήσει για την κατάσταση ασφαλείας της ιστοσελίδας που βλέπετε. Ρυθμίστε το &brandShortName; ώστε να εμφανίζει προειδοποίηση όταν γίνεται:">
+<!ENTITY warn.enteringsecure "Φόρτωση σελίδας που υποστηρίζει κρυπτογράφηση">
+<!ENTITY warn.enteringsecure.accesskey "Φ">
+<!ENTITY warn.insecurepost "Αποστολή δεδομένων φόρμας από μη κρυπτογραφημένη σελίδα σε μη κρυπτογραφημένη σελίδα">
+<!ENTITY warn.insecurepost.accesskey "Α">
+<!ENTITY warn.leavingsecure "Αποχώρηση από σελίδα που υποστηρίζει κρυπτογράφηση">
+<!ENTITY warn.leavingsecure.accesskey "ώ">
+
+<!ENTITY mixed.description "Οι κρυπτογραφημένες σελίδες ενδέχεται να περιέχουν μη κρυπτογραφημένο περιεχόμενο που είναι ευάλωτο σε υποκλοπές ή πλαστογράφηση. Το &brandShortName; μπορεί να το εντοπίσει και να το αποκλείσει:">
+<!ENTITY warn.mixedactivecontent "Προειδοποίηση όταν κρυπτογραφημένες σελίδες περιέχουν επισφαλές περιεχόμενο">
+<!ENTITY warn.mixedactivecontent.accesskey "Π">
+<!ENTITY block.activecontent "Να μην φορτώνεται επισφαλές περιεχόμενο σε κρυπτογραφημένες σελίδες">
+<!ENTITY block.activecontent.accesskey "Ν">
+<!ENTITY warn.mixeddisplaycontent "Προειδοποίηση όταν κρυπτογραφημένες σελίδες περιέχουν άλλους τύπους μικτού περιεχομένου">
+<!ENTITY warn.mixeddisplaycontent.accesskey "δ">
+<!ENTITY block.displaycontent "Να μην φορτώνονται άλλοι τύποι μεικτού περιεχομένου σε κρυπτογραφημένες σελίδες">
+<!ENTITY block.displaycontent.accesskey "μ">
+
+<!ENTITY certselect.description "Αποφασίστε τον τρόπο επιλογής ασφαλούς πιστοποιητικού στο &brandShortName; για παρουσίαση σε ιστοσελίδες που το απαιτούν:">
+<!ENTITY certselect.auto "Αυτόματη επιλογή">
+<!ENTITY certselect.auto.accesskey "Α">
+<!ENTITY certselect.ask "Ερώτηση κάθε φορά">
+<!ENTITY certselect.ask.accesskey "Ε">
diff --git a/l10n-el/suite/chrome/common/pref/pref-sync.dtd b/l10n-el/suite/chrome/common/pref/pref-sync.dtd
new file mode 100644
index 0000000000..bf58a2badb
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-sync.dtd
@@ -0,0 +1,56 @@
+<!-- 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/. -->
+
+<!-- The page shown when not logged in... -->
+<!ENTITY setupButton.label "Ρύθμιση &syncBrand.fullName.label;">
+<!ENTITY setupButton.accesskey "Ρ">
+<!ENTITY weaveDesc.label "Το &syncBrand.fullName.label; σάς παρέχει πρόσβαση στο ιστορικό, τους σελιδοδείκτες, τους κωδικούς πρόσβασης και τις ανοικτές σας καρτέλες σε όλες τις συσκευές σας.">
+
+<!-- The page shown when logged in... -->
+<!ENTITY accountGroupboxCaption.label "Λογαριασμός &syncBrand.fullName.label;">
+<!ENTITY accountName.label "Όνομα λογαριασμού:">
+
+<!-- Login error feedback -->
+<!ENTITY updatePass.label "Ενημέρωση">
+<!ENTITY updatePass.accesskey "Ε">
+<!ENTITY resetPass.label "Επαναφορά">
+<!ENTITY resetPass.accesskey "φ">
+
+<!-- Manage Account -->
+<!ENTITY manageAccount.label "Διαχείριση λογαριασμού">
+<!ENTITY manageAccount.accesskey "λ">
+<!ENTITY viewQuota.label "Προβολή ορίου">
+<!ENTITY viewQuota.accesskey "Π">
+<!ENTITY changePassword.label "Αλλαγή κωδικού πρόσβασης">
+<!ENTITY changePassword.accesskey "Α">
+<!ENTITY myRecoveryKey.label "Το κλειδί ανάκτησής μου">
+<!ENTITY myRecoveryKey.accesskey "Τ">
+<!ENTITY resetSync.label "Επαναφορά Sync">
+<!ENTITY resetSync.accesskey "Ε">
+<!ENTITY unlinkDevice.label "Αποσύνδεση συσκευής">
+<!ENTITY unlinkDevice.accesskey "σ">
+<!ENTITY addDevice.label "Προσθήκη συσκευής">
+<!ENTITY addDevice.accesskey "Π">
+
+<!-- Sync Settings -->
+<!ENTITY syncComputerName.label "Όνομα υπολογιστή:">
+<!ENTITY syncComputerName.accesskey "Ό">
+
+<!ENTITY syncMy2.label "Συγχρονισμός:">
+<!ENTITY engine.addons.label "Πρόσθετα">
+<!ENTITY engine.addons.accesskey "Π">
+<!ENTITY engine.bookmarks.label "Σελιδοδείκτες">
+<!ENTITY engine.bookmarks.accesskey "Σ">
+<!ENTITY engine.tabs.label "Καρτέλες">
+<!ENTITY engine.tabs.accesskey "Κ">
+<!ENTITY engine.history.label "Ιστορικό">
+<!ENTITY engine.history.accesskey "ρ">
+<!ENTITY engine.passwords.label "Κωδικοί πρόσβασης">
+<!ENTITY engine.passwords.accesskey "π">
+<!ENTITY engine.prefs.label "Προτιμήσεις">
+<!ENTITY engine.prefs.accesskey "Π">
+
+<!-- Footer stuff -->
+<!ENTITY prefs.tosLink.label "Όροι υπηρεσίας">
+<!ENTITY prefs.ppLink.label "Πολιτική απορρήτου">
diff --git a/l10n-el/suite/chrome/common/pref/pref-tabs.dtd b/l10n-el/suite/chrome/common/pref/pref-tabs.dtd
new file mode 100644
index 0000000000..1f2643753a
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/pref-tabs.dtd
@@ -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/. -->
+
+<!ENTITY tabHeader.label "Περιήγηση με καρτέλες">
+
+<!ENTITY tabDisplay.label "Προβολή καρτελών">
+<!ENTITY autoHide.label "Απόκρυψη γραμμής καρτελών όταν είναι ανοιχτή μόνο μία καρτέλα">
+<!ENTITY autoHide.accesskey2 "ψ">
+<!ENTITY background.label "Εναλλαγή σε νέες καρτέλες που ανοίγουν από συνδέσμους">
+<!ENTITY background.accesskey "Ε">
+<!ENTITY warnOnClose.label "Προειδοποίηση κατά το κλείσιμο παραθύρου με πολλαπλές καρτέλες">
+<!ENTITY warnOnClose.accesskey "Π">
+<!ENTITY relatedAfterCurrent.label "Άνοιγμα σχετικών καρτελών μετά την τρέχουσα">
+<!ENTITY relatedAfterCurrent.accesskey "Ά">
+
+<!ENTITY openTabs.label "Άνοιγμα καρτελών αντί παραθύρων για">
+<!ENTITY middleClick.label "Μεσαίο κλικ, Ctrl+κλικ ή Ctrl+Enter σε συνδέσμους σε μια ιστοσελίδα">
+<!ENTITY middleClick.accesskey "Μ">
+<!ENTITY middleClickMac.label "Μεσαίο κλικ, &#8984;+κλικ ή &#8984;+Enter σε συνδέσμους σε μια ιστοσελίδα">
+<!ENTITY middleClickMac.accesskey "Μ">
+<!ENTITY urlbar.label "Ctrl+Enter στη γραμμή διευθύνσεων">
+<!ENTITY urlbar.accesskey "τ">
+<!ENTITY urlbarMac.label "&#8984;+Return στη γραμμή διευθύνσεων">
+<!ENTITY urlbarMac.accesskey "δ">
+
+<!ENTITY openManagers.label "Άνοιγμα σε νέα καρτέλα αντί σε ξεχωριστό παράθυρο">
+<!ENTITY openDataManager.label "Διαχείριση δεδομένων">
+<!ENTITY openDataManager.accesskey "Δ">
+<!ENTITY openAddOnsManager.label "Διαχείριση προσθέτων">
+<!ENTITY openAddOnsManager.accesskey "θ">
diff --git a/l10n-el/suite/chrome/common/pref/preferences.dtd b/l10n-el/suite/chrome/common/pref/preferences.dtd
new file mode 100644
index 0000000000..e25c6e632b
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/preferences.dtd
@@ -0,0 +1,62 @@
+<!-- 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 windowClose.key "w">
+<!ENTITY preferencesDefaultTitleMac.title "Προτιμήσεις">
+<!ENTITY preferencesDefaultTitleWin.title "Επιλογές">
+<!ENTITY preferencesCloseButton.label "Κλείσιμο">
+<!ENTITY preferencesCloseButton.accesskey "Κ">
+
+<!--LOCALIZATION NOTE (.label): Preferences categories that appear on the left of the preferences dialog -->
+<!ENTITY prefWindow.title "Προτιμήσεις">
+<!ENTITY prefWindow.size "width: 102ch; height: 44em;">
+<!ENTITY prefWindowMac.size "width: 62em; height: 41em;">
+<!ENTITY prefWindowWin.size "width: 115ch; height: 43em;">
+<!ENTITY prefWindowMac2.size "width: 70em; height: 41em;">
+<!ENTITY prefWindowWin2.size "width: 125ch; height: 44em;">
+<!ENTITY categoryHeader "Κατηγορία">
+
+<!ENTITY appear.label "Εμφάνιση">
+<!ENTITY content.label "Περιεχόμενο">
+<!ENTITY fonts.label "Γραμματοσειρές">
+<!ENTITY colors.label "Χρώματα">
+<!ENTITY media.label "Πολυμέσα">
+<!ENTITY spellingPane.label "Ορθογραφία">
+
+<!ENTITY navigator.label "Πρόγραμμα περιήγησης">
+<!ENTITY history.label "Ιστορικό">
+<!ENTITY languages.label "Γλώσσες">
+<!ENTITY applications.label "Βοηθητικές εφαρμογές">
+<!ENTITY locationBar.label "Γραμμή διευθύνσεων">
+<!ENTITY search.label "Διαδικτυακή αναζήτηση">
+<!ENTITY tabWindows.label "Περιήγηση με καρτέλες">
+<!ENTITY links.label "Συμπεριφορά συνδέσμου">
+<!ENTITY download.label "Λήψεις">
+
+<!ENTITY security.label "Απόρρητο &amp; ασφάλεια">
+<!ENTITY privatedata.label "Ιδιωτικά δεδομένα">
+<!ENTITY cookies.label "Cookies">
+<!ENTITY images.label "Εικόνες">
+<!ENTITY popups.label "Αναδυόμενα παράθυρα">
+<!ENTITY passwords.label "Κωδικοί πρόσβασης">
+<!ENTITY masterpass.label "Κύριοι κωδικοί πρόσβασης">
+<!ENTITY ssltls.label "SSL/TLS">
+<!ENTITY certs.label "Πιστοποιητικά">
+
+<!ENTITY sync.label "Sync">
+
+<!ENTITY advance.label "Για προχωρημένους">
+<!ENTITY scriptsAndWindows.label "Σενάρια &amp; αρθρώματα">
+<!ENTITY keynav.label "Πλοήγηση με πληκτρολόγιο">
+<!ENTITY findAsYouType.label "Εύρεση κατά την πληκτρολόγηση">
+<!ENTITY cache.label "Προσωρινή μνήμη">
+<!ENTITY offlineApps.label "Εφαρμογές εκτός σύνδεσης">
+<!ENTITY proxies.label "Διακομιστές μεσολάβησης">
+<!ENTITY httpnetworking.label "Δικτύωση HTTP">
+<!ENTITY smart.label "Εγκατάσταση λογισμικού">
+<!ENTITY mousewheel.label "Τροχός ποντικιού">
+
+<!ENTITY debugging.label "Εντοπισμός σφαλμάτων">
+
+<!ENTITY focusSearch.key "f">
diff --git a/l10n-el/suite/chrome/common/pref/prefutilities.dtd b/l10n-el/suite/chrome/common/pref/prefutilities.dtd
new file mode 100644
index 0000000000..c4b06c480b
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/prefutilities.dtd
@@ -0,0 +1,40 @@
+<!-- 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 FallbackCharset.auto "Προεπιλογή για την τρέχουσα γλώσσα">
+<!-- LOCALIZATION NOTE (FallbackCharset.arabic):
+ Translate "Arabic" as an adjective for an encoding, not as the name of the language. -->
+<!ENTITY FallbackCharset.arabic "Αραβική">
+<!ENTITY FallbackCharset.baltic "Βαλτική">
+<!ENTITY FallbackCharset.ceiso "Κεντρική Ευρωπαϊκή, ISO">
+<!ENTITY FallbackCharset.cewindows "Κεντρική Ευρωπαϊκή, Microsoft">
+<!-- LOCALIZATION NOTE (FallbackCharset.simplified):
+ Translate "Chinese" as an adjective for an encoding, not as the name of the language. -->
+<!ENTITY FallbackCharset.simplified "Κινεζική, Απλοποιημένη">
+<!-- LOCALIZATION NOTE (FallbackCharset.traditional):
+ Translate "Chinese" as an adjective for an encoding, not as the name of the language. -->
+<!ENTITY FallbackCharset.traditional "Κινεζική, Παραδοσιακή">
+<!ENTITY FallbackCharset.cyrillic "Κυριλλική">
+<!-- LOCALIZATION NOTE (FallbackCharset.greek):
+ Translate "Greek" as an adjective for an encoding, not as the name of the language. -->
+<!ENTITY FallbackCharset.greek "Ελληνική">
+<!-- LOCALIZATION NOTE (FallbackCharset.hebrew):
+ Translate "Hebrew" as an adjective for an encoding, not as the name of the language. -->
+<!ENTITY FallbackCharset.hebrew "Εβραϊκή">
+<!-- LOCALIZATION NOTE (FallbackCharset.japanese):
+ Translate "Japanese" as an adjective for an encoding, not as the name of the language. -->
+<!ENTITY FallbackCharset.japanese "Ιαπωνική">
+<!-- LOCALIZATION NOTE (FallbackCharset.korean):
+ Translate "Korean" as an adjective for an encoding, not as the name of the language. -->
+<!ENTITY FallbackCharset.korean "Κορεατική">
+<!-- LOCALIZATION NOTE (FallbackCharset.thai):
+ Translate "Thai" as an adjective for an encoding, not as the name of the language. -->
+<!ENTITY FallbackCharset.thai "Ταϊλανδική">
+<!-- LOCALIZATION NOTE (FallbackCharset.turkish):
+ Translate "Turkish" as an adjective for an encoding, not as the name of the language. -->
+<!ENTITY FallbackCharset.turkish "Τουρκική">
+<!-- LOCALIZATION NOTE (FallbackCharset.vietnamese):
+ Translate "Vietnamese" as an adjective for an encoding, not as the name of the language. -->
+<!ENTITY FallbackCharset.vietnamese "Βιετναμική">
+<!ENTITY FallbackCharset.other "Άλλη (όπως Δυτική Ευρωπαϊκή)">
diff --git a/l10n-el/suite/chrome/common/pref/prefutilities.properties b/l10n-el/suite/chrome/common/pref/prefutilities.properties
new file mode 100644
index 0000000000..6d058af4da
--- /dev/null
+++ b/l10n-el/suite/chrome/common/pref/prefutilities.properties
@@ -0,0 +1,45 @@
+# 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/.
+
+cachefolder=Επιλογή φακέλου προσωρινής μνήμης
+#LOCALIZATION NOTE (%1$S) is the size and (%2$S) is the unit of disk space.
+cacheSizeInfo=Η προσωρινή σας μνήμη χρησιμοποιεί αυτή τη στιγμή %1$S %2$S χώρου δίσκου.
+
+# Offline apps
+offlineAppSizeInfo=Τα δεδομένα εκτός σύνδεσης χρησιμοποιούν αυτή τη στιγμή %1$S %2$S χώρου δίσκου.
+offlineAppRemoveTitle=Αφαίρεση δεδομένων ιστοσελίδων εκτός σύνδεσης
+offlineAppRemovePrompt=Μετά την αφαίρεση αυτών των δεδομένων, το %S δεν θα είναι διαθέσιμο εκτός σύνδεσης. Θέλετε σίγουρα να αφαιρέσετε αυτή την ιστοσελίδα εκτός σύνδεσης;
+offlineAppRemoveConfirm=Αφαίρεση δεδομένων εκτός σύνδεσης
+
+# LOCALIZATION NOTE: The next string is for the disk usage of the
+# offline application
+# e.g. offlineAppUsage : "50.23 MB"
+# %1$S = size (in bytes or megabytes, ...)
+# %2$S = unit of measure (bytes, KB, MB, ...)
+offlineAppUsage=%1$S %2$S
+
+choosehomepage=Επιλογή αρχικής σελίδας
+downloadfolder=Επιλογή φακέλου λήψης
+desktopFolderName=Επιφάνεια εργασίας
+downloadsFolderName=Λήψεις
+choosesound=Επιλογή ήχου
+
+SoundFiles=Ήχοι
+
+# LOCALIZATION NOTE (labelDefaultFont2): %S = font name
+labelDefaultFont2=Προεπιλογή (%S)
+labelDefaultFontUnnamed=Προεπιλογή
+
+# LOCALIZATION NOTE (appLocale.label): %S = Name of the application locale,
+# e.g. English (United States)
+appLocale.label=Γλώσσα εφαρμογής: %S
+appLocale.accesskey=φ
+# LOCALIZATION NOTE (rsLocale.label): %S = Name of the locale chosen in regional settings,
+# e.g. German (Germany)
+rsLocale.label=Τοπικές ρυθμίσεις: %S
+rsLocale.accesskey=Τ
+
+syncUnlink.title=Θέλετε να αποσυνδέσετε τη συσκευή σας;
+syncUnlink.label=Αυτή η συσκευή δεν θα σχετίζεται πλέον με τον λογαριασμό Sync σας. Όλα τα προσωπικά σας δεδομένα στη συσκευή και στον λογαριασμό Sync σας θα παραμείνουν αναλλοίωτα.
+syncUnlinkConfirm.label=Αποσύνδεση
diff --git a/l10n-el/suite/chrome/common/printPreview.dtd b/l10n-el/suite/chrome/common/printPreview.dtd
new file mode 100644
index 0000000000..3e017d02e1
--- /dev/null
+++ b/l10n-el/suite/chrome/common/printPreview.dtd
@@ -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/. -->
+
+<!ENTITY print.label "Εκτύπωση…">
+<!ENTITY print.accesskey "Ε">
+<!ENTITY pageSetup.label "Διαμόρφωση σελίδας…">
+<!ENTITY pageSetup.accesskey "φ">
+<!ENTITY page.label "Σελίδα:">
+<!ENTITY page.accesskey "ε">
+<!ENTITY of.label "από">
+<!ENTITY scale.label "Κλίμακα:">
+<!ENTITY scale.accesskey "Κ">
+<!ENTITY portrait.label "Κατακόρυφα">
+<!ENTITY portrait.accesskey "φ">
+<!ENTITY landscape.label "Οριζόντια">
+<!ENTITY landscape.accesskey "Ο">
+<!ENTITY close.label "Κλείσιμο">
+<!ENTITY close.accesskey "Κ">
+<!ENTITY p30.label "30&#037;">
+<!ENTITY p40.label "40&#037;">
+<!ENTITY p50.label "50&#037;">
+<!ENTITY p60.label "60&#037;">
+<!ENTITY p70.label "70&#037;">
+<!ENTITY p80.label "80&#037;">
+<!ENTITY p90.label "90&#037;">
+<!ENTITY p100.label "100&#037;">
+<!ENTITY p125.label "125&#037;">
+<!ENTITY p150.label "150&#037;">
+<!ENTITY p175.label "175&#037;">
+<!ENTITY p200.label "200&#037;">
+<!ENTITY Custom.label "Προσαρμογή…">
+<!ENTITY ShrinkToFit.label "Προσαρμογή στη σελίδα">
+<!ENTITY customPrompt.title "Προσαρμοσμένη κλίμακα…">
+
+<!ENTITY homearrow.tooltip "Πρώτη σελίδα">
+<!ENTITY endarrow.tooltip "Τελευταία σελίδα">
+<!ENTITY rightarrow.tooltip "Επόμενη σελίδα">
+<!ENTITY leftarrow.tooltip "Προηγούμενη σελίδα">
diff --git a/l10n-el/suite/chrome/common/profile/profileSelection.dtd b/l10n-el/suite/chrome/common/profile/profileSelection.dtd
new file mode 100644
index 0000000000..9a46eab4ef
--- /dev/null
+++ b/l10n-el/suite/chrome/common/profile/profileSelection.dtd
@@ -0,0 +1,35 @@
+<!-- -*- Mode: SGML; indent-tabs-mode: nil; -*- -->
+<!--
+
+ 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 windowTitle.label "Επιλογή προφίλ χρήστη">
+<!ENTITY profileManager.title "Διαχείριση προφίλ &brandShortName;">
+
+<!ENTITY manage.label "Διαχείριση προφίλ…">
+<!ENTITY manage.accesskey "Δ">
+<!ENTITY select.label "Χρήση προφίλ">
+
+<!ENTITY availableProfiles.label "Διαθέσιμα προφίλ">
+
+<!ENTITY introStart.label "Για πρόσβαση στο προσωπικό σας προφίλ, το οποίο περιέχει τα αποθηκευμένα μηνύματα, τις ρυθμίσεις και άλλες εξατομικευμένες πληροφορίες σας, παρακαλώ επιλέξτε το προφίλ σας από τη λίστα και κάντε κλικ στο &start.label; για να ξεκινήσετε τη συνεδρία σας.">
+<!ENTITY introSwitch.label "Για εναλλαγή σε άλλο προφίλ, το οποίο περιέχει τα αποθηκευμένα μηνύματα, τις ρυθμίσεις και άλλες εξατομικευμένες πληροφορίες, παρακαλώ επιλέξτε αυτό το προφίλ από τη λίστα και κάντε κλικ στο &select.label; για να ξεκινήσετε τη χρήση αυτού του προφίλ.">
+<!ENTITY profileManagerText.label "Το &brandShortName; αποθηκεύει πληροφορίες για τις ρυθμίσεις, τις προτιμήσεις, τους σελιδοδείκτες, τα αποθηκευμένα μηνύματα και άλλα στοιχεία χρήστη στο προφίλ χρήστη σας.">
+
+<!ENTITY autoSelect.label "Ορισμός προφίλ ως προεπιλογή">
+<!ENTITY autoSelect.accesskey "π">
+
+<!ENTITY start.label "Εκκίνηση &brandShortName;">
+<!ENTITY exit.label "Έξοδος">
+
+<!ENTITY newButton.label "Δημιουργία προφίλ…">
+<!ENTITY newButton.accesskey "Δ">
+<!ENTITY renameButton.label "Μετονομασία προφίλ…">
+<!ENTITY renameButton.accesskey "Μ">
+<!ENTITY deleteButton.label "Διαγραφή προφίλ…">
+<!ENTITY deleteButton.accesskey "Δ">
+
+<!ENTITY offlineState.label "Εργασία εκτός σύνδεσης">
+<!ENTITY offlineState.accesskey "κ">
diff --git a/l10n-el/suite/chrome/common/profile/profileSelection.properties b/l10n-el/suite/chrome/common/profile/profileSelection.properties
new file mode 100644
index 0000000000..38d47dcda3
--- /dev/null
+++ b/l10n-el/suite/chrome/common/profile/profileSelection.properties
@@ -0,0 +1,22 @@
+# 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/.
+
+deleteLocked=Το %S δεν μπορεί να διαγράψει το προφίλ "%S" επειδή χρησιμοποιείται.
+deleteProfile=Η διαγραφή ενός προφίλ θα το αφαιρέσει από τη λίστα των διαθέσιμων προφίλ και δεν μπορεί να αναιρεθεί.\n\nΜπορείτε επίσης να διαγράψετε τα αρχεία δεδομένων του προφίλ, όπως αποθηκευμένα email, ρυθμίσεις και πιστοποιητικά. Αυτή η επιλογή θα διαγράψει τον φάκελο "%S" και δεν αναιρείται.\n\nΘέλετε να διαγράψετε τα αρχεία δεδομένων του προφίλ;\n\n
+
+manageTitle=Διαχείριση προφίλ χρήστη
+selectTitle=Επιλογή προφίλ χρήστη
+
+dirLocked=Το %S δεν μπορεί να χρησιμοποιήσει το προφίλ "%S". Ενδέχεται να χρησιμοποιείται, να μην είναι διαθέσιμο ή να έχει καταστραφεί.\n\nΠαρακαλώ επιλέξτε κάποιο άλλο προφίλ ή δημιουργήστε ένα νέο.
+
+renameProfileTitle=Μετονομασία προφίλ
+renameProfilePrompt=Μετονομασία του προφίλ "%S" σε:
+profileNameInvalidTitle=Μη έγκυρο όνομα προφίλ
+profileNameEmpty=Δεν επιτρέπεται ένα κενό όνομα προφίλ.
+invalidChar=Ο χαρακτήρας "%S" δεν επιτρέπεται σε ονόματα προφίλ. Παρακαλώ επιλέξτε ένα διαφορετικό όνομα.
+deleteTitle=Διαγραφή προφίλ
+deleteFiles=Διαγραφή αρχείων
+dontDeleteFiles=Διατήρηση αρχείων
+profileExists=Υπάρχει ήδη προφίλ με αυτό το όνομα. Παρακαλώ επιλέξτε κάποιο άλλο όνομα.
+profileExistsTitle=Το προφίλ υπάρχει
diff --git a/l10n-el/suite/chrome/common/quitDialog.properties b/l10n-el/suite/chrome/common/quitDialog.properties
new file mode 100644
index 0000000000..43b86a5f22
--- /dev/null
+++ b/l10n-el/suite/chrome/common/quitDialog.properties
@@ -0,0 +1,29 @@
+# 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/.
+
+# Strings for the Quit, Restart, and Close-browser dialogs
+# used by _onQuitRequest() in nsSuiteGlue.js
+
+# LOCALIZATION NOTE:
+# %S (also in the messages further down)
+# is the application's short name (e.g. SeaMonkey)
+# from the brand.properties file
+quitDialogTitle=Κλείσιμο %S
+lastwindowDialogTitle=Κλείσιμο προγράμματος περιήγησης %S
+restartDialogTitle=Επανεκκίνηση %S
+
+restartNowTitle=&Επανεκκίνηση τώρα
+restartLaterTitle=Επανεκκίνηση &αργότερα
+quitTitle=&Έξοδος
+lastwindowTitle=Κλείσιμο &προγράμματος περιήγησης
+cancelTitle=&Ακύρωση
+# LOCALIZATION NOTE:
+# The following two strings are labels for the same button, depending on
+# whether we are quitting the whole Suite, or only the Browser
+saveTitle=&Αποθήκευση και έξοδος
+savelastwindowTitle=&Αποθήκευση και κλείσιμο
+neverAsk=&Να μην ξαναγίνει ερώτηση
+message=Θέλετε το %S να αποθηκεύσει τις καρτέλες και τα παράθυρά σας για την επόμενη φορά που θα ξεκινήσει;
+messageNoWindows=Θέλετε το %S να αποθηκεύσει τις καρτέλες σας για την επόμενη φορά που θα ξεκινήσει;
+messageRestart=Το %S θα προσπαθήσει να ανακτήσει τις καρτέλες και τα παράθυρά σας όταν επανεκκινηθεί.
diff --git a/l10n-el/suite/chrome/common/safeBrowsing.dtd b/l10n-el/suite/chrome/common/safeBrowsing.dtd
new file mode 100644
index 0000000000..8d7249bfcc
--- /dev/null
+++ b/l10n-el/suite/chrome/common/safeBrowsing.dtd
@@ -0,0 +1,33 @@
+<!-- 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 safeb.palm.accept.label "Θέλω να φύγω από εδώ!">
+<!ENTITY safeb.palm.decline.label "Αγνόηση προειδοποίησης">
+<!ENTITY safeb.palm.reportPage.label "Γιατί αποκλείστηκε αυτή η ιστοσελίδα;">
+
+<!ENTITY safeb.blocked.malwarePage.title "Αναφέρθηκε σελίδα επιθέσεων!">
+<!-- Localization note (safeb.blocked.malwarePage.shortDesc) - Please don't translate the contents of the <span id="malware_sitename"/> tag. It will be replaced at runtime with a domain name (e.g. www.badsite.com) -->
+<!ENTITY safeb.blocked.malwarePage.shortDesc "Αυτή η ιστοσελίδα στο <span id='malware_sitename'/> έχει αναφερθεί ως ιστοσελίδα επιθέσεων και έχει αποκλειστεί σύμφωνα με τις προτιμήσεις ασφαλείας σας.">
+<!ENTITY safeb.blocked.malwarePage.longDesc "<p>Οι ιστοσελίδες επιθέσεων προσπαθούν να εγκαταστήσουν προγράμματα στον υπολογιστή σας τα οποία υποκλέπτουν προσωπικές σας πληροφορίες, χρησιμοποιούν τον υπολογιστή σας για να επιτίθενται σε άλλους υπολογιστές και βλάπτουν το σύστημα σας.</p><p>Μερικές ιστοσελίδες εγκαθιστούν επίτηδες κακόβουλο λογισμικό, αλλά σε αρκετές αυτό γίνεται χωρίς την γνώση ή την συγκατάθεση των ιδιοκτητών τους.</p>">
+
+<!ENTITY safeb.blocked.unwantedPage.title "Αναφέρθηκε σελίδα ανεπιθύμητου λογισμικού!">
+<!-- Localization note (safeb.blocked.unwantedPage.shortDesc) - Please don't translate the contents of the <span id="unwanted_sitename"/> tag. It will be replaced at runtime with a domain name (e.g. www.badsite.com) -->
+<!ENTITY safeb.blocked.unwantedPage.shortDesc "Αυτή η ιστοσελίδα στο <span id='unwanted_sitename'/> έχει αναφερθεί ότι περιέχει ανεπιθύμητο λογισμικό και έχει αποκλειστεί σύμφωνα με τις προτιμήσεις ασφαλείας σας.">
+<!ENTITY safeb.blocked.unwantedPage.longDesc "<p>Οι σελίδες με ανεπιθύμητο λογισμικό επιχειρούν να εγκαταστήσουν λογισμικό που ενδέχεται να είναι παραπλανητικό και να επηρεάσει το σύστημα σας με απροσδόκητους τρόπους.</p>">
+
+<!ENTITY safeb.blocked.phishingPage.title2 "Παραπλανητική ιστοσελίδα!">
+<!-- Localization note (safeb.blocked.phishingPage.shortDesc2) - Please don't translate the contents of the <span id="phishing_sitename"/> tag. It will be replaced at runtime with a domain name (e.g. www.badsite.com) -->
+<!ENTITY safeb.blocked.phishingPage.shortDesc2 "Αυτή η ιστοσελίδα στο <span id='phishing_sitename'/> έχει αναφερθεί ως παραπλανητική και έχει αποκλειστεί σύμφωνα με τις προτιμήσεις ασφαλείας σας.">
+<!ENTITY safeb.blocked.phishingPage.longDesc2 "<p>Οι παραπλανητικές σελίδες είναι σχεδιασμένες ώστε να σας παραπλανούν και να σας οδηγούν σε κάποια επικίνδυνη ενέργεια, όπως η εγκατάσταση λογισμικού ή η αποκάλυψη προσωπικών πληροφοριών, όπως κωδικοί πρόσβασης, αριθμοί τηλεφώνου ή πιστωτικών καρτών.</p><p>Η εισαγωγή οποιασδήποτε πληροφορίας σε αυτήν τη σελίδα μπορεί να έχει ως συνέπεια την υποκλοπή ταυτότητας ή άλλες απάτες.</p>">
+
+<!ENTITY safeb.blocked.harmfulPage.title "Η ιστοσελίδα ενδέχεται να περιέχει κακόβουλο λογισμικό">
+<!-- Localization note (safeb.blocked.harmfulPage.shortDesc) - Please don't translate the contents of the <span id="harmful_sitename"/> tag. It will be replaced at runtime with a domain name (e.g. www.badsite.com) -->
+<!ENTITY safeb.blocked.harmfulPage.shortDesc "Το &brandShortName; απέκλεισε την ιστοσελίδα στο <span id='harmful_sitename'/>, επειδή ενδέχεται να προσπαθήσει να εγκαταστήσει επικίνδυνες εφαρμογές που υποκλέπτουν ή διαγράφουν τα δεδομένα σας (για παράδειγμα, φωτογραφίες, κωδικούς πρόσβασης, μηνύματα και πιστωτικές κάρτες).">
+<!ENTITY safeb.blocked.harmfulPage.longDesc "">
+
+<!-- Localization note (reportDeceptiveSite, notADeceptiveSite) - The two button strings will never be shown at the same time, so it's okay for them to have the same access key. -->
+<!ENTITY reportDeceptiveSite.label "Αναφορά παραπλανητικής σελίδας…">
+<!ENTITY reportDeceptiveSite.accesskey "π">
+<!ENTITY notADeceptiveSite.label "Δεν είναι παραπλανητική ιστοσελίδα…">
+<!ENTITY notADeceptiveSite.accesskey "ν">
diff --git a/l10n-el/suite/chrome/common/safeMode.dtd b/l10n-el/suite/chrome/common/safeMode.dtd
new file mode 100644
index 0000000000..21303895ad
--- /dev/null
+++ b/l10n-el/suite/chrome/common/safeMode.dtd
@@ -0,0 +1,27 @@
+<!-- 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 safeModeDialog.title "Ασφαλής λειτουργία του &brandShortName;">
+<!ENTITY window.width "37em">
+
+<!ENTITY safeModeDescription.label "Το &brandShortName; εκτελείται σε Ασφαλή λειτουργία, η οποία απενεργοποιεί προσωρινά όλες τις προσαρμοσμένες ρυθμίσεις, τα θέματα και τις επεκτάσεις σας.">
+<!ENTITY safeModeDescription2.label "Μπορείτε να οριστικοποιήσετε κάποιες ή όλες τις αλλαγές:">
+
+<!ENTITY disableAddons.label "Απενεργοποίηση όλων των προσθέτων">
+<!ENTITY disableAddons.accesskey "Α">
+
+<!ENTITY resetToolbars.label "Επαναφορά γραμμών εργαλείων και μεγεθών παραθύρων">
+<!ENTITY resetToolbars.accesskey "Ε">
+
+<!ENTITY deleteBookmarks.label "Διαγραφή όλων των σελιδοδεικτών εκτός από αντίγραφα ασφαλείας">
+<!ENTITY deleteBookmarks.accesskey "α">
+
+<!ENTITY resetUserPrefs.label "Επαναφορά όλων των προτιμήσεων χρήστη στις προεπιλογές του &brandShortName;">
+<!ENTITY resetUserPrefs.accesskey "π">
+
+<!ENTITY restoreSearch.label "Επαναφορά προεπιλεγμένων μηχανών αναζήτησης">
+<!ENTITY restoreSearch.accesskey "ζ">
+
+<!ENTITY changeAndRestartButton.label "Αποθήκευση αλλαγών και επανεκκίνηση">
+<!ENTITY continueButton.label "Συνέχεια σε Ασφαλή λειτουργία">
diff --git a/l10n-el/suite/chrome/common/sanitize.dtd b/l10n-el/suite/chrome/common/sanitize.dtd
new file mode 100644
index 0000000000..31e1e2265c
--- /dev/null
+++ b/l10n-el/suite/chrome/common/sanitize.dtd
@@ -0,0 +1,27 @@
+<!-- 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 sanitizeDialog.title "Απαλοιφή ιδιωτικών δεδομένων">
+<!ENTITY sanitizeItems.label "Εκκαθάριση των εξής στοιχείων:">
+
+<!ENTITY itemHistory.label "Ιστορικό περιήγησης">
+<!ENTITY itemHistory.accesskey "π">
+<!ENTITY itemUrlBar.label "Ιστορικό γραμμής διευθύνσεων">
+<!ENTITY itemUrlBar.accesskey "Ι">
+<!ENTITY itemDownloads.label "Ιστορικό λήψεων">
+<!ENTITY itemDownloads.accesskey "Ι">
+<!ENTITY itemFormSearchHistory.label "Αποθηκευμένο ιστορικό αναζήτησης και φορμών">
+<!ENTITY itemFormSearchHistory.accesskey "φ">
+<!ENTITY itemCache.label "Προσωρινή μνήμη">
+<!ENTITY itemCache.accesskey "σ">
+<!ENTITY itemCookies.label "Cookies">
+<!ENTITY itemCookies.accesskey "C">
+<!ENTITY itemOfflineApps.label "Δεδομένα ιστοσελίδων εκτός σύνδεσης">
+<!ENTITY itemOfflineApps.accesskey "Δ">
+<!ENTITY itemPasswords.label "Αποθηκευμένοι κωδικοί πρόσβασης">
+<!ENTITY itemPasswords.accesskey "κ">
+<!ENTITY itemSessions.label "Επαληθευμένες συνεδρίες">
+<!ENTITY itemSessions.accesskey "σ">
+
+<!ENTITY sanitizeButton.label "Απαλοιφή ιδιωτικών δεδομένων">
diff --git a/l10n-el/suite/chrome/common/search/engineManager.dtd b/l10n-el/suite/chrome/common/search/engineManager.dtd
new file mode 100644
index 0000000000..cd3aeafb3a
--- /dev/null
+++ b/l10n-el/suite/chrome/common/search/engineManager.dtd
@@ -0,0 +1,29 @@
+<!-- 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 engineManager.title "Διαχείριση λίστας μηχανών αναζήτησης">
+<!ENTITY engineManager.style "min-width: 35em;">
+<!ENTITY engineManager.intro "Έχετε εγκαταστήσει τις εξής μηχανές αναζήτησης:">
+
+<!ENTITY columnLabel.name "Όνομα">
+<!ENTITY columnLabel.keyword "Λέξη-κλειδί">
+
+<!-- Buttons -->
+<!ENTITY up.label "Μετακίνηση πάνω">
+<!ENTITY up.accesskey "π">
+<!ENTITY dn.label "Μετακίνηση κάτω">
+<!ENTITY dn.accesskey "κ">
+<!ENTITY remove.label "Αφαίρεση">
+<!ENTITY remove.accesskey "Α">
+<!ENTITY edit.label "Επεξεργασία λέξης-κλειδιού…">
+<!ENTITY edit.accesskey "λ">
+
+<!ENTITY addEngine.label "Λήψη περισσότερων μηχανών αναζήτησης…">
+<!ENTITY addEngine.accesskey "μ">
+
+<!ENTITY enableSuggest.label "Εμφάνιση προτάσεων αναζήτησης">
+<!ENTITY enableSuggest.accesskey "Ε">
+
+<!ENTITY restoreDefaults.label "Επαναφορά προεπιλογών">
+<!ENTITY restoreDefaults.accesskey "φ">
diff --git a/l10n-el/suite/chrome/common/search/engineManager.properties b/l10n-el/suite/chrome/common/search/engineManager.properties
new file mode 100644
index 0000000000..b177d94415
--- /dev/null
+++ b/l10n-el/suite/chrome/common/search/engineManager.properties
@@ -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/.
+
+editTitle=Επεξεργασία λέξης-κλειδιού
+editMsg=Εισάγετε μια νέα λέξη-κλειδί για το "%S":
+duplicateTitle=Αντιγραφή λέξης-κλειδιού
+duplicateEngineMsg=Έχετε επιλέξει μια λέξη-κλειδί που χρησιμοποιείται ήδη από το "%S". Παρακαλούμε επιλέξτε κάποια άλλη.
+duplicateBookmarkMsg=Έχετε επιλέξει μια λέξη-κλειδί που χρησιμοποιείται ήδη από έναν σελιδοδείκτη. Παρακαλούμε επιλέξτε κάποια άλλη.
diff --git a/l10n-el/suite/chrome/common/search/search-panel.dtd b/l10n-el/suite/chrome/common/search/search-panel.dtd
new file mode 100644
index 0000000000..f997e1a541
--- /dev/null
+++ b/l10n-el/suite/chrome/common/search/search-panel.dtd
@@ -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/. -->
+
+<!ENTITY search.button.label "Αναζήτηση">
+<!ENTITY search.placeholder "Εισάγετε κείμενο αναζήτησης">
+
+<!ENTITY search.engineManager.label "Διαχείριση μηχανών αναζήτησης…">
diff --git a/l10n-el/suite/chrome/common/search/search.properties b/l10n-el/suite/chrome/common/search/search.properties
new file mode 100644
index 0000000000..1475dcd13a
--- /dev/null
+++ b/l10n-el/suite/chrome/common/search/search.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/.
+
+searchtip=Αναζήτηση με %S
+cmd_addFoundEngine=Προσθήκη "%S"
diff --git a/l10n-el/suite/chrome/common/search/searchbar.dtd b/l10n-el/suite/chrome/common/search/searchbar.dtd
new file mode 100644
index 0000000000..a3be42850b
--- /dev/null
+++ b/l10n-el/suite/chrome/common/search/searchbar.dtd
@@ -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/. -->
+
+<!ENTITY cmd_engineManager.label "Διαχείριση μηχανών αναζήτησης…">
+<!ENTITY searchEndCap.label "Αναζήτηση">
diff --git a/l10n-el/suite/chrome/common/setDesktopBackground.dtd b/l10n-el/suite/chrome/common/setDesktopBackground.dtd
new file mode 100644
index 0000000000..6eb0241b54
--- /dev/null
+++ b/l10n-el/suite/chrome/common/setDesktopBackground.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 setDesktopBackground.title "Ορισμός φόντου επιφάνειας εργασίας">
+
+<!ENTITY position.label "Θέση:">
+<!ENTITY position.accesskey "Θ">
+<!ENTITY position.tile.label "Πλακίδιο">
+<!ENTITY position.stretch.label "Επέκταση">
+<!ENTITY position.center.label "Κέντρο">
+<!ENTITY position.fill.label "Γέμισμα">
+<!ENTITY position.fit.label "Προσαρμογή">
+<!ENTITY picker.label "Χρώμα:">
+<!ENTITY picker.accesskey "Χ">
+<!ENTITY preview.caption "Προεπισκόπηση">
+<!ENTITY apply.label "Εφαρμογή">
+<!ENTITY apply.accesskey "Ε">
+<!ENTITY close.label "Κλείσιμο">
diff --git a/l10n-el/suite/chrome/common/shellservice.properties b/l10n-el/suite/chrome/common/shellservice.properties
new file mode 100644
index 0000000000..cb743ec5fa
--- /dev/null
+++ b/l10n-el/suite/chrome/common/shellservice.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/.
+
+preferencesLabel=&Προτιμήσεις %S
+safeModeLabel=&Ασφαλής λειτουργία %S
+desktopBackgroundLeafNameWin=Φόντο επιφάνειας εργασίας.bmp
diff --git a/l10n-el/suite/chrome/common/sidebar/customize.dtd b/l10n-el/suite/chrome/common/sidebar/customize.dtd
new file mode 100644
index 0000000000..cab48fa3ec
--- /dev/null
+++ b/l10n-el/suite/chrome/common/sidebar/customize.dtd
@@ -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/. -->
+
+<!-- extracted from ./customize.xul -->
+
+<!-- LOCALIZATION NOTE sidebar.customize.title.label: Do NOT localize the term "&sidebarName;" -->
+<!ENTITY sidebar.customize.title.label "Προσαρμογή &sidebarName;">
+<!-- LOCALIZATION NOTE sidebar.customize.current.label: Do NOT localize the term "&sidebarName;" -->
+<!ENTITY sidebar.customize.current.label "Καρτέλες στο &sidebarName;:">
+<!ENTITY sidebar.customize.current.accesskey "Κ">
+
+<!ENTITY sidebar.customize.title "Προσαρμογή πλευρικής στήλης">
+<!ENTITY sidebar.customize.current2.label "Καρτέλες στην πλευρική στήλη:">
+<!ENTITY sidebar.customize.current2.accesskey "Κ">
+<!ENTITY sidebar.customize.customize.label "Προσαρμογή καρτέλας…">
+<!ENTITY sidebar.customize.customize.accesskey "Π">
+<!ENTITY sidebar.customize.remove.label "Αφαίρεση">
+<!ENTITY sidebar.customize.remove.accesskey "Α">
+<!ENTITY sidebar.customize.additional.label "Διαθέσιμες καρτέλες:">
+<!ENTITY sidebar.customize.additional.accesskey "θ">
+<!ENTITY sidebar.customize.add.label "Προσθήκη">
+<!ENTITY sidebar.customize.add.accesskey "Π">
+<!ENTITY sidebar.customize.preview.label "Προεπισκόπηση…">
+<!ENTITY sidebar.customize.preview.accesskey "Π">
+<!ENTITY sidebar.customize.up.label "Μετακίνηση πάνω">
+<!ENTITY sidebar.customize.up.accesskey "π">
+<!ENTITY sidebar.customize.down.label "Μετακίνηση κάτω">
+<!ENTITY sidebar.customize.down.accesskey "κ">
+<!ENTITY sidebar.more.label "Εύρεση περισσότερων καρτελών…">
+<!ENTITY sidebar.more.accesskey "Ε">
diff --git a/l10n-el/suite/chrome/common/sidebar/preview.dtd b/l10n-el/suite/chrome/common/sidebar/preview.dtd
new file mode 100644
index 0000000000..14e122aa47
--- /dev/null
+++ b/l10n-el/suite/chrome/common/sidebar/preview.dtd
@@ -0,0 +1,5 @@
+<!-- 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 sidebar.preview.title.label "Προεπισκόπηση καρτέλας">
diff --git a/l10n-el/suite/chrome/common/sidebar/sidebar.properties b/l10n-el/suite/chrome/common/sidebar/sidebar.properties
new file mode 100644
index 0000000000..788e2dcb19
--- /dev/null
+++ b/l10n-el/suite/chrome/common/sidebar/sidebar.properties
@@ -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/.
+
+addPanelConfirmTitle=Προσθήκη καρτέλας στην πλευρική στήλη
+addPanelConfirmMessage=Προσθήκη καρτέλας '%title%' στο %name%;##Πηγή: %url%
+persistentPanelWarning=Η καρτέλα πλευρικής στήλης που προσθέτετε μπορεί να μεταφέρει δεδομένα στο διαδίκτυο και να εκτελεί JavaScript, ακόμη και όταν το %name% είναι κλειστό.
+
+addPanelConfirmMessage2=Προσθήκη καρτέλας '%title%' στην πλευρική στήλη;##Πηγή: %url%
+persistentPanelWarning2=Η καρτέλα πλευρικής στήλης που προσθέτετε μπορεί να μεταφέρει δεδομένα στο διαδίκτυο και να εκτελεί JavaScript, ακόμη και όταν η πλευρική στήλη είναι κλειστή.
+
+dupePanelAlertTitle=Πλευρική στήλη
+dupePanelAlertMessage=Το %url% υπάρχει ήδη στο %name%.
+dupePanelAlertMessage2=Το %url% υπάρχει ήδη στην πλευρική στήλη.
diff --git a/l10n-el/suite/chrome/common/sidebar/sidebarOverlay.dtd b/l10n-el/suite/chrome/common/sidebar/sidebarOverlay.dtd
new file mode 100644
index 0000000000..055a08aee3
--- /dev/null
+++ b/l10n-el/suite/chrome/common/sidebar/sidebarOverlay.dtd
@@ -0,0 +1,38 @@
+<!-- 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 sidebar.panels.label "Πλευρική στήλη">
+<!ENTITY sidebar.reload.label "Ανανέωση">
+<!ENTITY sidebar.reload.accesskey "Α">
+<!ENTITY sidebar.picker.label "Καρτέλες">
+<!ENTITY sidebar.customize.label "Προσαρμογή πλευρικής στήλης…">
+<!ENTITY sidebar.customize.accesskey "ρ">
+<!ENTITY sidebar.hide.label "Απόκρυψη καρτέλας">
+<!ENTITY sidebar.hide.accesskey "Α">
+<!ENTITY sidebar.switch.label "Εναλλαγή σε καρτέλα">
+<!ENTITY sidebar.switch.accesskey "κ">
+<!ENTITY sidebarCmd.label "Πλευρική στήλη">
+<!ENTITY sidebarCmd.accesskey "σ">
+<!ENTITY sidebar.loading.label "Φόρτωση…">
+<!ENTITY sidebar.loadstopped.label "Η φόρτωση διακόπηκε">
+<!ENTITY sidebar.loading.stop.label "Διακοπή">
+<!ENTITY sidebar.loading.stop.accesskey "Δ">
+
+<!-- LOCALIZATION NOTE (showHideSidebarCmd.key): This is only used on the
+ mac platform, other platforms use VK_F9. -->
+<!ENTITY showHideSidebarCmd.key "S">
+
+<!ENTITY sidebar.no-panels.state "Η πλευρική στήλη είναι προς το παρόν άδεια.">
+<!ENTITY sidebar.no-panels.add 'Μπορείτε να προσθέσετε καρτέλες κάνοντας κλικ στο κουμπί "Καρτέλες" παραπάνω.'>
+<!ENTITY sidebar.no-panels.hide 'Αν θέλετε να αποκρύψετε εντελώς την πλευρική στήλη, κάντε κλικ στο μενού "Προβολή" παραπάνω και επιλέξτε "Πλευρική στήλη" από το υπομενού "Εμφάνιση/Απόκρυψη".'>
+<!ENTITY sidebar.sbDirectory.label "Κατάλογος πλευρικής στήλης…">
+
+<!ENTITY sidebar.pagenotfound.label "Αυτή η καρτέλα δεν είναι διαθέσιμη αυτή τη στιγμή.">
+<!ENTITY sidebar.close.tooltip "Κλείσιμο πλευρικής στήλης">
+<!ENTITY sidebar.open.tooltip "Άνοιγμα πλευρικής στήλης">
+
+<!ENTITY sidebar.search.label "Αναζήτηση">
+<!ENTITY sidebar.client-bookmarks.label "Σελιδοδείκτες">
+<!ENTITY sidebar.client-history.label "Ιστορικό">
+<!ENTITY sidebar.client-addressbook.label "Ευρετήριο">
diff --git a/l10n-el/suite/chrome/common/sitePermissions.properties b/l10n-el/suite/chrome/common/sitePermissions.properties
new file mode 100644
index 0000000000..e7be9c56ab
--- /dev/null
+++ b/l10n-el/suite/chrome/common/sitePermissions.properties
@@ -0,0 +1,45 @@
+# 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 (state.current.allowed,
+# state.current.allowedForSession,
+# state.current.allowedTemporarily,
+# state.current.blockedTemporarily,
+# state.current.blocked,
+# state.current.hide):
+# This label is used to display active permission states in the site
+# identity popup (which does not have a lot of screen space).
+state.current.allowed = Επιτρέπεται
+state.current.allowedForSession = Επιτρέπεται για τη συνεδρία
+state.current.allowedTemporarily = Επιτρέπεται προσωρινά
+state.current.blockedTemporarily = Αποκλείεται προσωρινά
+state.current.blocked = Αποκλείεται
+state.current.prompt = Πάντα ερώτηση
+state.current.hide = Απόκρυψη διαλόγου
+
+# LOCALIZATION NOTE (state.multichoice.alwaysAsk,
+# state.multichoice.allow,
+# state.multichoice.allowForSameDomain,
+# state.multichoice.allowForSession,
+# state.multichoice.block):
+# Used to label permission state checkboxes in the page info dialog.
+state.multichoice.alwaysAsk = Πάντα ερώτηση
+state.multichoice.allow = Αποδοχή
+state.multichoice.allowForSameDomain = Αποδοχή για τον ίδιο τομέα
+state.multichoice.allowForSession = Αποδοχή για τη συνεδρία
+state.multichoice.block = Φραγή
+
+permission.cookie.label = Τοποθέτηση cookies
+permission.desktop-notification2.label = Λήψη ειδοποιήσεων
+permission.image.label = Φόρτωση εικόνων
+permission.camera.label = Χρήση της κάμερας
+permission.microphone.label = Χρήση του μικροφώνου
+permission.screen.label = Κοινή χρήση οθόνης
+permission.install.label = Εγκατάσταση προσθέτων
+permission.popup.label = Άνοιγμα αναδυόμενων παραθύρων
+permission.geo.label = Πρόσβαση στην τοποθεσία σας
+permission.indexedDB.label = Διατήρηση χώρου για εργασία χωρίς σύνδεση
+permission.focus-tab-by-prompt.label = Εναλλαγή σε αυτή την καρτέλα
+permission.persistent-storage.label = Αποθήκευση δεδομένων στην επίμονη αποθήκευση
+permission.flash-plugin.label = Εκτέλεση Adobe Flash
diff --git a/l10n-el/suite/chrome/common/sync/syncBrand.dtd b/l10n-el/suite/chrome/common/sync/syncBrand.dtd
new file mode 100644
index 0000000000..71955e69ae
--- /dev/null
+++ b/l10n-el/suite/chrome/common/sync/syncBrand.dtd
@@ -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/. -->
+
+<!ENTITY syncBrand.shortName.label "Sync">
+<!ENTITY syncBrand.fullName.label "SeaMonkey Sync">
diff --git a/l10n-el/suite/chrome/common/sync/syncGenericChange.properties b/l10n-el/suite/chrome/common/sync/syncGenericChange.properties
new file mode 100644
index 0000000000..23f5a4e5bb
--- /dev/null
+++ b/l10n-el/suite/chrome/common/sync/syncGenericChange.properties
@@ -0,0 +1,37 @@
+# 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 (whole file) "Sync" should match &syncBrand.shortName.label; from syncBrand.dtd
+# LOCALIZATION NOTE (change.password.title): This (and associated change.password/passphrase) are used when the user elects to change their password.
+change.password.title = Αλλαγή κωδικού πρόσβασης
+change.password.acceptButton = Αλλαγή κωδικού πρόσβασης
+change.password.status.active = Αλλαγή του κωδικού πρόσβασής σας…
+change.password.status.success = Ο κωδικός πρόσβασής σας άλλαξε.
+change.password.status.error = Προέκυψε σφάλμα κατά την αλλαγή του κωδικού πρόσβασής σας.
+
+change.password3.introText = Ο κωδικός πρόσβασής σας πρέπει να περιέχει τουλάχιστον 8 χαρακτήρες. Δεν μπορεί να είναι ίδιος με το όνομα χρήστη ή το κλειδί ανάκτησής σας.
+change.password.warningText = Σημείωση: Δεν θα μπορεί καμία από τις άλλες συσκευές σας να συνδεθεί στον λογαριασμό σας μόλις αλλάξετε αυτό τον κωδικό πρόσβασης.
+
+change.recoverykey.title = Αλλαγή κλειδιού ανάκτησης
+change.recoverykey.acceptButton = Αλλαγή κλειδιού ανάκτησης
+change.recoverykey.label = Αλλαγή κλειδιού ανάκτησης και μεταφόρτωση τοπικών δεδομένων, παρακαλώ περιμένετε…
+change.recoverykey.error = Προέκυψε σφάλμα κατά την αλλαγή του κλειδιού ανάκτησης σας!
+change.recoverykey.success = Το κλειδί ανάκτησής σας άλλαξε επιτυχώς!
+change.recoverykey.introText2 = Για την πλήρη προστασία του απορρήτου σας, όλα τα δεδομένα σας κρυπτογραφούνται πριν τη μεταφόρτωση. Το κλειδί αποκρυπτογράφησης δεν μεταφορτώνεται.
+change.recoverykey.warningText = Σημείωση: Αυτή η ενέργεια θα διαγράψει όλα τα δεδομένα στον διακομιστή του Sync και θα μεταφορτώσει τα νέα δεδομένα που προστατεύονται από αυτό το κλειδί ανάκτησης. Οι άλλες σας συσκευές δεν θα μπορούν να συγχρονιστούν μέχρι να εισάγετε το κλειδί ανάκτησης στην εκάστοτε συσκευή.
+
+new.recoverykey.label = Το κλειδί ανάκτησής σας
+
+# LOCALIZATION NOTE (new.password.title): This (and associated new.password/passphrase) are used on a second computer when it detects that your password or passphrase has been changed on a different device.
+new.password.title = Ενημέρωση κωδικού πρόσβασης
+new.password.introText = Ο κωδικός πρόσβασής σας απορρίφθηκε από τον διακομιστή, παρακαλώ ενημερώστε τον κωδικό πρόσβασής σας.
+new.password.label = Εισάγετε το νέο σας κωδικό πρόσβασης
+new.password.confirm = Επιβεβαιώστε το νέο σας κωδικό πρόσβασης
+new.password.acceptButton = Ενημέρωση κωδικού πρόσβασης
+new.password.status.incorrect = Λάθος κωδικός πρόσβασης, παρακαλώ δοκιμάστε ξανά.
+
+new.recoverykey.title = Ενημέρωση κλειδιού ανάκτησης
+new.recoverykey.introText = Αλλάξατε το κλειδί ανάκτησής σας από άλλη συσκευή, παρακαλώ εισάγετε το ενημερωμένο κλειδί ανάκτησης.
+new.recoverykey.acceptButton = Ενημέρωση κλειδιού ανάκτησης
+new.recoverykey.status.incorrect = Λάθος κλειδί ανάκτησης, παρακαλώ δοκιμάστε ξανά.
diff --git a/l10n-el/suite/chrome/common/sync/syncKey.dtd b/l10n-el/suite/chrome/common/sync/syncKey.dtd
new file mode 100644
index 0000000000..4995582a8b
--- /dev/null
+++ b/l10n-el/suite/chrome/common/sync/syncKey.dtd
@@ -0,0 +1,18 @@
+<!-- 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 syncKey.page.title "Το κλειδί &syncBrand.fullName.label; σας">
+<!ENTITY syncKey.page.description "Αυτό το κλειδί χρησιμοποιείται για την αποκρυπτογράφηση των δεδομένων σας στον λογαριασμό &syncBrand.fullName.label;. Θα πρέπει να εισάγετε το κλειδί κάθε φορά που ρυθμίζετε το &syncBrand.fullName.label; σε έναν νέο υπολογιστή ή συσκευή.">
+<!ENTITY syncKey.keepItSecret.heading "Κρατήστε το μυστικό">
+<!ENTITY syncKey.keepItSecret.description "Ο λογαριασμός &syncBrand.fullName.label; σας είναι κρυπτογραφημένος για την προστασία του απορρήτου σας. Χωρίς αυτό το κλειδί, θα χρειαστούν χρόνια για να αποκωδικοποιήσει κάποιος τρίτος τα προσωπικά σας δεδομένα. Μόνο εσείς έχετε στην κατοχή σας το κλειδί. Επομένως, μόνο εσείς μπορείτε να έχετε πρόσβαση στα δεδομένα σας στο &syncBrand.fullName.label;.">
+<!ENTITY syncKey.keepItSafe.heading "Φυλάξτε το">
+<!ENTITY syncKey.keepItSafe1.description "Μην χάσετε αυτό το κλειδί.">
+<!ENTITY syncKey.keepItSafe2.description "Δεν διατηρούμε αντίγραφο του κλειδιού σας (αλλιώς δεν θα ήταν μυστικό!), επομένως ">
+<!ENTITY syncKey.keepItSafe3.description "δεν μπορούμε να σας βοηθήσουμε να το ανακτήσετε">
+<!ENTITY syncKey.keepItSafe4.description " αν χαθεί. Θα χρειαστείτε αυτό το κλειδί κάθε φορά που συνδέετε έναν νέο υπολογιστή ή συσκευή στο &syncBrand.fullName.label;.">
+<!ENTITY syncKey.findOutMore1.label "Μάθετε περισσότερα σχετικά με το &syncBrand.fullName.label; και το απόρρητό σας στο ">
+<!ENTITY syncKey.findOutMore2.label ".">
+<!ENTITY syncKey.footer1.label "Οι όροι υπηρεσίας του &syncBrand.fullName.label; είναι διαθέσιμοι στο ">
+<!ENTITY syncKey.footer2.label ". Η πολιτική απορρήτου είναι διαθέσιμη στο ">
+<!ENTITY syncKey.footer3.label ".">
diff --git a/l10n-el/suite/chrome/common/sync/syncQuota.dtd b/l10n-el/suite/chrome/common/sync/syncQuota.dtd
new file mode 100644
index 0000000000..87755fc658
--- /dev/null
+++ b/l10n-el/suite/chrome/common/sync/syncQuota.dtd
@@ -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/. -->
+
+<!ENTITY quota.dialogTitle.label "Όριο διακομιστή">
+<!ENTITY quota.retrievingInfo.label "Ανάκτηση πληροφοριών ορίων…">
+<!ENTITY quota.typeColumn.label "Τύπος">
+<!ENTITY quota.sizeColumn.label "Μέγεθος">
diff --git a/l10n-el/suite/chrome/common/sync/syncQuota.properties b/l10n-el/suite/chrome/common/sync/syncQuota.properties
new file mode 100644
index 0000000000..4c55191e5b
--- /dev/null
+++ b/l10n-el/suite/chrome/common/sync/syncQuota.properties
@@ -0,0 +1,42 @@
+# 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/.
+
+collection.addons.label = Πρόσθετα
+collection.bookmarks.label = Σελιδοδείκτες
+collection.history.label = Ιστορικό
+collection.passwords.label = Κωδικοί πρόσβασης
+collection.prefs.label = Προτιμήσεις
+collection.tabs.label = Καρτέλες
+
+# LOCALIZATION NOTE (quota.usageNoQuota.label): %1$S and %2$S are numeric value
+# and unit (as defined in the download manager) of the amount of space occupied
+# on the server
+quota.usageNoQuota.label = Αυτή τη στιγμή χρησιμοποιείτε %1$S %2$S.
+# LOCALIZATION NOTE (quota.usagePercentage.label):
+# %1$S is the percentage of space used,
+# %2$S and %3$S numeric value and unit (as defined in the download manager)
+# of the amount of space used,
+# %3$S and %4$S numeric value and unit (as defined in the download manager)
+# of the total space available.
+quota.usagePercentage.label = Χρησιμοποιείτε το %1$S%% (%2$S %3$S) του επιτρεπτών %4$S %5$S.
+quota.usageError.label = Αδυναμία λήψης πληροφοριών ορίων.
+quota.retrieving.label = Ανάκτηση…
+# LOCALIZATION NOTE (quota.sizeValueUnit.label): %1$S is the amount of space
+# occupied by the engine, %2$K the corresponding unit (e.g. kB) as defined in
+# the download manager.
+quota.sizeValueUnit.label = %1$S %2$S
+quota.remove.label = Αφαίρεση
+quota.treeCaption.label = Καταργήστε την επιλογή στοιχείων για να διακόψετε τον συγχρονισμό τους και να ελευθερώσετε χώρο στον διακομιστή.
+# LOCALIZATION NOTE (quota.removal.label): %S is a list of engines that will be
+# disabled and whose data will be removed once the user confirms.
+quota.removal.label = Το SeaMonkey Sync θα διαγράψει τα εξής δεδομένα: %S.
+# LOCALIZATION NOTE (quota.list.separator): This is the separator string used
+# for the list of engines (incl. spaces where appropriate)
+quota.list.separator = ,\u0020
+# LOCALIZATION NOTE (quota.freeup.label): %1$S and %2$S are numeric value
+# and unit (as defined in the download manager) of the amount of space freed
+# up by disabling the unchecked engines. If displayed this string is
+# concatenated directly to quota.removal.label and may need to start off with
+# whitespace.
+quota.freeup.label = \u0020Θα απελευθερωθούν %1$S %2$S.
diff --git a/l10n-el/suite/chrome/common/sync/syncSetup.dtd b/l10n-el/suite/chrome/common/sync/syncSetup.dtd
new file mode 100644
index 0000000000..4c2c59eaf7
--- /dev/null
+++ b/l10n-el/suite/chrome/common/sync/syncSetup.dtd
@@ -0,0 +1,116 @@
+<!-- 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 accountSetupTitle.label "Ρύθμιση του &syncBrand.fullName.label;">
+
+<!-- First page of the wizard -->
+
+<!ENTITY setup.pickSetupType.description "Καλώς ήλθατε! Αν δεν έχετε χρησιμοποιήσει ποτέ το &syncBrand.fullName.label;, θα χρειαστεί να δημιουργήσετε έναν νέο λογαριασμό.">
+<!ENTITY button.createNewAccount.label "Δημιουργία νέου λογαριασμού">
+<!ENTITY setup.haveAccount.label "Έχω ήδη λογαριασμό &syncBrand.fullName.label;.">
+<!ENTITY button.connect.label "Σύνδεση">
+
+<!ENTITY setup.choicePage.title.label "Έχετε χρησιμοποιήσει το &syncBrand.fullName.label; στο παρελθόν;">
+<!ENTITY setup.choicePage.new.label "Δεν έχω χρησιμοποιήσει το &syncBrand.shortName.label; στο παρελθόν">
+<!ENTITY setup.choicePage.existing.label "Χρησιμοποιώ ήδη το &syncBrand.shortName.label; σε άλλο υπολογιστή">
+
+<!-- New Account AND Existing Account -->
+<!ENTITY server.label "Διακομιστής">
+<!ENTITY server.accesskey "Δ">
+<!ENTITY serverType.main.label "Διακομιστής &syncBrand.fullName.label;">
+<!ENTITY serverType.custom2.label "Χρήση προσαρμοσμένου διακομιστή…">
+<!ENTITY signIn.account2.label "Λογαριασμός">
+<!ENTITY signIn.account2.accesskey "Λ">
+<!ENTITY signIn.password.label "Κωδικός πρόσβασης">
+<!ENTITY signIn.password.accesskey "Κ">
+<!ENTITY signIn.recoveryKey.label "Κλειδί ανάκτησης">
+<!ENTITY signIn.recoveryKey.accesskey "Κ">
+
+<!-- New Account Page 1: Basic Account Info -->
+<!ENTITY setup.newAccountDetailsPage.title.label "Λεπτομέρειες λογαριασμού">
+<!ENTITY setup.confirmPassword.label "Επιβεβαίωση κωδικού πρόσβασης">
+<!ENTITY setup.confirmPassword.accesskey "Ε">
+<!ENTITY setup.emailAddress.label "Διεύθυνση email">
+<!ENTITY setup.emailAddress.accesskey "e">
+<!-- LOCALIZATION NOTE: tosAgree1, tosLink, tosAgree2, ppLink, tosAgree3 are
+ joined with implicit white space, so spaces in the strings aren't necessary -->
+<!ENTITY setup.tosAgree1.label "Συμφωνώ με τους">
+<!ENTITY setup.tosAgree1.accesskey "μ">
+<!ENTITY setup.tosLink.label "Όρους υπηρεσίας">
+<!ENTITY setup.tosAgree2.label "και την">
+<!ENTITY setup.ppLink.label "Πολιτική απορρήτου">
+<!ENTITY setup.tosAgree3.label "">
+<!ENTITY setup.tosAgree2.accesskey "">
+
+<!-- New Account Page 2: Recovery Key -->
+<!ENTITY setup.newRecoveryKeyPage.title.label "Το &brandShortName; νοιάζεται για το απόρρητό σας">
+<!ENTITY setup.newRecoveryKeyPage.description.label "Για την εξασφάλιση του απορρήτου σας, όλα τα δεδομένα σας κρυπτογραφούνται πριν τη μεταφόρτωση. Δεν μεταφορτώνεται το κλειδί ανάκτησής σας, το οποίο είναι απαραίτητο για την αποκρυπτογράφηση των δεδομένων σας.">
+<!ENTITY recoveryKeyEntry.label "Το κλειδί ανάκτησής σας">
+<!ENTITY recoveryKeyEntry.accesskey "κ">
+<!ENTITY recoveryGenerateNewKey.label "Δημιουργία νέου κλειδιού">
+<!ENTITY recoveryKeyBackup.description "Το κλειδί ανάκτησής σας απαιτείται για την πρόσβαση στο &syncBrand.fullName.label; από άλλες συσκευές. Παρακαλώ δημιουργήστε ένα αντίγραφο ασφαλείας. Δεν μπορούμε να σας βοηθήσουμε να ανακτήσετε το κλειδί ανάκτησής σας.">
+
+<!ENTITY button.syncKeyBackup.print.label "Εκτύπωση…">
+<!ENTITY button.syncKeyBackup.print.accesskey "Ε">
+<!ENTITY button.syncKeyBackup.save.label "Αποθήκευση…">
+<!ENTITY button.syncKeyBackup.save.accesskey "Α">
+
+<!-- New Account Page 3: Captcha -->
+<!ENTITY setup.captchaPage2.title.label "Παρακαλώ επιβεβαιώστε ότι δεν είστε ρομπότ">
+
+<!-- Existing Account Page 1: Add Device (incl. Add a Device dialog strings) -->
+<!ENTITY addDevice.title.label "Προσθήκη συσκευής">
+<!ENTITY addDevice.showMeHow.label "Εμφάνιση οδηγιών.">
+<!ENTITY addDevice.dontHaveDevice.label "Δεν έχω τη συσκευή μαζί μου">
+<!ENTITY addDevice.setup.description.label "Για ενεργοποίηση, μεταβείτε στις Επιλογές/Προτιμήσεις του &syncBrand.shortName.label; στην άλλη σας συσκευή και επιλέξτε &#x0022;Προσθήκη συσκευής&#x0022;.">
+<!ENTITY addDevice.setup.enterCode.label "Έπειτα, εισάγετε αυτό τον κωδικό:">
+<!ENTITY addDevice.dialog.description.label "Για ενεργοποίηση της νέας σας συσκευής, μεταβείτε στις Επιλογές/Προτιμήσεις του &syncBrand.shortName.label; της και επιλέξτε &#x0022;Σύνδεση&#x0022;.">
+<!ENTITY addDevice.dialog.enterCode.label "Εισάγετε τον κωδικό που παρέχει η συσκευή:">
+<!ENTITY addDevice.dialog.tryAgain.label "Παρακαλούμε προσπαθήστε ξανά.">
+<!ENTITY addDevice.dialog.successful.label "Η συσκευή προστέθηκε με επιτυχία. Ο αρχικός συγχρονισμός μπορεί να διαρκέσει μερικά λεπτά και θα ολοκληρωθεί στο παρασκήνιο.">
+<!ENTITY addDevice.dialog.recoveryKey.label "Για να ενεργοποιήσετε τη συσκευή σας, θα πρέπει να εισάγετε το κλειδί ανάκτησης σας. Παρακαλώ εκτυπώστε ή αποθηκεύστε αυτό το κλειδί και έχετέ το μαζί σας.">
+<!ENTITY addDevice.dialog.connected.label "Η συσκευή συνδέθηκε">
+
+<!-- Existing Account Page 2: Manual Login -->
+<!ENTITY setup.signInPage.title.label "Σύνδεση">
+<!ENTITY existingRecoveryKey.description "Μπορείτε να λάβετε ένα αντίγραφο του κλειδιού ανάκτησης, μεταβαίνοντας στις Επιλογές/Προτιμήσεις του &syncBrand.shortName.label; στην άλλη σας συσκευή και επιλέγοντας &#x0022;Το κλειδί ανάκτησής μου&#x0022; στην ενότητα &#x0022;Διαχείριση λογαριασμού&#x0022;.">
+<!ENTITY verifying.label "Επαλήθευση…">
+<!ENTITY resetPassword.label "Επαναφορά κωδικού πρόσβασης">
+<!ENTITY resetSyncKey.label "Έχω χάσει την άλλη μου συσκευή.">
+
+<!-- Sync Options -->
+<!ENTITY setup.optionsPage.title "Επιλογές συγχρονισμού">
+<!ENTITY syncComputerName.label "Όνομα υπολογιστή:">
+<!ENTITY syncComputerName.accesskey "υ">
+
+<!ENTITY syncMy.label "Συγχρονισμός">
+<!ENTITY engine.addons.label "Πρόσθετα">
+<!ENTITY engine.addons.accesskey "Π">
+<!ENTITY engine.bookmarks.label "Σελιδοδείκτες">
+<!ENTITY engine.bookmarks.accesskey "Σ">
+<!ENTITY engine.tabs.label "Καρτέλες">
+<!ENTITY engine.tabs.accesskey "Κ">
+<!ENTITY engine.history.label "Ιστορικό">
+<!ENTITY engine.history.accesskey "ρ">
+<!ENTITY engine.passwords.label "Κωδικοί πρόσβασης">
+<!ENTITY engine.passwords.accesskey "Κ">
+<!ENTITY engine.prefs.label "Προτιμήσεις">
+<!ENTITY engine.prefs.accesskey "μ">
+
+<!ENTITY choice2.merge.main.label "Συγχώνευση δεδομένων υπολογιστή με τα δεδομένα του &syncBrand.shortName.label;">
+<!ENTITY choice2.merge.recommended.label "(προτείνεται)">
+<!ENTITY choice2.client.main.label "Αντικατάσταση όλων των δεδομένων υπολογιστή με τα δεδομένα του &syncBrand.shortName.label;">
+<!ENTITY choice2.server.main.label "Αντικατάσταση δεδομένων άλλων συσκευών με αυτού του υπολογιστή">
+
+<!-- Confirm Merge Options -->
+<!ENTITY setup.optionsConfirmPage.title "Επιβεβαίωση">
+<!ENTITY confirm.merge.label "Το &syncBrand.fullName.label; θα συγχωνεύσει τώρα όλα τα δεδομένα περιήγησης αυτής της συσκευής με τον λογαριασμό Sync σας.">
+<!ENTITY confirm.client2.label "Προειδοποίηση: Θα διαγραφούν τα εξής δεδομένα του &brandShortName; σε αυτό τον υπολογιστή:">
+<!ENTITY confirm.client.moreinfo.label "Το &brandShortName; θα αντιγράψει τα δεδομένα του &syncBrand.fullName.label; σας σε αυτό τον υπολογιστή.">
+<!ENTITY confirm.server2.label "Προειδοποίηση: Οι εξής συσκευές θα αντικατασταθούν με τα τοπικά σας δεδομένα:">
+
+<!-- New & Existing Account: Setup Complete -->
+<!ENTITY setup.successPage.title "Η ρύθμιση ολοκληρώθηκε">
+<!ENTITY changeOptions.label "Μπορείτε να αλλάξετε αυτή την προτίμηση από τις επιλογές συγχρονισμού παρακάτω.">
+<!ENTITY continueUsing.label "Μπορείτε να συνεχίσετε τη χρήση του &brandShortName;.">
diff --git a/l10n-el/suite/chrome/common/sync/syncSetup.properties b/l10n-el/suite/chrome/common/sync/syncSetup.properties
new file mode 100644
index 0000000000..d575092323
--- /dev/null
+++ b/l10n-el/suite/chrome/common/sync/syncSetup.properties
@@ -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/.
+
+button.syncOptions.label = Επιλογές συγχρονισμού
+button.syncOptionsDone.label = Τέλος
+button.syncOptionsCancel.label = Ακύρωση
+
+invalidEmail.label = Μη έγκυρη διεύθυνση email
+serverInvalid.label = Παρακαλώ εισάγετε ένα έγκυρο URL διακομιστή
+usernameNotAvailable.label = Χρησιμοποιείται ήδη
+
+verifying.label = Επαλήθευση…
+
+# LOCALIZATION NOTE (additionalClientCount.label):
+# Semi-colon list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of additional clients (was %S for a short while, use #1 instead, even if both work)
+additionalClientCount.label = και #1 ακόμα συσκευή;και #1 ακόμα συσκευές
+# LOCALIZATION NOTE (bookmarksCount.label):
+# Semi-colon list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of bookmarks (was %S for a short while, use #1 instead, even if both work)
+bookmarksCount.label = #1 σελιδοδείκτης;#1 σελιδοδείκτες
+# LOCALIZATION NOTE (historyDaysCount.label):
+# Semi-colon list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of days (was %S for a short while, use #1 instead, even if both work)
+historyDaysCount.label = #1 ημέρα ιστορικού;#1 ημέρες ιστορικού
+# LOCALIZATION NOTE (passwordsCount.label):
+# Semi-colon list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of passwords (was %S for a short while, use #1 instead, even if both work)
+passwordsCount.label = #1 κωδικός πρόσβασης;#1 κωδικοί πρόσβασης
+# LOCALIZATION NOTE (addonsCount.label):
+# #1 is the number of add-ons, see the link above for forms
+addonsCount.label = #1 πρόσθετο;#1 πρόσθετα
+
+save.recoverykey.title = Αποθήκευση κλειδιού ανάκτησης
+save.recoverykey.defaultfilename = Κλειδί ανάκτησης SeaMonkey.xhtml
+
+newAccount.action.label = Το SeaMonkey Sync έχει ρυθμιστεί για αυτόματο συγχρονισμό όλων των δεδομένων περιήγησής σας.
+newAccount.change.label = Μπορείτε να επιλέξτε τι θα συγχρονίζεται από τις παρακάτω επιλογές συγχρονισμού.
+resetClient.change.label = Το SeaMonkey Sync θα συγχωνεύσει όλα τα δεδομένα περιήγησης αυτού του υπολογιστή με τον λογαριασμό Sync σας.
+wipeClient.change.label = Το SeaMonkey Sync θα αντικαταστήσει όλα τα δεδομένα περιήγησης αυτού του υπολογιστή με τα δεδομένα στον λογαριασμό Sync σας.
+wipeRemote.change.label = Το SeaMonkey Sync θα αντικαταστήσει όλα τα δεδομένα περιήγησης στον λογαριασμό Sync σας με τα δεδομένα αυτού του υπολογιστή.
+existingAccount.change.label = Μπορείτε να αλλάξετε αυτή τη ρύθμιση από τις επιλογές συγχρονισμού παρακάτω.
+
+# Several other strings are used (via Weave.Status.login), but they come from
+# /services/sync
diff --git a/l10n-el/suite/chrome/common/tasksOverlay.dtd b/l10n-el/suite/chrome/common/tasksOverlay.dtd
new file mode 100644
index 0000000000..5993cacb03
--- /dev/null
+++ b/l10n-el/suite/chrome/common/tasksOverlay.dtd
@@ -0,0 +1,64 @@
+<!-- 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/. -->
+
+<!-- extracted from tasksOverlay.xul -->
+<!ENTITY minimizeWindowCmd.label "Ελαχιστοποίηση">
+<!ENTITY minimizeWindowCmd.key "M">
+<!ENTITY zoomWindowCmd.label "Ζουμ">
+<!ENTITY navigatorCmd.label "Πρόγραμμα περιήγησης">
+<!ENTITY navigatorCmd.accesskey "Π">
+<!ENTITY navigatorCmd.commandkey "1">
+
+<!-- LOCALIZATION NOTE (editorCmd.label): DONT_TRANSLATE -->
+<!ENTITY editorCmd.label "Σύνθεση">
+<!ENTITY editorCmd.accesskey "Σ">
+<!ENTITY editorCmd.commandkey "4">
+
+<!ENTITY errorConsoleCmd.label "Κονσόλα σφαλμάτων">
+<!ENTITY errorConsoleCmd.accesskey "Κ">
+<!ENTITY errorConsoleCmd.commandkey2 "j">
+
+<!ENTITY taskNavigator.tooltip "Πρόγραμμα περιήγησης">
+<!ENTITY taskComposer.tooltip "Σύνθεση">
+
+<!ENTITY webDevelopment.label "Προγραμματισμός ιστού">
+<!ENTITY webDevelopment.accesskey "ι">
+
+<!ENTITY windowMenu.label "Παράθυρο">
+<!ENTITY windowMenu.accesskey "Π">
+
+<!ENTITY tasksMenu.label "Εργαλεία">
+<!ENTITY tasksMenu.accesskey "γ">
+
+<!ENTITY datamanCmd.label "Διαχείριση δεδομένων">
+<!ENTITY datamanCmd.accesskey "Δ">
+
+<!ENTITY passwordManagerCmd.label "Διαχείριση κωδικών πρόσβασης">
+<!ENTITY passwordManagerCmd.accesskey "κ">
+
+<!ENTITY passwordDisplayCmd.label "Διαχείριση αποθηκευμένων κωδικών πρόσβασης">
+<!ENTITY passwordDisplayCmd.accesskey "θ">
+
+<!ENTITY passwordExpireCmd.label "Αποσύνδεση">
+<!ENTITY passwordExpireCmd.accesskey "σ">
+
+<!ENTITY downloadManagerCmd.label "Διαχείριση λήψεων">
+<!ENTITY downloadManagerCmd.accesskey "ψ">
+<!ENTITY downloadManagerCmd.commandkey "j">
+
+<!ENTITY addOnsManagerCmd.label "Διαχείριση προσθέτων">
+<!ENTITY addOnsManagerCmd.accesskey "π">
+<!ENTITY addOnsManagerCmd.commandkey "a">
+
+<!ENTITY switchProfileCmd.label "Εναλλαγή προφίλ…">
+<!ENTITY switchProfileCmd.accesskey "λ">
+
+<!ENTITY syncBrand.shortName.label "Sync">
+<!-- LOCALIZATION NOTE (syncSetup.accesskey, syncSyncNowItem.accesskey):
+ Only one of these will show at a time (based on setup state),
+ so reusing accesskey is ok. -->
+<!ENTITY syncSetup.label "Ρύθμιση Sync…">
+<!ENTITY syncSetup.accesskey "S">
+<!ENTITY syncSyncNowItem.label "Συγχρονισμός τώρα">
+<!ENTITY syncSyncNowItem.accesskey "Σ">
diff --git a/l10n-el/suite/chrome/common/typeaheadfind.properties b/l10n-el/suite/chrome/common/typeaheadfind.properties
new file mode 100644
index 0000000000..cfcd45b105
--- /dev/null
+++ b/l10n-el/suite/chrome/common/typeaheadfind.properties
@@ -0,0 +1,17 @@
+# 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/.
+
+openparen = (
+closeparen = )
+textfound = Βρέθηκε κείμενο: "
+textnotfound = Δεν βρέθηκε κείμενο: "
+linkfound = Βρέθηκε σύνδεσμος: "
+linknotfound = Δεν βρέθηκε σύνδεσμος: "
+closequote = "
+stopfind = Η εύρεση διακόπηκε.
+starttextfind = Εκκίνηση -- εύρεση κειμένου κατά την πληκτρολόγηση
+startlinkfind = Εκκίνηση -- εύρεση συνδέσμων κατά την πληκτρολόγηση
+repeated = επαναλαμβάνεται
+nextmatch = - επόμενο αποτέλεσμα
+prevmatch = - προηγούμενο αποτέλεσμα
diff --git a/l10n-el/suite/chrome/common/utilityOverlay.dtd b/l10n-el/suite/chrome/common/utilityOverlay.dtd
new file mode 100644
index 0000000000..fa494af1fe
--- /dev/null
+++ b/l10n-el/suite/chrome/common/utilityOverlay.dtd
@@ -0,0 +1,208 @@
+<!-- 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/. -->
+
+<!-- these things need to move into utilityOverlay.xul -->
+<!ENTITY offlineGoOfflineCmd.label "Εργασία εκτός σύνδεσης">
+<!ENTITY offlineGoOfflineCmd.accesskey "κ">
+
+<!-- LOCALIZATION NOTE : FILE This file contains the global menu items -->
+
+<!ENTITY fileMenu.label "Αρχείο">
+<!ENTITY fileMenu.accesskey "Α">
+<!ENTITY newMenu.label "Νέο">
+<!ENTITY newMenu.accesskey "Ν">
+<!ENTITY newBlankPageCmd.label "Σελίδα σύνθεσης">
+<!ENTITY newBlankPageCmd.accesskey "Σ">
+<!ENTITY newBlankPageCmd.key "n">
+<!ENTITY newPageFromTemplateCmd.label "Σελίδα από πρότυπο">
+<!ENTITY newPageFromTemplateCmd.accesskey "π">
+<!ENTITY newPageFromDraftCmd.label "Σελίδα από προσχέδιο">
+<!ENTITY newPageFromDraftCmd.accesskey "ρ">
+<!ENTITY newNavigatorCmd.label "Παράθυρο προγράμματος περιήγησης">
+<!ENTITY newNavigatorCmd.key "N">
+<!ENTITY newNavigatorCmd.accesskey "Π">
+<!ENTITY newPrivateWindowCmd.label "Ιδιωτικό παράθυρο">
+<!ENTITY newPrivateWindowCmd.key "B">
+<!ENTITY newPrivateWindowCmd.accesskey "π">
+<!ENTITY closeCmd.label "Κλείσιμο">
+<!ENTITY closeCmd.key "W">
+<!ENTITY closeCmd.accesskey "Κ">
+<!ENTITY printSetupCmd.label "Διαμόρφωση σελίδας…">
+<!ENTITY printSetupCmd.accesskey "μ">
+<!ENTITY printPreviewCmd.label "Προεπισκόπηση εκτύπωσης">
+<!ENTITY printPreviewCmd.accesskey "π">
+<!ENTITY printCmd.label "Εκτύπωση…">
+<!ENTITY printCmd.accesskey "Ε">
+<!ENTITY printCmd.key "P">
+
+<!-- LOCALIZATION NOTE (.modifiers): The following entites are for the
+ application menu. Never change the modifiers unless you are 100% sure that
+ they are different on your locale (should be very rare). -->
+<!ENTITY preferencesCmdMac.label "Προτιμήσεις…">
+<!ENTITY preferencesCmdMac.key ",">
+<!ENTITY preferencesCmdMac.modifiers "accel">
+<!ENTITY servicesMenu.label "Υπηρεσίες">
+<!ENTITY hideThisAppCmd.label "Απόκρυψη &brandShortName;">
+<!ENTITY hideThisAppCmd.key "H">
+<!ENTITY hideThisAppCmd.modifiers "accel">
+<!ENTITY hideOtherAppsCmd.label "Απόκρυψη άλλων">
+<!ENTITY hideOtherAppsCmd.key "H">
+<!ENTITY hideOtherAppsCmd.modifiers "accel,alt">
+<!ENTITY showAllAppsCmd.label "Εμφάνιση όλων">
+<!ENTITY openHelpCmdMac.label "Βοήθεια &brandShortName;">
+<!ENTITY openHelpCmdMac.accesskey "Β">
+<!ENTITY openHelpCmdMac.key "?">
+<!ENTITY openHelpCmdMac.modifiers "accel">
+
+<!ENTITY quitApplicationCmd.label "Έξοδος">
+<!ENTITY quitApplicationCmd.key "Q">
+<!ENTITY quitApplicationCmd.accesskey "ξ">
+<!ENTITY quitApplicationCmdMac.label "Κλείσιμο &brandShortName;">
+<!ENTITY quitApplicationCmdMac.accesskey "Κ">
+<!ENTITY quitApplicationCmdUnix.label "Έξοδος">
+<!ENTITY quitApplicationCmdUnix.accesskey "Έ">
+
+<!ENTITY editMenu.label "Επεξεργασία">
+<!ENTITY editMenu.accesskey "Ε">
+<!ENTITY undoCmd.label "Αναίρεση">
+<!ENTITY undoCmd.key "Z">
+<!ENTITY undoCmd.accesskey "Α">
+<!ENTITY redoCmd.label "Επανάληψη">
+<!ENTITY redoCmd.key "Y">
+<!ENTITY redoCmdMac.key "Z">
+<!ENTITY redoCmd.accesskey "Ε">
+<!ENTITY cutCmd.label "Αποκοπή">
+<!ENTITY cutCmd.key "X">
+<!ENTITY cutCmd.accesskey "κ">
+<!ENTITY copyCmd.label "Αντιγραφή">
+<!ENTITY copyCmd.key "C">
+<!ENTITY copyCmd.accesskey "Α">
+<!ENTITY pasteCmd.label "Επικόλληση">
+<!ENTITY pasteCmd.key "V">
+<!ENTITY pasteCmd.accesskey "κ">
+<!ENTITY pasteGoCmd.label "Επικόλληση &amp; μετάβαση">
+<!ENTITY pasteGoCmd.accesskey "μ">
+
+<!-- LOCALIZATION NOTE (pasteSearchCmd): "Search" is a verb, this is the
+ search bar equivalent to the url bar's "Paste & Go" -->
+<!ENTITY pasteSearchCmd.label "Επικόλληση &amp; αναζήτηση">
+<!ENTITY pasteSearchCmd.accesskey "ζ">
+<!ENTITY deleteCmd.label "Διαγραφή">
+<!ENTITY deleteCmd.accesskey "Δ">
+<!ENTITY selectAllCmd.label "Επιλογή όλων">
+<!ENTITY selectAllCmd.key "A">
+<!ENTITY selectAllCmd.accesskey "ό">
+<!ENTITY clearHistoryCmd.label "Απαλοιφή ιστορικού αναζήτησης">
+<!ENTITY clearHistoryCmd.accesskey "ι">
+<!ENTITY showSuggestionsCmd.label "Εμφάνιση προτάσεων">
+<!ENTITY showSuggestionsCmd.accesskey "Ε">
+<!ENTITY preferencesCmd.label "Προτιμήσεις…">
+<!ENTITY preferencesCmd.key "E">
+<!ENTITY preferencesCmd.accesskey "μ">
+<!ENTITY findBarCmd.key "F">
+<!-- LOCALIZATION NOTE (findBarCmd.accesskey): This accesskey should be within
+ findBarCmd.label found in editorOverlay.dtd, findCmd.label in messenger.dtd
+ and messengercompose.dtd and findOnCmd.label found in navigatorOverlay.dtd -->
+<!ENTITY findBarCmd.accesskey "Γ">
+<!ENTITY findCmd.key2 "VK_F19">
+<!ENTITY findReplaceCmd.key "H">
+<!ENTITY findReplaceCmdMac.key "F">
+<!ENTITY findReplaceCmd.accesskey "κ">
+<!ENTITY findAgainCmd.label "Εύρεση ξανά">
+<!ENTITY findAgainCmd.key "G">
+<!ENTITY findAgainCmd.accesskey "ξ">
+<!ENTITY findAgainCmd.key2 "VK_F3">
+<!ENTITY findPrevCmd.label "Εύρεση προηγουμένου">
+<!ENTITY findPrevCmd.key "G">
+<!ENTITY findPrevCmd.key2 "VK_F3">
+<!ENTITY findPrevCmd.accesskey "π">
+<!ENTITY findTypeTextCmd.label "Εύρεση κειμένου κατά την πληκτρολόγηση">
+<!ENTITY findTypeTextCmd.key "/">
+<!ENTITY findTypeTextCmd.accesskey "κ">
+<!ENTITY findTypeLinksCmd.label "Εύρεση συνδέσμων κατά την πληκτρολόγηση">
+<!ENTITY findTypeLinksCmd.key "'">
+<!ENTITY findTypeLinksCmd.accesskey "δ">
+
+<!ENTITY viewMenu.label "Προβολή">
+<!ENTITY viewMenu.accesskey "Π">
+<!ENTITY viewToolbarsMenu.label "Εμφάνιση/Απόκρυψη">
+<!ENTITY viewToolbarsMenu.accesskey "φ">
+<!ENTITY showTaskbarCmd.label "Γραμμή κατάστασης">
+<!ENTITY showTaskbarCmd.accesskey "Γ">
+
+<!ENTITY helpMenu.label "Βοήθεια">
+<!ENTITY helpMenu.accesskey "Β">
+<!-- LOCALIZATION NOTE some localizations of Windows use "?"
+ for the help button in the menubar. -->
+<!ENTITY helpMenuWin.label "Βοήθεια">
+<!ENTITY helpMenuWin.accesskey "Β">
+<!ENTITY openHelpCmd.label "Περιεχόμενα βοήθειας">
+<!ENTITY openHelpCmd.accesskey "β">
+<!ENTITY openHelpCmd.key "VK_F1">
+
+<!ENTITY helpForIEUsers.label "Για χρήστες του Internet Explorer">
+<!ENTITY helpForIEUsers.accesskey "I">
+<!ENTITY helpTroubleshootingInfo.label "Πληροφορίες επίλυσης προβλημάτων">
+<!ENTITY helpTroubleshootingInfo.accesskey "Π">
+<!ENTITY releaseCmd.label "Σημειώσεις έκδοσης">
+<!ENTITY releaseCmd.accesskey "Σ">
+<!ENTITY helpSafeMode.label "Επανεκκίνηση με ανενεργά πρόσθετα">
+<!ENTITY helpSafeMode.accesskey "Ε">
+<!ENTITY updateCmd.label "Έλεγχος για ενημερώσεις…">
+<!ENTITY updateCmd.accesskey "Έ">
+<!ENTITY aboutCmd.label "Σχετικά με το &brandShortName;">
+<!ENTITY aboutCmd.accesskey "Σ">
+<!ENTITY aboutCommPluginsCmd.label "Σχετικά με τα αρθρώματα">
+<!ENTITY aboutCommPluginsCmd.accesskey "α">
+
+<!ENTITY direct.label "Σε σύνδεση (Διακομιστής μεσολάβησης: Κανένας)">
+<!ENTITY direct.accesskey "Κ">
+<!ENTITY manual.label "Σε σύνδεση (Διακομιστής μεσολάβησης: Χειροκίνητα)">
+<!ENTITY manual.accesskey "Χ">
+<!ENTITY pac.label "Σε σύνδεση (Διακομιστής μεσολάβησης: Αυτόματο URL)">
+<!ENTITY pac.accesskey "Α">
+<!ENTITY wpad.label "Σε σύνδεση (Διακομιστής μεσολάβησης: Αυτόματη ανακάλυψη)">
+<!ENTITY wpad.accesskey "ψ">
+<!ENTITY system.label "Σε σύνδεση (Διακομιστής μεσολάβησης: Συστήματος)">
+<!ENTITY system.accesskey "Σ">
+
+<!ENTITY proxy.label "Ρύθμιση διακομιστή μεσολάβησης…">
+<!ENTITY proxy.accesskey "Ρ">
+
+<!ENTITY bidiSwitchTextDirectionItem.label "Αλλαγή κατεύθυνσης κειμένου">
+<!ENTITY bidiSwitchTextDirectionItem.accesskey "γ">
+<!ENTITY bidiSwitchTextDirectionItem.commandkey "X">
+
+<!ENTITY menubarCmd.label "Γραμμή μενού">
+<!ENTITY menubarCmd.accesskey "μ">
+
+<!ENTITY customizeToolbarContext.label "Προσαρμογή…">
+<!ENTITY customizeToolbarContext.accesskey "Π">
+
+<!ENTITY customizeToolbar.toolbarmode.label "Ρυθμίσεις για αυτήν τη γραμμή">
+<!ENTITY customizeToolbar.toolbarmode.accesskey "θ">
+<!ENTITY customizeToolbar.iconsAndText.label "Εικονίδια και κείμενο">
+<!ENTITY customizeToolbar.iconsAndText.accesskey "α">
+<!ENTITY customizeToolbar.icons.label "Εικονίδια">
+<!ENTITY customizeToolbar.icons.accesskey "ο">
+<!ENTITY customizeToolbar.text.label "Κείμενο">
+<!ENTITY customizeToolbar.text.accesskey "Κ">
+<!ENTITY customizeToolbar.useSmallIcons.label "Χρήση μικρών εικονιδίων">
+<!ENTITY customizeToolbar.useSmallIcons.accesskey "μ">
+<!ENTITY customizeToolbar.labelAlignEnd.label "Εμφάνιση κειμένου δίπλα στο εικονίδιο">
+<!ENTITY customizeToolbar.labelAlignEnd.accesskey "δ">
+<!ENTITY customizeToolbar.useDefault.label "Χρήση προεπιλεγμένων ρυθμίσεων">
+<!ENTITY customizeToolbar.useDefault.accesskey "Χ">
+
+<!-- Popup Blocked notification menu -->
+<!ENTITY allowPopups.accesskey "δ">
+<!ENTITY showPopupManager.label "Διαχείριση αναδυόμενων παραθύρων">
+<!ENTITY showPopupManager.accesskey "Δ">
+<!ENTITY dontShowMessage.label "Να μην εμφανίζεται αυτό το μήνυμα όταν γίνεται φραγή αναδυόμενων">
+<!ENTITY dontShowMessage.accesskey "Ν">
+
+<!ENTITY throbber.title "Κινούμενο εικονίδιο φόρτωσης">
+<!ENTITY throbber.tooltip2 "Μετάβαση στην αρχική σελίδα του &brandShortName;">
+
+<!ENTITY syncToolbarButton.label "Sync">
diff --git a/l10n-el/suite/chrome/common/utilityOverlay.properties b/l10n-el/suite/chrome/common/utilityOverlay.properties
new file mode 100644
index 0000000000..42527b93fb
--- /dev/null
+++ b/l10n-el/suite/chrome/common/utilityOverlay.properties
@@ -0,0 +1,35 @@
+# 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/.
+
+# Online/offline tooltips
+onlineTooltip0=Είστε σε σύνδεση (διακομιστής μεσολάβησης: κανένας). Κάντε κλικ στο εικονίδιο για αποσύνδεση.
+onlineTooltip1=Είστε εκτός σύνδεσης (διακομιστής μεσολάβησης: χειροκίνητος). Κάντε κλικ στο εικονίδιο για σύνδεση.
+onlineTooltip2=Είστε σε σύνδεση (διακομιστής μεσολάβησης: αυτόματο URL). Κάντε κλικ στο εικονίδιο για αποσύνδεση.
+onlineTooltip4=Είστε σε σύνδεση (διακομιστής μεσολάβησης: αυτόματη ανακάλυψη). Κάντε κλικ στο εικονίδιο για αποσύνδεση.
+onlineTooltip5=Είστε σε σύνδεση (διακομιστής μεσολάβησης: χρήση συστήματος). Κάντε κλικ στο εικονίδιο για αποσύνδεση.
+offlineTooltip=Είστε εκτός σύνδεσης. Κάντε κλικ στο εικονίδιο για να συνδεθείτε στο διαδίκτυο.
+
+# Popup menus
+popupMenuShow=Εμφάνιση %S
+popupAllow=Αποδοχή αναδυόμενων από %S
+
+# Check for Updates
+updatesItem_default=Έλεγχος για ενημερώσεις…
+updatesItem_defaultFallback=Έλεγχος για ενημερώσεις…
+updatesItem_defaultAccessKey=Έ
+updatesItem_downloading=Λήψη %S…
+updatesItem_downloadingFallback=Λήψη ενημέρωσης…
+updatesItem_downloadingAccessKey=Λ
+updatesItem_resume=Συνέχιση λήψης %S…
+updatesItem_resumeFallback=Συνέχιση λήψης ενημέρωσης…
+updatesItem_resumeAccessKey=λ
+updatesItem_pending=Εφαρμογή ληφθείσας ενημέρωσης τώρα…
+updatesItem_pendingFallback=Εφαρμογή ληφθείσας ενημέρωσης τώρα…
+updatesItem_pendingAccessKey=ε
+
+# safeModeRestart
+safeModeRestartPromptTitle=Επανεκκίνηση με ανενεργά πρόσθετα
+safeModeRestartPromptMessage=Θέλετε σίγουρα να απενεργοποιήσετε όλα τα πρόσθετα και να κάνετε επανεκκίνηση;
+safeModeRestartButton=Επανεκκίνηση
+safeModeRestartCheckbox=Επανεκκίνηση με ανενεργά πρόσθετα
diff --git a/l10n-el/suite/chrome/common/viewApplyThemeOverlay.dtd b/l10n-el/suite/chrome/common/viewApplyThemeOverlay.dtd
new file mode 100644
index 0000000000..4c15e0e7b9
--- /dev/null
+++ b/l10n-el/suite/chrome/common/viewApplyThemeOverlay.dtd
@@ -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/. -->
+
+<!ENTITY applyTheme.label "Εφαρμογή θέματος">
+<!ENTITY applyTheme.accesskey "Ε">
+<!ENTITY getMoreThemesCmd.label "Λήψη περισσότερων θεμάτων">
+<!ENTITY getMoreThemesCmd.accesskey "Λ">
+<!ENTITY getBackgroundsCmd.label "Λήψη φόντων">
+<!ENTITY getBackgroundsCmd.accesskey "φ">
diff --git a/l10n-el/suite/chrome/common/viewApplyThemeOverlay.properties b/l10n-el/suite/chrome/common/viewApplyThemeOverlay.properties
new file mode 100644
index 0000000000..fa8c788ee9
--- /dev/null
+++ b/l10n-el/suite/chrome/common/viewApplyThemeOverlay.properties
@@ -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/.
+
+switchskins=Οι αλλαγές θέματος θα τεθούν σε ισχύ όταν κάνετε επανεκκίνηση του %S.
+switchskinstitle=Εφαρμογή θέματος
+switchskinsnow=Επανεκκίνηση τώρα
+switchskinslater=Επανεκκίνηση αργότερα
diff --git a/l10n-el/suite/chrome/common/viewZoomOverlay.dtd b/l10n-el/suite/chrome/common/viewZoomOverlay.dtd
new file mode 100644
index 0000000000..fbfd3ae87c
--- /dev/null
+++ b/l10n-el/suite/chrome/common/viewZoomOverlay.dtd
@@ -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/. -->
+
+<!-- LOCALIZATION NOTE: do not use digits "0"-"9" as accesskeys -->
+<!ENTITY zoomEnlargeCmd.label "Μεγαλύτερο">
+<!ENTITY zoomEnlargeCmd.accesskey "Μ">
+<!ENTITY zoomEnlargeCmd.commandkey "+">
+<!ENTITY zoomEnlargeCmd.commandkey2 "="> <!-- + is above this key on many keyboards -->
+
+<!ENTITY zoomReduceCmd.label "Μικρότερο">
+<!ENTITY zoomReduceCmd.accesskey "κ">
+<!ENTITY zoomReduceCmd.commandkey "-">
+
+<!ENTITY zoomResetCmd.commandkey "0">
diff --git a/l10n-el/suite/chrome/common/viewZoomOverlay.properties b/l10n-el/suite/chrome/common/viewZoomOverlay.properties
new file mode 100644
index 0000000000..fcea9278d5
--- /dev/null
+++ b/l10n-el/suite/chrome/common/viewZoomOverlay.properties
@@ -0,0 +1,32 @@
+# 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/.
+
+# zoom submenu
+#
+# LOCALIZATION NOTE: don't translate %zoom% in any property
+# don't use digits "0"-"9" for accesskeys
+
+# LOCALIZATION NOTE (fullZoom,textZoom): are never available at the same time
+fullZoom.label=Ζουμ (%zoom% %)
+fullZoom.accesskey=Ζ
+textZoom.label=Ζουμ κειμένου (%zoom% %)
+textZoom.accesskey=Ζ
+
+# labels and accesskeys to emphasize the 100 % and 200 % entries
+zoom.100.label=100 % (Αρχικό μέγεθος)
+zoom.100.accesskey=γ
+zoom.200.label=200 % (Διπλάσιο μέγεθος)
+zoom.200.accesskey=Δ
+
+# labels and accesskeys to emphasize the minimum and maximum boundaries
+zoom.min.label=%zoom% % (Ελάχιστο)
+zoom.min.accesskey=λ
+zoom.max.label=%zoom% % (Μέγιστο)
+zoom.max.accesskey=σ
+
+# label pattern for remaining values, accesskeys are assigned dynamically
+zoom.value.label=%zoom% %
+
+zoom.other.label=Άλλο (%zoom% %) …
+zoom.other.accesskey=Ά
diff --git a/l10n-el/suite/chrome/editor/dialogs/EdAdvancedEdit.dtd b/l10n-el/suite/chrome/editor/dialogs/EdAdvancedEdit.dtd
new file mode 100644
index 0000000000..2ad524fd77
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EdAdvancedEdit.dtd
@@ -0,0 +1,18 @@
+<!-- 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 WindowTitle.label "Επεξεργασία σύνθετων ιδιοτήτων">
+<!ENTITY AttName.label "Όνομα: ">
+<!ENTITY AttValue.label "Τιμή: ">
+<!ENTITY PropertyName.label "Ιδιότητα:">
+<!ENTITY currentattributesfor.label "Τρέχουσες ιδιότητες για:">
+<!ENTITY tree.attributeHeader.label "Ιδιότητα">
+<!ENTITY tree.propertyHeader.label "Ιδιότητα">
+<!ENTITY tree.valueHeader.label "Τιμή">
+<!ENTITY tabHTML.label "Ιδιότητες HTML">
+<!ENTITY tabCSS.label "Ενσωματωμένο στυλ">
+<!ENTITY tabJSE.label "Γεγονότα JavaScript">
+
+<!ENTITY editAttribute.label "Κάντε κλικ σε ένα στοιχείο από τα παραπάνω για να επεξεργαστείτε την τιμή του">
+<!ENTITY removeAttribute.label "Αφαίρεση">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EdColorPicker.dtd b/l10n-el/suite/chrome/editor/dialogs/EdColorPicker.dtd
new file mode 100644
index 0000000000..674ecfdf46
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EdColorPicker.dtd
@@ -0,0 +1,22 @@
+<!-- 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 windowTitle.label "Χρώμα">
+<!ENTITY lastPickedColor.label "Τελευταίο επιλεγμένο χρώμα">
+<!ENTITY lastPickedColor.accessKey "λ">
+<!ENTITY chooseColor1.label "Επιλέξτε χρώμα:">
+<!ENTITY chooseColor2.label "Εισάγετε μια συμβολοσειρά χρώματος HTML">
+<!ENTITY chooseColor2.accessKey "H">
+<!ENTITY setColorExample.label "(π.χ.: &quot;#0000ff&quot; ή &quot;blue&quot;):">
+<!ENTITY default.label "Προεπιλογή">
+<!ENTITY default.accessKey "λ">
+<!ENTITY palette.label "Παλέτα:">
+<!ENTITY standardPalette.label "Κανονική">
+<!ENTITY webPalette.label "Όλα τα χρώματα web">
+<!ENTITY background.label "Φόντο για:">
+<!ENTITY background.accessKey "Φ">
+<!ENTITY table.label "Πίνακας">
+<!ENTITY table.accessKey "π">
+<!ENTITY cell.label "Κελί(α)">
+<!ENTITY cell.accessKey "Κ">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EdConvertToTable.dtd b/l10n-el/suite/chrome/editor/dialogs/EdConvertToTable.dtd
new file mode 100644
index 0000000000..08c5b4d5fe
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EdConvertToTable.dtd
@@ -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/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Μετατροπή σε πίνακα">
+<!ENTITY instructions1.label "O composer θα δημιουργεί μια νέα γραμμή πίνακα για κάθε παράγραφο στην επιλογή.">
+<!ENTITY instructions2.label "Επιλέξτε το χαρακτήρα που θα χωρίζει την επιλογή σε στήλες:">
+<!ENTITY commaRadio.label "Κόμμα">
+<!ENTITY spaceRadio.label "Διάστημα">
+<!ENTITY otherRadio.label "Άλλος χαρακτήρας:">
+<!ENTITY deleteCharCheck.label "Διαγραφή διαχωριστικού χαρακτήρα">
+<!ENTITY collapseSpaces.label "Παράβλεψη επιπλέον κενών">
+<!ENTITY collapseSpaces.tooltip "Μετατροπή συνεχόμενων κενών σε ένα διαχωριστικό">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EdDialogOverlay.dtd b/l10n-el/suite/chrome/editor/dialogs/EdDialogOverlay.dtd
new file mode 100644
index 0000000000..27c28fcb40
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EdDialogOverlay.dtd
@@ -0,0 +1,18 @@
+<!-- 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 AdvancedEditButton.label "Σύνθετη επεξεργασία…">
+<!ENTITY AdvancedEditButton.accessKey "π">
+<!ENTITY AdvancedEditButton.tooltip "Προσθήκη ή μετατροπή HTML attributes, style attributes, και JavaScript">
+<!ENTITY chooseFileButton.label "Επιλογή αρχείου...">
+<!ENTITY chooseFileButton.accessKey "χ">
+<!ENTITY chooseFileLinkButton.label "Επιλογή αρχείου...">
+<!ENTITY chooseFileLinkButton.accessKey "λ">
+<!ENTITY makeUrlRelative.label "Το URL είναι σχετικό με την τοποθεσία της σελίδας">
+<!ENTITY makeUrlRelative.accessKey "χ">
+<!ENTITY makeUrlRelative.tooltip "Αλλαγή μεταξύ σχετικού και απόλυτου URL. Πρέπει να αποθηκεύσετε πρώτα τη σελίδα για να γίνουν οι αλλαγές.">
+
+<!-- Shared by Link and Image dialogs -->
+<!ENTITY LinkURLEditField2.label "Εισάγετε μια ιστοσελίδα, ένα τοπικό αρχείο, ή επιλέξτε μια επώνυμη άγκυρα ή επικεφαλίδα από το μενού επιλογών του πεδίου:">
+<!ENTITY LinkURLEditField2.accessKey "ι">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EdNamedAnchorProperties.dtd b/l10n-el/suite/chrome/editor/dialogs/EdNamedAnchorProperties.dtd
new file mode 100644
index 0000000000..bc784717b8
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EdNamedAnchorProperties.dtd
@@ -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/. -->
+
+<!ENTITY windowTitle.label "Ιδιότητες επώνυμης άγκυρας">
+<!ENTITY anchorNameEditField.label "Όνομα άγκυρας:">
+<!ENTITY anchorNameEditField.accessKey "μ">
+<!ENTITY nameInput.tooltip "Καταχωρίστε ένα μοναδικό όνομα για αυτόν το named anchor (προορισμό)">
+
+
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditConflict.dtd b/l10n-el/suite/chrome/editor/dialogs/EditConflict.dtd
new file mode 100644
index 0000000000..21b73f866b
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditConflict.dtd
@@ -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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Επιλογή επεξεργασίας αλλαγών">
+<!ENTITY conflictWarning.label "Η σελίδα έχει τροποποιηθεί από κάποιο άλλο πρόγραμμα, αλλά υπάρχουν και μη αποθηκευμένες αλλαγές που έγιναν με τον Composer">
+<!ENTITY conflictResolve.label "Επιλέξτε ποια έκδοση θέλετε να κρατήσετε: ">
+<!ENTITY keepCurrentPageButton.label "Διατήρηση των αλλαγών που πραγματοποιήθηκαν">
+<!ENTITY useOtherPageButton.label "Αντικατάσταση τρέχουσας σελίδας με άλλες αλλαγές">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorButtonProperties.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorButtonProperties.dtd
new file mode 100644
index 0000000000..0806fd8718
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorButtonProperties.dtd
@@ -0,0 +1,27 @@
+<!-- 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 windowTitle.label "Ιδιότητες κουμπιού">
+
+<!ENTITY Settings.label "Ρυθμίσεις">
+
+<!ENTITY ButtonType.label "Τύπος">
+<!ENTITY ButtonType.accesskey "Τ">
+<!ENTITY submit.value "Υποβολή">
+<!ENTITY reset.value "Επαναφορά">
+<!ENTITY button.value "Κουμπί">
+
+<!ENTITY ButtonName.label "Όνομα:">
+<!ENTITY ButtonName.accesskey "ν">
+<!ENTITY ButtonValue.label "Τιμή:">
+<!ENTITY ButtonValue.accesskey "μ">
+<!ENTITY tabIndex.label "Ευρετήριο καρτέλας:">
+<!ENTITY tabIndex.accesskey "λ">
+<!ENTITY ButtonDisabled.label "Απενεργοποιημένο">
+<!ENTITY ButtonDisabled.accesskey "ν">
+<!ENTITY AccessKey.label "Πλήκτρο συντόμευσης:">
+<!ENTITY AccessKey.accesskey "σ">
+
+<!ENTITY RemoveButton.label "Απομάκρυνση κουμπιού">
+<!ENTITY RemoveButton.accesskey "π">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorColorProperties.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorColorProperties.dtd
new file mode 100644
index 0000000000..7e16fb7423
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorColorProperties.dtd
@@ -0,0 +1,29 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Χρώματα και φόντο σελίδας">
+<!ENTITY pageColors.label "Χρώματα σελίδας">
+<!ENTITY defaultColorsRadio.label "Προεπιλεγμένα χρώματα">
+<!ENTITY defaultColorsRadio.accessKey "γ">
+<!ENTITY defaultColorsRadio.tooltip "Χρήση των ρυθμίσεων χρώματος από το περιηγητή του αναγνώστη μόνο">
+<!ENTITY customColorsRadio.label "Χρήση προσαρμοσμένων χρωμάτων:">
+<!ENTITY customColorsRadio.accessKey "π">
+<!ENTITY customColorsRadio.tooltip "Αυτές οι ρυθμίσεις χρωμάτων υποκαθιστούν τις ρυθμίσεις του περιηγητή">
+
+<!ENTITY normalText.label "Κανονικό κείμενο">
+<!ENTITY normalText.accessKey "ν">
+<!ENTITY linkText.label "Κείμενο διασύνδεσης">
+<!ENTITY linkText.accessKey "δ">
+<!ENTITY activeLinkText.label "Χρώμα ενεργής διασύνδεσης">
+<!ENTITY activeLinkText.accessKey "ε">
+<!ENTITY visitedLinkText.label "Χρώμα αναγνωσμένης διασύνδεσης">
+<!ENTITY visitedLinkText.accessKey "σ">
+<!ENTITY background.label "Φόντο:">
+<!ENTITY background.accessKey "Φ">
+<!ENTITY colon.character ":">
+<!ENTITY backgroundImage.label "Εικόνα φόντου:">
+<!ENTITY backgroundImage.accessKey "κ">
+<!ENTITY backgroundImage.tooltip "Χρήση αρχείου εικόνας ως φόντο για τη σελίδα">
+<!ENTITY backgroundImage.shortenedDataURI "Σύντομα δεδομένα URI (η αντιγραφή θα τοποθετήσει το πλήρες URI στο πρόχειρο)">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorFieldSetProperties.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorFieldSetProperties.dtd
new file mode 100644
index 0000000000..05e538fd2d
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorFieldSetProperties.dtd
@@ -0,0 +1,20 @@
+<!-- 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 windowTitle.label "Ιδιότητες ορισμού πεδίου">
+
+<!ENTITY Legend.label "Λεζάντα">
+<!ENTITY Legend.accesskey "ζ">
+
+<!ENTITY EditLegendText.label "Επεξεργασία λεζάντας:">
+<!ENTITY EditLegendText.accesskey "ξ">
+<!ENTITY LegendAlign.label "Στοίχιση λεζάντας:">
+<!ENTITY LegendAlign.accesskey "τ">
+<!ENTITY AlignDefault.label "Προεπιλογή">
+<!ENTITY AlignLeft.label "Αριστερά">
+<!ENTITY AlignCenter.label "Μέσο">
+<!ENTITY AlignRight.label "Δεξιά">
+
+<!ENTITY RemoveFieldSet.label "Απομάκρυνση ορισμού πεδίου">
+<!ENTITY RemoveFieldSet.accesskey "ρ">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorFormProperties.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorFormProperties.dtd
new file mode 100644
index 0000000000..dab07c89e2
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorFormProperties.dtd
@@ -0,0 +1,21 @@
+<!-- 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 windowTitle.label "Ιδιότητες φόρμας">
+
+<!ENTITY Settings.label "Ρυθμίσεις">
+
+<!ENTITY FormName.label "Όνομα φόρμας:">
+<!ENTITY FormName.accesskey "ν">
+<!ENTITY FormAction.label "URL ενέργειας:">
+<!ENTITY FormAction.accesskey "Ε">
+<!ENTITY FormMethod.label "Μέθοδος:">
+<!ENTITY FormMethod.accesskey "θ">
+<!ENTITY FormEncType.label "Κωδικοποίηση:">
+<!ENTITY FormEncType.accesskey "ω">
+<!ENTITY FormTarget.label "Πλαίσιο στόχου:">
+<!ENTITY FormTarget.accesskey "χ">
+
+<!ENTITY RemoveForm.label "Αφαίρεση φόρμας">
+<!ENTITY RemoveForm.accesskey "Α">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorHLineProperties.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorHLineProperties.dtd
new file mode 100644
index 0000000000..cf655093a9
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorHLineProperties.dtd
@@ -0,0 +1,27 @@
+<!-- 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/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Ιδιότητες οριζόντιας γραμμής">
+
+<!ENTITY dimensionsBox.label "Διαστάσεις">
+<!ENTITY heightEditField.label "Ύψος:">
+<!ENTITY heightEditField.accessKey "ψ">
+<!ENTITY widthEditField.label "Πλάτος:">
+<!ENTITY widthEditField.accessKey "Π">
+<!ENTITY pixelsPopup.value "εικονοστοιχεία">
+<!ENTITY alignmentBox.label "Στοίχιση">
+<!ENTITY leftRadio.label "Αριστερά">
+<!ENTITY leftRadio.accessKey "ρ">
+<!ENTITY centerRadio.label "Κέντρο">
+<!ENTITY centerRadio.accessKey "Κ">
+<!ENTITY rightRadio.label "Δεξιά">
+<!ENTITY rightRadio.accessKey "Δ">
+
+<!ENTITY threeDShading.label "Σκίαση 3-D">
+<!ENTITY threeDShading.accessKey "Σ">
+<!ENTITY saveSettings.label "Χρήση ως προεπιλεγμένων">
+<!ENTITY saveSettings.accessKey "ρ">
+<!ENTITY saveSettings.tooltip "Αποθήκευση αυτών των ρυθμίσεων προς χρήση όταν γίνεται εισαγωγή νέων οριζοντίων γραμμών">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorImageProperties.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorImageProperties.dtd
new file mode 100644
index 0000000000..5058ed2c67
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorImageProperties.dtd
@@ -0,0 +1,79 @@
+<!-- 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/. -->
+
+<!-- These strings are for use specifically in the editor's image and form image dialogs. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Ιδιότητες εικόνας">
+
+<!ENTITY pixelsPopup.value "εικονοστοιχεία">
+
+<!-- These are in the Location tab panel -->
+<!ENTITY locationEditField.label "Τοποθεσία εικόνας:">
+<!ENTITY locationEditField.accessKey "Τ">
+<!ENTITY locationEditField.tooltip "Πληκτρολογήστε το όνομα αρχείου ή την τοποθεσία εικόνας">
+<!ENTITY locationEditField.shortenedDataURI "Τα δεδομένα URI περικόπηκαν (η αντιγραφή θα αντιγράψει το πλήρες URI στο Πρόχειρο)">
+<!ENTITY title.label "Υπόδειξη:">
+<!ENTITY title.accessKey "Υ">
+<!ENTITY title.tooltip "Η html ιδιότητα 'title' που προβάλλεται ως υπόδειξη">
+<!ENTITY altText.label "Εναλλακτικό κείμενο:">
+<!ENTITY altText.accessKey "Ε">
+<!ENTITY altTextEditField.tooltip "Πληκτρολογήστε το κείμενο που θα εμφανίζεται αντί της εικόνας">
+<!ENTITY noAltText.label "Να μην γίνεται χρήση εναλλακτικού κειμένου">
+<!ENTITY noAltText.accessKey "Ν">
+
+<!ENTITY previewBox.label "Προεπισκόπηση εικόνας">
+
+<!-- These controls are in the Dimensions tab panel -->
+<!-- actualSize.label should be same as actualSizeRadio.label + ":" -->
+<!ENTITY actualSize.label "Πραγματικό μέγεθος:">
+<!ENTITY actualSizeRadio.label "Πραγματικό μέγεθος">
+<!ENTITY actualSizeRadio.accessKey "Π">
+<!ENTITY actualSizeRadio.tooltip "Επιστροφή στο πραγματικό μέγεθος της εικόνας.">
+<!ENTITY customSizeRadio.label "Προσαρμοσμένο μέγεθος">
+<!ENTITY customSizeRadio.accessKey "Μ">
+<!ENTITY customSizeRadio.tooltip "Αλλαγή του μεγέθους της εικόνας όπως φαίνεται στη σελίδα">
+<!ENTITY heightEditField.label "Ύψος:">
+<!ENTITY heightEditField.accessKey "ψ">
+<!ENTITY widthEditField.label "Πλάτος:">
+<!ENTITY widthEditField.accessKey "λ">
+<!ENTITY constrainCheckbox.label "Περιορισμός">
+<!ENTITY constrainCheckbox.accessKey "ε">
+<!ENTITY constrainCheckbox.tooltip "Διατήρηση των αναλογιών της εικόνας">
+
+<!-- These controls are in the Image Map box of the expanded area -->
+<!ENTITY imagemapBox.label "Χάρτης εικόνας">
+<!ENTITY removeImageMapButton.label "Αφαίρεση">
+<!ENTITY removeImageMapButton.accessKey "φ">
+
+<!-- These are the options for image alignment -->
+<!ENTITY alignment.label "Στοίχιση κειμένου ως προς την εικόνα">
+<!ENTITY bottomPopup.value "Στο κάτω μέρος">
+<!ENTITY topPopup.value "Στο πάνω μέρος">
+<!ENTITY centerPopup.value "Στο μέσο">
+<!ENTITY wrapRightPopup.value "Αναδίπλωση στα δεξιά">
+<!ENTITY wrapLeftPopup.value "Αναδίπλωση στα αριστερά">
+
+<!-- These controls are in the Spacing Box -->
+<!ENTITY spacingBox.label "Διάταξη">
+<!ENTITY leftRightEditField.label "Αριστερά και δεξιά:">
+<!ENTITY leftRightEditField.accessKey "ρ">
+<!ENTITY topBottomEditField.label "Πάνω και κάτω:">
+<!ENTITY topBottomEditField.accessKey "ω">
+<!ENTITY borderEditField.label "Μαύρο πλαίσιο:">
+<!ENTITY borderEditField.accessKey "Μ">
+
+<!-- These controls are in the Link Box -->
+<!ENTITY showImageLinkBorder.label "Εμφάνιση πλαισίου γύρω από εικόνα με σύνδεσμο">
+<!ENTITY showImageLinkBorder.accessKey "β">
+<!ENTITY LinkAdvancedEditButton.label "Προηγμένη επεξεργασία συνδέσμου…">
+<!ENTITY LinkAdvancedEditButton.accessKey "δ">
+<!ENTITY LinkAdvancedEditButton.tooltip "Προσθήκη ή τροποποίηση ιδιοτήτων HTML, στυλ και JavaScript">
+
+<!-- These tabs are currently used in the image input dialog -->
+<!ENTITY imageInputTab.label "Φόρμα">
+<!ENTITY imageLocationTab.label "Τοποθεσία">
+<!ENTITY imageDimensionsTab.label "Διαστάσεις">
+<!ENTITY imageAppearanceTab.label "Εμφάνιση">
+<!ENTITY imageLinkTab.label "Σύνδεσμος">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorInputProperties.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorInputProperties.dtd
new file mode 100644
index 0000000000..46f4eff3a1
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorInputProperties.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/. -->
+
+<!ENTITY windowTitle.label "Ιδιότητες πεδίου φόρμας">
+<!ENTITY windowTitleImage.label "Ιδιότητες εικόνας φόρμας">
+
+<!ENTITY InputType.label "Τύπος πεδίου">
+<!ENTITY InputType.accesskey "Τ">
+<!ENTITY text.value "Κείμενο">
+<!ENTITY password.value "Κωδικός">
+<!ENTITY checkbox.value "Πλαίσιο ελέγχου">
+<!ENTITY radio.value "Κουμπί Radio">
+<!ENTITY submit.value "Κουμπί υποβολής">
+<!ENTITY reset.value "Κουμπί επαναφοράς">
+<!ENTITY file.value "Αρχείο">
+<!ENTITY hidden.value "Κρυφό">
+<!ENTITY image.value "Εικόνα">
+<!ENTITY button.value "Κουμπί">
+
+<!ENTITY InputSettings.label "Ρυθμίσεις Πεδίου">
+<!ENTITY InputName.label "Όνομα πεδίου:">
+<!ENTITY InputName.accesskey "δ">
+<!ENTITY GroupName.label "Όνομα ομάδας:">
+<!ENTITY GroupName.accesskey "ν">
+<!ENTITY InputValue.label "Τιμή πεδίου:">
+<!ENTITY InputValue.accesskey "μ">
+<!ENTITY InitialValue.label "Αρχική τιμή:">
+<!ENTITY InitialValue.accesskey "χ">
+<!ENTITY InputChecked.label "Αρχικά τσεκαρισμένο">
+<!ENTITY InputChecked.accesskey "τ">
+<!ENTITY InputSelected.label "Αρχικά επιλεγμένο">
+<!ENTITY InputSelected.accesskey "χ">
+<!ENTITY InputReadOnly.label "Μόνο για ανάγνωση">
+<!ENTITY InputReadOnly.accesskey "ν">
+<!ENTITY InputDisabled.label "Απενεργοποιημένο">
+<!ENTITY InputDisabled.accesskey "π">
+<!ENTITY tabIndex.label "Ευρετήριο καρτέλας:">
+<!ENTITY tabIndex.accesskey "σ">
+<!ENTITY TextSize.label "Μέγεθος πεδίου:">
+<!ENTITY TextSize.accesskey "θ">
+<!ENTITY TextLength.label "Μέγιστο μήκος:">
+<!ENTITY TextLength.accesskey "Μ">
+<!ENTITY AccessKey.label "Πλήκτρο συντόμευσης:">
+<!ENTITY AccessKey.accesskey "Κ">
+<!ENTITY Accept.label "Αποδεκτοί τύποι:">
+<!ENTITY Accept.accesskey "Α">
+
+<!ENTITY ImageProperties.label "Ιδιότητες εικόνας…">
+<!ENTITY ImageProperties.accesskey "τ">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorInsertChars.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorInsertChars.dtd
new file mode 100644
index 0000000000..94f3ed3f81
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorInsertChars.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/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Εισαγωγή χαρακτήρα">
+<!ENTITY category.label "Κατηγορία">
+<!ENTITY letter.label "Γράμμα:">
+<!ENTITY letter.accessKey "Γ">
+<!ENTITY character.label "Χαρακτήρας:">
+<!ENTITY character.accessKey "Χ">
+<!ENTITY accentUpper.label "Κεφαλαία με τόνο">
+<!ENTITY accentLower.label "Πεζά με τόνο">
+<!ENTITY otherUpper.label "Άλλα κεφαλαία">
+<!ENTITY otherLower.label "Άλλα πεζά">
+<!ENTITY commonSymbols.label "Κοινά σύμβολα">
+<!ENTITY insertButton.label "Εισαγωγή">
+<!ENTITY closeButton.label "Κλείσιμο">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorInsertMath.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorInsertMath.dtd
new file mode 100644
index 0000000000..4ef81cb468
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorInsertMath.dtd
@@ -0,0 +1,21 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Εισαγωγή μαθηματικού τύπου">
+
+<!ENTITY sourceEditField.label "Εισάγετε πηγαίο κώδικα LaTeX:">
+
+<!ENTITY options.label "Επιλογές">
+<!ENTITY optionInline.label "Λειτουργία εντός γραμμής">
+<!ENTITY optionInline.accesskey "ν">
+<!ENTITY optionDisplay.label "Λειτουργία προβολής">
+<!ENTITY optionDisplay.accesskey "Λ">
+<!ENTITY optionLTR.label "Κατεύθυνση αριστερά προς δεξιά">
+<!ENTITY optionLTR.accesskey "α">
+<!ENTITY optionRTL.label "Κατεύθυνση δεξιά προς αριστερά">
+<!ENTITY optionRTL.accesskey "δ">
+
+<!ENTITY insertButton.label "Εισαγωγή">
+<!ENTITY insertButton.accesskey "Ε">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorInsertSource.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorInsertSource.dtd
new file mode 100644
index 0000000000..567a53756a
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorInsertSource.dtd
@@ -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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Εισαγωγή HTML">
+<!ENTITY sourceEditField.label "Εισάγετε ετικέτες HTML και κείμενο:">
+<!ENTITY example.label "Παράδειγμα: ">
+<!-- LOCALIZATION NOTE (exampleOpenTag.label): DONT_TRANSLATE: they are text for HTML tagnames: "<i>" and "</i>" -->
+<!ENTITY exampleOpenTag.label "&lt;i&gt;">
+<!-- LOCALIZATION NOTE (exampleCloseTag.label): DONT_TRANSLATE: they are text for HTML tagnames: "<i>" and "</i>" -->
+<!ENTITY exampleCloseTag.label "&lt;/i&gt;">
+<!ENTITY exampleText.label "Γεια σου, κόσμε!">
+<!ENTITY insertButton.label "Εισαγωγή">
+<!ENTITY insertButton.accesskey "σ">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorInsertTOC.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorInsertTOC.dtd
new file mode 100644
index 0000000000..b59764e457
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorInsertTOC.dtd
@@ -0,0 +1,16 @@
+<!-- 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 Window.title "Πίνακας περιεχομένων">
+<!ENTITY buildToc.label "Δημιουργία πίνακα περιεχομένων από:">
+<!ENTITY tag.label "Ετικέτα:">
+<!ENTITY class.label "Κλάση:">
+<!ENTITY header1.label "Επίπεδο 1">
+<!ENTITY header2.label "Επίπεδο 2">
+<!ENTITY header3.label "Επίπεδο 3">
+<!ENTITY header4.label "Επίπεδο 4">
+<!ENTITY header5.label "Επίπεδο 5">
+<!ENTITY header6.label "Επίπεδο 6">
+<!ENTITY makeReadOnly.label "Δημιουργία πίνακα περιεχομένων μόνο για ανάγνωση">
+<!ENTITY orderedList.label "Αρίθμηση όλων των καταχωρήσεων στον πίνακα περιεχομένων">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorInsertTable.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorInsertTable.dtd
new file mode 100644
index 0000000000..2a1654e83f
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorInsertTable.dtd
@@ -0,0 +1,18 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Εισαγωγή πίνακα">
+
+<!ENTITY size.label "Μέγεθος">
+<!ENTITY numRowsEditField.label "Σειρές:">
+<!ENTITY numRowsEditField.accessKey "ρ">
+<!ENTITY numColumnsEditField.label "Στήλες:">
+<!ENTITY numColumnsEditField.accessKey "τ">
+<!ENTITY widthEditField.label "Πλάτος:">
+<!ENTITY widthEditField.accessKey "Π">
+<!ENTITY borderEditField.label "Πλαίσιο:">
+<!ENTITY borderEditField.accessKey "λ">
+<!ENTITY borderEditField.tooltip "Εισάγετε ένα μέγεθος για το πλαίσιο πίνακα, ή εισάγετε μηδέν (0) για χωρίς πλαίσιο">
+<!ENTITY pixels.label "εικονοστοιχεία">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorLabelProperties.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorLabelProperties.dtd
new file mode 100644
index 0000000000..da9c77951d
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorLabelProperties.dtd
@@ -0,0 +1,18 @@
+<!-- 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 windowTitle.label "Ιδιότητες ετικέτας">
+
+<!ENTITY Settings.label "Ρυθμίσεις">
+<!ENTITY Settings.accesskey "θ">
+
+<!ENTITY EditLabelText.label "Επεξεργασία κειμένου:">
+<!ENTITY EditLabelText.accesskey "ξ">
+<!ENTITY LabelFor.label "Για έλεγχο:">
+<!ENTITY LabelFor.accesskey "λ">
+<!ENTITY AccessKey.label "Πλήκτρο συντόμευσης:">
+<!ENTITY AccessKey.accesskey "Π">
+
+<!ENTITY RemoveLabel.label "Αφαίρεση ετικέτας">
+<!ENTITY RemoveLabel.accesskey "ρ">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorLinkProperties.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorLinkProperties.dtd
new file mode 100644
index 0000000000..70efd874c2
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorLinkProperties.dtd
@@ -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/. -->
+
+<!ENTITY windowTitle.label "Ιδιότητες συνδέσμου">
+<!ENTITY LinkURLBox.label "Τοποθεσία συνδέσμου">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorListProperties.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorListProperties.dtd
new file mode 100644
index 0000000000..b9bf9b6f4c
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorListProperties.dtd
@@ -0,0 +1,20 @@
+<!-- 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/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Ιδιότητες λίστας">
+
+<!ENTITY ListType.label "Είδος λίστας">
+<!ENTITY bulletStyle.label "Μορφή κουκίδων:">
+<!ENTITY startingNumber.label "Έναρξη σε:">
+<!ENTITY startingNumber.accessKey "ξ">
+<!ENTITY none.value "Κανένα">
+<!ENTITY bulletList.value "Μη αριθμημένη λίστα (με κουκίδες)">
+<!ENTITY numberList.value "Αριθμημένη λίστα">
+<!ENTITY definitionList.value "Λίστα ορισμών">
+<!ENTITY changeEntireListRadio.label "Αλλαγή όλης της λίστας">
+<!ENTITY changeEntireListRadio.accessKey "λ">
+<!ENTITY changeSelectedRadio.label "Αλλαγή μόνο των επιλεγμένων αντικειμένων">
+<!ENTITY changeSelectedRadio.accessKey "π">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorPageProperties.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorPageProperties.dtd
new file mode 100644
index 0000000000..f412b950df
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorPageProperties.dtd
@@ -0,0 +1,17 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Ιδιότητες σελίδας">
+<!ENTITY location.label "Τοποθεσία:">
+<!ENTITY lastModified.label "Τελευταία τροποποίηση:">
+<!ENTITY titleInput.label "Τίτλος:">
+<!ENTITY titleInput.accessKey "Τ">
+<!ENTITY authorInput.label "Συγγραφέας:">
+<!ENTITY authorInput.accessKey "Σ">
+<!ENTITY descriptionInput.label "Περιγραφή:">
+<!ENTITY descriptionInput.accessKey "Π">
+<!ENTITY locationNewPage.label "[Νέα σελίδα, μη αποθηκευμένη ακόμα]">
+<!ENTITY EditHEADSource1.label "Προχωρημένοι χρήστες:">
+<!ENTITY EditHEADSource2.label "Για να επεξεργαστείτε τα άλλα περιεχόμενα της περιοχής &lt;head&gt;, χρησιμοποιείστε την επιλογή Kώδικας από το μενού προβολής ή επεξεργασίας. ">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorPersonalDictionary.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorPersonalDictionary.dtd
new file mode 100644
index 0000000000..c6fc0c9b4a
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorPersonalDictionary.dtd
@@ -0,0 +1,20 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Προσωπικό λεξικό">
+
+<!ENTITY wordEditField.label "Νέα λέξη:">
+<!ENTITY wordEditField.accessKey "Ν">
+<!ENTITY AddButton.label "Προσθήκη">
+<!ENTITY AddButton.accessKey "θ">
+<!ENTITY DictionaryList.label "Λέξεις στο λεξικό:">
+<!ENTITY DictionaryList.accessKey "Λ">
+<!ENTITY ReplaceButton.label "Αντικατάσταση">
+<!ENTITY ReplaceButton.accessKey "κ">
+<!ENTITY RemoveButton.label "Αφαίρεση">
+<!ENTITY RemoveButton.accessKey "φ">
+
+<!ENTITY CloseButton.label "Κλείσιμο">
+<!ENTITY CloseButton.accessKey "Κ">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorPublish.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorPublish.dtd
new file mode 100644
index 0000000000..1944189f11
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorPublish.dtd
@@ -0,0 +1,65 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Δημοσίευση σελίδας">
+<!ENTITY windowTitleSettings.label "Ρυθμίσεις δημοσίευσης">
+<!ENTITY publishTab.label "Δημοσίευση">
+<!ENTITY settingsTab.label "Ρυθμίσεις">
+<!ENTITY publishButton.label "Δημοσίευση">
+
+<!-- Publish Tab Panel -->
+<!ENTITY siteList.label "Όνομα ιστοσελίδας:">
+<!ENTITY siteList.accesskey "σ">
+<!ENTITY siteList.tooltip "Επιλέξτε τη σελίδα που θέλετε να δημοσιεύσετε">
+<!ENTITY newSiteButton.label "Νέα διεύθυνση">
+<!ENTITY newSiteButton.accesskey "Ν">
+<!ENTITY docDirList.label "Υποκατάλογος σελίδας για την ιστοσελίδα:">
+<!ENTITY docDirList.accesskey "π">
+<!ENTITY docDirList.tooltip "Επιλέξτε ή εισάγετε το όνομα για τον απομακρυσμένο υποκατάλογο για αυτή τη σελίδα">
+<!ENTITY publishImgCheckbox.label "Να περιέχονται εικόνες και άλλα αρχεία">
+<!ENTITY publishImgCheckbox.accesskey "χ">
+<!ENTITY publishImgCheckbox.tooltip "Δημοσίευση εικόνων ή άλλων αρχείων που συνδέονται με τη σελίδα.">
+<!ENTITY sameLocationRadio.label "Να χρησιμοποιηθεί η ίδια τοποθεσία σαν σελίδα">
+<!ENTITY sameLocationRadio.accesskey "θ">
+<!ENTITY sameLocationRadio.tooltip "Δημοσίευση αρχείων στην ίδια τοποθεσία με τη σελίδα.">
+<!ENTITY useSubdirRadio.label "Χρήση του υποκαταλόγου αυτής της ιστοδιεύθυνσης:">
+<!ENTITY useSubdirRadio.accesskey "κ">
+<!ENTITY useSubdirRadio.tooltip "Δημοσίευση αρχείων στον επιλεγμένο απομακρυσμένο υποκατάλογο">
+<!ENTITY otherDirList.tooltip "Επιλέξτε ή εισάγετε το όνομα για τον απομακρυσμένο υποκατάλογο όπου θα δημοσιευθούν τα αρχεία">
+<!ENTITY pageTitle.label "Όνομα σελίδας:">
+<!ENTITY pageTitle.accesskey "μ">
+<!ENTITY pageTitle.tooltip "Εισάγετε ένα τίτλο για να ονομάσετε τη σελίδα στο παράθυρο και τους σελιδοδείκτες.">
+<!ENTITY pageTitleExample.label "π.χ.: &quot;Η σελίδα μου&quot;">
+<!ENTITY filename.label "Όνομα αρχείου:">
+<!ENTITY filename.accesskey "χ">
+<!ENTITY filename.tooltip "Εισάγετε ένα όνομα για αυτό το αρχείο συμπεριλαμβάνοντας και το '.html' για την ιστοσελίδα">
+<!ENTITY filenameExample.label "π.χ.: &quot;ησελίδαμου.html&quot;">
+<!ENTITY setDefaultButton.label "Ορισμός ως προεπιλογή">
+<!ENTITY setDefaultButton.accesskey "π">
+<!ENTITY removeButton.label "Αφαίρεση ιστοσελίδας">
+<!ENTITY removeButton.accesskey "Α">
+
+<!-- Settings Tab Panel -->
+<!ENTITY publishSites.label "Ιστοδιευθύνσεις δημοσίευσης">
+<!ENTITY serverInfo.label "Πληροφορίες διακομιστή ">
+<!ENTITY loginInfo.label "Πληροφορίες διαπίστευσης">
+<!ENTITY siteName.label "Όνομα ιστοσελίδας:">
+<!ENTITY siteName.accesskey "ε">
+<!ENTITY siteName.tooltip "Ένα όνομα που γνωστοποιεί την προς δημοσίευση σελίδα (e.g.: 'MySite')">
+<!ENTITY siteUrl.label "Τοποθεσία δημοσίευσης (π.χ.: 'ftp://ftp.myisp.com/myusername'):">
+<!ENTITY siteUrl.accesskey "δ">
+<!ENTITY siteUrl.tooltip "Η διεύθυνση FTP:// ή HTTP:// που παρέχεται από τον ISP σας ή την υπηρεσία φιλοξενίας σελίδων.">
+<!ENTITY browseUrl.label "Διεύθυνση HTTP της αρχικής σας σελίδας (π.χ.: 'http://www.myisp.com/myusername'):">
+<!ENTITY browseUrl.accesskey "χ">
+<!ENTITY browseUrl.tooltip "Η διεύθυνση HTTP:// του αρχικού καταλόγου (μην συμπεριλάβετε το όνομα αρχείου)">
+<!ENTITY username.label "Όνομα χρήστη:">
+<!ENTITY username.accesskey "μ">
+<!ENTITY username.tooltip "Το όνομα χρήστη με το οποίο συνδέεστε με τον ISP σας ή την υπηρεσία φιλοξενίας ιστοσελίδων">
+<!ENTITY password.label "Κωδικός πρόσβασης:">
+<!ENTITY password.accesskey "δ">
+<!ENTITY password.tooltip "Τον κωδικό που σχετίζεται με το όνομα χρήστη">
+<!ENTITY savePassword.label "Αποθήκευση κωδικού πρόσβασης">
+<!ENTITY savePassword.accesskey "σ">
+<!ENTITY savePassword.tooltip "Επιλέξτε αυτό για την ασφαλή αποθήκευση του κωδικού σας με τη χρήση της διαχείρισης κωδικών.">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorPublishProgress.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorPublishProgress.dtd
new file mode 100644
index 0000000000..8581ddb538
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorPublishProgress.dtd
@@ -0,0 +1,16 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY siteUrl.label " URL ιστοσελίδας:">
+<!ENTITY docSubdir.label "Υποκατάλογος σελίδας...">
+<!ENTITY otherSubdir.label "Υποκατάλογος εικόνας...">
+
+<!ENTITY status.label "Δημοσίευση…">
+<!ENTITY fileList.label "Κατάσταση δημοσίευσης">
+<!ENTITY succeeded.label "Επιτυχία">
+<!ENTITY failed.label "Αποτυχία">
+
+<!ENTITY keepOpen "Διατήρηση του παρόντος παραθύρου μετά την ολοκλήρωση της δημοσίευσης.">
+<!ENTITY closeButton.label "Κλείσιμο">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorReplace.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorReplace.dtd
new file mode 100644
index 0000000000..8bcbe125ba
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorReplace.dtd
@@ -0,0 +1,27 @@
+<!-- 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/. -->
+
+<!-- extracted from EdReplace.xul -->
+
+<!ENTITY replaceDialog.title "Εύρεση και αντικατάσταση">
+<!ENTITY findField.label "Εύρεση του κειμένου:">
+<!ENTITY findField.accesskey "κ">
+<!ENTITY replaceField.label "Αντικατάσταση με:">
+<!ENTITY replaceField.accesskey "κ">
+<!ENTITY caseSensitiveCheckbox.label "Ταίριασμα πεζών/κεφαλαίων">
+<!ENTITY caseSensitiveCheckbox.accesskey "Τ">
+<!ENTITY wrapCheckbox.label "Αναδίπλωση γύρω">
+<!ENTITY wrapCheckbox.accesskey "δ">
+<!ENTITY backwardsCheckbox.label "Αναζήτηση προς τα πίσω">
+<!ENTITY backwardsCheckbox.accesskey "π">
+<!ENTITY findNextButton.label "Εύρεση επόμενου">
+<!ENTITY findNextButton.accesskey "π">
+<!ENTITY replaceButton.label "Αντικατάσταση">
+<!ENTITY replaceButton.accesskey "Α">
+<!ENTITY replaceAndFindButton.label "Εύρεση και αντικατάσταση">
+<!ENTITY replaceAndFindButton.accesskey "κ">
+<!ENTITY replaceAllButton.label "Αντικατάσταση όλων">
+<!ENTITY replaceAllButton.accesskey "λ">
+<!ENTITY closeButton.label "Κλείσιμο">
+<!ENTITY closeButton.accesskey "Κ">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorSaveAsCharset.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorSaveAsCharset.dtd
new file mode 100644
index 0000000000..49fd5a2f2c
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorSaveAsCharset.dtd
@@ -0,0 +1,17 @@
+<!-- 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/. -->
+
+<!-- These strings are generic to all or most of the editor's dialogs. -->
+
+<!-- This button is for the progressive disclosure of additional editing functionality -->
+
+<!-- These strings are for use specifically in the editor's link dialog. -->
+<!ENTITY windowTitle2.label "Αποθήκευση και αλλαγή κωδικοποίησης κειμένου">
+<!ENTITY documentTitleTitle.label "Τίτλος σελίδας">
+<!ENTITY documentCharsetTitle2.label "Κωδικοποίηση κειμένου">
+<!ENTITY documentCharsetDesc2.label "Επιλέξτε την κωδικοποίηση κειμένου που θέλετε να αποθηκεύσετε το έγγραφο:">
+<!ENTITY documentExportToText.label "Εξαγωγή σε κείμενο">
+
+
+
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorSelectProperties.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorSelectProperties.dtd
new file mode 100644
index 0000000000..e809564c27
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorSelectProperties.dtd
@@ -0,0 +1,48 @@
+<!-- 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 windowTitle.label "Ιδιότητες λίστας επιλογής">
+
+<!ENTITY Select.label "Λίστα επιλογής">
+<!ENTITY SelectName.label "Όνομα λίστας:">
+<!ENTITY SelectName.accesskey "λ">
+<!ENTITY SelectSize.label "Ύψος:">
+<!ENTITY SelectSize.accesskey "ψ">
+<!ENTITY SelectMultiple.label "Πολλαπλή επιλογή">
+<!ENTITY SelectMultiple.accesskey "λ">
+<!ENTITY SelectDisabled.label "Απενεργοποιημένο">
+<!ENTITY SelectDisabled.accesskey "ε">
+<!ENTITY SelectTabIndex.label "Ευρετήριο καρτέλας:">
+<!ENTITY SelectTabIndex.accesskey "σ">
+
+<!ENTITY OptGroup.label "Ομάδα επιλογής">
+<!ENTITY OptGroupLabel.label "Ετικέτα:">
+<!ENTITY OptGroupLabel.accesskey "τ">
+<!ENTITY OptGroupDisabled.label "Απενεργοποιημένο">
+<!ENTITY OptGroupDisabled.accesskey "π">
+
+<!ENTITY Option.label "Επιλογή">
+<!ENTITY OptionText.label "Κείμενο:">
+<!ENTITY OptionText.accesskey "μ">
+<!ENTITY OptionValue.label "Τιμή:">
+<!ENTITY OptionValue.accesskey "Τ">
+<!ENTITY OptionSelected.label "Αρχικά επιλεγμένο">
+<!ENTITY OptionSelected.accesskey "λ">
+<!ENTITY OptionDisabled.label "Απενεργοποιημένο">
+<!ENTITY OptionDisabled.accesskey "γ">
+
+<!ENTITY TextHeader.label "Κείμενο">
+<!ENTITY ValueHeader.label "Τιμή">
+<!ENTITY SelectedHeader.label "Επιλεγμένο">
+
+<!ENTITY AddOption.label "Προσθήκη επιλογής">
+<!ENTITY AddOption.accesskey "θ">
+<!ENTITY AddOptGroup.label "Προσθήκη ομάδας">
+<!ENTITY AddOptGroup.accesskey "μ">
+<!ENTITY RemoveElement.label "Αφαίρεση">
+<!ENTITY RemoveElement.accesskey "ρ">
+<!ENTITY MoveElementUp.label "Μετακίνηση πάνω">
+<!ENTITY MoveElementUp.accesskey "π">
+<!ENTITY MoveElementDown.label "Μετακίνηση κάτω">
+<!ENTITY MoveElementDown.accesskey "κ">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorSnapToGrid.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorSnapToGrid.dtd
new file mode 100644
index 0000000000..9856b5b062
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorSnapToGrid.dtd
@@ -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/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Προσκόλληση στο πλέγμα">
+
+<!ENTITY enableSnapToGrid.label "ενεργοποίηση προσκόλλησης στο πλέγμα">
+<!ENTITY enableSnapToGrid.accessKey "ε">
+
+<!ENTITY sizeEditField.label "Μέγεθος:">
+<!ENTITY sizeEditField.accessKey "θ">
+
+<!ENTITY pixelsLabel.value "εικονοστοιχεία">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorSpellCheck.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorSpellCheck.dtd
new file mode 100644
index 0000000000..b9b059218e
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorSpellCheck.dtd
@@ -0,0 +1,38 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Ορθογραφικός έλεγχος">
+
+<!ENTITY misspelledWord.label "Λάθος λέξη:">
+<!ENTITY wordEditField.label "Αντικατάσταση με:">
+<!ENTITY wordEditField.accessKey "κ">
+<!ENTITY checkwordButton.label "Έλεγχος λέξης">
+<!ENTITY checkwordButton.accessKey "γ">
+<!ENTITY suggestions.label "Προτάσεις:">
+<!ENTITY suggestions.accessKey "τ">
+<!ENTITY ignoreButton.label "Παράβλεψη">
+<!ENTITY ignoreButton.accessKey "β">
+<!ENTITY ignoreAllButton.label "Παράβλεψη όλων">
+<!ENTITY ignoreAllButton.accessKey "λ">
+<!ENTITY replaceButton.label "Αντικατάσταση">
+<!ENTITY replaceButton.accessKey "Α">
+<!ENTITY replaceAllButton.label "Αντικατάσταση όλων">
+<!ENTITY replaceAllButton.accessKey "ω">
+<!ENTITY stopButton.label "Διακοπή">
+<!ENTITY stopButton.accessKey "κ">
+<!ENTITY userDictionary.label "Προσωπικό λεξικό:">
+<!ENTITY moreDictionaries.label "Λήψη περισσότερων λεξικών…">
+<!ENTITY addToUserDictionaryButton.label "Προσθήκη λέξης">
+<!ENTITY addToUserDictionaryButton.accessKey "θ">
+<!ENTITY editUserDictionaryButton.label "Επεξεργασία…">
+<!ENTITY editUserDictionaryButton.accessKey "ξ">
+<!ENTITY recheckButton2.label "Επανέλεγχος κειμένου">
+<!ENTITY recheckButton2.accessKey "Ν">
+<!ENTITY closeButton.label "Κλείσιμο">
+<!ENTITY closeButton.accessKey "μ">
+<!ENTITY sendButton.label "Αποστολή">
+<!ENTITY sendButton.accessKey "σ">
+<!ENTITY languagePopup.label "Γλώσσα:">
+<!ENTITY languagePopup.accessKey "Γ">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorTableProperties.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorTableProperties.dtd
new file mode 100644
index 0000000000..ca66b86092
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorTableProperties.dtd
@@ -0,0 +1,75 @@
+<!-- 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 tableWindow.title "Ιδιότητες πίνακα">
+<!ENTITY applyButton.label "Εφαρμογή">
+<!ENTITY applyButton.accesskey "Ε">
+<!ENTITY closeButton.label "Κλείσιμο">
+<!ENTITY tableTab.label "Πίνακας">
+<!ENTITY cellTab.label "Κελιά">
+<!ENTITY tableRows.label "Σειρές:">
+<!ENTITY tableRows.accessKey "Σ">
+<!ENTITY tableColumns.label "Στήλες:">
+<!ENTITY tableColumns.accessKey "Τ">
+<!ENTITY tableHeight.label "Ύψος:">
+<!ENTITY tableHeight.accessKey "Ψ">
+<!ENTITY tableWidth.label "Πλάτος:">
+<!ENTITY tableWidth.accessKey "Π">
+<!ENTITY tableBorderSpacing.label "Πλαίσια και διάστιχο">
+<!ENTITY tableBorderWidth.label "Πλαίσιο:">
+<!ENTITY tableBorderWidth.accessKey "Λ">
+<!ENTITY tableSpacing.label "Διάστιχο:">
+<!ENTITY tableSpacing.accessKey "Δ">
+<!ENTITY tablePadding.label "Γέμισμα:">
+<!ENTITY tablePadding.accessKey "Γ">
+<!ENTITY tablePxBetwCells.label "εικονοστοιχεία μεταξύ κελιών">
+<!ENTITY tablePxBetwBrdrCellContent.label "εικονοστοιχεία μεταξύ πλαισίου κελιών και περιεχομένου">
+<!ENTITY tableAlignment.label "Στοίχιση πίνακα:">
+<!ENTITY tableAlignment.accessKey "Χ">
+<!ENTITY tableCaption.label "Λεζάντα:">
+<!ENTITY tableCaption.accessKey "Ζ">
+<!ENTITY tableCaptionAbove.label "Πάνω από τον πίνακα">
+<!ENTITY tableCaptionBelow.label "Κάτω από τον πίνακα">
+<!ENTITY tableCaptionLeft.label "Αριστερά του πίνακα">
+<!ENTITY tableCaptionRight.label "Δεξιά του πίνακα">
+<!ENTITY tableCaptionNone.label "Κανένα">
+<!ENTITY tableInheritColor.label "(Εμφάνιση χρώματος σελίδας)">
+
+<!ENTITY cellSelection.label "Επιλογή">
+<!ENTITY cellSelectCell.label "Κελί">
+<!ENTITY cellSelectRow.label "Γραμμή">
+<!ENTITY cellSelectColumn.label "Στήλη">
+<!ENTITY cellSelectNext.label "Επόμενο">
+<!ENTITY cellSelectNext.accessKey "Ν">
+<!ENTITY cellSelectPrevious.label "Προηγούμενο">
+<!ENTITY cellSelectPrevious.accessKey "Μ">
+<!ENTITY applyBeforeChange.label "Οι τρέχουσες αλλαγές θα εφαρμοστούν πριν την αλλαγή επιλογής.">
+<!ENTITY cellContentAlignment.label "Στοίχιση περιεχομένου">
+<!ENTITY cellHorizontal.label "Οριζόντια:">
+<!ENTITY cellHorizontal.accessKey "Ο">
+<!ENTITY cellVertical.label "Κάθετη:">
+<!ENTITY cellVertical.accessKey "Θ">
+<!ENTITY cellStyle.label "Στυλ κελιού:">
+<!ENTITY cellStyle.accessKey "Υ">
+<!ENTITY cellNormal.label "Κανονικό">
+<!ENTITY cellHeader.label "Κεφαλίδα">
+<!ENTITY cellTextWrap.label "Αναδίπλωση κειμένου:">
+<!ENTITY cellTextWrap.accessKey "Δ">
+<!ENTITY cellWrap.label "Αναδίπλωση">
+<!ENTITY cellNoWrap.label "Χωρίς αναδίπλωση">
+<!ENTITY cellAlignTop.label "Πάνω">
+<!ENTITY cellAlignMiddle.label "Μέση">
+<!ENTITY cellAlignBottom.label "Κάτω">
+<!ENTITY cellAlignJustify.label "Στοίχιση">
+<!ENTITY cellInheritColor.label "(Να φαίνεται το χρώμα του πίνακα)">
+<!ENTITY cellUseCheckboxHelp.label "Xρήση κουμπιών επιλογής για να ρυθμίσετε ποιες ιδιότητες θα εφαρμοστούν σε όλα τα επιλεγμένα κελιά">
+
+<!-- Used in both Table and Cell panels -->
+<!ENTITY size.label "Μέγεθος">
+<!ENTITY pixels.label "εικονοστοιχεία">
+<!ENTITY backgroundColor.label "Χρώμα παρασκηνίου:">
+<!ENTITY backgroundColor.accessKey "Χ">
+<!ENTITY AlignLeft.label "Αριστερά">
+<!ENTITY AlignCenter.label "Κέντρο">
+<!ENTITY AlignRight.label "Δεξιά">
diff --git a/l10n-el/suite/chrome/editor/dialogs/EditorTextAreaProperties.dtd b/l10n-el/suite/chrome/editor/dialogs/EditorTextAreaProperties.dtd
new file mode 100644
index 0000000000..e049ecda57
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/dialogs/EditorTextAreaProperties.dtd
@@ -0,0 +1,33 @@
+<!-- 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 windowTitle.label "Ιδιότητες πεδίου κειμένου">
+
+<!ENTITY Settings.label "Ρυθμίσεις">
+
+<!ENTITY TextAreaName.label "Όνομα πεδίου:">
+<!ENTITY TextAreaName.accessKey "δ">
+<!ENTITY TextAreaRows.label "Γραμμές:">
+<!ENTITY TextAreaRows.accessKey "μ">
+<!ENTITY TextAreaCols.label "Στήλες:">
+<!ENTITY TextAreaCols.accessKey "τ">
+<!ENTITY TextAreaReadOnly.label "Μόνο για ανάγνωση">
+<!ENTITY TextAreaReadOnly.accessKey "ν">
+<!ENTITY TextAreaDisabled.label "Απενεργοποιημένο">
+<!ENTITY TextAreaDisabled.accessKey "π">
+<!ENTITY TextAreaTabIndex.label "Ευρετήριο καρτέλας:">
+<!ENTITY TextAreaTabIndex.accessKey "λ">
+<!ENTITY TextAreaAccessKey.label "Πλήκτρο συντόμευσης:">
+<!ENTITY TextAreaAccessKey.accessKey "β">
+<!ENTITY InitialText.label "Αρχικό κείμενο:">
+<!ENTITY InitialText.accessKey "χ">
+
+<!ENTITY TextAreaWrap.label "Κατάσταση αναδίπλωσης:">
+<!ENTITY TextAreaWrap.accessKey "δ">
+<!ENTITY WrapDefault.value "Προεπιλογή">
+<!ENTITY WrapOff.value "Ανενεργό">
+<!ENTITY WrapHard.value "Σκληρό">
+<!ENTITY WrapSoft.value "Μαλακό">
+<!ENTITY WrapPhysical.value "Φυσικό">
+<!ENTITY WrapVirtual.value "Εικονικό">
diff --git a/l10n-el/suite/chrome/editor/editingOverlay.dtd b/l10n-el/suite/chrome/editor/editingOverlay.dtd
new file mode 100644
index 0000000000..ed7c5f2964
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/editingOverlay.dtd
@@ -0,0 +1,60 @@
+<!-- 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/. -->
+
+<!-- File menu items -->
+<!ENTITY openFileCmd.label "Άνοιγμα αρχείου…">
+<!ENTITY openFileCmd.accesskey "Ά">
+<!ENTITY openFileCmd.key "O">
+<!ENTITY openRemoteCmd.label "Άνοιγμα διεύθυνσης ιστού…">
+<!ENTITY openRemoteCmd.accesskey "θ">
+<!ENTITY openRemoteCmd.key "L">
+<!ENTITY fileRecentMenu.label "Πρόσφατες σελίδες">
+<!ENTITY fileRecentMenu.accesskey "φ">
+<!ENTITY saveCmd.label "Αποθήκευση">
+<!ENTITY saveCmd.accesskey "σ">
+<!ENTITY saveAsCmd.label "Αποθήκευση ως…">
+<!ENTITY saveAsCmd.accesskey "ω">
+<!ENTITY saveAsChangeEncodingCmd2.label "Αποθήκευση και αλλαγή κωδικοποίησης κειμένου">
+<!ENTITY saveAsChangeEncodingCmd2.accesskey "λ">
+<!ENTITY publishCmd.label "Δημοσίευση">
+<!ENTITY publishCmd.accesskey "μ">
+<!ENTITY publishCmd.key "S">
+<!ENTITY publishAsCmd.label "Δημοσίευση ως…">
+<!ENTITY publishAsCmd.accesskey "ς">
+<!ENTITY fileRevert.label "Επαναφορά">
+<!ENTITY fileRevert.accesskey "φ">
+
+<!-- Edit menu items -->
+<!ENTITY publishSettings.label "Ρυθμίσεις ιστοσελίδας δημοσίευσης…">
+<!ENTITY publishSettings.accesskey "θ">
+
+<!-- Insert menu items -->
+<!ENTITY insertFormMenu.label "Φόρμα">
+<!ENTITY insertFormMenu.accesskey "Φ">
+<!ENTITY insertFormCmd.label "Ορισμός φόρμας…">
+<!ENTITY insertFormCmd.accesskey "Ο">
+<!ENTITY insertInputTagCmd.label "Πεδίο φόρμας…">
+<!ENTITY insertInputTagCmd.accesskey "ε">
+<!ENTITY insertInputImageCmd.label "Εικόνα φόρμας…">
+<!ENTITY insertInputImageCmd.accesskey "ι">
+<!ENTITY insertTextAreaCmd.label "Πεδίο κειμένου…">
+<!ENTITY insertTextAreaCmd.accesskey "κ">
+<!ENTITY insertSelectCmd.label "Λίστα επιλογής…">
+<!ENTITY insertSelectCmd.accesskey "Λ">
+<!ENTITY insertButtonCmd.label "Ορισμός κουμπιού…">
+<!ENTITY insertButtonCmd.accesskey "μ">
+<!ENTITY insertLabelCmd.label "Ορισμός ετικέτας">
+<!ENTITY insertLabelCmd.accesskey "τ">
+<!ENTITY insertFieldSetCmd.label "Ορισμός συνόλου πεδίων…">
+<!ENTITY insertFieldSetCmd.accesskey "σ">
+
+<!-- Toolbar buttons/items -->
+<!ENTITY newToolbarCmd.label "Νέα">
+<!ENTITY newToolbarCmd.tooltip "Δημιουργία νέας σελίδας σύνταξης">
+<!ENTITY openToolbarCmd.label "Άνοιγμα">
+<!ENTITY openToolbarCmd.tooltip "Άνοιγμα τοπικού αρχείου">
+<!ENTITY saveToolbarCmd.tooltip "Αποθήκευση αρχείου σε τοπική τοποθεσία">
+<!ENTITY publishToolbarCmd.tooltip "Μεταφόρτωση αρχείου σε απομακρυσμένη τοποθεσία">
+<!ENTITY printToolbarCmd.label "Εκτύπωση">
+<!ENTITY printToolbarCmd.tooltip "Εκτύπωση σελίδας">
diff --git a/l10n-el/suite/chrome/editor/editor.dtd b/l10n-el/suite/chrome/editor/editor.dtd
new file mode 100644
index 0000000000..0d3b255a55
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/editor.dtd
@@ -0,0 +1,67 @@
+<!-- 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/. -->
+
+<!-- Window title -->
+<!-- LOCALIZATION NOTE (editorWindow.titlemodifier): DONT_TRANSLATE -->
+<!ENTITY editorWindow.titlemodifier "Σύνθεση">
+<!ENTITY editorWindow.titlemodifiermenuseparator " - ">
+
+<!-- Menu items: the . means that the menu item isn't implemented yet -->
+
+<!-- Toolbar-only items -->
+<!ENTITY compositionToolbar.tooltip "Γραμμή εργαλείων σύνθεσης">
+<!ENTITY previewToolbarCmd.label "Περιήγηση">
+<!ENTITY previewToolbarCmd.tooltip "Φόρτωση σελίδας στο πρόγραμμα περιήγησης">
+
+<!-- File menu items -->
+<!ENTITY exportToTextCmd.label "Εξαγωγή σε κείμενο…">
+<!ENTITY exportToTextCmd.accesskey "μ">
+<!ENTITY previewCmd.label "Περιήγηση στη σελίδα">
+<!ENTITY previewCmd.accesskey "γ">
+<!ENTITY sendPageCmd.label "Αποστολή σελίδας…">
+<!ENTITY sendPageCmd.accesskey "τ">
+
+<!-- View menu items -->
+<!ENTITY compositionToolbarCmd.label "Γραμμή εργαλείων σύνταξης">
+<!ENTITY compositionToolbarCmd.accesskey "γ">
+<!ENTITY formattingToolbarCmd.label "Γραμμή εργαλείων μορφής">
+<!ENTITY formattingToolbarCmd.accesskey "μ">
+<!ENTITY editmodeToolbarCmd.label "Γραμμή εργαλείων λειτουργίας επεξεργασίας">
+<!ENTITY editmodeToolbarCmd.accesskey "Ε">
+
+<!-- Format menu items -->
+<!ENTITY formatMenu.label "Μορφή">
+<!ENTITY formatMenu.accesskey "φ">
+<!ENTITY grid.label "Πλέγμα τοποθέτησης">
+<!ENTITY grid.accesskey "τ">
+<!ENTITY pageProperties.label "Τίτλος και ιδιότητες σελίδας…">
+<!ENTITY pageProperties.accesskey "λ">
+
+<!-- Tools menu items -->
+<!ENTITY validateCmd.label "Επικύρωση HTML">
+<!ENTITY validateCmd.accesskey "ω">
+
+<!-- Display Mode toolbar and View menu items -->
+<!ENTITY NormalModeTab.label "Κανονική">
+<!ENTITY NormalMode.label "Κανονική λειτουργία επεξεργασίας">
+<!ENTITY NormalMode.accesskey "υ">
+<!ENTITY NormalMode.tooltip "Προβολή περιγραμμάτων πινάκων και αγκυρών">
+<!ENTITY AllTagsModeTab.label "Ετικέτες HTML">
+<!ENTITY AllTagsMode.label "Ετικέτες HTML">
+<!ENTITY AllTagsMode.accesskey "ι">
+<!ENTITY AllTagsMode.tooltip "Προβολή εικονιδίων για όλες τις ετικέτες HTML">
+<!-- LOCALIZATION NOTE: (HTMLSourceModeTab.dir, HTMLSourceModeTab.label)
+ Do NOT translate text for 'HTMLSourceModeTab.dir', use latin "ltr" if
+ you want the <html> image to left of the 'HTMLSourceModeTab.label' text,
+ or use latin "rtl" if you want this image to the right of text. You do
+ not need to include HTML in the label 'HTMLSourceModeTab.label' -->
+<!ENTITY HTMLSourceModeTab.dir "ltr">
+<!ENTITY HTMLSourceModeTab.label "Κώδικας">
+<!ENTITY HTMLSourceMode.label "Κώδικας HTML">
+<!ENTITY HTMLSourceMode.accesskey "δ">
+<!ENTITY HTMLSourceMode.tooltip "Επεξεργασία κώδικα HTML">
+<!ENTITY PreviewModeTab.label "Προεπισκόπηση">
+<!ENTITY PreviewMode.label "Προεπισκόπηση">
+<!ENTITY PreviewMode.accesskey "Π">
+<!ENTITY PreviewMode.tooltip "Προβολή ως WYSIWYG (όπως στο πρόγρ. περιήγησης)">
diff --git a/l10n-el/suite/chrome/editor/editor.properties b/l10n-el/suite/chrome/editor/editor.properties
new file mode 100644
index 0000000000..ec89a68d13
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/editor.properties
@@ -0,0 +1,208 @@
+# 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 FILE: embedded "\n" represent HTML breaks (<br>)
+# Don't translate embedded "\n".
+# Don't translate strings like this: %variable%
+# as they will be replaced using JavaScript
+#
+No=Όχι
+Save=Αποθήκευση
+More=Περισσότερα
+Less=Λιγότερα
+MoreProperties=Περισσότερα γνωρίσματα
+FewerProperties=Λιγότερες ιδιότητες
+PropertiesAccessKey=γ
+None=Κανένα
+none=Κανένα
+OpenHTMLFile=Άνοιγμα αρχείου HTML
+OpenTextFile=Άνοιγμα αρχείου κειμένου
+SelectImageFile=Επιλογή αρχείου εικόνας
+SaveDocument=Αποθήκευση σελίδας
+SaveDocumentAs=Αποθήκευση σελίδας ως
+SaveTextAs=Αποθήκευση κειμένου ως
+EditMode=Λειτουργία επεξεργασίας
+Preview=Προεπισκόπηση
+Publish=Δημοσίευση
+PublishPage=Δημοσίευση σελίδας
+DontPublish=Να μη δημοσιευθεί
+SavePassword=Χρήση διαχείρισης κωδικών για την αποθήκευση του κωδικού
+CorrectSpelling=(σωστή ορθογραφία)
+NoSuggestedWords=(καμία προτεινόμενη λέξη)
+NoMisspelledWord=Κανένα ορθογραφικό λάθος
+CheckSpellingDone=Ο ορθογραφικός έλεγχος ολοκληρώθηκε.
+CheckSpelling=Ορθογραφικός έλεγχος
+InputError=Σφάλμα
+Alert=Προειδοποίηση
+CantEditFramesetMsg=Αυτό το πρόγραμμα δε μπορεί να επεξεργαστεί HTML framesets ή εσωτερικά πλαίσια. Προσπαθήστε να επεξεργαστείτε το κάθε πλαίσιο ξεχωριστά. Για σελίδες με iframes αποθηκεύστε ένα αντίγραφο της σελίδας και αφαιρέστε το <iframe> tag.
+CantEditMimeTypeMsg=Δεν είναι δυνατή η επεξεργασία αυτού του τύπου σελίδας.
+CantEditDocumentMsg=Δεν είναι δυνατή η επεξεργασία αυτού του τύπου σελίδας.
+BeforeClosing=πριν από το κλείσιμο
+BeforePreview=πριν την επισκόπηση στο Navigator
+BeforeValidate=πρίν την επικύρωση του εγγράφου
+# LOCALIZATION NOTE (SaveFilePrompt, PublishPrompt): Don't translate %title% and %reason% (this is the reason for asking user to close, such as "before closing")
+SaveFilePrompt=Να αποθηκευτούν οι αλλαγές στο "%title%" %reason%;
+PublishPrompt=Αποθήκευση αλλαγών στο "%title%" %reason%;
+SaveFileFailed=Η αποθήκευση αρχείου απέτυχε!
+
+# Publishing error strings:
+# LOCALIZATION NOTE Don't translate %dir% or %file% in the Publishing error strings:
+FileNotFound=Το %file% δεν βρέθηκε.
+SubdirDoesNotExist=Ο υποκατάλογος"%dir%" δεν υπάρχει σε αυτήν τη διεύθυνση ή το όνομα αρχείου "%file%" χρησιμοποιείται ήδη από άλλο υποκατάλογο.
+FilenameIsSubdir=ο όνομα αρχείου "%file%." χρησιμοποιείται ήδη από άλλο υποκατάλογο.
+ServerNotAvailable=Ο διακομιστής δεν είναι διαθέσιμος. Ελέγξτε τη σύνδεσή σας και προσπαθήστε αργότερα.
+Offline=Είστε εκτός σύνδεσης. Κάντε κλικ στο εικονίδιο στην κάτω δεξιά γωνία οποιουδήποτε παραθύρου για σύνδεση.
+DiskFull=Δεν υπάρχει αρκετός διαθέσιμος ελεύθερος χώρος για την αποθήκευση του αρχείου "%file%."
+NameTooLong=Το όνομα αρχείου ή του υποκαταλόγου είναι πολύ μεγάλο.
+AccessDenied=Δεν έχετε δικαίωμα δημοσίευσης σε αυτήν την τοποθεσία.
+UnknownPublishError=Παρουσιάστηκε ένα άγνωστο σφάλμα δημοσίευσης.
+PublishFailed=Αποτυχία δημοσίευσης.
+PublishCompleted=Η δημοσίευση ολοκληρώθηκε.
+AllFilesPublished='Ολα τα αρχεία δημοσιεύθηκαν
+# LOCALIZATION NOTE Don't translate %x% or %total%
+FailedFileMsg=Αποτυχία δημοσίευσης %x% από %total% αρχείων
+# End-Publishing error strings
+Prompt=Ειδοποίηση
+# LOCALIZATION NOTE (PromptFTPUsernamePassword): Don't translate %host%
+PromptFTPUsernamePassword=Εισάγετε χρήστη και κωδικό για τον διακομιστή FTP σε %host%
+RevertCaption=Επαναφορά στην τελευταία αποθήκευση
+Revert=Επαναφορά
+SendPageReason=πριν την αποστολή της σελίδας
+Send=Αποστολή
+## LOCALIZATION NOTE (PublishProgressCaption, PublishToSite, AbandonChanges): Don't translate %title%
+PublishProgressCaption=Δημοσίευση: %title%
+PublishToSite=Δημοσίευση σε ιστοδιεύθυνση: %title%
+AbandonChanges=Θέλετε να εγκαταλείψετε τις μη αποθηκευμένες αλλαγές στο %title% και να επαναφορτώσετε τη σελίδα;
+DocumentTitle=Τίτλος σελίδας
+NeedDocTitle=Εισάγετε έναν τίτλο για την τρέχουσα σελίδα
+DocTitleHelp=Αυτό προσδιορίζει τη σελίδα στον τίτλο του παραθύρου και τους σελιδοδείκτες.
+CancelPublishTitle=Ακύρωση δημοσίευσης;
+## LOCALIZATION NOTE: "Continue" in this sentence must match the text for
+## the CancelPublishContinue key below
+CancelPublishMessage=Η ακύρωση κατά τη διάρκεια δημοσίευσης μπορεί να έχει σαν αποτέλεσμα τη μη ολοκληρωμένη μεταφορά των αρχείων σας. Θέλετε να συνεχίσετε ή να ακυρώσετε;
+CancelPublishContinue=Συνέχεια
+MissingImageError=Εισάγετε ή επιλέξτε ένα όνομα για την εικόνα τύπου gif, jpg, ή png.
+EmptyHREFError=Παρακαλώ επιλέξτε μια διεύθυνση για δημιουργία νέου συνδέσμου.
+LinkText=Κείμενο συνδέσμου
+LinkImage=Εικόνα συνδέσμου
+MixedSelection=[Μικτή επιλογή]
+Mixed=(μικτό)
+# LOCALIZATION NOTE (NotInstalled): %S is the name of the font
+NotInstalled=%S (δεν έχει εγκατασταθεί)
+EnterLinkText=Εισάγετε το εμφανιζόμενο κείμενο για τον σύνδεσμο:
+EnterLinkTextAccessKey=κ
+EmptyLinkTextError=Παρακαλώ εισάγετε κείμενο για αυτό τον σύνδεσμο.
+EditTextWarning=Αυτό θα αντικαταστήσει το υπάρχον περιεχόμενο
+#LOCALIZATION NOTE (ValidateNumber):Don't translate: %n% %min% %max%
+ValidateRangeMsg=Ο αριθμός που καταχωρίσατε (%n%) είναι έξω από την επιτρεπόμενη κλίμακα.
+ValidateNumberMsg=Καταχωρίστε έναν αριθμό μεταξύ %min% και %max%.
+MissingAnchorNameError=Εισάγετε ένα όνομα για αυτήν την άγκυρα
+#LOCALIZATION NOTE (DuplicateAnchorNameError): Don't translate %name%
+DuplicateAnchorNameError="%name%" υπάρχει. Επιλέξτε ένα άλλο όνομα.
+BulletStyle=Μορφή κουκίδων
+SolidCircle=Συμπαγής κύκλος
+OpenCircle=Ανοιχτός κύκλος
+SolidSquare=Συμπαγές τετράγωνο
+NumberStyle=Τρόπος αρίθμησης:
+Automatic=Αυτόματο
+Style_1=1, 2, 3…
+Style_I=I, II, III…
+Style_i=i, ii, iii…
+Style_A=A, B, C…
+Style_a=a, b, c…
+Pixels=εικονοστοιχεία
+Percent=ποσοστό
+PercentOfCell=% του κελιού
+PercentOfWindow=% του παραθύρου
+PercentOfTable=% του πίνακα
+#LOCALIZATION NOTE (untitledTitle): %S is the window #. No plural handling needed.
+untitledTitle=χωρίς τίτλο-%S
+untitledDefaultFilename=χωρίς τίτλο
+ShowToolbar=Εμφάνιση γραμμής εργαλείων
+HideToolbar=Απόκρυψη γραμμής εργαλείων
+ImapError=Δεν είναι δυνατό το φόρτωμα της εικόνας
+ImapCheck=\nΕπιλέξτε μια καινούργια τοποθεσία (URL) και προσπαθήστε ξανά.
+SaveToUseRelativeUrl=Τα σχετικά URLs μπορούν μόνο να χρησιμοποιηθούν για τις σελίδες για τις οποίες αποθηκεύτηκαν
+NoNamedAnchorsOrHeadings=(δεν υπάρχουν άγκυρες με όνομα ή κεφαλίδες στη σελίδα)
+TextColor=Χρώμα κειμένου
+HighlightColor=Χρώμα επισήμανσης
+PageColor=Χρώμα φόντου σελίδας
+BlockColor=Μπλοκάρισμα χρώματος φόντου
+TableColor=Χρώμα φόντου πίνακα
+CellColor=Χρώμα φόντου κελιού
+TableOrCellColor=Χρώμα Πίνακα ή Κελιού
+LinkColor=Χρώμα κειμένου συνδέσμου
+ActiveLinkColor=Χρώμα ενεργού συνδέσμου
+VisitedLinkColor=Χρώμα ανοιγμένου συνδέσμου
+NoColorError=Επιλέξτε ένα χρώμα ή εισάγετε ένα έγκυρο HTML color string.
+Table=Πίνακας
+TableCell=Κελί Πίνακα
+NestedTable=Ενσωματωμένος Πίνακας
+HLine=Οριζόντια γραμμή
+Link=Σύνδεσμος
+Image=Εικόνα
+ImageAndLink=Εικόνα και σύνδεσμος
+NamedAnchor=Επώνυμη Άγκυρα
+List=Λίστα
+ListItem=Στοιχείο λίστας
+Form=Φόρμα
+InputTag=Πεδίο φόρμας
+InputImage=Εικόνα Φόρμας
+TextArea=Πεδίο κειμένου
+Select=Λίστα επιλογής
+Button=Κουμπί
+Label=Ετικέτα
+FieldSet=Ορισμός πεδίου
+Tag=Ετικέτα
+MissingSiteNameError=Καταχωρίστε ένα όνομα για την υπό δημοσίευση σελίδα
+MissingPublishUrlError=Καταχωρίστε μια τοποθεσία για τη δημοσίευση αυτής της σελίδας.
+MissingPublishFilename=Καταχωρίστε ένα όνομα αρχείου για την τρέχουσα σελίδα.
+#LOCALIZATION NOTE (DuplicateSiteNameError): Don't translate %name%
+DuplicateSiteNameError="%name%" υπάρχει ήδη. Εισάγετε ένα διαφορετικό όνομα σελίδας
+AdvancedProperties=Προηγμένες ιδιότητες…
+AdvancedEditForCellMsg=Η προηγμένη επεξεργασία δεν είναι διαθέσιμη όταν είναι επιλεγμένα πολλαπλά κελιά
+# LOCALIZATION NOTE (ObjectProperties):Don't translate "%obj%" it will be replaced with one of above object nouns
+ObjectProperties=Ιδιότητες %obj%…
+# LOCALIZATION NOTE This character must be in the above string and not conflict with other accesskeys in Format menu
+ObjectPropertiesAccessKey=ο
+# LOCALIZATION NOTE (JoinSelectedCells): This variable should contain the "tableJoinCells.accesskey"
+# letter as defined in editorOverlay.dtd
+JoinSelectedCells=Συγχώνευση επιλεγμένων κελιών
+# LOCALIZATION NOTE (JoinCellToRight): This variable should contain the "tableJoinCells.accesskey"
+# letter as defined in editorOverlay.dtd
+JoinCellToRight=Συγχώνευση με κελί στα δεξιά
+JoinCellAccesskey=χ
+# LOCALIZATION NOTE (TableSelectKey): Ctrl key on a keyboard
+TableSelectKey=Ctrl+
+# LOCALIZATION NOTE (XulKeyMac): Command key on a Mac keyboard
+XulKeyMac=Cmd+
+# LOCALIZATION NOTE (Del): Del key on a keyboard
+Del=Del
+Delete=Διαγραφή
+DeleteCells=Διαγραφή κελιών
+DeleteTableTitle=Διαγραφή σειρών ή στηλών
+DeleteTableMsg=Η μείωση του αριθμού σειρών θα επιφέρει διαγραφή των κελιών και των περιεχομένων τους. Είστε σίγουροι για αυτό;
+Clear=Εκκαθάριση
+#Mouse actions
+Click=Κλικ
+Drag=Σύρετε
+Unknown=Άγνωστο
+#
+# LOCALIZATION NOTE "RemoveTextStylesAccesskey" is used for both
+# menu items: "RemoveTextStyles" and "StopTextStyles"
+RemoveTextStylesAccesskey=ρ
+RemoveTextStyles=Αφαίρεση όλων των μορφοποιήσεων κειμένου
+StopTextStyles=Διακοπή διαμόρφωσης κειμένου
+#
+# LOCALIZATION NOTE "RemoveLinksAccesskey" is used for both
+# menu items: "RemoveLinks" and "StopLinks"
+RemoveLinksAccesskey=δ
+RemoveLinks=Αφαίρεση συνδέσμων
+StopLinks=Διακοπή συνδέσμων
+#
+NoFormAction=Προτείνεται να εισάγετε μια ενέργεια για αυτήν τη φόρμα. Οι αυτό-αναφερόμενες φόρμες δεν λειτουργούν σε όλους τους περιηγητές.
+NoAltText=Αν η εικόνα είναι σχετική με το έγγραφο θα πρέπει να εισάγετε ένα εναλλακτικό κείμενο το οποίο θα εμφανίζεται σε περιηγητές που βλέπουν μόνο κείμενο (η έχουν απενεργοποιημένη τη φόρτωση εικόνων) και κατά τη φόρτωση της εικόνας.
+#
+Malformed=Δεν είναι δυνατή η μετατροπή του πηγαίου κώδικα πίσω στο έγγραφο επειδή το XΗML δεν είναι έγκυρο.
+NoLinksToCheck=Δεν υπάρχουν στοιχεία με συνδέσμους προς έλεγχο
diff --git a/l10n-el/suite/chrome/editor/editorOverlay.dtd b/l10n-el/suite/chrome/editor/editorOverlay.dtd
new file mode 100644
index 0000000000..2174ed44e7
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/editorOverlay.dtd
@@ -0,0 +1,368 @@
+<!-- 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/. -->
+
+<!-- Attn: Localization - some of the menus in this dialog directly affect mail also. -->
+
+<!-- File menu items -->
+<!ENTITY saveCmd.key "S">
+
+<!-- Edit menu items -->
+<!ENTITY pasteNoFormatting.label "Επικόλληση χωρίς μορφοποίηση">
+<!ENTITY pasteNoFormatting.accesskey "κ">
+<!ENTITY pasteNoFormatting.key "V">
+<!ENTITY pasteAsQuotationCmd.label "Επικόλληση ως παράθεση">
+<!ENTITY pasteAsQuotationCmd.accesskey "ρ">
+<!ENTITY pasteAsQuotationCmd.key "o">
+<!ENTITY editRewrapCmd.label "Aναδίπλωση">
+<!ENTITY editRewrapCmd.key "R">
+<!ENTITY editRewrapCmd.accesskey "δ">
+<!ENTITY findBarCmd.label "Εύρεση…">
+<!ENTITY findReplaceCmd.label "Εύρεση και αντικατάσταση…">
+<!ENTITY enableInlineSpellChecker.label "Ορθογραφικός έλεγχος κατά την πληκτρολόγηση">
+<!ENTITY enableInlineSpellChecker.accesskey "θ">
+<!ENTITY checkSpellingCmd2.label "Ορθογραφικός έλεγχος…">
+<!ENTITY checkSpellingCmd2.accesskey "χ">
+<!ENTITY checkSpellingCmd2.key "p">
+
+<!-- Insert menu items -->
+<!ENTITY insertMenu.label "Εισαγωγή">
+<!ENTITY insertMenu.accesskey "ι">
+<!ENTITY insertLinkCmd2.label "Σύνδεσμος…">
+<!ENTITY insertLinkCmd2.accesskey "Σ">
+<!ENTITY insertLinkCmd2.key "K">
+<!ENTITY insertAnchorCmd.label "Άγκυρα με όνομα…">
+<!ENTITY insertAnchorCmd.accesskey "α">
+<!ENTITY insertImageCmd.label "Εικόνα…">
+<!ENTITY insertImageCmd.accesskey "Ε">
+<!ENTITY insertHLineCmd.label "Οριζόντια γραμμή">
+<!ENTITY insertHLineCmd.accesskey "ζ">
+<!ENTITY insertTableCmd.label "Πίνακας…">
+<!ENTITY insertTableCmd.accesskey "κ">
+<!ENTITY insertHTMLCmd.label "HTML…">
+<!ENTITY insertHTMLCmd.accesskey "H">
+<!ENTITY insertMathCmd.label "Μαθηματικά…">
+<!ENTITY insertMathCmd.accesskey "Μ">
+<!ENTITY insertCharsCmd.label "Χαρακτήρες και σύμβολα…">
+<!ENTITY insertCharsCmd.accesskey "Χ">
+<!ENTITY insertBreakAllCmd.label "Αλλαγή γραμμής κάτω από εικόνα(ες)">
+<!ENTITY insertBreakAllCmd.accesskey "κ">
+
+<!-- Used just in context popup. -->
+<!ENTITY createLinkCmd.label "Δημιουργία συνδέσμου…">
+<!ENTITY createLinkCmd.accesskey "Δ">
+<!ENTITY editLinkCmd.label "Επεξεργασία συνδέσμου σε νέα σύνταξη">
+<!ENTITY editLinkCmd.accesskey "μ">
+
+<!-- Font Face SubMenu -->
+<!ENTITY FontFaceSelect.title "Γραμματοσειρά">
+<!ENTITY FontFaceSelect.tooltip "Επιλογή γραμματοσειράς">
+<!ENTITY fontfaceMenu.label "Γραμματοσειρά">
+<!ENTITY fontfaceMenu.accesskey "Γ">
+<!ENTITY fontVarWidth.label "Μεταβλητού πλάτους">
+<!ENTITY fontVarWidth.accesskey "β">
+<!ENTITY fontFixedWidth.label "Σταθερού πλάτους">
+<!ENTITY fontFixedWidth.accesskey "θ">
+<!ENTITY fontFixedWidth.key "T">
+<!ENTITY fontHelvetica.label "Helvetica, Arial">
+<!ENTITY fontHelvetica.accesskey "l">
+<!ENTITY fontTimes.label "Times">
+<!ENTITY fontTimes.accesskey "T">
+<!ENTITY fontCourier.label "Courier">
+<!ENTITY fontCourier.accesskey "C">
+
+<!-- Font Size SubMenu -->
+<!ENTITY FontSizeSelect.title "Μέγεθος γραμματοσειράς">
+<!ENTITY FontSizeSelect.tooltip "Επιλογή μεγέθους γραμματοσειράς">
+<!ENTITY decreaseFontSize.label "Μικρότερα">
+<!ENTITY decreaseFontSize.accesskey "ρ">
+<!ENTITY decrementFontSize.key "&lt;">
+<!ENTITY decrementFontSize.key2 ","> <!-- < is above this key on many keyboards -->
+<!ENTITY increaseFontSize.label "Μεγαλύτερα">
+<!ENTITY increaseFontSize.accesskey "γ">
+<!ENTITY incrementFontSize.key "&gt;">
+<!ENTITY incrementFontSize.key2 "."> <!-- > is above this key on many keyboards -->
+
+<!ENTITY fontSizeMenu.label "Μέγεθος">
+<!ENTITY fontSizeMenu.accesskey "θ">
+<!ENTITY size-tinyCmd.label "Μικροσκοπικά">
+<!ENTITY size-tinyCmd.accesskey "ι">
+<!ENTITY size-smallCmd.label "Μικρά">
+<!ENTITY size-smallCmd.accesskey "μ">
+<!ENTITY size-mediumCmd.label "Μεσαία">
+<!ENTITY size-mediumCmd.accesskey "σ">
+<!ENTITY size-largeCmd.label "Μεγάλα">
+<!ENTITY size-largeCmd.accesskey "λ">
+<!ENTITY size-extraLargeCmd.label "Πολύ μεγάλα">
+<!ENTITY size-extraLargeCmd.accesskey "π">
+<!ENTITY size-hugeCmd.label "Τεράστια">
+<!ENTITY size-hugeCmd.accesskey "ρ">
+
+<!-- Font Style SubMenu -->
+<!ENTITY fontStyleMenu.label "Στυλ κειμένου">
+<!ENTITY fontStyleMenu.accesskey "Σ">
+<!ENTITY styleBoldCmd.label "Έντονα">
+<!ENTITY styleBoldCmd.accesskey "ν">
+<!ENTITY styleBoldCmd.key "B">
+<!ENTITY styleItalicCmd.label "Πλάγια">
+<!ENTITY styleItalicCmd.accesskey "λ">
+<!ENTITY styleItalicCmd.key "I">
+<!ENTITY styleUnderlineCmd.label "Υπογράμμιση">
+<!ENTITY styleUnderlineCmd.accesskey "Υ">
+<!ENTITY styleUnderlineCmd.key "U">
+<!ENTITY styleStrikeThruCmd.label "Διαγράμμιση">
+<!ENTITY styleStrikeThruCmd.accesskey "Δ">
+<!ENTITY styleSuperscriptCmd.label "Εκθέτης">
+<!ENTITY styleSuperscriptCmd.accesskey "θ">
+<!ENTITY styleSubscriptCmd.label "Δείκτης">
+<!ENTITY styleSubscriptCmd.accesskey "κ">
+<!ENTITY styleNonbreakingCmd.label "Χωρίς αλλαγή">
+<!ENTITY styleNonbreakingCmd.accesskey "λ">
+<!ENTITY styleEm.label "Έμφαση">
+<!ENTITY styleEm.accesskey "φ">
+<!ENTITY styleStrong.label "Ισχυρότερη έμφαση">
+<!ENTITY styleStrong.accesskey "χ">
+<!ENTITY styleCite.label "Παράθεση">
+<!ENTITY styleCite.accesskey "θ">
+<!ENTITY styleAbbr.label "Σύντμηση">
+<!ENTITY styleAbbr.accesskey "ν">
+<!ENTITY styleAcronym.label "Ακρωνύμιο">
+<!ENTITY styleAcronym.accesskey "ω">
+<!ENTITY styleCode.label "Κώδικας">
+<!ENTITY styleCode.accesskey "δ">
+<!ENTITY styleSamp.label "Δείγμα αποτελέσματος">
+<!ENTITY styleSamp.accesskey "μ">
+<!ENTITY styleVar.label "Μεταβλητό">
+<!ENTITY styleVar.accesskey "β">
+
+<!ENTITY formatFontColor.label "Χρώμα κειμένου…">
+<!ENTITY formatFontColor.accesskey "Χ">
+<!ENTITY tableOrCellColor.label "Χρώμα παρασκηνίου πίνακα ή κελιού…">
+<!ENTITY tableOrCellColor.accesskey "κ">
+
+<!ENTITY formatRemoveStyles.key "Y">
+<!ENTITY formatRemoveLinks.key "K">
+<!ENTITY formatRemoveNamedAnchors.label "Αφαίρεση αγκυρών με όνομα">
+<!ENTITY formatRemoveNamedAnchors.accesskey "ρ">
+<!ENTITY formatRemoveNamedAnchors2.key "R">
+
+<!ENTITY paragraphMenu.label "Παράγραφος">
+<!ENTITY paragraphMenu.accesskey "γ">
+<!ENTITY paragraphParagraphCmd.label "Παράγραφος">
+<!ENTITY paragraphParagraphCmd.accesskey "φ">
+<!ENTITY heading1Cmd.label "Κεφαλίδα 1">
+<!ENTITY heading1Cmd.accesskey "1">
+<!ENTITY heading2Cmd.label "Κεφαλίδα 2">
+<!ENTITY heading2Cmd.accesskey "2">
+<!ENTITY heading3Cmd.label "Κεφαλίδα 3">
+<!ENTITY heading3Cmd.accesskey "3">
+<!ENTITY heading4Cmd.label "Κεφαλίδα 4">
+<!ENTITY heading4Cmd.accesskey "4">
+<!ENTITY heading5Cmd.label "Κεφαλίδα 5">
+<!ENTITY heading5Cmd.accesskey "5">
+<!ENTITY heading6Cmd.label "Κεφαλίδα 6">
+<!ENTITY heading6Cmd.accesskey "6">
+<!ENTITY paragraphAddressCmd.label "Διεύθυνση">
+<!ENTITY paragraphAddressCmd.accesskey "θ">
+<!ENTITY paragraphPreformatCmd.label "Προ-μορφοποίηση">
+<!ENTITY paragraphPreformatCmd.accesskey "ρ">
+
+<!-- List menu items -->
+<!ENTITY formatlistMenu.label "Λίστα">
+<!ENTITY formatlistMenu.accesskey "Λ">
+<!ENTITY noneCmd.label "Κανένα">
+<!ENTITY noneCmd.accesskey "ν">
+<!ENTITY listBulletCmd.label "Κουκίδες">
+<!ENTITY listBulletCmd.accesskey "Κ">
+<!ENTITY listNumberedCmd.label "Αριθμημένη">
+<!ENTITY listNumberedCmd.accesskey "μ">
+<!ENTITY listTermCmd.label "Όρος">
+<!ENTITY listTermCmd.accesskey "ρ">
+<!ENTITY listDefinitionCmd.label "Ορισμός">
+<!ENTITY listDefinitionCmd.accesskey "μ">
+<!ENTITY listPropsCmd.label "Ιδιότητες λίστας…">
+<!ENTITY listPropsCmd.accesskey "δ">
+
+<!ENTITY ParagraphSelect.title "Παράγραφος">
+<!ENTITY ParagraphSelect.tooltip "Επιλέξτε μια μορφή λίστας">
+<!-- Shared in Paragraph, and Toolbar menulist -->
+<!ENTITY bodyTextCmd.label "Κύριος μέρος κειμένου">
+<!ENTITY bodyTextCmd.accesskey "μ">
+<!-- isn't used in menu now, but may be added in future -->
+<!ENTITY advancedPropertiesCmd.label "Προηγμένες ιδιότητες">
+<!ENTITY advancedPropertiesCmd.accesskey "γ">
+
+<!-- Align menu items -->
+<!ENTITY alignMenu.label "Στοίχιση">
+<!ENTITY alignMenu.accesskey "Σ">
+<!ENTITY alignLeft.label "Αριστερά">
+<!ENTITY alignLeft.accesskey "Α">
+<!ENTITY alignLeft.tooltip "Στοίχιση αριστερά">
+<!ENTITY alignCenter.label "Κέντρο">
+<!ENTITY alignCenter.accesskey "Κ">
+<!ENTITY alignCenter.tooltip "Στοίχιση στο κέντρο">
+<!ENTITY alignRight.label "Δεξιά">
+<!ENTITY alignRight.accesskey "Δ">
+<!ENTITY alignRight.tooltip "Στοίχιση δεξιά">
+<!ENTITY alignJustify.label "Πλήρης στοίχιση">
+<!ENTITY alignJustify.accesskey "Π">
+<!ENTITY alignJustify.tooltip "Πλήρης στοίχιση">
+
+<!-- Layer toolbar items -->
+<!ENTITY absolutePosition.label "Τοποθέτηση">
+<!ENTITY layer.tooltip "Επίπεδο">
+<!ENTITY decreaseZIndex.label "Μεταφορά πίσω">
+<!ENTITY layerSendToBack.tooltip "Μεταφορά πίσω">
+<!ENTITY increaseZIndex.label "Μεταφορά μπροστά">
+<!ENTITY layerBringToFront.tooltip "Μεταφορά μπροστά">
+
+<!ENTITY increaseIndent.label "Αύξηση εσοχής">
+<!ENTITY increaseIndent.accesskey "Α">
+<!ENTITY increaseIndent.key "]">
+<!ENTITY decreaseIndent.label "Μείωση εσοχής">
+<!ENTITY decreaseIndent.accesskey "Μ">
+<!ENTITY decreaseIndent.key "[">
+
+<!ENTITY colorsAndBackground.label "Χρώματα και παρασκήνιο σελίδας…">
+<!ENTITY colorsAndBackground.accesskey "ρ">
+
+<!-- Table Menu -->
+<!ENTITY tableMenu.label "Πίνακας">
+<!ENTITY tableMenu.accesskey "ν">
+
+<!-- Select Submenu -->
+<!ENTITY tableSelectMenu.label "Επιλογή">
+<!ENTITY tableSelectMenu.accesskey "Ε">
+
+<!ENTITY tableSelectMenu2.label "Επιλογή πίνακα">
+<!ENTITY tableSelectMenu2.accesskey "Ε">
+<!ENTITY tableInsertMenu2.label "Εισαγωγή πίνακα">
+<!ENTITY tableInsertMenu2.accesskey "ι">
+<!ENTITY tableDeleteMenu2.label "Διαγραφή πίνακα">
+<!ENTITY tableDeleteMenu2.accesskey "Δ">
+
+<!-- Insert SubMenu -->
+<!ENTITY tableInsertMenu.label "Εισαγωγή">
+<!ENTITY tableInsertMenu.accesskey "ι">
+<!ENTITY tableTable.label "Πίνακας">
+<!ENTITY tableTable.accesskey "Π">
+<!ENTITY tableRow.label "Γραμμή">
+<!ENTITY tableRows.label "Γραμμές">
+<!ENTITY tableRow.accesskey "Γ">
+<!ENTITY tableRowAbove.label "Γραμμή πάνω">
+<!ENTITY tableRowAbove.accesskey "Γ">
+<!ENTITY tableRowBelow.label "Γραμμή κάτω">
+<!ENTITY tableRowBelow.accesskey "κ">
+<!ENTITY tableColumn.label "Στήλη">
+<!ENTITY tableColumns.label "Στήλες">
+<!ENTITY tableColumn.accesskey "Σ">
+<!ENTITY tableColumnBefore.label "Στήλη πριν">
+<!ENTITY tableColumnBefore.accesskey "τ">
+<!ENTITY tableColumnAfter.label "Στήλη μετά">
+<!ENTITY tableColumnAfter.accesskey "μ">
+<!ENTITY tableCell.label "Κελί">
+<!ENTITY tableCells.label "Κελιά">
+<!ENTITY tableCell.accesskey "Κ">
+<!ENTITY tableCellContents.label "Περιεχόμενα κελιού">
+<!ENTITY tableCellContents.accesskey "χ">
+<!ENTITY tableAllCells.label "Όλα τα κελιά">
+<!ENTITY tableAllCells.accesskey "λ">
+<!ENTITY tableCellBefore.label "Κελί πριν">
+<!ENTITY tableCellBefore.accesskey "Κ">
+<!ENTITY tableCellAfter.label "Κελί μετά">
+<!ENTITY tableCellAfter.accesskey "τ">
+<!-- Delete SubMenu -->
+<!ENTITY tableDeleteMenu.label "Διαγραφή">
+<!ENTITY tableDeleteMenu.accesskey "Δ">
+
+<!-- text for "Join Cells" is in editor.properties
+ ("JoinSelectedCells" and "JoinCellToRight")
+ the access key must exist in both of those strings
+ But value must be set here for accesskey to draw properly
+-->
+<!ENTITY tableJoinCells.label "σ">
+<!ENTITY tableJoinCells.accesskey "σ">
+<!ENTITY tableSplitCell.label "Διαίρεση κελιού">
+<!ENTITY tableSplitCell.accesskey "κ">
+<!ENTITY convertToTable.label "Δημιουργία πίνακα από επιλογή">
+<!ENTITY convertToTable.accesskey "Δ">
+<!ENTITY tableProperties.label "Ιδιότητες πίνακα…">
+<!ENTITY tableProperties.accesskey "δ">
+
+<!-- Toolbar-only items -->
+<!ENTITY menuBar.tooltip "Γραμμή μενού">
+<!ENTITY formatToolbar.tooltip "Γραμμή εργαλείων μορφοποίησης">
+<!ENTITY cutToolbarCmd.tooltip "Αποκοπή">
+<!ENTITY copyToolbarCmd.tooltip "Αντιγραφή">
+<!ENTITY pasteToolbarCmd.tooltip "Επικόλληση">
+<!ENTITY findToolbarCmd.label "Εύρεση">
+<!ENTITY findToolbarCmd.tooltip "Εύρεση κειμένου στη σελίδα">
+<!ENTITY spellToolbarCmd.label "Ορθογραφικός έλεγχος">
+<!ENTITY spellToolbarCmd.tooltip "Ορθογραφικός έλεγχος στην επιλογή ή σε όλη τη σελίδα">
+<!ENTITY imageToolbarCmd.label "Εικόνα">
+<!ENTITY imageToolbarCmd.tooltip "Εισαγωγή νέας εικόνας ή επεξεργασία ιδιοτήτων επιλεγμένης εικόνας">
+<!ENTITY hruleToolbarCmd.label "Οριζ. γραμμή">
+<!ENTITY hruleToolbarCmd.tooltip "Εισαγωγή νέας οριζόντιας γραμμής ή επεξεργασία ιδιοτήτων επιλεγμένης γραμμής">
+<!ENTITY tableToolbarCmd.label "Πίνακας">
+<!ENTITY tableToolbarCmd.tooltip "Εισαγωγή νέου πίνακα ή επεξεργασία ιδιοτήτων επιλεγμένου πίνακα">
+<!ENTITY linkToolbarCmd.label "Σύνδεσμος">
+<!ENTITY linkToolbarCmd.tooltip "Εισαγωγή νέου ή επεξεργασία ιδιοτήτων επιλεγμένου δεσμού">
+<!ENTITY anchorToolbarCmd.label "Άγκυρα">
+<!ENTITY anchorToolbarCmd.tooltip "Εισαγωγή νέας άγκυρας ή επεξεργασία ιδιοτήτων επιλεγμένης άγκυρας">
+<!ENTITY colorButtons.title "Χρώματα">
+<!ENTITY TextColorButton.tooltip "Επιλογή χρώματος κειμένου">
+<!ENTITY BackgroundColorButton.tooltip "Επιλογή χρώματος παρασκηνίου">
+<!ENTITY HighlightColorButton.label "Επισήμαναση">
+<!ENTITY HighlightColorButton.tooltip "Επιλογή χρώματος επισήμανσης κειμένου">
+
+<!-- Editor toolbar -->
+<!ENTITY absoluteFontSize.label "Μέγεθος γραμματοσειράς">
+<!ENTITY absoluteFontSizeToolbarCmd.tooltip "Ορισμός μεγέθους γραμματοσειράς">
+<!ENTITY smaller.label "Μικρότερο">
+<!ENTITY decreaseFontSizeToolbarCmd.tooltip "Μικρότερο μέγεθος γραμματοσειράς">
+<!ENTITY larger.label "Μεγαλύτερο">
+<!ENTITY increaseFontSizeToolbarCmd.tooltip "Μεγαλύτερο μέγεθος γραμματοσειράς">
+<!ENTITY bold.label "Έντονα">
+<!ENTITY boldToolbarCmd.tooltip "Έντονα">
+<!ENTITY italic.label "Πλάγια">
+<!ENTITY italicToolbarCmd.tooltip "Πλάγια">
+<!ENTITY underline.label "Υπογράμμιση">
+<!ENTITY underlineToolbarCmd.tooltip "Υπογράμμιση">
+<!ENTITY bullets.label "Κουκκίδες">
+<!ENTITY bulletListToolbarCmd.tooltip "Εφαρμογή ή αφαίρεση λίστας με κουκίδες">
+<!ENTITY numbers.label "Αριθμοί">
+<!ENTITY numberListToolbarCmd.tooltip "Εφαρμογή ή αφαίρεση αριθμημένης λίστας">
+<!ENTITY outdent.label "Εξοχή">
+<!ENTITY outdentToolbarCmd.tooltip "Εξοχή κειμένου (μετακίνηση αριστερά)">
+<!ENTITY indent.label "Εσοχή">
+<!ENTITY indentToolbarCmd.tooltip "Εσοχή κειμένου (μετακίνηση δεξιά)">
+<!ENTITY AlignPopupButton.label "Στοίχιση">
+<!ENTITY AlignPopupButton.tooltip "Επιλογή στοίχισης κειμένου">
+<!ENTITY InsertPopupButton.label "Εισαγωγή">
+<!ENTITY InsertPopupButton.tooltip "Εισαγωγή συνδέσμου, άγκυρας, εικόνας, οριζόντιας γραμμής ή πίνακα">
+<!ENTITY alignLeftButton.label "Στοίχιση αριστερά">
+<!ENTITY alignLeftButton.tooltip "Στοίχιση κειμένου μαζί με αριστερό περιθώριο">
+<!ENTITY alignCenterButton.label "Στοίχιση στο κέντρο">
+<!ENTITY alignCenterButton.tooltip "Στοίχιση κειμένου στο κέντρο">
+<!ENTITY alignRightButton.label "Στοίχιση δεξιά">
+<!ENTITY alignRightButton.tooltip "Στοίχιση κειμένου μαζί με δεξιό περιθώριο">
+<!ENTITY alignJustifyButton.label "Πλήρης στοίχιση">
+<!ENTITY alignJustifyButton.tooltip "Στοίχιση κειμένου μαζί με δεξιό και αριστερό περιθώριο">
+
+<!-- Structure Toolbar Context Menu items -->
+<!ENTITY structSelect.label "Επιλογή">
+<!ENTITY structSelect.accesskey "λ">
+<!ENTITY structRemoveTag.label "Αφαίρεση ετικέτας">
+<!ENTITY structRemoveTag.accesskey "ρ">
+<!ENTITY structChangeTag.label "Αλλαγή ετικέτας">
+<!ENTITY structChangeTag.accesskey "κ">
+
+<!-- TOC manipulation -->
+<!ENTITY insertTOC.label "Εισαγωγή">
+<!ENTITY insertTOC.accesskey "ι">
+<!ENTITY updateTOC.label "Ενημέρωση">
+<!ENTITY updateTOC.accesskey "ν">
+<!ENTITY removeTOC.label "Αφαίρεση">
+<!ENTITY removeTOC.accesskey "ρ">
+<!ENTITY tocMenu.label "Πίνακας περιεχομένων…">
+<!ENTITY tocMenu.accesskey "Π">
diff --git a/l10n-el/suite/chrome/editor/editorSmileyOverlay.dtd b/l10n-el/suite/chrome/editor/editorSmileyOverlay.dtd
new file mode 100644
index 0000000000..2bdd93e5ff
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/editorSmileyOverlay.dtd
@@ -0,0 +1,58 @@
+<!-- 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/. -->
+
+<!-- Smiley Menu items -->
+<!ENTITY insertSmiley.label "Φατσούλα">
+<!ENTITY insertSmiley.accesskey "Φ">
+
+<!ENTITY smiley1Cmd.label "Χαμόγελο">
+<!ENTITY smiley1Cmd.accesskey "Χ">
+<!ENTITY smiley1Cmd.tooltip "Εισαγωγή μιας χαρούμενης φατσούλας">
+<!ENTITY smiley2Cmd.label "Κατσουφιασμένος">
+<!ENTITY smiley2Cmd.accesskey "σ">
+<!ENTITY smiley2Cmd.tooltip "Εισαγωγή κατσουφιασμένου προσώπου">
+<!ENTITY smiley3Cmd.label "Κλείσιμο ματιού">
+<!ENTITY smiley3Cmd.accesskey "Κ">
+<!ENTITY smiley3Cmd.tooltip "Εισαγωγή προσώπου που κλείνει το μάτι">
+<!ENTITY smiley4Cmd.label "Γλώσσα έξω">
+<!ENTITY smiley4Cmd.accesskey "Γ">
+<!ENTITY smiley4Cmd.tooltip "Εισαγωγή προσώπου με τη γλώσσα έξω">
+<!ENTITY smiley5Cmd.label "Γέλιο">
+<!ENTITY smiley5Cmd.accesskey "Γ">
+<!ENTITY smiley5Cmd.tooltip "Εισαγωγή γελαστού προσώπου">
+<!ENTITY smiley6Cmd.label "Ντροπιασμένος">
+<!ENTITY smiley6Cmd.accesskey "Ν">
+<!ENTITY smiley6Cmd.tooltip "Εισαγωγή ντροπιασμένου προσώπου">
+<!ENTITY smiley7Cmd.label "Αναποφάσιστος">
+<!ENTITY smiley7Cmd.accesskey "Α">
+<!ENTITY smiley7Cmd.tooltip "Εισαγωγή αναποφάσιστου προσώπου">
+<!ENTITY smiley8Cmd.label "Έκπληξη">
+<!ENTITY smiley8Cmd.accesskey "ξ">
+<!ENTITY smiley8Cmd.tooltip "Εισαγωγή έκπληκτου προσώπου">
+<!ENTITY smiley9Cmd.label "Φιλί">
+<!ENTITY smiley9Cmd.accesskey "Φ">
+<!ENTITY smiley9Cmd.tooltip "Εισαγωγή προσώπου με φιλί">
+<!ENTITY smiley10Cmd.label "Κραυγή">
+<!ENTITY smiley10Cmd.accesskey "ή">
+<!ENTITY smiley10Cmd.tooltip "Εισαγωγή προσώπου που φωνάζει">
+<!ENTITY smiley11Cmd.label "Κουλ">
+<!ENTITY smiley11Cmd.accesskey "υ">
+<!ENTITY smiley11Cmd.tooltip "Εισαγωγή κουλ προσώπου">
+<!ENTITY smiley12Cmd.label "Χρήματα-στόμα">
+<!ENTITY smiley12Cmd.accesskey "ρ">
+<!ENTITY smiley12Cmd.tooltip "Εισαγωγή προσώπου με στόμα-χρήμα">
+<!ENTITY smiley13Cmd.label "Πόδι-στο-στόμα">
+<!ENTITY smiley13Cmd.accesskey "ο">
+<!ENTITY smiley13Cmd.tooltip "Εισαγωγή προσώπου με πόδι στο στόμα">
+<!ENTITY smiley14Cmd.label "Αθώος">
+<!ENTITY smiley14Cmd.accesskey "θ">
+<!ENTITY smiley14Cmd.tooltip "Εισαγωγή αθώου προσώπου">
+<!ENTITY smiley15Cmd.label "Κλάμα">
+<!ENTITY smiley15Cmd.accesskey "λ">
+<!ENTITY smiley15Cmd.tooltip "Εισαγωγή προσώπου που κλαίει">
+<!ENTITY smiley16Cmd.label "Σφραγισμένα-χείλη">
+<!ENTITY smiley16Cmd.accesskey "ί">
+<!ENTITY smiley16Cmd.tooltip "Εισαγωγή προσώπου με σφραγισμένα χείλη">
+<!ENTITY SmileButton.label "Εισαγωγή Smiley">
+<!ENTITY SmileButton.tooltip "Εισαγωγή χαμογελαστού προσώπου">
diff --git a/l10n-el/suite/chrome/editor/prefs/editorPrefsOverlay.dtd b/l10n-el/suite/chrome/editor/prefs/editorPrefsOverlay.dtd
new file mode 100644
index 0000000000..fd222fcad8
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/prefs/editorPrefsOverlay.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/. -->
+
+
+<!--LOCALIZATION NOTE (editorCheck.label): DONT_TRANSLATE -->
+<!ENTITY editorCheck.label "Συντάκτης">
+<!ENTITY editorCheck.accesskey "Σ">
+
+<!ENTITY compose.label "Συντάκτης">
+<!ENTITY editing.label "Ρυθμίσεις νέας σελίδας">
+<!ENTITY publish.label "Δημοσίευση">
diff --git a/l10n-el/suite/chrome/editor/prefs/pref-composer.dtd b/l10n-el/suite/chrome/editor/prefs/pref-composer.dtd
new file mode 100644
index 0000000000..e4aab5a655
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/prefs/pref-composer.dtd
@@ -0,0 +1,29 @@
+<!-- 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/. -->
+
+<!-- extracted from content/pref-composer.xul -->
+
+<!--LOCALIZATION NOTE : FILE 'Composer' prefs dialog. Similar to Communcator 4.x Document Properties/Colors and Background -->
+
+<!--LOCALIZATION NOTE (pref.composer.title): DONT_TRANSLATE -->
+<!ENTITY pref.composer.title "Σύνταξη μηνυμάτων">
+<!ENTITY recentFiles.title "Μενού πρόσφατων σελίδων">
+<!ENTITY documentsInMenu.label "Μέγιστος αριθμός ιστορικού σελίδων:">
+<!ENTITY documentsInMenu.accesskey "γ">
+<!ENTITY savingFiles.title "Κατά την αποθήκευση ή δημοσίευση σελίδων">
+<!ENTITY preserveExisting.label "Διατήρηση μορφοποίησης αρχικού κώδικα">
+<!ENTITY preserveExisting.accesskey "τ">
+<!ENTITY preserveExisting.tooltip "Διατηρεί τις αλλαγές γραμμών και την αρχική μορφοποίηση της σελίδας">
+<!ENTITY saveAssociatedFiles.label "Να αποθηκεύονται εικόνες και άλλα σχετικά αρχεία κατά την αποθήκευση σελίδων">
+<!ENTITY saveAssociatedFiles.accesskey "θ">
+<!ENTITY showPublishDialog.label "Να εμφανίζεται πάντα ο διάλογος δημοσίευσης κατά τη δημοσίευση σελίδων">
+<!ENTITY showPublishDialog.accesskey "φ">
+<!ENTITY composerEditing.label "Επεξεργασία">
+<!ENTITY maintainStructure.label "Διατήρηση διάταξης πίνακα κατά την εισαγωγή ή διαγραφή κελιών">
+<!ENTITY maintainStructure.tooltip "Διατηρεί τη μορφοποίηση του πίνακα με το να εισάγει αυτόματα κελιά κατά την εισαγωγή ή διαγραφή κελιών">
+<!ENTITY maintainStructure.accesskey "Δ">
+<!ENTITY useCSS.label "Χρήση CSS styles αντί για γνωρίσματα HTML">
+<!ENTITY useCSS.accesskey "Χ">
+<!ENTITY crInPCreatesNewP.label "Το πλήκτρο Return σε μια παράγραφο να δημιουργεί πάντα νέα παράγραφο">
+<!ENTITY crInPCreatesNewP.accesskey "ρ">
diff --git a/l10n-el/suite/chrome/editor/prefs/pref-editing.dtd b/l10n-el/suite/chrome/editor/prefs/pref-editing.dtd
new file mode 100644
index 0000000000..10e881764f
--- /dev/null
+++ b/l10n-el/suite/chrome/editor/prefs/pref-editing.dtd
@@ -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/. -->
+
+<!ENTITY pref.editing.title "Ρυθμίσεις νέας σελίδας">
+
+<!ENTITY authorName.label "Συγγραφέας">
+<!ENTITY authorName.accesskey "υ">
+<!ENTITY pageColorHeader "Εμφάνιση προεπιλεγμένης σελίδας">
+
+<!ENTITY defaultColors.label "Προεπιλεγμένα χρώματα παραλήπτη (Δεν ορίζονται χρώματα στη σελίδα)">
+<!ENTITY defaultColors.accesskey "γ">
+<!ENTITY customColors.label "Χρήση προσαρμοσμένων χρωμάτων:">
+<!ENTITY customColors.accesskey "σ">
+
+<!ENTITY normalText.label "Κανονικό κείμενο">
+<!ENTITY normalText.accesskey "ν">
+<!ENTITY linkText.label "Κείμενο διασύνδεσης">
+<!ENTITY linkText.accesskey "μ">
+<!ENTITY activeLinkText.label "Χρώμα ενεργής διασύνδεσης">
+<!ENTITY activeLinkText.accesskey "ν">
+<!ENTITY visitedLinkText.label "Χρώμα αναγνωσμένης διασύνδεσης">
+<!ENTITY visitedLinkText.accesskey "γ">
+<!ENTITY background.label "Φόντο:">
+<!ENTITY background.accesskey "Φ">
+<!ENTITY colon.character ":">
+
+<!ENTITY backgroundImage.label "Εικόνα φόντου:">
+<!ENTITY backgroundImage.accesskey "κ">
+<!ENTITY chooseFile.label "Επιλογή αρχείου…">
+<!ENTITY chooseFile.accesskey "λ">
diff --git a/l10n-el/suite/chrome/mailnews/CustomHeaders.dtd b/l10n-el/suite/chrome/mailnews/CustomHeaders.dtd
new file mode 100644
index 0000000000..d4762dbb8b
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/CustomHeaders.dtd
@@ -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/. -->
+
+<!ENTITY window.title "Προσαρμογή κεφαλίδων">
+<!ENTITY addButton.label "Προσθήκη">
+<!ENTITY addButton.accesskey "Π">
+<!ENTITY removeButton.label "Αφαίρεση">
+<!ENTITY removeButton.accesskey "Α">
+<!ENTITY newMsgHeader.label "Νέα κεφαλίδα μηνύματος:">
+<!ENTITY newMsgHeader.accesskey "Ν">
diff --git a/l10n-el/suite/chrome/mailnews/FilterEditor.dtd b/l10n-el/suite/chrome/mailnews/FilterEditor.dtd
new file mode 100644
index 0000000000..6fa84a963f
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/FilterEditor.dtd
@@ -0,0 +1,68 @@
+<!-- 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 window.title "Κανόνες φίλτρου">
+<!ENTITY filterEditorDialog.dimensions "width: 105ch;">
+<!ENTITY filterName.label "Όνομα φίλτρου:">
+<!ENTITY filterName.accesskey "ί">
+
+<!ENTITY recentFolders.label "Πρόσφατα">
+
+<!ENTITY junk.label "Ανεπιθύμητα">
+<!ENTITY notJunk.label "Επιθυμητά">
+
+<!ENTITY lowestPriorityCmd.label "Πολύ χαμηλή">
+<!ENTITY lowPriorityCmd.label "Χαμηλή">
+<!ENTITY normalPriorityCmd.label "Κανονική">
+<!ENTITY highPriorityCmd.label "Υψηλή">
+<!ENTITY highestPriorityCmd.label "Πολύ υψηλή">
+
+<!ENTITY contextDesc.label "Εφαρμογή φίλτρου:">
+<!ENTITY contextIncomingMail.label "Κατά τη λήψη νέων email:">
+<!ENTITY contextIncomingMail.accesskey "Κ">
+<!ENTITY contextManual.label "Χειροκίνητη εκτέλεση">
+<!ENTITY contextManual.accesskey "Χ">
+<!ENTITY contextBeforeCls.label "Φιλτράρισμα πριν την ταξινόμηση ανεπιθύμητων">
+<!ENTITY contextAfterCls.label "Φιλτράρισμα μετά την ταξινόμηση ανεπιθύμητων">
+<!ENTITY contextOutgoing.label "Μετά την αποστολή">
+<!ENTITY contextOutgoing.accesskey "Μ">
+<!ENTITY contextArchive.label "Κατά την αρχειοθέτηση">
+<!ENTITY contextArchive.accesskey "α">
+<!ENTITY contextPeriodic.accesskey "ρ">
+
+<!ENTITY filterActionDesc.label "Εκτέλεση των εξής ενεργειών:">
+<!ENTITY filterActionDesc.accesskey "Ε">
+
+<!ENTITY filterActionOrderWarning.label "Σημείωση: Οι ενέργειες φίλτρων θα εκτελούνται με διαφορετική σειρά.">
+<!ENTITY filterActionOrder.label "Προβολή σειράς εκτέλεσης">
+
+<!-- New Style Filter Rule Actions -->
+<!ENTITY moveMessage.label "Μετακίνηση μηνύματος σε">
+<!ENTITY copyMessage.label "Αντιγραφή μηνύματος σε">
+<!ENTITY forwardTo.label "Προώθηση μηνύματος σε">
+<!ENTITY replyWithTemplate.label "Απάντηση με πρότυπο">
+<!ENTITY markMessageRead.label "Επισήμανση ως αναγνωσμένο">
+<!ENTITY markMessageUnread.label "Επισήμανση ως μη αναγνωσμένο">
+<!ENTITY markMessageStarred.label "Επισήμανση με σημαία">
+<!ENTITY setPriority.label "Ορισμός προτεραιότητας σε">
+<!ENTITY addTag.label "Προσθήκη ετικέτας στο μήνυμα">
+<!ENTITY setJunkScore.label "Ορισμός κατάστασης ανεπιθύμητου σε">
+<!ENTITY deleteMessage.label "Διαγραφή μηνύματος">
+<!ENTITY deleteFromPOP.label "Διαγραφή από διακομιστή POP">
+<!ENTITY fetchFromPOP.label "Λήψη από διακομιστή POP">
+<!ENTITY ignoreThread.label "Παράβλεψη νήματος">
+<!ENTITY ignoreSubthread.label "Παράβλεψη υπονήματος">
+<!ENTITY watchThread.label "Παρακολούθηση νήματος">
+<!ENTITY stopExecution.label "Διακοπή εκτέλεσης φίλτρου">
+
+<!ENTITY addAction.tooltip "Προσθήκη νέας ενέργειας">
+<!ENTITY removeAction.tooltip "Αφαίρεση ενέργειας">
+<!-- LOCALIZATION NOTE
+ The values below are used to control the widths of the filter action widgets.
+ Change the values only when the localized strings in the popup menus
+ are truncated in the widgets.
+ -->
+<!-- Flex Attribute: https://developer.mozilla.org/docs/XUL/Attribute/flex -->
+<!ENTITY filterActionTypeFlexValue "1">
+<!ENTITY filterActionTargetFlexValue "4">
diff --git a/l10n-el/suite/chrome/mailnews/FilterListDialog.dtd b/l10n-el/suite/chrome/mailnews/FilterListDialog.dtd
new file mode 100644
index 0000000000..aa942ae434
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/FilterListDialog.dtd
@@ -0,0 +1,30 @@
+<!-- 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 filterListDialog.title "Φίλτρα μηνυμάτων">
+<!ENTITY nameColumn.label "Όνομα φίλτρου">
+<!ENTITY activeColumn.label "Ενεργό">
+<!ENTITY newButton.label "Νέο…">
+<!ENTITY newButton.accesskey "Ν">
+<!ENTITY editButton.label "Επεξεργασία…">
+<!ENTITY editButton.accesskey "Ε">
+<!ENTITY deleteButton.label "Διαγραφή">
+<!ENTITY deleteButton.accesskey "φ">
+<!ENTITY reorderUpButton.label "Μετακίνηση πάνω">
+<!ENTITY reorderUpButton.accesskey "π">
+<!ENTITY reorderDownButton.label "Μετακίνηση κάτω">
+<!ENTITY reorderDownButton.accesskey "κ">
+<!ENTITY filterHeader.label "Τα ενεργά φίλτρα εκτελούνται αυτόματα με την παρακάτω σειρά.">
+<!ENTITY filtersForPrefix.label "Φίλτρα για:">
+<!ENTITY filtersForPrefix.accesskey "Φ">
+<!ENTITY viewLogButton.label "Αρχείο καταγραφής φίλτρου">
+<!ENTITY viewLogButton.accesskey "Α">
+<!ENTITY runFilters.label "Εκτέλεση τώρα">
+<!ENTITY runFilters.accesskey "Ε">
+<!ENTITY stopFilters.label "Διακοπή">
+<!ENTITY stopFilters.accesskey "Δ">
+<!ENTITY folderPickerPrefix.label "Εκτέλεση επιλεγμένων φίλτρων στο:">
+<!ENTITY folderPickerPrefix.accesskey "γ">
+<!ENTITY choosethis.label "επιλογή φακέλου">
+<!ENTITY choosethisnewsserver.label "επιλογή διακομιστή συζήτησης">
diff --git a/l10n-el/suite/chrome/mailnews/SearchDialog.dtd b/l10n-el/suite/chrome/mailnews/SearchDialog.dtd
new file mode 100644
index 0000000000..5f385a08b1
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/SearchDialog.dtd
@@ -0,0 +1,38 @@
+<!-- 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/. -->
+
+<!-- for SearchDialog.xul -->
+<!ENTITY searchHeading.label "Αναζήτηση μηνυμάτων σε:">
+<!ENTITY searchHeading.accesskey "ζ">
+<!ENTITY searchSubfolders.label "Αναζήτηση υποφακέλων">
+<!ENTITY searchSubfolders.accesskey "ν">
+<!ENTITY searchOnHeading.label "Εκτέλεση λειτουργιών αναζήτησης σε:">
+<!ENTITY searchOnHeading.accesskey "Ε">
+<!ENTITY searchOnRemote.label "Απομακρυσμένο διακομιστή">
+<!ENTITY searchOnLocal.label "Τοπικό σύστημα">
+<!ENTITY resetButton.label "Απαλοιφή">
+<!ENTITY resetButton.accesskey "Α">
+<!ENTITY openButton.label "Άνοιγμα">
+<!ENTITY openButton.accesskey "Ά">
+<!ENTITY deleteButton.label "Διαγραφή">
+<!ENTITY deleteButton.accesskey "Δ">
+<!ENTITY searchDialogTitle.label "Αναζήτηση μηνυμάτων">
+<!ENTITY results.label "Αποτελέσματα">
+<!ENTITY moveHereMenu.label "Μετακίνηση εδώ">
+<!ENTITY moveHereMenu.accesskey "ε">
+<!ENTITY moveButton.label "Μετακίνηση σε">
+<!ENTITY moveButton.accesskey "σ">
+<!ENTITY goToFolderButton.label "Άνοιγμα φακέλου μηνυμάτων">
+<!ENTITY goToFolderButton.accesskey "ν">
+<!ENTITY saveAsVFButton.label "Αποθήκευση ως φάκελο αναζήτησης">
+<!ENTITY saveAsVFButton.accesskey "θ">
+
+<!-- for ABSearchDialog.xul -->
+<!ENTITY abSearchHeading.label "Αναζήτηση σε:">
+<!ENTITY abSearchHeading.accesskey "α">
+<!ENTITY propertiesButton.label "Ιδιότητες">
+<!ENTITY propertiesButton.accesskey "Ι">
+<!ENTITY composeButton.label "Σύνθεση">
+<!ENTITY composeButton.accesskey "η">
+<!ENTITY abSearchDialogTitle.label "Σύνθετη αναζήτηση ευρετηρίου">
diff --git a/l10n-el/suite/chrome/mailnews/addressbook/abAddressBookNameDialog.dtd b/l10n-el/suite/chrome/mailnews/addressbook/abAddressBookNameDialog.dtd
new file mode 100644
index 0000000000..a58f545f92
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/addressbook/abAddressBookNameDialog.dtd
@@ -0,0 +1,5 @@
+<!-- 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 name.label "Όνομα ευρετηρίου:">
+<!ENTITY name.accesskey "Ό">
diff --git a/l10n-el/suite/chrome/mailnews/addressbook/abCardOverlay.dtd b/l10n-el/suite/chrome/mailnews/addressbook/abCardOverlay.dtd
new file mode 100644
index 0000000000..d6cca1498f
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/addressbook/abCardOverlay.dtd
@@ -0,0 +1,157 @@
+<!-- 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 Contact.tab "Επαφή">
+<!ENTITY Contact.accesskey "Ε">
+<!ENTITY Name.box "Όνομα">
+
+<!-- LOCALIZATION NOTE:
+ NameField1, NameField2, PhoneticField1, PhoneticField2
+ those fields are either LN or FN depends on the target country.
+ "FirstName" and "LastName" can be swapped for id to change the order
+ but they should not be translated (same applied to phonetic id).
+ Make sure the translation of label corresponds to the order of id.
+-->
+
+<!-- LOCALIZATION NOTE (NameField1.id) : DONT_TRANSLATE -->
+<!ENTITY NameField1.id "FirstName">
+<!-- LOCALIZATION NOTE (NameField2.id) : DONT_TRANSLATE -->
+<!ENTITY NameField2.id "LastName">
+<!-- LOCALIZATION NOTE (PhoneticField1.id) : DONT_TRANSLATE -->
+<!ENTITY PhoneticField1.id "PhoneticFirstName">
+<!-- LOCALIZATION NOTE (PhoneticField2.id) : DONT_TRANSLATE -->
+<!ENTITY PhoneticField2.id "PhoneticLastName">
+
+<!ENTITY NameField1.label "Όνομα:">
+<!ENTITY NameField1.accesskey "Ό">
+<!ENTITY NameField2.label "Επώνυμο:">
+<!ENTITY NameField2.accesskey "Ε">
+<!ENTITY PhoneticField1.label "Φωνητικό:">
+<!ENTITY PhoneticField2.label "Φωνητικό:">
+<!ENTITY DisplayName.label "Εμφάνιση:">
+<!ENTITY DisplayName.accesskey "Ε">
+<!ENTITY preferDisplayName.label "Να προτιμάται πάντα το εμφανιζόμενο όνομα αντί της κεφαλίδας μηνύματος">
+<!ENTITY preferDisplayName2.accesskey "η">
+<!ENTITY NickName.label "Ψευδώνυμο:">
+<!ENTITY NickName.accesskey "Ψ">
+
+<!ENTITY PrimaryEmail.label "Email:">
+<!ENTITY PrimaryEmail.accesskey "E">
+<!ENTITY SecondEmail.label "Επιπρόσθετο email:">
+<!ENTITY SecondEmail.accesskey "i">
+<!ENTITY PreferMailFormat.label "Προτιμώμενη μορφή ληφθέντων μηνυμάτων:">
+<!ENTITY PreferMailFormat.accesskey "λ">
+<!ENTITY PlainText.label "Απλό κείμενο">
+<!ENTITY HTML.label "HTML">
+<!ENTITY Unknown.label "Άγνωστο">
+<!ENTITY chatName.label "Όνομα συνομιλίας:">
+
+<!ENTITY WorkPhone.label "Εργασία:">
+<!ENTITY WorkPhone.accesskey "γ">
+<!ENTITY HomePhone.label "Οικία:">
+<!ENTITY HomePhone.accesskey "κ">
+<!ENTITY FaxNumber.label "Φαξ:">
+<!ENTITY FaxNumber.accesskey "ξ">
+<!ENTITY PagerNumber.label "Βομβητής:">
+<!ENTITY PagerNumber.accesskey "τ">
+<!ENTITY CellularNumber.label "Κινητό:">
+<!ENTITY CellularNumber.accesskey "ν">
+
+<!ENTITY Home.tab "Ιδιωτικό">
+<!ENTITY Home.accesskey "Ι">
+<!ENTITY HomeAddress.label "Διεύθυνση:">
+<!ENTITY HomeAddress.accesskey "θ">
+<!ENTITY HomeAddress2.label "">
+<!ENTITY HomeAddress2.accesskey "">
+<!ENTITY HomeCity.label "Πόλη:">
+<!ENTITY HomeCity.accesskey "λ">
+<!ENTITY HomeState.label "Πολιτεία/Περιφέρεια:">
+<!ENTITY HomeState.accesskey "Π">
+<!ENTITY HomeZipCode.label "Ταχυδρομικός κώδικας:">
+<!ENTITY HomeZipCode.accesskey "Τ">
+<!ENTITY HomeCountry.label "Χώρα:">
+<!ENTITY HomeCountry.accesskey "ώ">
+<!ENTITY HomeWebPage.label "Ιστοσελίδα:">
+<!ENTITY HomeWebPage.accesskey "ε">
+<!ENTITY Birthday.label "Γενέθλια:">
+<!ENTITY Birthday.accesskey "Γ">
+<!ENTITY In.label "">
+<!ENTITY Year.placeholder "Έτος">
+<!ENTITY Or.value "ή">
+<!ENTITY Age.placeholder "Ηλικία">
+<!ENTITY YearsOld.label "">
+
+<!ENTITY Work.tab "Εργασία">
+<!ENTITY Work.accesskey "Ε">
+<!ENTITY JobTitle.label "Τίτλος:">
+<!ENTITY JobTitle.accesskey "ί">
+<!ENTITY Department.label "Τμήμα:">
+<!ENTITY Department.accesskey "μ">
+<!ENTITY Company.label "Οργανισμός:">
+<!ENTITY Company.accesskey "ρ">
+<!ENTITY WorkAddress.label "Διεύθυνση:">
+<!ENTITY WorkAddress.accesskey "ν">
+<!ENTITY WorkAddress2.label "">
+<!ENTITY WorkAddress2.accesskey "">
+<!ENTITY WorkCity.label "Πόλη:">
+<!ENTITY WorkCity.accesskey "λ">
+<!ENTITY WorkState.label "Πολιτεία/Περιφέρεια:">
+<!ENTITY WorkState.accesskey "Π">
+<!ENTITY WorkZipCode.label "Ταχυδρομικός κώδικας:">
+<!ENTITY WorkZipCode.accesskey "Τ">
+<!ENTITY WorkCountry.label "Χώρα:">
+<!ENTITY WorkCountry.accesskey "ώ">
+<!ENTITY WorkWebPage.label "Ιστοσελίδα:">
+<!ENTITY WorkWebPage.accesskey "δ">
+
+<!ENTITY Other.tab "Άλλο">
+<!ENTITY Other.accesskey "λ">
+<!ENTITY Custom1.label "Προσαρμοσμένο 1:">
+<!ENTITY Custom1.accesskey "1">
+<!ENTITY Custom2.label "Προσαρμοσμένο 2:">
+<!ENTITY Custom2.accesskey "2">
+<!ENTITY Custom3.label "Προσαρμοσμένο 3:">
+<!ENTITY Custom3.accesskey "3">
+<!ENTITY Custom4.label "Προσαρμοσμένο 4:">
+<!ENTITY Custom4.accesskey "4">
+<!ENTITY Notes.label "Σημειώσεις:">
+<!ENTITY Notes.accesskey "Σ">
+
+<!ENTITY Chat.tab "Συνομιλία">
+<!ENTITY Chat.accesskey "ι">
+<!ENTITY Gtalk.label "Google Talk:">
+<!ENTITY Gtalk.accesskey "G">
+<!ENTITY AIM.label "AIM:">
+<!ENTITY AIM.accesskey "M">
+<!ENTITY Yahoo.label "Yahoo!:">
+<!ENTITY Yahoo.accesskey "Y">
+<!ENTITY Skype.label "Skype:">
+<!ENTITY Skype.accesskey "S">
+<!ENTITY QQ.label "QQ:">
+<!ENTITY QQ.accesskey "Q">
+<!ENTITY MSN.label "MSN:">
+<!ENTITY MSN.accesskey "N">
+<!ENTITY ICQ.label "ICQ:">
+<!ENTITY ICQ.accesskey "I">
+<!ENTITY XMPP.label "Jabber ID:">
+<!ENTITY XMPP.accesskey "J">
+<!ENTITY IRC.label "Ψευδώνυμο IRC:">
+<!ENTITY IRC.accesskey "R">
+
+<!ENTITY Photo.tab "Φωτογραφία">
+<!ENTITY Photo.accesskey "ο">
+<!ENTITY PhotoDesc.label "Επιλέξτε ένα από τα παρακάτω:">
+<!ENTITY GenericPhoto.label "Γενική φωτογραφία">
+<!ENTITY GenericPhoto.accesskey "Γ">
+<!ENTITY DefaultPhoto.label "Προεπιλογή">
+<!ENTITY PhotoFile.label "Σε αυτό τον υπολογιστή">
+<!ENTITY PhotoFile.accesskey "ν">
+<!ENTITY BrowsePhoto.label "Περιήγηση">
+<!ENTITY BrowsePhoto.accesskey "ρ">
+<!ENTITY PhotoURL.label "Στο διαδίκτυο">
+<!ENTITY PhotoURL.accesskey "δ">
+<!ENTITY PhotoURL.placeholder "Επικολλήστε ή εισάγετε τη διαδικτυακή διεύθυνση μιας φωτογραφίας">
+<!ENTITY UpdatePhoto.label "Ενημέρωση">
+<!ENTITY UpdatePhoto.accesskey "ν">
+<!ENTITY PhotoDropTarget.label "Σύρετε μια νέα φωτογραφία εδώ">
diff --git a/l10n-el/suite/chrome/mailnews/addressbook/abMailListDialog.dtd b/l10n-el/suite/chrome/mailnews/addressbook/abMailListDialog.dtd
new file mode 100644
index 0000000000..d30a2e0a01
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/addressbook/abMailListDialog.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/. -->
+
+<!-- Title -->
+<!ENTITY mailListWindow.title "Λίστα αλληλογραφίας">
+
+<!-- Labels and Access Keys -->
+<!ENTITY addToAddressBook.label "Προσθήκη σε:">
+<!ENTITY addToAddressBook.accesskey "Π">
+<!ENTITY ListName.label "Όνομα λίστας:">
+<!ENTITY ListName.accesskey "λ">
+<!ENTITY ListNickName.label "Ψευδώνυμο λίστας: ">
+<!ENTITY ListNickName.accesskey "Ψ">
+<!ENTITY ListDescription.label "Περιγραφή:">
+<!ENTITY ListDescription.accesskey "Π">
+<!-- See bug 58485, when we implement drag and drop, add 'or drag addresses' back in -->
+<!ENTITY AddressTitle.label "Εισάγετε διευθύνσεις email για προσθήκη στη λίστα αλληλογραφίας:">
+<!ENTITY AddressTitle.accesskey "λ">
diff --git a/l10n-el/suite/chrome/mailnews/addressbook/abMainWindow.dtd b/l10n-el/suite/chrome/mailnews/addressbook/abMainWindow.dtd
new file mode 100644
index 0000000000..ec2bcd4921
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/addressbook/abMainWindow.dtd
@@ -0,0 +1,122 @@
+<!-- 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/. -->
+
+<!-- Title -->
+<!ENTITY addressbookWindow.title "Ευρετήριο">
+<!ENTITY blankResultsPaneMessage.label "Αυτό το ευρετήριο εμφανίζει επαφές μόνο μετά από αναζήτηση">
+<!ENTITY localResultsOnlyMessage.label "Οι επαφές από απομακρυσμένα ευρετήρια δεν εμφανίζονται μέχρι να κάνετε αναζήτηση">
+<!-- File Menu -->
+<!ENTITY newContact.label "Επαφή…">
+<!ENTITY newContact.accesskey "Ε">
+<!ENTITY newContact.key "N">
+<!ENTITY newListCmd.label "Λίστα αλληλογραφίας…">
+<!ENTITY newListCmd.accesskey "Λ">
+<!ENTITY newAddressBookCmd.label "Ευρετήριο διευθύνσεων…">
+<!ENTITY newAddressBookCmd.accesskey "τ">
+<!ENTITY newLDAPDirectoryCmd.label "Κατάλογος LDAP…">
+<!ENTITY newLDAPDirectoryCmd.accesskey "Κ">
+<!ENTITY newIM.label "IM">
+<!ENTITY printContactViewCmd.label "Εκτύπωση επαφής…">
+<!ENTITY printContactViewCmd.accesskey "Ε">
+<!ENTITY printContactViewCmd.key "P">
+<!ENTITY printPreviewContactViewCmd.label "Προεπισκόπηση εκτύπωσης επαφής">
+<!ENTITY printPreviewContactViewCmd.accesskey "σ">
+<!ENTITY printAddressBook.label "Εκτύπωση ευρετηρίου…">
+<!ENTITY printAddressBook.accesskey "ρ">
+<!ENTITY printPreviewAddressBook.label "Προεπισκόπηση εκτύπωσης ευρετηρίου">
+<!ENTITY printPreviewAddressBook.accesskey "η">
+
+<!-- Edit Menu -->
+<!ENTITY deleteAbCmd.label "Διαγραφή ευρετηρίου">
+<!ENTITY deleteContactCmd.label "Διαγραφή επαφής">
+<!ENTITY deleteContactsCmd.label "Διαγραφή επιλεγμένων επαφών">
+<!ENTITY deleteListCmd.label "Διαγραφή λίστας">
+<!ENTITY deleteListsCmd.label "Διαγραφή επιλεγμένων λιστών">
+<!ENTITY deleteItemsCmd.label "Διαγραφή επιλεγμένων στοιχείων">
+<!ENTITY swapFirstNameLastNameCmd.label "Εναλλαγή ονόματος/επωνύμου">
+<!ENTITY swapFirstNameLastNameCmd.accesskey "λ">
+<!ENTITY propertiesCmd.label "Ιδιότητες…">
+<!ENTITY propertiesCmd.accesskey "ι">
+<!ENTITY propertiesCmd.key "i">
+
+<!-- View Menu -->
+<!ENTITY showAbToolbarCmd.label "Γραμμή ευρετηρίων διευθύνσεων">
+<!ENTITY showAbToolbarCmd.accesskey "ρ">
+<!ENTITY layoutMenu.label "Διάταξη">
+<!ENTITY layoutMenu.accesskey "Δ">
+<!ENTITY showDirectoryPane.label "Προβολή καταλόγων">
+<!ENTITY showDirectoryPane.accesskey "κ">
+<!ENTITY showContactPane2.label "Προβολή επαφών">
+<!ENTITY showContactPane2.accesskey "ε">
+<!ENTITY menu_ShowNameAs.label "Εμφάνιση ονόματος ως">
+<!ENTITY menu_ShowNameAs.accesskey "ν">
+<!ENTITY firstLastCmd.label "Όνομα Επώνυμο">
+<!ENTITY firstLastCmd.accesskey "Ό">
+<!ENTITY lastFirstCmd.label "Επώνυμο, Όνομα">
+<!ENTITY lastFirstCmd.accesskey "π">
+<!ENTITY displayNameCmd.label "Εμφανιζόμενο όνομα">
+<!ENTITY displayNameCmd.accesskey "Ε">
+<!-- LOCALIZATION NOTE (toggleDirectoryPaneCmd.key): This is only used on the
+ mac platform, other platforms use VK_F9. -->
+<!ENTITY toggleDirectoryPaneCmd.key "S">
+
+<!-- Tasks Menu -->
+<!ENTITY importCmd.label "Εισαγωγή…">
+<!ENTITY importCmd.accesskey "Ε">
+<!ENTITY exportCmd.label "Εξαγωγή…">
+<!ENTITY exportCmd.accesskey "Ε">
+
+<!-- Toolbar and Popup items -->
+<!ENTITY newContactButton.label "Νέα επαφή">
+<!ENTITY newContactButton.accesskey "ε">
+<!ENTITY newlistButton.label "Νέα λίστα">
+<!ENTITY newlistButton.accesskey "λ">
+<!ENTITY editItemButton.label "Ιδιότητες">
+<!ENTITY editItemButton.accesskey "Ι">
+<!ENTITY newmsgButton.label "Σύνθεση">
+<!ENTITY newmsgButton.accesskey "Σ">
+<!ENTITY deleteItemButton.label "Διαγραφή">
+<!ENTITY deleteItemButton.accesskey "Δ">
+<!ENTITY newimButton.label "Άμεσο μήνυμα">
+<!ENTITY newimButton.accesskey "Ά">
+<!ENTITY printButton.label "Εκτύπωση">
+<!ENTITY printButton.accesskey "κ">
+<!ENTITY searchNameAndEmail.placeholder "Αναζήτηση ονομάτων και email">
+<!ENTITY searchBox.title "Αναζήτηση">
+
+<!-- Tooltips -->
+<!ENTITY addressbookToolbar.tooltip "Γραμμή ευρετηρίων διευθύνσεων">
+<!ENTITY newContactButton.tooltip "Δημιουργία νέας επαφής ευρετηρίου">
+<!ENTITY newlistButton.tooltip "Δημιουργία νέας λίστας">
+<!ENTITY editItemButton.tooltip "Επεξεργασία επιλεγμένου στοιχείου">
+<!ENTITY newmsgButton.tooltip "Αποστολή μηνύματος email">
+<!ENTITY newIM.tooltip "Αποστολή άμεσου μηνύματος ή συνομιλία">
+<!ENTITY printButton.tooltip "Εκτύπωση επιλεγμένου στοιχείου">
+<!ENTITY deleteItemButton.tooltip "Διαγραφή επιλεγμένου στοιχείου">
+<!ENTITY advancedButton.tooltip "Σύνθετη αναζήτηση διεύθυνσης">
+
+<!-- Dir Tree header -->
+<!ENTITY dirTreeHeader.label "Ευρετήρια">
+
+<!-- Card Summary Pane -->
+<!-- Box Headings -->
+<!ENTITY contact.heading "Επαφή">
+<!ENTITY home.heading "Οικία">
+<!ENTITY other.heading "Άλλο">
+<!ENTITY chat.heading "Συνομιλία">
+<!ENTITY phone.heading "Τηλέφωνο">
+<!ENTITY work.heading "Εργασία">
+<!-- Special Box Headings, for mailing lists -->
+<!ENTITY description.heading "Περιγραφή">
+<!ENTITY addresses.heading "Διευθύνσεις">
+<!-- For Map It! -->
+<!ENTITY mapItButton.label "Λήψη χάρτη">
+<!ENTITY mapIt.tooltip "Προβολή χάρτη διεύθυνσης από το διαδίκτυο">
+
+<!-- Status Bar -->
+<!ENTITY statusText.label "">
+
+<!-- LOCALIZATION NOTE (hideSwapFnLnUI) : DONT_TRANSLATE -->
+<!-- Swap FN/LN UI Set to "false" to show swap fn/ln UI -->
+<!ENTITY hideSwapFnLnUI "true">
diff --git a/l10n-el/suite/chrome/mailnews/addressbook/abNewCardDialog.dtd b/l10n-el/suite/chrome/mailnews/addressbook/abNewCardDialog.dtd
new file mode 100644
index 0000000000..cd7ab7366c
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/addressbook/abNewCardDialog.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/. -->
+
+<!-- Labels -->
+<!ENTITY chooseAddressBook.label "Προσθήκη σε:">
+<!ENTITY chooseAddressBook.accesskey "σ">
diff --git a/l10n-el/suite/chrome/mailnews/addressbook/abResultsPaneOverlay.dtd b/l10n-el/suite/chrome/mailnews/addressbook/abResultsPaneOverlay.dtd
new file mode 100644
index 0000000000..dbc31acbdc
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/addressbook/abResultsPaneOverlay.dtd
@@ -0,0 +1,52 @@
+<!-- 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 Addrbook.label "Ευρετήριο">
+<!ENTITY Addrbook.accesskey "Ε">
+<!ENTITY GeneratedName.label "Όνομα">
+<!ENTITY GeneratedName.accesskey "Ό">
+<!ENTITY PrimaryEmail.label "Email">
+<!ENTITY PrimaryEmail.accesskey "E">
+<!ENTITY Company.label "Εταιρεία">
+<!ENTITY Company.accesskey "ρ">
+<!ENTITY _PhoneticName.label "Φωνητικό όνομα">
+<!ENTITY _PhoneticName.accesskey "ο">
+<!ENTITY NickName.label "Ψευδώνυμο">
+<!ENTITY NickName.accesskey "δ">
+<!ENTITY SecondEmail.label "Επιπρόσθετο email">
+<!ENTITY SecondEmail.accesskey "l">
+<!ENTITY Department.label "Τμήμα">
+<!ENTITY Department.accesskey "μ">
+<!ENTITY JobTitle.label "Τίτλος">
+<!ENTITY JobTitle.accesskey "Τ">
+<!ENTITY CellularNumber.label "Κινητό">
+<!ENTITY CellularNumber.accesskey "Κ">
+<!ENTITY PagerNumber.label "Βομβητής">
+<!ENTITY PagerNumber.accesskey "Β">
+<!ENTITY FaxNumber.label "Φαξ">
+<!ENTITY FaxNumber.accesskey "Φ">
+<!ENTITY HomePhone.label "Τηλέφωνο οικίας">
+<!ENTITY HomePhone.accesskey "Τ">
+<!ENTITY WorkPhone.label "Τηλέφωνο εργασίας">
+<!ENTITY WorkPhone.accesskey "ε">
+<!ENTITY ChatName.label "Όνομα συνομιλίας">
+<!ENTITY ChatName.accesskey "σ">
+<!ENTITY sortAscending.label "Αύξουσα">
+<!ENTITY sortAscending.accesskey "Α">
+<!ENTITY sortDescending.label "Φθίνουσα">
+<!ENTITY sortDescending.accesskey "Φ">
+
+<!-- context menu -->
+<!ENTITY composeEmail.label "Σύνθεση email προς">
+<!ENTITY composeEmail.accesskey "Σ">
+<!ENTITY copyAddress.label "Αντιγραφή διεύθυνσης email">
+<!ENTITY copyAddress.accesskey "δ">
+<!ENTITY deleteAddrBookCard.label "Διαγραφή">
+<!ENTITY deleteAddrBookCard.accesskey "Δ">
+<!ENTITY newAddrBookCard.label "Νέα κάρτα…">
+<!ENTITY newAddrBookCard.accesskey "Ν">
+<!ENTITY newAddrBookMailingList.label "Νέα λίστα αλληλογραφίας…">
+<!ENTITY newAddrBookMailingList.accesskey "λ">
+<!ENTITY addrBookCardProperties.label "Ιδιότητες">
+<!ENTITY addrBookCardProperties.accesskey "Ι">
diff --git a/l10n-el/suite/chrome/mailnews/addressbook/abSelectAddressesDialog.dtd b/l10n-el/suite/chrome/mailnews/addressbook/abSelectAddressesDialog.dtd
new file mode 100644
index 0000000000..260e53267d
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/addressbook/abSelectAddressesDialog.dtd
@@ -0,0 +1,30 @@
+<!-- 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/. -->
+
+<!-- Title -->
+<!ENTITY selectAddressWindow.title "Επιλογή διευθύνσεων">
+
+<!-- Buttons -->
+<!ENTITY toButton.label "Προς->">
+<!ENTITY toButton.accesskey "Π">
+<!ENTITY ccButton.label "Κοιν.->">
+<!ENTITY ccButton.accesskey "Κ">
+<!ENTITY bccButton.label "Κρ.Κοιν.->">
+<!ENTITY bccButton.accesskey "ρ">
+<!ENTITY newButton.label "Νέο…">
+<!ENTITY newButton.accesskey "Ν">
+<!ENTITY editButton.label "Επεξεργασία…">
+<!ENTITY editButton.accesskey "Ε">
+<!ENTITY removeButton.label "Αφαίρεση">
+<!ENTITY removeButton.accesskey "Α">
+<!ENTITY lookIn.label "Αναζήτηση σε:">
+<!ENTITY lookIn.accesskey "Α">
+<!ENTITY for.label "για:">
+<!ENTITY for.accesskey "γ">
+<!ENTITY for.placeholder "Όνομα ή email">
+<!ENTITY addressMessageTo.label "Αποστολή μηνύματος σε:">
+
+<!-- Tooltips items -->
+<!ENTITY addressPickerNewButton.tooltip "Δημιουργία νέας κάρτας ευρετηρίου">
+<!ENTITY addressPickerEditButton.tooltip "Επεξεργασία επιλεγμένης κάρτας">
diff --git a/l10n-el/suite/chrome/mailnews/addressbook/addressBook.properties b/l10n-el/suite/chrome/mailnews/addressbook/addressBook.properties
new file mode 100644
index 0000000000..059275fd61
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/addressbook/addressBook.properties
@@ -0,0 +1,264 @@
+# 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/.
+
+# The following are used by the Mailing list dialog.
+# LOCALIZATION NOTE (mailingListTitleEdit): %S will be replaced by the Mailing List's display name.
+mailingListTitleEdit=Επεξεργασία %S
+emptyListName=Πρέπει να εισάγετε ένα όνομα λίστας.
+lastFirstFormat=%S, %S
+firstLastFormat=%S %S
+
+allAddressBooks=Όλα τα ευρετήρια
+
+newContactTitle=Νέα επαφή
+# %S will be the card's display name
+newContactTitleWithDisplayName=Νέα επαφή για %S
+editContactTitle=Επεξεργασία επαφής
+# %S will be the card's display name
+editContactTitleWithDisplayName=Επεξεργασία επαφής για %S
+# don't translate vCard
+editVCardTitle=Επεξεργασία vCard
+# %S will be the card's display name, don't translate vCard
+editVCardTitleWithDisplayName=Επεξεργασία vCard για %S
+
+## LOCALIZATION NOTE (cardRequiredDataMissingMessage): do not localize \n
+cardRequiredDataMissingMessage=Πρέπει να εισάγετε τουλάχιστον ένα από τα παρακάτω:\nΔιεύθυνση email, Όνομα, Επώνυμο, Εμφανιζόμενο όνομα, Οργανισμός.
+cardRequiredDataMissingTitle=Λείπουν απαιτούμενες πληροφορίες
+incorrectEmailAddressFormatMessage=Η κύρια διεύθυνση email πρέπει να είναι της μορφής user@host.
+incorrectEmailAddressFormatTitle=Λάθος μορφή διεύθυνσης email
+
+viewListTitle=Λίστα αλληλογραφίας: %S
+mailListNameExistsTitle=Η λίστα αλληλογραφίας υπάρχει ήδη
+mailListNameExistsMessage=Υπάρχει ήδη λίστα αλληλογραφίας με αυτό το όνομα. Παρακαλώ επιλέξτε ένα διαφορετικό όνομα.
+
+confirmDeleteThisContactTitle=Διαγραφή επαφής
+# LOCALIZATION NOTE (confirmDeleteThisContact):
+# #1 The name of the selected contact
+# Don't localize "\n• #1" unless your local layout comes out wrong.
+# Example: Are you sure you want to delete this contact?
+# • John Doe
+confirmDeleteThisContact=Θέλετε σίγουρα να διαγράψετε αυτή την επαφή;\n• #1
+
+confirmDelete2orMoreContactsTitle=Διαγραφή πολλαπλών επαφών
+# LOCALIZATION NOTE (confirmDelete2orMoreContacts):
+# Semicolon list of plural forms.
+# See: http://developer.mozilla.org/docs/Localization_and_Plurals
+# #1 The number of selected contacts, always more than 1.
+# Example: Are you sure you want to delete these 3 contacts?
+confirmDelete2orMoreContacts=Θέλετε σίγουρα να διαγράψετε αυτή τη #1 επαφή;;Θέλετε σίγουρα να διαγράψετε αυτές τις #1 επαφές;
+
+confirmRemoveThisContactTitle=Αφαίρεση επαφής
+# LOCALIZATION NOTE (confirmRemoveThisContact):
+# #1 The name of the selected contact
+# #2 The name of the containing mailing list
+# This title is about a contact in a mailing list, so it will not be deleted,
+# but only removed from the list.
+# Don't localize "\n• #1" unless your local layout comes out wrong.
+# Example: Are you sure you want to remove this contact from the mailing list 'Customers List'?
+# • John Doe
+confirmRemoveThisContact=Θέλετε σίγουρα να αφαιρέσετε αυτή την επαφή από τη λίστα αλληλογραφίας '#2';\n• #1
+
+confirmRemove2orMoreContactsTitle=Αφαίρεση πολλαπλών επαφών
+# LOCALIZATION NOTE (confirmRemove2orMoreContacts):
+# Semicolon list of singular and plural forms.
+# See: http://developer.mozilla.org/docs/Localization_and_Plurals
+# #1 The number of selected contacts, always more than 1.
+# #2 The name of the containing mailing list
+# Example: Are you sure you want to remove these 3 contacts from the mailing list 'Customers List'?
+confirmRemove2orMoreContacts=Θέλετε σίγουρα να αφαιρέσετε αυτή τη #1 επαφή από τη λίστα αλληλογραφίας '#2';;Θέλετε σίγουρα να αφαιρέσετε αυτές τις #1 επαφές από τη λίστα αλληλογραφίας '#2';
+
+confirmDeleteThisMailingListTitle=Διαγραφή λίστα αλληλογραφίας
+# LOCALIZATION NOTE (confirmDeleteThisMailingList):
+# #1 The name of the selected mailing list
+# Don't localize "\n• #1" unless your local layout comes out wrong.
+# Example: Are you sure you want to delete this mailing list?
+# • Customers List
+confirmDeleteThisMailingList=Θέλετε σίγουρα να διαγράψετε αυτή τη λίστα αλληλογραφίας;\n• #1
+
+confirmDelete2orMoreMailingListsTitle=Διαγραφή πολλαπλών λιστών αλληλογραφίας
+# LOCALIZATION NOTE (confirmDelete2orMoreMailingLists):
+# Semicolon list of plural forms.
+# See: http://developer.mozilla.org/docs/Localization_and_Plurals
+# #1 The number of selected mailing lists, always more than 1
+# Example: Are you sure you want to delete these 3 mailing lists?
+confirmDelete2orMoreMailingLists=Θέλετε σίγουρα να διαγράψετε αυτή τη #1 λίστα αλληλογραφίας;;Θέλετε σίγουρα να διαγράψετε αυτές τις #1 λίστες αλληλογραφίας;
+
+confirmDelete2orMoreContactsAndListsTitle=Διαγραφή επαφών και λιστών αλληλογραφίας
+# LOCALIZATION NOTE (confirmDelete2orMoreContactsAndLists):
+# Semicolon list of and plural forms.
+# See: http://developer.mozilla.org/docs/Localization_and_Plurals
+# #1 The number of selected contacts and mailing lists, always more than 1
+# Example: Are you sure you want to delete these 3 contacts and mailing lists?
+confirmDelete2orMoreContactsAndLists=Θέλετε σίγουρα να διαγράψετε αυτές τις #1 επαφές και λίστες αλληλογραφίας;;Θέλετε σίγουρα να διαγράψετε αυτές τις #1 επαφές και λίστες αλληλογραφίας;
+
+confirmDeleteThisAddressbookTitle=Διαγραφή ευρετηρίου
+# LOCALIZATION NOTE (confirmDeleteThisAddressbookTitle):
+# #1 The name of the selected address book
+# Don't localize "\n• #1" unless your local layout comes out wrong.
+# Example: Are you sure you want to delete this address book and all of its contacts?
+# • Friends and Family Address Book
+confirmDeleteThisAddressbook=Θέλετε σίγουρα να διαγράψετε αυτό το ευρετήριο και όλες τις επαφές του;\n• #1
+
+confirmDeleteThisLDAPDirTitle=Διαγραφή τοπικού καταλόγου LDAP
+# LOCALIZATION NOTE (confirmDeleteThisLDAPDir):
+# #1 The name of the selected LDAP directory
+# Don't localize "\n• #1" unless your local layout comes out wrong.
+# Example: Are you sure you want to delete the local copy of this LDAP directory and all of its offline contacts?
+# • Mozilla LDAP Directory
+confirmDeleteThisLDAPDir=Θέλετε σίγουρα να διαγράψετε το τοπικό αντίγραφο αυτού του καταλόγου LDAP και όλων των εκτός σύνδεσης επαφών του;\n• #1
+
+confirmDeleteThisCollectionAddressbookTitle=Διαγραφή ευρετηρίου συλλογής
+# LOCALIZATION NOTE (confirmDeleteThisCollectionAddressbook):
+# #1 The name of the selected collection address book
+# #2 The name of the application (Thunderbird)
+# Don't localize "\n• #1" unless your local layout comes out wrong.
+# Example: If this address book is deleted, Thunderbird will no longer collect addresses.
+# Are you sure you want to delete this address book and all of its contacts?
+# • My Collecting Addressbook
+confirmDeleteThisCollectionAddressbook=Αν διαγραφεί αυτό το ευρετήριο, το #2 δεν θα συλλέγει πλέον διευθύνσεις.\nΘέλετε σίγουρα να διαγράψετε αυτό το ευρετήριο και όλες τις επαφές του;\n• #1
+
+propertyPrimaryEmail=Email
+propertyListName=Όνομα λίστας
+propertySecondaryEmail=Επιπρόσθετο email
+propertyNickname=Ψευδώνυμο
+propertyDisplayName=Εμφανιζόμενο όνομα
+propertyWork=Εργασία
+propertyHome=Αρχική
+propertyFax=Φαξ
+propertyCellular=Κινητό
+propertyPager=Βομβητής
+propertyBirthday=Γενέθλια
+propertyCustom1=Προσαρμοσμένο 1
+propertyCustom2=Προσαρμοσμένο 2
+propertyCustom3=Προσαρμοσμένο 3
+propertyCustom4=Προσαρμοσμένο 4
+
+propertyGtalk=Google Talk
+propertyAIM=AIM
+propertyYahoo=Yahoo!
+propertySkype=Skype
+propertyQQ=QQ
+propertyMSN=MSN
+propertyICQ=ICQ
+propertyXMPP=Jabber ID
+propertyIRC=Ψευδώνυμο IRC
+
+## LOCALIZATION NOTE (cityAndStateAndZip):
+## %1$S is city, %2$S is state, %3$S is zip
+cityAndStateAndZip=%1$S, %2$S %3$S
+## LOCALIZATION NOTE (cityAndStateNoZip):
+## %1$S is city, %2$S is state
+cityAndStateNoZip=%1$S, %2$S
+## LOCALIZATION NOTE (cityOrStateAndZip):
+## %1$S is city or state, %2$S is zip
+cityOrStateAndZip=%1$S %2$S
+
+stateZipSeparator=
+
+prefixTo=Προς
+prefixCc=Κοιν.
+prefixBcc=Κρ. κοιν.
+emptyEmailAddCard=Δεν μπορείτε να προσθέσετε κάρτα χωρίς κύρια διεύθυνση email
+emptyEmailAddCardTitle=Αδυναμία προσθήκης κάρτας
+addressBook=Ευρετήριο διευθύνσεων
+
+# Contact photo management
+browsePhoto=Φωτογραφία επαφής
+
+stateImageSave=Αποθήκευση εικόνας…
+errorInvalidUri=Σφάλμα: Μη έγκυρη πηγή εικόνας.
+errorNotAvailable=Σφάλμα: Το αρχείο δεν είναι προσβάσιμο.
+errorInvalidImage=Σφάλμα: Υποστηρίζονται μόνο εικόνες τύπου JPG, PNG και GIF.
+errorSaveOperation=Σφάλμα: Αδυναμία αποθήκευσης εικόνας.
+
+# mailnews.js
+ldap_2.servers.pab.description=Προσωπικό ευρετήριο
+ldap_2.servers.history.description=Συλλεγμένες διευθύνσεις
+## LOCALIZATION NOTE (ldap_2.servers.oe.description is only used on Windows)
+ldap_2.servers.oe.description=Επαφές OE
+## LOCALIZATION NOTE (ldap_2.servers.osx.description is only used on Mac OS X)
+ldap_2.servers.osx.description=Ευρετήριο διευθύνσεων Mac OS X
+
+# status bar stuff
+## LOCALIZATION NOTE (totalContactStatus):
+## %1$S is address book name, %2$S is card count
+totalContactStatus=Σύνολο επαφών στο %1$S: %2$S
+noMatchFound=Δεν βρέθηκαν αντιστοιχίες
+## LOCALIZATION NOTE (matchesFound1):
+## Semicolon-separated list of singular and plural forms.
+## See: https://developer.mozilla.org/docs/Mozilla/Localization/Localization_and_Plurals
+## #1 is the number of matching contacts found
+matchesFound1=Βρέθηκε #1 αντιστοιχία;Βρέθηκαν #1 αντιστοιχίες
+
+## LOCALIZATION NOTE (contactsCopied): Semi-colon list of plural forms
+## %1$S is the number of contacts that were copied. This should be used multiple
+## times wherever you need it. Do not replace by %S.
+contactsCopied=Αντιγράφηκε %1$S επαφή;Αντιγράφηκαν %1$S επαφές
+
+## LOCALIZATION NOTE (contactsMoved): Semi-colon list of plural forms
+## %1$S is the number of contacts that were moved. This should be used multiple
+## times wherever you need it. Do not replace by %S.
+contactsMoved=Μετακινήθηκε %1$S επαφή;Μετακινήθηκαν %1$S επαφές
+
+# LDAP directory stuff
+invalidName=Παρακαλώ εισάγετε ένα έγκυρο όνομα.
+invalidHostname=Παρακαλώ εισάγετε ένα έγκυρο όνομα κεντρικού υπολογιστή.
+invalidPortNumber=Παρακαλώ εισάγετε έναν έγκυρο αριθμό θύρας.
+invalidResults=Παρακαλώ εισάγετε έναν έγκυρο αριθμό στο πεδίο αποτελεσμάτων.
+abReplicationOfflineWarning=Πρέπει να έχετε σύνδεση στο διαδίκτυο για αντιγραφή LDAP.
+abReplicationSaveSettings=Πρέπει να αποθηκεύσετε τις ρυθμίσεις πριν μπορέσετε να κάνετε λήψη ενός καταλόγου.
+
+# For importing / exporting
+## LOCALIZATION NOTE (ExportAddressBookNameTitle): %S is the name of exported addressbook
+ExportAddressBookNameTitle=Εξαγωγή ευρετηρίου - %S
+LDIFFiles=LDIF
+CSVFiles=Με διαχωρισμό με κόμματα
+CSVFilesSysCharset=Με διαχωρισμό με κόμματα (Κωδικοποίηση συστήματος)
+CSVFilesUTF8=Με διαχωρισμό με κόμματα (UTF-8)
+TABFiles=Οριοθετημένο με στηλοθέτες
+TABFilesSysCharset=Οριοθετημένο με στηλοθέτες (Κωδικοποίηση συστήματος)
+TABFilesUTF8=Οριοθετημένο με στηλοθέτες (UTF-8)
+VCFFiles=vCard
+failedToExportTitle=Η εξαγωγή απέτυχε
+failedToExportMessageNoDeviceSpace=Αποτυχία εξαγωγής ευρετηρίου, δεν υπάρχει χώρος στη συσκευή.
+failedToExportMessageFileAccessDenied=Αποτυχία εξαγωγής ευρετηρίου, απαγορεύθηκε η πρόσβαση στο αρχείο.
+
+# For getting authDN for replication using dlg box
+AuthDlgTitle=Αντιγραφή ευρετηρίου LDAP
+AuthDlgDesc=Για πρόσβαση στον διακομιστή καταλόγου, εισάγετε το όνομα χρήστη και τον κωδικό πρόσβασής σας.
+
+# LOCALIZATION NOTE(joinMeInThisChat)
+# use + for spaces
+joinMeInThisChat=Μπείτε+κι+εσείς+σε+αυτή+τη+συνομιλία.
+
+# For printing
+headingHome=Αρχική
+headingWork=Εργασία
+headingOther=Άλλο
+headingChat=Συνομιλία
+headingPhone=Τηλέφωνο
+headingDescription=Περιγραφή
+headingAddresses=Διευθύνσεις
+
+## For address books
+addressBookTitleNew=Νέο ευρετήριο
+# LOCALIZATION NOTE (addressBookTitleEdit):
+# %S is the current name of the address book.
+# Example: My Custom AB Properties
+addressBookTitleEdit=%S - Ιδιότητες
+duplicateNameTitle=Διπλότυπο όνομα ευρετηρίου
+# LOCALIZATION NOTE (duplicateNameText):
+# Don't localize "\n• %S" unless your local layout comes out wrong.
+# %S is the name of the existing address book.
+# Example: An address book with this name already exists:
+# • My Custom AB
+duplicateNameText=Υπάρχει ήδη ευρετήριο με αυτό το όνομα:\n• %S
+
+# For corrupt .mab files
+corruptMabFileTitle=Κατεστραμμένο αρχείο ευρετηρίου
+corruptMabFileAlert=Αδυναμία ανάγνωσης ενός από τα αρχεία του ευρετηρίου σας (αρχείο %1$S). Θα δημιουργηθεί ένα νέο αρχείο %2$S, καθώς και ένα αντίγραφο ασφαλείας του παλιού, με όνομα %3$S, στον ίδιο κατάλογο.
+
+# For locked .mab files
+lockedMabFileTitle=Αδυναμία φόρτωσης αρχείου ευρετηρίου
+lockedMabFileAlert=Αδυναμία φόρτωσης αρχείου ευρετηρίου %S. Μπορεί να είναι μόνο για ανάγνωση, ή κλειδωμένο από άλλη εφαρμογή. Παρακαλώ δοκιμάστε ξανά αργότερα.
diff --git a/l10n-el/suite/chrome/mailnews/addressbook/ldapAutoCompErrs.properties b/l10n-el/suite/chrome/mailnews/addressbook/ldapAutoCompErrs.properties
new file mode 100644
index 0000000000..9b93ba596d
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/addressbook/ldapAutoCompErrs.properties
@@ -0,0 +1,104 @@
+# 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/.
+
+# These are error strings for problems that happen while in the
+# various states declared in nsILDAPAutoCompFormatter.idl. Note that
+# the number that indexes each error state is the same as the number
+# corresponding to that state in nsILDAPAutoCompFormatter.idl.
+
+## @name ERR_STATE_UNBOUND
+## @loc none
+0=Πρόβλημα αρχικοποίησης LDAP
+
+## @name ERR_STATE_INITIALIZING
+## @loc none
+1=Η επικοινωνία με τον διακομιστή LDAP απέτυχε
+
+## @name ERR_STATE_BINDING
+## @loc none
+2=Η επικοινωνία με τον διακομιστή LDAP απέτυχε
+
+## @name ERR_STATE_BOUND
+## @loc none
+3=Πρόβλημα επικοινωνίας με τον διακομιστή LDAP
+
+## @name ERR_STATE_SEARCHING
+## @loc none
+4=Πρόβλημα αναζήτησης διακομιστή LDAP
+
+
+# The format of the alert dialog itself
+#
+## @name ALERT_FORMAT
+## @loc None of %1$S, %2$S and %3$S should be localized.
+## %1$S is the error code itself, %2$S is an LDAP SDK error message from
+## chrome://mozldap/locale/ldap.properties, and %3$S is a hint relating
+## to that specific error, found in this file.
+errorAlertFormat=Κωδικός σφάλματος %1$S: %2$S\n\n %3$S
+
+## The following errors are for error codes other than LDAP-specific ones.
+## Someday mozilla will actually have a system for mapping nsresults to
+## error strings that's actually widely used, unlike nsIErrorService. But
+## until it does, these strings live here…
+
+## @name HOST_NOT_FOUND
+## @loc none
+5000=Δεν βρέθηκε κεντρικός υπολογιστής
+
+## @name GENERIC_ERROR
+## @loc none
+9999=Άγνωστο σφάλμα
+
+
+# Hints to for the user, associated with specific error codes (ie error code
+# + 10000)
+
+
+## @name TIMELIMIT_EXCEEDED_HINT
+## @loc none
+10003=Παρακαλώ δοκιμάστε ξανά, ή αλλιώς επικοινωνήστε με τον διαχειριστή του συστήματος σας.
+
+## @name STRONGAUTH_REQUIRED_HINT
+## @loc none
+10008=Δεν υποστηρίζεται προς το παρόν ισχυρή ταυτοποίηση.
+
+## @name INVALID_SYNTAX_HINT
+## @loc none
+10021=Επαληθεύστε ότι το φίλτρο αναζήτησης είναι σωστό και δοκιμάστε ξανά, ή επικοινωνήστε με τον διαχειριστή συστήματός σας. Για να επιβεβαιώσετε ότι το φίλτρο αναζήτησης είναι σωστό, από το μενού "Επεξεργασία", επιλέξτε "Προτιμήσεις", έπειτα "Αλληλογραφία & ομάδες συζητήσεων" και τέλος, "Διευθυνσιοδότηση". Κάντε κλικ στο "Επεξεργασία καταλόγων" και επιλέξτε τον διακομιστή LDAP που χρησιμοποιείτε. Κάντε κλικ στο "Επεξεργασία" και τέλος, στο "Για προχωρημένους" για προβολή του φίλτρου αναζήτησης.
+
+## @name NO_SUCH_OBJECT_HINT
+## @loc none
+10032=Επαληθεύστε ότι η Βάση DN είναι σωστή και έπειτα, δοκιμάστε ξανά· διαφορετικά, επικοινωνήστε με τον διαχειριστή συστήματος σας. Για να βεβαιωθείτε ότι η Βάση DN είναι σωστή, από το μενού "Επεξεργασία", επιλέξτε "Προτιμήσεις", ύστερα "Αλληλογραφία & ομάδες συζήτησης" και τέλος, "Διευθυνσιοδότηση". Κάντε κλικ στο "Επεξεργασία καταλόγων" και επιλέξτε τον διακομιστή LDAP που χρησιμοποιείται. Κάντε κλικ στο "Επεξεργασία" για προβολή της Βάσης DN.
+
+## @name BUSY_HINT
+## @loc none
+10051=Παρακαλώ δοκιμάστε ξανά αργότερα.
+
+## @name SERVER_DOWN_HINT
+## @loc none
+10081=Επαληθεύστε ότι το όνομα κεντρικού υπολογιστή και ο αριθμός θύρας είναι σωστά και δοκιμάστε ξανά, ή επικοινωνήστε με τον διαχειριστή συστήματός σας. Για να βεβαιωθείτε για την ορθότητά τους, από το μενού "Επεξεργασία", επιλέξτε "Προτιμήσεις", "Αλληλογραφία & ομάδες συζήτησης" και έπειτα, επιλέξτε "Διευθυνσιοδότηση". Κάντε κλικ στο "Επεξεργασία καταλόγων" και επιλέξτε τον διακομιστή LDAP που χρησιμοποιείται. Κάντε κλικ στο "Επεξεργασία" για να δείτε το όνομα του κεντρικού υπολογιστή. Κάντε κλικ στο "Για προχωρημένους" για να δείτε τον αριθμό θύρας.
+
+## @name TIMEOUT_HINT
+## @loc none
+10085=Παρακαλώ δοκιμάστε ξανά αργότερα.
+
+## @name FILTER_ERROR_HINT
+## @loc none
+10087=Επαληθεύστε ότι το φίλτρο αναζήτησης είναι σωστό και δοκιμάστε ξανά, ή επικοινωνήστε με τον διαχειριστή συστήματός σας. Για να επιβεβαιώσετε ότι το φίλτρο αναζήτησης είναι σωστό, από το μενού "Επεξεργασία", επιλέξτε "Προτιμήσεις", έπειτα "Αλληλογραφία & ομάδες συζητήσεων" και τέλος, "Διευθυνσιοδότηση". Κάντε κλικ στο "Επεξεργασία καταλόγων" και επιλέξτε τον διακομιστή LDAP που χρησιμοποιείτε. Κάντε κλικ στο "Επεξεργασία" και τέλος, στο "Για προχωρημένους" για προβολή του φίλτρου αναζήτησης.
+
+## @name NO_MEMORY_HINT
+## @loc none
+10090=Παρακαλώ κλείστε κάποια άλλα παράθυρα ή/και εφαρμογές και δοκιμάστε ξανά.
+
+## @name CONNECT_ERROR_HINT
+## @loc none
+10091=Επαληθεύστε ότι το όνομα κεντρικού υπολογιστή και ο αριθμός θύρας είναι σωστά και δοκιμάστε ξανά, ή επικοινωνήστε με τον διαχειριστή συστήματός σας. Για να βεβαιωθείτε για την ορθότητά τους, από το μενού "Επεξεργασία", επιλέξτε "Προτιμήσεις", "Αλληλογραφία & ομάδες συζήτησης" και έπειτα, επιλέξτε "Διευθυνσιοδότηση". Κάντε κλικ στο "Επεξεργασία καταλόγων" και επιλέξτε τον διακομιστή LDAP που χρησιμοποιείται. Κάντε κλικ στο "Επεξεργασία" για να δείτε το όνομα του κεντρικού υπολογιστή. Κάντε κλικ στο "Για προχωρημένους" για να δείτε τον αριθμό θύρας.
+
+## @name HOST_NOT_FOUND_HINT
+## @loc none
+15000=Επαληθεύστε ότι το όνομα κεντρικού υπολογιστή είναι σωστό και έπειτα, δοκιμάστε ξανά· διαφορετικά, επικοινωνήστε με τον διαχειριστή συστήματός σας. Για να βεβαιωθείτε ότι το όνομα κεντρικού υπολογιστή είναι σωστό, επιλέξτε "Προτιμήσεις", "Αλληλογραφία & ομάδες συζήτησης" και τέλος, "Διευθυνσιοδότηση". Κάντε κλικ στο "Επεξεργασία καταλόγων" και επιλέξτε τον διακομιστή που χρησιμοποιείται. Κάντε κλικ στο "Επεξεργασία" για να εμφανιστεί το όνομα κεντρικού υπολογιστή.
+
+## @name GENERIC_HINT
+## @loc none
+19999=Παρακαλώ επικοινωνήστε με τον διαχειριστή συστήματος.
diff --git a/l10n-el/suite/chrome/mailnews/appleMailImportMsgs.properties b/l10n-el/suite/chrome/mailnews/appleMailImportMsgs.properties
new file mode 100644
index 0000000000..6e887397e6
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/appleMailImportMsgs.properties
@@ -0,0 +1,20 @@
+# 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/.
+
+# Short name of import module
+ApplemailImportName=Apple Mail
+
+# Description of import module
+ApplemailImportDescription=Εισαγωγή τοπικής αλληλογραφίας από το Mac OS X Mail
+
+# Success Message
+# LOCALIZATION NOTE(ApplemailImportMailboxSuccess): Do not translate the word "%S" below.
+ApplemailImportMailboxSuccess=Τα τοπικά μηνύματα εισήχθησαν με επιτυχία από το %S
+
+# Error Message
+ApplemailImportMailboxBadparam=Προέκυψε εσωτερικό σφάλμα. Η εισαγωγή απέτυχε. Προσπαθήστε ξανά.
+
+# Error message
+# LOCALIZATION NOTE(ApplemailImportMailboxConverterror): Do not translate the word "%S" below.
+ApplemailImportMailboxConverterror=Προέκυψε σφάλμα κατά την εισαγωγή μηνυμάτων από το %S. Τα μηνύματα δεν εισήχθησαν.
diff --git a/l10n-el/suite/chrome/mailnews/beckyImportMsgs.properties b/l10n-el/suite/chrome/mailnews/beckyImportMsgs.properties
new file mode 100644
index 0000000000..275bb57a46
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/beckyImportMsgs.properties
@@ -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/.
+#
+# The following are used by the becky import code to display status/error
+# and informational messages
+
+# Short name of import module
+BeckyImportName=Becky! Internet Mail
+
+# Description of import module
+BeckyImportDescription=Εισαγωγή τοπικών email από το Becky! Internet Mail
+
+# Success Message
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+# The variable %S will contain the name of the Mailbox
+BeckyImportMailboxSuccess=Εισήχθησαν επιτυχώς τα τοπικά μηνύματα από το %S.
+
+BeckyImportAddressSuccess=Εισήχθη το ευρετήριο διευθύνσεων
diff --git a/l10n-el/suite/chrome/mailnews/charsetTitles.properties b/l10n-el/suite/chrome/mailnews/charsetTitles.properties
new file mode 100644
index 0000000000..86d6b83e36
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/charsetTitles.properties
@@ -0,0 +1,80 @@
+# 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/.
+
+## Rule of this file:
+## 1. key should always be in lower case ascii so we can do case insensitive
+## comparison in the code faster.
+
+## Format of this file:
+## charset_name.title = a_title - specifies the human readable title for
+## this charset
+
+iso-8859-1.title = Δύση (ISO-8859-1)
+iso-8859-2.title = Κεντρική Ευρώπη (ISO-8859-2)
+iso-8859-3.title = Νότια Ευρώπη (ISO-8859-3)
+iso-8859-4.title = Βαλτική (ISO-8859-4)
+iso-8859-10.title = Σκανδιναβία (ISO-8859-10)
+iso-8859-13.title = Βαλτική (ISO-8859-13)
+iso-8859-14.title = Κελτικά (ISO-8859-14)
+iso-8859-15.title = Δύση (ISO-8859-15)
+iso-8859-16.title = Ρουμανικά (ISO-8859-16)
+windows-1250.title = Κεντρική Ευρώπη (Windows-1250)
+windows-1252.title = Δύση (Windows-1252)
+windows-1254.title = Τουρκικά (Windows-1254)
+windows-1257.title = Βαλτική (Windows-1257)
+macintosh.title = Δύση (MacRoman)
+x-mac-ce.title = Κεντρική Ευρώπη (MacCE)
+x-mac-turkish.title = Τουρκικά (MacTurkish)
+x-mac-croatian.title = Κροατικά (MacCroatian)
+x-mac-romanian.title = Ρουμανικά (MacRomanian)
+x-mac-icelandic.title = Ισλανδικά (MacIcelandic)
+iso-2022-jp.title = Ιαπωνικά (ISO-2022-JP)
+shift_jis.title = Ιαπωνικά (Shift_JIS)
+euc-jp.title = Ιαπωνικά (EUC-JP)
+big5.title = Κινεζικά Παραδοσιακά (Big5)
+big5-hkscs.title = Κινεζικά Παραδοσιακά (Big5-HKSCS)
+gb2312.title = Κινεζικά Απλοποιημένα (GB2312)
+gbk.title = Κινεζικά Απλοποιημένα (GBK)
+euc-kr.title = Κορεατικά (EUC-KR)
+utf-7.title = Unicode (UTF-7)
+utf-8.title = Unicode (UTF-8)
+utf-16.title = Unicode (UTF-16)
+utf-16le.title = Unicode (UTF-16LE)
+utf-16be.title = Unicode (UTF-16BE)
+iso-8859-5.title = Κυριλλικά (ISO-8859-5)
+windows-1251.title = Κυριλλικά (Windows-1251)
+x-mac-cyrillic.title = Κυριλλικά (MacCyrillic)
+x-mac-ukrainian.title = Κυριλλικά/Ουκρανικά (MacUkrainian)
+koi8-r.title = Κυριλλικά (KOI8-R)
+koi8-u.title = Κυριλλικά/Ουκρανικά (KOI8-U)
+iso-8859-7.title = Ελληνικά (ISO-8859-7)
+windows-1253.title = Ελληνικά (Windows-1253)
+x-mac-greek.title = Ελληνικά (MacGreek)
+windows-1258.title = Βιετναμικά (Windows-1258)
+windows-874.title = Ταϊλανδικά (Windows-874)
+iso-8859-6.title = Αραβικά (ISO-8859-6)
+iso-8859-8.title = Εβραϊκά Οπτικά (ISO-8859-8)
+iso-8859-8-i.title = Εβραϊκά (ISO-8859-8-I)
+windows-1255.title = Εβραϊκά (Windows-1255)
+windows-1256.title = Αραβικά (Windows-1256)
+x-user-defined.title = Ρύθμιση χρήστη
+ibm866.title = Κυριλλικά/Ρωσικά (CP-866)
+gb18030.title = Κινεζικά Απλοποιημένα (GB18030)
+x-mac-arabic.title = Αραβικά (MacArabic)
+x-mac-farsi.title = Φαρσί (MacFarsi)
+x-mac-hebrew.title = Εβραϊκά (MacHebrew)
+x-mac-devanagari.title = Χίντι (MacDevanagari)
+x-mac-gujarati.title = Γκουτζαράτι (MacGujarati)
+x-mac-gurmukhi.title = Γκουρμούκι (MacGurmukhi)
+
+chardet.off.title = (Ανενεργό)
+chardet.universal_charset_detector.title = Παγκόσμιο
+chardet.ja_parallel_state_machine.title = Ιαπωνικά
+chardet.ko_parallel_state_machine.title = Κορεατικά
+chardet.zhtw_parallel_state_machine.title = Παραδοσιακά Κινεζικά
+chardet.zhcn_parallel_state_machine.title = Απλοποιημένα Κινεζικά
+chardet.zh_parallel_state_machine.title = Κινεζικά
+chardet.cjk_parallel_state_machine.title = Ανατολική Ασία
+chardet.ruprob.title = Ρώσικα
+chardet.ukprob.title = Ουκρανικά
diff --git a/l10n-el/suite/chrome/mailnews/compose/addressingWidgetOverlay.dtd b/l10n-el/suite/chrome/mailnews/compose/addressingWidgetOverlay.dtd
new file mode 100644
index 0000000000..d071155184
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/compose/addressingWidgetOverlay.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/. -->
+
+<!-- address labels -->
+<!--LOCALIZATION NOTE addressingWidgetOverlay.dtd The basic mail/news composition headers as they are seen in UI -->
+<!ENTITY toAddr.label "Προς:">
+<!ENTITY ccAddr.label "Κοιν:">
+<!ENTITY bccAddr.label "Κρυφή κοιν:">
+<!ENTITY replyAddr.label "Απάντηση σε:">
+<!ENTITY newsgroupsAddr.label "Ομάδα συζήτησης:">
+<!ENTITY followupAddr.label "Συνέχεια σε:">
diff --git a/l10n-el/suite/chrome/mailnews/compose/askSendFormat.dtd b/l10n-el/suite/chrome/mailnews/compose/askSendFormat.dtd
new file mode 100644
index 0000000000..dc2735a0aa
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/compose/askSendFormat.dtd
@@ -0,0 +1,20 @@
+<!-- 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 askSendFormat.dtd UI for dialog that asks the user, which format to use for sending a message -->
+<!ENTITY windowTitle.label "Ερώτηση αλληλογραφίας HTML">
+
+<!ENTITY recipient.label "Μερικοί από τους παραλήπτες δεν είναι καταγεγραμμένοι ως ικανοί να λαμβάνουν email σε HTML.">
+
+<!ENTITY question.label "Θέλετε να μετατραπεί το μήνυμα σε μορφή απλού κειμένου, ή να γίνει αποστολή σε μορφή HTML;">
+
+<!ENTITY plainTextAndHtml.label "Αποστολή σε απλό κείμενο και HTML">
+<!ENTITY plainTextAndHtml.accesskey "κ">
+<!ENTITY plainTextOnly.label "Αποστολή μόνο σε απλό κείμενο">
+<!ENTITY plainTextOnly.accesskey "π">
+<!ENTITY htmlOnly.label "Aποστολή μόνο σε HTML">
+<!ENTITY htmlOnly.accesskey "H">
+
+<!ENTITY send.label "Αποστολή">
+<!ENTITY send.accesskey "Α">
diff --git a/l10n-el/suite/chrome/mailnews/compose/askSendFormat.properties b/l10n-el/suite/chrome/mailnews/compose/askSendFormat.properties
new file mode 100644
index 0000000000..ed2bfb140f
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/compose/askSendFormat.properties
@@ -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/.
+
+convertibleYes=Το μήνυμα σας μπορεί να μετατραπεί σε απλό κείμενο χωρίς απώλεια πληροφοριών.
+convertibleAltering=Το μήνυμα σας μπορεί να μετατραπεί σε απλό κείμενο χωρίς απώλεια σημαντικών πληροφοριών. Ωστόσο, η έκδοση απλού κειμένου θα είναι μάλλον διαφορετική από την έκδοση που είδατε κατά τη σύνθεση.
+convertibleNo=Ωστόσο, χρησιμοποιήσατε μορφοποίηση (π.χ. χρώματα) που δεν θα μετατραπούν σε απλό κείμενο.
+recommended=(προτείνεται)
diff --git a/l10n-el/suite/chrome/mailnews/compose/composeMsgs.properties b/l10n-el/suite/chrome/mailnews/compose/composeMsgs.properties
new file mode 100644
index 0000000000..c6f6a8fdba
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/compose/composeMsgs.properties
@@ -0,0 +1,302 @@
+# 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/.
+
+#
+# The following are used by the compose back end
+#
+## LOCALIZATION NOTE (unableToOpenFile, unableToOpenTmpFile):
+## %S will be replaced with the name of file that could not be opened
+unableToOpenFile=Αδυναμία ανοίγματος του αρχείου %S.
+unableToOpenTmpFile=Αδυναμία ανοίγματος του προσωρινού αρχείου %S. Ελέγξτε τη ρύθμιση 'Προσωρινός κατάλογος'.
+unableToSaveTemplate=Αδυναμία αποθήκευσης του μηνύματός σας ως πρότυπου.
+unableToSaveDraft=Αδυναμία αποθήκευσης του μηνύματός σας ως προσχέδιου.
+couldntOpenFccFolder=Αδυναμία ανοίγματος φακέλου "Απεσταλμένα". Παρακαλώ βεβαιωθείτε ότι οι προτιμήσεις αλληλογραφίας σας είναι σωστές.
+noSender=Δεν έχει οριστεί αποστολέας. Παρακαλώ προσθέστε τη διεύθυνση email σας στις ρυθμίσεις λογαριασμού αλληλογραφίας & ομάδων συζητήσεων.
+noRecipients=Δεν ορίστηκαν παραλήπτες. Παρακαλώ εισάγετε έναν παραλήπτη ή μια ομάδα συζήτησης στο πεδίο διευθυνσιοδότησης.
+errorWritingFile=Σφάλμα εγγραφής προσωρινού αρχείου.
+
+## LOCALIZATION NOTE (errorSendingFromCommand): argument %s is the Outgoing server (SMTP) response
+errorSendingFromCommand=Προέκυψε σφάλμα κατά την αποστολή email. Ο διακομιστής email απάντησε: %s. Παρακαλώ βεβαιωθείτε ότι η διεύθυνση email σας είναι σωστή στις προτιμήσεις αλληλογραφίας και δοκιμάστε ξανά.
+
+## LOCALIZATION NOTE (errorSendingDataCommand): argument %s is the Outgoing server (SMTP) response
+errorSendingDataCommand=Προέκυψε σφάλμα διακομιστή εξερχομένων (SMTP) κατά την αποστολή email. Ο διακομιστής απάντησε: %s.
+
+## LOCALIZATION NOTE (errorSendingMessage): argument %s is the Outgoing server (SMTP) response
+errorSendingMessage=Προέκυψε σφάλμα κατά την αποστολή email. Ο διακομιστής email απάντησε: %s. Παρακαλώ ελέγξτε το μήνυμα και δοκιμάστε ξανά.
+postFailed=Δεν ήταν δυνατή η δημοσίευση του μηνύματος επειδή απέτυχε η σύνδεση στον διακομιστή συζήτησης. Ο διακομιστής ενδέχεται να μην είναι διαθέσιμος ή να αρνείται συνδέσεις. Παρακαλώ βεβαιωθείτε ότι οι ρυθμίσεις διακομιστή συζήτησης είναι σωστές και δοκιμάστε ξανά.
+errorQueuedDeliveryFailed=Προέκυψε σφάλμα κατά την παράδοση μη απεσταλμένων μηνυμάτων.
+sendFailed=Η αποστολή του μηνύματος απέτυχε.
+
+## LOCALIZATION NOTE (sendFailedUnexpected): argument %X is a hex error code value
+sendFailedUnexpected=Αποτυχία λόγω απροσδόκητου σφάλματος %X. Δεν υπάρχει διαθέσιμη περιγραφή.
+
+## LOCALIZATION NOTE (smtpSecurityIssue): argument %S is the Outgoing smtp server name
+smtpSecurityIssue=Η ρύθμιση που σχετίζεται με το %S πρέπει να διορθωθεί.
+
+## LOCALIZATION NOTE (smtpServerError): argument %s is the Outgoing server (SMTP) response
+smtpServerError=Προέκυψε σφάλμα κατά την αποστολή email: Σφάλμα διακομιστή εξερχομένων (SMTP). Ο διακομιστής απάντησε: %s.
+unableToSendLater=Λυπούμαστε, δεν μπορέσαμε να αποθηκεύσουμε το μήνυμά σας για αποστολή αργότερα.
+
+## LOCALIZATION NOTE (communicationsError): argument %d is the error code
+communicationsError=Προέκυψε σφάλμα επικοινωνίας: %d. Παρακαλώ δοκιμάστε ξανά.
+dontShowAlert=THIS IS JUST A PLACEHOLDER. YOU SHOULD NEVER SEE THIS STRING.
+
+couldNotGetUsersMailAddress2=Προέκυψε σφάλμα κατά την αποστολή του email: η διεύθυνση του αποστολέα (Από:) δεν ήταν έγκυρη. Παρακαλώ επαληθεύστε ότι αυτή η διεύθυνση email είναι σωστή και δοκιμάστε ξανά.
+couldNotGetSendersIdentity=Προέκυψε σφάλμα κατά την αποστολή email: η ταυτότητα του αποστολέα δεν ήταν έγκυρη. Παρακαλώ επιβεβαιώστε τις ρυθμίσεις της ταυτότητάς σας και δοκιμάστε ξανά.
+mimeMpartAttachmentError=Σφάλμα συνημμένου.
+failedCopyOperation=Το μήνυμα απεστάλη με επιτυχία, αλλά απέτυχε η αντιγραφή στο φάκελο "Απεσταλμένα".
+nntpNoCrossPosting=Μπορείτε να στείλετε μήνυμα σε έναν μόνο διακομιστή συζητήσεων τη φορά.
+msgCancelling=Ακύρωση…
+sendFailedButNntpOk=Το μήνυμά σας έχει δημοσιευθεί στην ομάδα συζήτησης, αλλά δεν έχει σταλεί στον άλλο παραλήπτη.
+errorReadingFile=Σφάλμα ανάγνωσης αρχείου.
+followupToSenderMessage=Ο συντάκτης του μηνύματος έχει ζητήσει οι απαντήσεις να στέλνονται μόνο σε αυτόν. Αν θέλετε να απαντήσετε και στην ομάδα συζήτησης, προσθέστε μια νέα γραμμή στην περιοχή διευθυνσιοδότησης, επιλέξτε "Ομάδα συζήτησης" από τη λίστα παραληπτών και εισάγετε το όνομα της ομάδας.
+
+## LOCALIZATION NOTE (errorAttachingFile): argument %S is the file name/URI of object to be attached
+errorAttachingFile=Προέκυψε σφάλμα κατά την επισύναψη του %S. Παρακαλώ βεβαιωθείτε ότι έχετε πρόσβαση στο αρχείο.
+
+## LOCALIZATION NOTE (incorrectSmtpGreeting): argument %s is the Outgoing server (SMTP) greeting
+incorrectSmtpGreeting=Προέκυψε σφάλμα κατά την αποστολή email: Ο διακομιστής email έστειλε λάθος χαιρετισμό: %s.
+
+## LOCALIZATION NOTE (errorSendingRcptCommand): argument %1$S is the Outgoing server (SMTP) response, argument %2$S is the intended message recipient.
+errorSendingRcptCommand=Προέκυψε σφάλμα κατά την αποστολή email. Ο διακομιστής email απάντησε:\n%1$S.\nΠαρακαλώ ελέγξτε τον παραλήπτη "%2$S" και δοκιμάστε ξανά.
+
+## LOCALIZATION NOTE (startTlsFailed): argument %S is the Outgoing server (SMTP)
+startTlsFailed=Προέκυψε σφάλμα κατά την αποστολή email: Δεν ήταν δυνατή η δημιουργία ασφαλούς σύνδεσης με τον διακομιστή SMTP %S με χρήση STARTTLS, επειδή δεν κοινοποιεί αυτή τη λειτουργία. Απενεργοποιήστε το STARTTLS για αυτό τον διακομιστή ή επικοινωνήστε με τον πάροχο υπηρεσίας σας.
+
+## LOCALIZATION NOTE (smtpPasswordUndefined): argument %S is the Outgoing server (SMTP) account
+smtpPasswordUndefined=Προέκυψε σφάλμα κατά την αποστολή email: Αδυναμία λήψης κωδικού πρόσβασης για το %S. Το μήνυμα δεν απεστάλη.
+
+## LOCALIZATION NOTE (smtpSendNotAllowed): argument %s is the Outgoing server (SMTP) response
+smtpSendNotAllowed=Προέκυψε σφάλμα κατά την αποστολή email. Ο διακομιστής αλληλογραφίας απάντησε:\n%s.\nΠαρακαλώ βεβαιωθείτε ότι χρησιμοποιείτε τη σωστή ταυτότητα για αποστολή και ότι η τρέχουσα μέθοδος ταυτοποίησης είναι σωστή. Επαληθεύστε ότι επιτρέπεται να στείλετε μέσω αυτού του διακομιστή SMTP με τα τρέχοντα διαπιστευτήριά σας, από το τρέχον δίκτυό σας.
+
+## LOCALIZATION NOTE (smtpTempSizeExceeded): argument %s is the Outgoing server (SMTP) response
+smtpTempSizeExceeded=Το μέγεθος του μηνύματος που προσπαθείτε να στείλετε υπερβαίνει ένα προσωρινό όριο μεγέθους του διακομιστή. Το μήνυμα δεν απεστάλη· προσπαθήστε να μειώσετε το μέγεθος του μηνύματος ή περιμένετε λίγο και δοκιμάστε ξανά. Ο διακομιστής απάντησε: %s.
+
+## LOCALIZATION NOTE (smtpClientid): argument %s is the Outgoing server (SMTP) response
+smtpClientid=Ο διακομιστής εξερχομένων (SMTP) ανίχνευσε σφάλμα στην εντολή CLIENTID. Το μήνυμα δεν απεστάλη. Ο διακομιστής απάντησε: %s
+
+## LOCALIZATION NOTE (smtpClientidPermission): argument %s is the Outgoing server (SMTP) response
+smtpClientidPermission=Η απάντηση του διακομιστή εξερχομένων (SMTP) στην εντολή CLIENTID υποδεικνύει ότι η συσκευή σας δεν επιτρέπεται να αποστείλει email. Ο διακομιστής απάντησε: %s
+
+## LOCALIZATION NOTE (smtpPermSizeExceeded1): argument %d is the Outgoing server (SMTP) size limit
+smtpPermSizeExceeded1=Το μέγεθος του μηνύματος που προσπαθείτε να στείλετε υπερβαίνει το όριο μεγέθους (%d bytes) του διακομιστή. Το μήνυμα δεν απεστάλη· μειώσετε το μέγεθος του μηνύματος και δοκιμάστε ξανά.
+
+## LOCALIZATION NOTE (smtpPermSizeExceeded2): argument %s is the server's response
+smtpPermSizeExceeded2=Το μέγεθος του μηνύματος που προσπαθείτε να στείλετε υπερβαίνει το γενικό όριο μεγέθους του διακομιστή. Το μήνυμα δεν απεστάλη· μειώσετε το μέγεθος του μηνύματος και δοκιμάστε ξανά. Ο διακομιστής απάντησε: %s.
+
+## LOCALIZATION NOTE (smtpSendFailedUnknownServer): argument %S is the Outgoing server (SMTP)
+smtpSendFailedUnknownServer=Προέκυψε σφάλμα κατά την αποστολή email: Ο διακομιστής εξερχομένων (SMTP) %S είναι άγνωστος. Ο διακομιστής ενδέχεται να έχει ρυθμιστεί εσφαλμένα. Παρακαλώ βεβαιωθείτε ότι οι ρυθμίσεις του διακομιστή εξερχομένων (SMTP) σας είναι σωστές και δοκιμάστε ξανά.
+
+## LOCALIZATION NOTE (smtpSendRequestRefused): argument %S is the Outgoing server (SMTP)
+smtpSendRequestRefused=Δεν ήταν δυνατή η αποστολή του μηνύματος, επειδή απέτυχε η σύνδεση με τον διακομιστή εξερχομένων (SMTP) %S. Ο διακομιστής ενδέχεται να μην είναι διαθέσιμος ή αρνείται συνδέσεις SMTP. Παρακαλώ βεβαιωθείτε ότι οι ρυθμίσεις διακομιστή εξερχομένων (SMTP) είναι σωστές και δοκιμάστε ξανά.
+
+## LOCALIZATION NOTE (smtpSendInterrupted): argument %S is the Outgoing server (SMTP)
+smtpSendInterrupted=Δεν ήταν δυνατή η αποστολή του μηνύματος, επειδή η σύνδεση με τον διακομιστή εξερχομένων (SMTP) %S χάθηκε στη μέση της μεταφοράς. Δοκιμάστε ξανά.
+
+## LOCALIZATION NOTE (smtpSendTimeout): argument %S is the Outgoing server (SMTP)
+smtpSendTimeout=Δεν ήταν δυνατή η αποστολή του μηνύματος, επειδή έληξε το χρονικό όριο σύνδεσης με τον διακομιστή εξερχομένων (SMTP) %S. Δοκιμάστε ξανά.
+
+## LOCALIZATION NOTE (smtpSendFailedUnknownReason): argument %S is the Outgoing server (SMTP)
+smtpSendFailedUnknownReason=Δεν ήταν δυνατή η αποστολή του μηνύματος μέσω του διακομιστή εξερχομένων (SMTP) %S για άγνωστο λόγο. Παρακαλώ βεβαιωθείτε ότι οι ρυθμίσεις διακομιστή εξερχομένων (SMTP) είναι σωστές και δοκιμάστε ξανά.
+
+# LOCALIZATION NOTE (smtpHintAuthEncryptToPlainNoSsl): %S is the server hostname
+smtpHintAuthEncryptToPlainNoSsl=Ο διακομιστής εξερχόμενων (SMTP) %S δεν φαίνεται να υποστηρίζει κρυπτογραφημένους κωδικούς πρόσβασης. Αν μόλις ρυθμίσατε τον λογαριασμό, δοκιμάστε να αλλάξετε το 'Μέθοδος ταυτοποίησης' στις 'Ρυθμίσεις λογαριασμού | Διακομιστής εξερχομένων (SMTP)' σε 'Κωδικός πρόσβασης, επισφαλής μεταφορά'. Αν λειτουργούσε παλαιότερα, ενδέχεται να είναι δυνατή η κλοπή του κωδικού πρόσβασής σας.
+
+# LOCALIZATION NOTE (smtpHintAuthEncryptToPlainSsl): %S is the server hostname
+smtpHintAuthEncryptToPlainSsl=Ο διακομιστής εξερχομένων (SMTP) %S δεν υποστηρίζει κρυπτογραφημένους κωδικούς πρόσβασης. Αν μόλις ρυθμίσατε τον λογαριασμό, δοκιμάστε να αλλάξετε το 'Μέθοδος ταυτοποίησης' στις 'Ρυθμίσεις λογαριασμού | Διακομιστής εξερχομένων (SMTP)' σε 'Κανονικός κωδικός πρόσβασης'.
+
+# LOCALIZATION NOTE (smtpHintAuthPlainToEncrypt): %S is the server hostname
+smtpHintAuthPlainToEncrypt=Ο διακομιστής εξερχομένων (SMTP) %S δεν επιτρέπει κωδικούς πρόσβασης απλού κειμένου. Παρακαλώ δοκιμάστε να αλλάξετε το 'Μέθοδος ταυτοποίησης' στις 'Ρυθμίσεις λογαριασμού | Διακομιστής εξερχομένων (SMTP)' σε 'Κρυπτογραφημένος κωδικός πρόσβασης'.
+
+# LOCALIZATION NOTE (smtpAuthFailure): %S is the server hostname
+smtpAuthFailure=Αδυναμία ταυτοποίησης στον διακομιστή εξερχομένων (SMTP) %S. Παρακαλώ ελέγξτε τον κωδικό πρόσβασής σας και επιβεβαιώστε το 'Μέθοδος ταυτοποίησης' στο 'Ρυθμίσεις λογαριασμού | Διακομιστής εξερχομένων (SMTP)'.
+
+# LOCALIZATION NOTE (smtpAuthGssapi): %S is the server hostname
+smtpAuthGssapi=Το Kerberos/GSSAPI ticket δεν έγινε δεκτό από τον διακομιστή εξερχομένων (SMTP) %S. Παρακαλώ ελέγξτε την σύνδεση σας στον τομέα Kerberos/GSSAPI.
+
+# LOCALIZATION NOTE (smtpAuthMechNotSupported): %S is the server hostname
+smtpAuthMechNotSupported=Ο διακομιστής εξερχομένων (SMTP) %S δεν υποστηρίζει την επιλεγμένη μέθοδο ταυτοποίησης. Παρακαλώ αλλάξτε το 'Μέθοδος ταυτοποίησης' στο 'Ρυθμίσεις λογαριασμού | Διακομιστής εξερχομένων (SMTP)'.
+
+# LOCALIZATION NOTE (errorIllegalLocalPart): %s is an email address with an illegal localpart
+errorIllegalLocalPart=Υπάρχουν μη-ASCII χαρακτήρες στο τοπικό μέρος της διεύθυνσης παραλήπτη %s. Αυτό δεν υποστηρίζεται ακόμη. Παρακαλώ αλλάξτε αυτή τη διεύθυνση και δοκιμάστε ξανά.
+
+# LOCALIZATION NOTE (errorIllegalLocalPart2): %s is an email address with an illegal localpart
+errorIllegalLocalPart2=Υπάρχουν μη-ASCII χαρακτήρες στο τοπικό μέρος της διεύθυνσης παραλήπτη %s και ο διακομιστής σας δεν υποστηρίζει SMTPUTF8. Παρακαλώ αλλάξτε αυτή τη διεύθυνση και δοκιμάστε ξανά.
+
+## Strings used for the save message dialog shown when the user closes a message compose window
+saveDlogTitle=Αποθήκευση μηνύματος
+
+## LOCALIZATION NOTE (saveDlogMessages3): Do not translate the words %1$S and \n.
+## %1$S is replaced by the folder name configured for saving drafts (typically the "Drafts" folder).
+## Translate "Compose" to match the translation of item "windowTitlePrefix" below.
+saveDlogMessages3=Αποθήκευση μηνύματος στο φάκελο προχείρων σας (%1$S) και κλείσιμο παραθύρου σύνθεσης;
+discardButtonLabel=&Απόρριψη αλλαγών
+
+## generics string
+defaultSubject=(χωρίς θέμα)
+chooseFileToAttach=Επισύναψη αρχείου(ων)
+
+##
+windowTitlePrefix=Σύνθεση:
+
+## String used by the dialog that asks the user to enter a subject
+sendMsgTitle=Αποστολή μηνύματος
+subjectDlogMessage=Δεν ορίσατε θέμα για αυτό το μήνυμα. Αν θέλετε να εισάγετε ένα, παρακαλώ πληκτρολογήστε το τώρα.
+
+## String used by the dialog that informs the user about the newsgroup recipient
+recipientDlogMessage=Αυτός ο λογαριασμός υποστηρίζει μόνο παραλήπτες email. Αν συνεχίσετε, θα αγνοηθούν οι ομάδες συζήτησης.
+
+## String used by the alert that tells the user an e-mail address is invalid
+## LOCALIZATION NOTE (addressInvalid): %1$S is the email address
+addressInvalid=Το %1$S δεν είναι έγκυρη διεύθυνση email, επειδή δεν είναι της μορφής user@host. Πρέπει να το διορθώσετε πριν στείλετε το email.
+genericFailureExplanation=Παρακαλώ βεβαιωθείτε ότι οι ρυθμίσεις λογαριασμού αλληλογραφίας & ομάδων συζητήσεων είναι σωστές και δοκιμάστε ξανά.
+
+## LOCALIZATION NOTE (undisclosedRecipients): this string must use only US_ASCII characters
+undisclosedRecipients=undisclosed-recipients
+
+## String used for attachment pretty name, when the attachment is a message
+messageAttachmentSafeName=Συνημμένο μήνυμα
+## String used for attachment pretty name, when the attachment is a message part
+partAttachmentSafeName=Μέρος συνημμένου μηνύματος
+
+## String used by the Initialization Error dialog
+initErrorDlogTitle=Σύνθεση μηνύματος
+initErrorDlgMessage=Προέκυψε σφάλμα κατά τη δημιουργία παραθύρου σύνθεσης μηνύματος. Παρακαλώ δοκιμάστε ξανά.
+
+## String used if the file to attach does not exist when passed as
+## a command line argument
+errorFileAttachTitle=Επισύναψη αρχείου
+
+## LOCALIZATION NOTE (errorFileAttachMessage): %1$S will be replaced by the non-existent file name. Do not translate
+errorFileAttachMessage=Το αρχείο %1$S δεν υπάρχει, συνεπώς δεν έγινε επισύναψη στο μήνυμα.
+
+## Strings used by the Save as Draft/Template dialog
+SaveDialogTitle=Αποθήκευση μηνύματος
+
+## LOCALIZATION NOTE (SaveDialogMsg): %1$S is the folder name, %2$S is the host name
+SaveDialogMsg=Το μήνυμα σας έχει αποθηκευτεί στον φάκελο %1$S του %2$S.
+CheckMsg=Να μην εμφανιστεί αυτός ο διάλογος ξανά.
+
+## Strings used by the prompt when Quitting while in progress
+quitComposeWindowTitle=Αποστολή μηνύματος
+
+## LOCALIZATION NOTE (quitComposeWindowMessage): don't translate \n
+quitComposeWindowMessage2=Το %1$S κάνει αποστολή μηνύματος αυτή τη στιγμή.\nΘέλετε να περιμένετε μέχρι να ολοκληρωθεί η αποστολή ή να κάνετε έξοδο τώρα;
+quitComposeWindowQuitButtonLabel2=&Έξοδος
+quitComposeWindowWaitButtonLabel2=&Αναμονή
+
+## Strings used by the prompt for Ctrl-Enter check before sending message
+sendMessageCheckWindowTitle=Αποστολή μηνύματος
+sendMessageCheckLabel=Θέλετε σίγουρα να στείλετε αυτό το μήνυμα;
+sendMessageCheckSendButtonLabel=Αποστολή
+assemblingMessageDone=Κατασκευή μηνύματος…Ολοκληρώθηκε
+assemblingMessage=Κατασκευή μηνύματος…
+smtpDeliveringMail=Παράδοση email…
+smtpMailSent=Επιτυχής αποστολή email
+assemblingMailInformation=Συγκέντρωση πληροφοριών email…
+
+## LOCALIZATION NOTE (gatheringAttachment): argument %S is the file name/URI of attachment
+gatheringAttachment=Επισύναψη %S…
+creatingMailMessage=Δημιουργία μηνύματος email…
+
+## LOCALIZATION NOTE (copyMessageStart): argument %S is the folder name
+copyMessageStart=Αντιγραφή μηνύματος στο φάκελο %S…
+copyMessageComplete=Η αντιγραφή ολοκληρώθηκε.
+copyMessageFailed=Η αντιγραφή απέτυχε.
+filterMessageComplete=Το φιλτράρισμα ολοκληρώθηκε.
+filterMessageFailed=Το φιλτράρισμα απέτυχε.
+
+## LOCALIZATION NOTE (largeMessageSendWarning):
+## %S is the message size in user-friendly notation. Do not translate.
+largeMessageSendWarning=Προειδοποίηση! Πρόκειται να στείλετε ένα μήνυμα μεγέθους %S που ενδέχεται να υπερβαίνει το επιτρεπόμενο όριο του διακομιστή αλληλογραφίας. Θέλετε σίγουρα να το κάνετε αυτό;
+sendingMessage=Αποστολή μηνύματος…
+sendMessageErrorTitle=Σφάλμα αποστολής μηνύματος
+postingMessage=Δημοσίευση μηνύματος…
+sendLaterErrorTitle=Σφάλμα αργοπορημένης αποστολής
+saveDraftErrorTitle=Σφάλμα αποθήκευσης προσχεδίου
+saveTemplateErrorTitle=Σφάλμα αποθήκευσης προτύπου
+
+## LOCALIZATION NOTE (failureOnObjectEmbeddingWhileSaving): argument %.200S is the file name/URI of object to be embedded
+failureOnObjectEmbeddingWhileSaving=Προέκυψε πρόβλημα με την επισύναψη του αρχείου %.200S στο μήνυμα. Θέλετε να συνεχίσετε την αποθήκευση του μηνύματος χωρίς αυτό το αρχείο;
+
+## LOCALIZATION NOTE (failureOnObjectEmbeddingWhileSending): argument %.200S is the file name/URI of object to be embedded
+failureOnObjectEmbeddingWhileSending=Προέκυψε πρόβλημα με την επισύναψη του αρχείου %.200S στο μήνυμα. Θέλετε να συνεχίσετε την αποστολή του μηνύματος χωρίς αυτό το αρχείο;
+returnToComposeWindowQuestion=Θέλετε να επιστρέψετε στο παράθυρο σύνθεσης;
+
+## reply header in composeMsg
+## LOCALIZATION NOTE (mailnews.reply_header_authorwrotesingle): #1 is the author (name of person replying to)
+mailnews.reply_header_authorwrotesingle=Ο/Η #1 έγραψε:
+
+## LOCALIZATION NOTE (mailnews.reply_header_ondateauthorwrote): #1 is the author, #2 is the date, #3 is the time
+mailnews.reply_header_ondateauthorwrote=Στις #2 #3, ο/η #1 έγραψε:
+
+## LOCALIZATION NOTE (mailnews.reply_header_authorwroteondate): #1 is the author, #2 is the date, #3 is the time
+mailnews.reply_header_authorwroteondate=Ο/Η #1 έγραψε στις #2 #3:
+
+## reply header in composeMsg
+## user specified
+mailnews.reply_header_originalmessage=-------- Αρχικό μήνυμα --------
+
+## forwarded header in composeMsg
+## user specified
+mailnews.forward_header_originalmessage=-------- Προωθημένο μήνυμα --------
+
+## Strings used by the rename attachment dialog
+renameAttachmentTitle=Μετονομασία συνημμένου
+renameAttachmentMessage=Νέο όνομα συνημμένου:
+
+## LOCALIZATION NOTE(smtpEnterPasswordPrompt): Do not translate the
+## word %S. Place the word %S where the host name should appear.
+smtpEnterPasswordPrompt=Εισάγετε τον κωδικό πρόσβασής σας για το %S:
+
+## LOCALIZATION NOTE(smtpEnterPasswordPromptWithUsername): Do not translate the
+## words %1$S and %2$S. Place the word %1$S where the host name should appear,
+## and %2$S where the user name should appear.
+smtpEnterPasswordPromptWithUsername=Εισάγετε τον κωδικό πρόσβασής σας για το %1$S στο %2$S:
+## LOCALIZATION NOTE(smtpEnterPasswordPromptTitleWithHostname): Do not translate the
+## word %1$S. Place the word %1$S where the server host name should appear.
+smtpEnterPasswordPromptTitleWithHostname=Απαιτείται κωδικός πρόσβασης για τον διακομιστή εξερχόμενων (SMTP) %1$S
+
+## LOCALIZATION NOTE(promptToSaveSentLocally2): Do not translate the strings %1$S, %2$S, %3$S and \n.
+## %2$S will be replaced with the account name. $1$S will be replaced by the folder name
+## configured to contain saved sent messages (typically the "Sent" folder).
+## %3$S will be replaced with the local folders account name (typically "Local Folders").
+promptToSaveSentLocally2=Το μήνυμά σας απεστάλη, αλλά δεν αποθηκεύτηκε αντίγραφο στον φάκελο απεσταλμένων (%1$S) λόγω σφάλματος δικτύου ή πρόσβασης αρχείου.\nΜπορείτε να δοκιμάσετε ξανά ή να αποθηκεύσετε το μήνυμα τοπικά στο %3$S/%1$S-%2$S.
+errorFilteringMsg=Το μήνυμά σας έχει αποσταλεί και αποθηκευτεί, αλλά προέκυψε σφάλμα κατά την εφαρμογή φίλτρων μηνυμάτων σε αυτό.
+
+## LOCALIZATION NOTE(promptToSaveDraftLocally2): Do not translate the strings %1$S, %2$S, %3$S and \n.
+## %2$S will be replaced with the account name. $1$S will be replaced by the folder name
+## configured to contain saved draft messages (typically the "Drafts" folder).
+## %3$S will be replaced with the local folders account name (typically "Local Folders").
+promptToSaveDraftLocally2=Το μήνυμά σας δεν αποθηκεύτηκε στον φάκελο προσχεδίων (%1$S) λόγω σφάλματος δικτύου ή πρόσβασης αρχείου.\nΜπορείτε να δοκιμάσετε ξανά ή να αποθηκεύσετε το προσχέδιο τοπικά στο %3$S/%1$S-%2$S.
+buttonLabelRetry2=&Επανάληψη
+
+## LOCALIZATION NOTE(promptToSaveTemplateLocally2): Do not translate the strings %1$S, %2$S, %3$S and \n.
+## %2$S will be replaced with the account name. $1$S will be replaced by the folder name
+## configured to contain saved templates (typically the "Templates" folder).
+## %3$S will be replaced with the local folders account name (typically "Local Folders").
+promptToSaveTemplateLocally2=Το πρότυπό σας δεν αποθηκεύτηκε στον φάκελο προτύπων (%1$S) λόγω σφάλματος δικτύου ή πρόσβασης αρχείου.\nΜπορείτε να δοκιμάσετε ξανά ή να αποθηκεύσετε το πρότυπο τοπικά στο %3$S/%1$S-%2$S.
+
+## LOCALIZATION NOTE(saveToLocalFoldersFailed): Message appears after normal
+## save fails (e.g., to Sent) and save to Local Folders also fails. This could
+## occur if network is down and filesystem problems are present such as disk
+## full, permission issues or hardware failure.
+saveToLocalFoldersFailed=Αδυναμία αποθήκευσης μηνύματος σε τοπικούς φακέλους. Ενδέχεται να μην επαρκεί ο αποθηκευτικός χώρος.
+
+## LOCALIZATION NOTE(blockedAllowResource): %S is the URL to load.
+blockedAllowResource=Άρση φραγής %S
+## LOCALIZATION NOTE (blockedContentMessage): Semi-colon list of plural forms.
+## See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+## %S will be replaced by brandShortName.
+## Files must be unblocked individually, therefore the plural form reads:
+## Unblocking a file (one of several) will include it (that one file) in your sent message.
+## In other words:
+## Unblocking one/several file(s) will include it/them in your message.
+blockedContentMessage=Το %S έχει αποκλείσει τη φόρτωση ενός αρχείου μέσα στο μήνυμα. Η άρση φραγής θα το συμπεριλάβει στο απεσταλμένο μήνυμά σας.;Το %S έχει αποκλείσει τη φόρτωση ορισμένων αρχείων μέσα στο μήνυμα. Η άρση φραγής θα τα συμπεριλάβει στο απεσταλμένο μήνυμά σας.
+
+## LOCALIZATION NOTE (blockedContentPrefLabel, blockedContentPrefAccesskey):
+## Same content as (blockedContentPrefLabel, blockedContentPrefAccesskey)
+## in mail directory. SeaMonkey does only use Options and not Preferences.
+blockedContentPrefLabel=Επιλογές
+blockedContentPrefAccesskey=Ε
diff --git a/l10n-el/suite/chrome/mailnews/compose/mailComposeEditorOverlay.dtd b/l10n-el/suite/chrome/mailnews/compose/mailComposeEditorOverlay.dtd
new file mode 100644
index 0000000000..7e32a7e26e
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/compose/mailComposeEditorOverlay.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 attachImageSource.label "Επισύναψη εικόνας στο μήνυμα">
+<!ENTITY attachImageSource.accesskey "σ">
+
+<!ENTITY attachLinkSource.label "Επισύναψη πηγής συνδέσμου στο μήνυμα">
+<!ENTITY attachLinkSource.accesskey "ν">
diff --git a/l10n-el/suite/chrome/mailnews/compose/messengercompose.dtd b/l10n-el/suite/chrome/mailnews/compose/messengercompose.dtd
new file mode 100644
index 0000000000..4d6aceaa4b
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/compose/messengercompose.dtd
@@ -0,0 +1,140 @@
+<!-- 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 messengercompose.dtd Main UI for message composition -->
+<!ENTITY msgComposeWindow.title "Σύνθεση: (χωρίς θέμα)">
+
+<!ENTITY fromAddr.label "Από:">
+<!ENTITY fromAddr.accesskey "π">
+<!ENTITY toAddr.label "Προς:">
+<!ENTITY ccAddr.label "Κοιν:">
+<!ENTITY bccAddr.label "Κρυφή Κοιν:">
+<!ENTITY replyAddr.label "Απάντηση σε:">
+<!ENTITY newsgroupsAddr.label "Ομάδα συζήτησης:">
+<!ENTITY followupAddr.label "Συνέχεια σε:">
+<!ENTITY subject.label "Θέμα:">
+<!ENTITY subject.accesskey "Θ">
+<!ENTITY attachments.label "Συνημμένα:">
+<!ENTITY attachments.accesskey "μ">
+
+<!-- menu items: the . means that the menu item isn't implemented yet -->
+
+<!-- File menu items -->
+<!ENTITY saveCmd.label "Αποθήκευση">
+<!ENTITY saveCmd.accesskey "π">
+<!ENTITY saveAsCmd.label "Αποθήκευση ως">
+<!ENTITY saveAsCmd.accesskey "ω">
+<!ENTITY saveAsFileCmd.label "Αρχείο…">
+<!ENTITY saveAsFileCmd.accesskey "Α">
+<!ENTITY saveAsDraftCmd.label "Προσχέδιο">
+<!ENTITY saveAsDraftCmd.accesskey "Π">
+<!ENTITY saveAsTemplateCmd.label "Πρότυπο">
+<!ENTITY saveAsTemplateCmd.accesskey "ρ">
+<!ENTITY attachMenu.label "Επισύναψη">
+<!ENTITY attachMenu.accesskey "ψ">
+<!ENTITY attachFileCmd.label "Αρχείο(α)…">
+<!ENTITY attachFileCmd.accesskey "Α">
+<!ENTITY attachPageCmd.label "Ιστοσελίδα…">
+<!ENTITY attachPageCmd.accesskey "Ι">
+<!--LOCALIZATION NOTE attachVCardCmd.label Don't translate the term 'vCard' -->
+<!ENTITY attachVCardCmd.label "Προσωπική κάρτα (vCard)">
+<!ENTITY attachVCardCmd.accesskey "Π">
+<!ENTITY sendNowCmd.label "Αποστολή τώρα">
+<!ENTITY sendCmd.keycode "VK_RETURN">
+<!ENTITY sendNowCmd.accesskey "λ">
+<!ENTITY sendLaterCmd.label "Αποστολή αργότερα">
+<!ENTITY sendLaterCmd.keycode "VK_RETURN">
+<!ENTITY sendLaterCmd.accesskey "γ">
+
+<!-- Edit menu items -->
+<!ENTITY editRewrapCmd.label "Aναδίπλωση">
+<!ENTITY editRewrapCmd.key "R">
+<!ENTITY editRewrapCmd.accesskey "δ">
+<!ENTITY accountManagerCmd.label "Ρυθμίσεις λογαριασμού αλληλογραφίας &amp; ομάδων συζήτησης…">
+<!ENTITY accountManagerCmd.accesskey "θ">
+
+<!-- View menu items -->
+<!ENTITY showComposeToolbarCmd.label "Γραμμή αλληλογραφίας">
+<!ENTITY showComposeToolbarCmd.accesskey "λ">
+<!ENTITY showFormatToolbarCmd.label "Γραμμή μορφοποίησης">
+<!ENTITY showFormatToolbarCmd.accesskey "Γ">
+
+<!-- Format menu items -->
+<!ENTITY formatMenu.label "Μορφή">
+<!ENTITY formatMenu.accesskey "ο">
+
+<!-- Options menu items -->
+<!ENTITY optionsMenu.label "Επιλογές">
+<!ENTITY optionsMenu.accesskey "λ">
+
+<!ENTITY quoteCmd.label "Παράθεση μηνύματος">
+<!ENTITY quoteCmd.accesskey "Π">
+<!ENTITY selectAddressCmd.label "Επιλογή διευθύνσεων…">
+<!ENTITY selectAddressCmd.key "">
+<!ENTITY selectAddressCmd.accesskey "δ">
+
+<!ENTITY priorityMenu.label "Προτεραιότητα">
+<!ENTITY priorityMenu.accesskey "ρ">
+<!ENTITY lowestPriorityCmd.label "Πολύ χαμηλή">
+<!ENTITY lowestPriorityCmd.accesskey "λ">
+<!ENTITY lowPriorityCmd.label "Χαμηλή">
+<!ENTITY lowPriorityCmd.accesskey "μ">
+<!ENTITY normalPriorityCmd.label "Κανονική">
+<!ENTITY normalPriorityCmd.accesskey "ν">
+<!ENTITY highPriorityCmd.label "Υψηλή">
+<!ENTITY highPriorityCmd.accesskey "η">
+<!ENTITY highestPriorityCmd.label "Πολύ υψηλή">
+<!ENTITY highestPriorityCmd.accesskey "Π">
+
+<!ENTITY returnReceiptMenu.label "Αποδεικτικό παραλαβής">
+<!ENTITY returnReceiptMenu.accesskey "δ">
+<!ENTITY dsnMenu.label "Ειδοποίηση κατάστασης παράδοσης">
+<!ENTITY dsnMenu.accesskey "Ε">
+
+<!ENTITY outputFormatMenu.label "Μορφοποίηση">
+<!ENTITY outputFormatMenu.accesskey "φ">
+<!ENTITY autoFormatCmd.label "Αυτόματος εντοπισμός">
+<!ENTITY autoFormatCmd.accesskey "α">
+<!ENTITY plainTextFormatCmd.label "Μόνο απλό κείμενο">
+<!ENTITY plainTextFormatCmd.accesskey "κ">
+<!ENTITY htmlFormatCmd.label "Μόνο εμπλουτισμένο κείμενο (HTML)">
+<!ENTITY htmlFormatCmd.accesskey "ε">
+<!ENTITY bothFormatCmd.label "Απλό και εμπλουτισμένο (HTML) κείμενο">
+<!ENTITY bothFormatCmd.accesskey "λ">
+
+<!ENTITY fileCarbonCopyCmd.label "Αποστολή αντιγράφου σε">
+<!ENTITY fileCarbonCopyCmd.accesskey "γ">
+<!ENTITY fileHereMenu.label "Αποθήκευση εδώ">
+
+<!--LOCALIZATION NOTE Toolbar items Don't change any "chrome://" URLs -->
+<!-- Toolbar items -->
+<!ENTITY sendButton.label "Αποστολή">
+<!ENTITY addressButton.label "Διεύθυνση">
+<!ENTITY attachButton.label "Επισύναψη">
+<!ENTITY spellingButton.label "Ορθογραφία">
+<!ENTITY saveButton.label "Αποθήκευση">
+<!ENTITY stopButton.label "Διακοπή">
+
+<!--tooltips-->
+<!-- We already inherit &menuBar.tooltip and &mailToolbar.tooltip from messenger.dtd -->
+<!ENTITY addressBar.tooltip "Γραμμή διευθύνσεων">
+<!ENTITY formatToolbar.tooltip "Γραμμή μορφοποίησης">
+<!ENTITY sendButton.tooltip "Άμεση αποστολή μηνύματος">
+<!ENTITY sendlaterButton.tooltip "Αποστολή μηνύματος αργότερα">
+<!ENTITY addressButton.tooltip "Επιλογή παραλήπτη από ευρετήριο διευθύνσεων">
+<!ENTITY attachButton.tooltip "Εισαγωγή συνημμένου">
+<!ENTITY saveButton.tooltip "Αποθήκευση μηνύματος">
+<!ENTITY stopButton.tooltip "Διακοπή τρέχουσας μεταφοράς">
+
+<!-- context menu items -->
+<!ENTITY openAttachment.label "Άνοιγμα">
+<!ENTITY openAttachment.accesskey "Ά">
+<!ENTITY renameAttachment.label "Μετονομασία…">
+<!ENTITY renameAttachment.accesskey "Μ">
+<!ENTITY deleteAttachment.accesskey "Δ">
+<!ENTITY selectAllAttachments.accesskey "ό">
+<!ENTITY attachFile.label "Επισύναψη αρχείου(ων)…">
+<!ENTITY attachFile.accesskey "Ε">
+<!ENTITY attachPage.label "Επισύναψη ιστοσελίδας…">
+<!ENTITY attachPage.accesskey "ι">
diff --git a/l10n-el/suite/chrome/mailnews/compose/sendProgress.dtd b/l10n-el/suite/chrome/mailnews/compose/sendProgress.dtd
new file mode 100644
index 0000000000..a0a85897ed
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/compose/sendProgress.dtd
@@ -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/. -->
+
+<!--LOCALIZATION NOTE sendprogress.dtd Main UI for Send Message Progress Dialog -->
+<!ENTITY sendDialog.title "Επεξεργασία μηνύματος">
+<!ENTITY status.label "Κατάσταση:">
+<!ENTITY progress.label "Πρόοδος:">
diff --git a/l10n-el/suite/chrome/mailnews/compose/sendProgress.properties b/l10n-el/suite/chrome/mailnews/compose/sendProgress.properties
new file mode 100644
index 0000000000..8377755f67
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/compose/sendProgress.properties
@@ -0,0 +1,21 @@
+# 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 (titleSendMsgSubject):
+# %S will be replaced by the message subject.
+titleSendMsgSubject=Αποστολή μηνύματος - %S
+titleSendMsg=Αποστολή μηνύματος
+# LOCALIZATION NOTE (titleSaveMsgSubject):
+# %S will be replaced by the message subject.
+titleSaveMsgSubject=Αποθήκευση μηνύματος - %S
+titleSaveMsg=Αποθήκευση μηνύματος
+
+# LOCALIZATION NOTE (percentMsg):
+# This string is used to format the text to the right of the progress meter.
+# %S will be replaced by the percentage of the file that has been saved.
+# %% will be replaced a single % sign.
+percentMsg=%S%%
+
+messageSent=Το μήνυμά σας έχει αποσταλεί.
+messageSaved=Το μήνυμά σας έχει αποθηκευτεί.
diff --git a/l10n-el/suite/chrome/mailnews/custom.properties b/l10n-el/suite/chrome/mailnews/custom.properties
new file mode 100644
index 0000000000..d2d5f8c832
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/custom.properties
@@ -0,0 +1,5 @@
+# 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/.
+
+colonInHeaderName=Η κεφαλίδα που εισήγατε περιέχει ένα μη έγκυρο χαρακτήρα, όπως ':', έναν μη εκτυπώσιμο χαρακτήρα, έναν μη-ASCII χαρακτήρα, ή έναν χαρακτήρα ASCII των οκτώ bit. Παρακαλούμε αφαιρέστε τον μη έγκυρο χαρακτήρα και προσπαθήστε ξανά.
diff --git a/l10n-el/suite/chrome/mailnews/downloadheaders.dtd b/l10n-el/suite/chrome/mailnews/downloadheaders.dtd
new file mode 100644
index 0000000000..3614b2463e
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/downloadheaders.dtd
@@ -0,0 +1,20 @@
+<!-- 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 all.label "Λήψη όλων των κεφαλίδων">
+<!ENTITY all.accesskey "Λ">
+<!--LOCALIZATION NOTE (download.label):
+ consider the download.label and headers.label as a single sentence
+ with the number of headers to be downloaded inserted between them:
+ EXAMPLE: "Download" <some number> "headers"
+ Either label could be set to null ("") if required grammatically.
+-->
+
+<!ENTITY download.label "Λήψη">
+<!ENTITY download.accesskey "ψ">
+<!--LOCALIZATION NOTE (headers.label): see note for download.label -->
+<!ENTITY headers.label "κεφαλίδων">
+<!ENTITY headers.accesskey "κ">
+<!ENTITY mark.label "Επισήμανση υπόλοιπων κεφαλίδων ως αναγνωσμένων">
+<!ENTITY mark.accesskey "Ε">
diff --git a/l10n-el/suite/chrome/mailnews/fieldMapImport.dtd b/l10n-el/suite/chrome/mailnews/fieldMapImport.dtd
new file mode 100644
index 0000000000..f3cd832227
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/fieldMapImport.dtd
@@ -0,0 +1,20 @@
+<!-- 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 fieldMapImport.title "Εισαγωγή ευρετηρίου διευθύνσεων">
+<!ENTITY fieldMapImport.size "width: 40em; height: 30em;">
+<!ENTITY fieldMapImport.recordNumber "Εισηγμένα δεδομένα για εγγραφή:">
+<!ENTITY fieldMapImport.next.label "Επόμενο">
+<!ENTITY fieldMapImport.next.accesskey "Ε">
+<!ENTITY fieldMapImport.previous.label "Προηγούμενο">
+<!ENTITY fieldMapImport.previous.accesskey "Π">
+<!ENTITY fieldMapImport.text 'Με τα κουμπιά "Μετακίνηση πάνω" και "Μετακίνηση κάτω", αντιστοιχίστε τα πεδία του ευρετηρίου στα αριστερά με τα σωστά δεδομένα προς εισαγωγή στα δεξιά. Καταργήστε την επιλογή των στοιχείων που δεν θέλετε να εισαχθούν.'>
+<!ENTITY fieldMapImport.up.label "Μετακίνηση πάνω">
+<!ENTITY fieldMapImport.up.accesskey "π">
+<!ENTITY fieldMapImport.down.label "Μετακίνηση κάτω">
+<!ENTITY fieldMapImport.down.accesskey "κ">
+<!ENTITY fieldMapImport.fieldListTitle "Πεδία ευρετηρίου διευθύνσεων">
+<!ENTITY fieldMapImport.dataTitle "Δεδομένα εγγραφής για εισαγωγή">
+<!ENTITY fieldMapImport.skipFirstRecord.label "Η πρώτη εγγραφή περιέχει ονόματα πεδίων">
+<!ENTITY fieldMapImport.skipFirstRecord.accessKey "π">
diff --git a/l10n-el/suite/chrome/mailnews/filter.properties b/l10n-el/suite/chrome/mailnews/filter.properties
new file mode 100644
index 0000000000..bf22a008ae
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/filter.properties
@@ -0,0 +1,97 @@
+# 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/.
+
+mustSelectFolder=Πρέπει να επιλέξετε έναν φάκελο προορισμού.
+enterValidEmailAddress=Εισάγετε μια έγκυρη διεύθυνση email για προώθηση.
+pickTemplateToReplyWith=Επιλέξτε ένα πρότυπο απάντησης.
+mustEnterName=Πρέπει να δώσετε ένα όνομα σε αυτό το φίλτρο.
+cannotHaveDuplicateFilterTitle=Διπλότυπο όνομα φίλτρου
+cannotHaveDuplicateFilterMessage=Το όνομα φίλτρου που καταχωρήσατε υπάρχει ήδη. Παρακαλώ εισάγετε ένα διαφορετικό όνομα φίλτρου.
+mustHaveFilterTypeTitle=Δεν επιλέχθηκε συμβάν φίλτρου
+mustHaveFilterTypeMessage=Πρέπει να επιλέξετε τουλάχιστον ένα γεγονός κατά την εφαρμογή του φίλτρου. Αν δεν θέλετε να εκτελείται προσωρινά σε κανένα γεγονός, αλλάξτε την ενεργή του κατάσταση από το παράθυρο "Φίλτρα μηνυμάτων".
+deleteFilterConfirmation=Θέλετε σίγουρα να διαγράψετε το επιλεγμένο φίλτρο(α);
+untitledFilterName=Φίλτρο χωρίς τίτλο
+matchAllFilterName=Αντιστοίχιση όλων των μηνυμάτων
+filterListBackUpMsg=Τα φίλτρα σας δεν λειτουργούν επειδή δεν ήταν δυνατή η ανάγνωση του αρχείου msgFilterRules.dat, που περιέχει τα φίλτρα σας. Θα δημιουργηθεί ένα νέο αρχείο msgFilterRules.dat, καθώς και ένα αντίγραφο του παλιού αρχείου, με όνομα rulesbackup.dat, στον ίδιο κατάλογο.
+customHeaderOverflow=Έχετε υπερβεί το όριο των 50 προσαρμοσμένων κεφαλίδων. Παρακαλώ αφαιρέστε κάποιες και δοκιμάστε ξανά.
+filterCustomHeaderOverflow=Τα φίλτρα σας έχουν υπερβεί το όριο των 50 προσαρμοσμένων κεφαλίδων. Παρακαλώ επεξεργαστείτε το αρχείο msgFilterRules.dat, που περιέχει τα φίλτρα σας, ώστε να χρησιμοποιεί λιγότερες προσαρμοσμένες κεφαλίδες.
+invalidCustomHeader=Ένα από τα φίλτρα σας χρησιμοποιεί προσαρμοσμένη κεφαλίδα που περιέχει μη έγκυρο χαρακτήρα, όπως ':', μη εκτυπώσιμο χαρακτήρα, μη-ascii χαρακτήρα, ή χαρακτήρα ascii οκτώ bit. Παρακαλώ επεξεργαστείτε το αρχείο msgFilterRules.dat, που περιέχει τα φίλτρα σας, για να τους αφαιρέσετε.
+continueFilterExecution=Αποτυχία εφαρμογής του φίλτρου %S. Θέλετε να συνεχίσετε με την εφαρμογή φίλτρων;
+promptTitle=Εκτελούμενα φίλτρα
+promptMsg=Αυτή τη στιγμή, είναι σε εξέλιξη το φιλτράρισμα των μηνυμάτων.\nΘέλετε να συνεχίσετε την εφαρμογή των φίλτρων;
+stopButtonLabel=Διακοπή
+continueButtonLabel=Συνέχεια
+cannotEnableFilter=Αυτό το φίλτρο δημιουργήθηκε μάλλον από κάποια μελλοντική έκδοση αυτού του λογισμικού. Δεν μπορείτε να ενεργοποιήσετε το φίλτρο επειδή δεν ξέρουμε πώς να το εφαρμόσουμε.
+# LOCALIZATION NOTE(cannotEnableIncompatFilter)
+# %S=the name of the application
+cannotEnableIncompatFilter=To φίλτρο μάλλον δημιουργήθηκε από μια νεότερη ή ασύμβατη έκδοση του %S. Δεν μπορείτε να το ενεργοποιήσετε, επειδή δεν γνωρίζουμε πώς να το εφαρμόσουμε.
+# LOCALIZATION NOTE(contextPeriodic.label): Semi-colon list of plural forms.
+# #1=the number of minutes
+contextPeriodic.label=Περιοδικά, κάθε λεπτό;Περιοδικά, κάθε #1 λεπτά
+# LOCALIZATION NOTE(filterFailureWarningPrefix)
+# %1$S=filter error action
+# %2$S=error code as hexadecimal string.
+filterFailureWarningPrefix=Αποτυχία ενέργειας φίλτρου: "%1$S" με κωδικό σφάλματος=%2$S κατά την απόπειρα:
+filterFailureSendingReplyError=Σφάλμα αποστολής απάντησης
+filterFailureSendingReplyAborted=Η αποστολή απάντησης ακυρώθηκε
+filterFailureMoveFailed=Αποτυχία μετακίνησης
+filterFailureCopyFailed=Αποτυχία αντιγραφής
+filterFailureAction=Αποτυχία εφαρμογής ενέργειας φίλτρου
+
+searchTermsInvalidTitle=Μη έγκυροι όροι αναζήτησης
+# LOCALIZATION NOTE(searchTermsInvalidRule)
+# %1$S=search attribute name from the invalid rule
+# %2$S=search operator from the bad rule
+searchTermsInvalidRule=Δεν είναι δυνατή η αποθήκευση του φίλτρου, επειδή ο όρος αναζήτησης "%1$S %2$S" δεν είναι έγκυρος στην τρέχουσα περίπτωση.
+# LOCALIZATION NOTE(filterActionOrderExplanation)
+# Keep the \n\n that mean 2 linebreaks.
+filterActionOrderExplanation=Όταν ένα μήνυμα ταιριάξει με αυτό το φίλτρο, οι ενέργειες θα εκτελεστούν με την εξής σειρά:\n\n
+filterActionOrderTitle=Πραγματική σειρά ενεργειών
+## LOCALIZATION NOTE(filterActionItem):
+# %1$S=sequence number of the action, %2$S=action text, %3$S=action argument
+filterActionItem=%1$S. %2$S %3$S\n
+
+# for junk mail logging / mail filter logging
+# LOCALIZATION NOTE(junkLogDetectStr)
+# %1$S=author, %2$S=subject, %3$S=date
+junkLogDetectStr=Εντοπίστηκε ανεπιθύμητο μήνυμα από τον/την %1$S - %2$S στις %3$S
+# LOCALIZATION NOTE(logMoveStr)
+# %1$S=message id, %2$S=folder URI
+logMoveStr=ID μετακινημένου μηνύματος = %1$S στο %2$S
+# LOCALIZATION NOTE(logCopyStr)
+# %1$S=message id, %2$S=folder URI
+logCopyStr=ID αντιγραμμένου μηνύματος = %1$S στο %2$S
+# LOCALIZATION NOTE(filterLogLine):
+# %1$S=timestamp %2$S=log message
+filterLogLine=[%1$S] %2$S
+# LOCALIZATION NOTE(filterMessage):
+# %1$S=filter name, %1$S=log message
+filterMessage=Μήνυμα από το φίλτρο "%1$S": %2$S
+# LOCALIZATION NOTE(filterLogDetectStr)
+# %1$S=filter name %2$S=author, %3$S=subject, %4$S=date
+filterLogDetectStr=Εφαρμόστηκε το φίλτρο "%1$S" στο μήνυμα από τον/την %2$S - %3$S στις %4$S
+filterMissingCustomAction=Απουσία προσαρμοσμένης ενέργειας
+filterAction2=η προτεραιότητα άλλαξε
+filterAction3=διαγράφηκε
+filterAction4=επισημάνθηκε ως αναγνωσμένο
+filterAction5=το νήμα τερματίστηκε
+filterAction6=το νήμα παρακολουθείται
+filterAction7=με σημαία
+filterAction8=με ετικέτα
+filterAction9=απαντήθηκε
+filterAction10=προωθήθηκε
+filterAction11=η εκτέλεση διακόπηκε
+filterAction12=διαγράφηκε από τον διακομιστή POP3
+filterAction13=διατηρήθηκε στον διακομιστή POP3
+filterAction14=βαθμολογία ανεπιθύμητων
+filterAction15=ελήφθη κυρίως μέρος μηνύματος από τον διακομιστή POP3
+filterAction16=αντιγράφηκε στον φάκελο
+filterAction17=με ετικέτα
+filterAction18=αγνοημένο υπονήμα
+filterAction19=επισημάνθηκε ως μη αναγνωσμένο
+# LOCALIZATION NOTE(filterAutoNameStr)
+# %1$S=Header or item to match, e.g. "From", "Tag", "Age in days", etc.
+# %2$S=Operator, e.g. "Contains", "is", "is greater than", etc.
+# %3$S=Value, e.g. "Steve Jobs", "Important", "42", etc.
+filterAutoNameStr=%1$S %2$S: %3$S
diff --git a/l10n-el/suite/chrome/mailnews/folderProps.dtd b/l10n-el/suite/chrome/mailnews/folderProps.dtd
new file mode 100644
index 0000000000..d1206edc81
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/folderProps.dtd
@@ -0,0 +1,70 @@
+<!-- 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 folderProps.windowtitle.label "Ιδιότητες">
+
+<!ENTITY generalInfo.label "Γενικές πληροφορίες">
+<!ENTITY folderCharsetFallback2.label "Εφεδρική κωδικοποίηση κειμένου:">
+<!ENTITY folderCharsetFallback2.accesskey "Ε">
+<!ENTITY folderCharsetEnforce2.label "Εφαρμογή κωδικοποίησης σε όλα τα μηνύματα του φακέλου (οι ξεχωριστές ρυθμίσεις κωδικοποίησης κειμένου των μηνυμάτων και ο αυτόματος εντοπισμός θα αγνοηθούν)">
+<!ENTITY folderCharsetEnforce2.accesskey "Ε">
+<!ENTITY folderRebuildSummaryFileTip2.label "Εκ νέου δημιουργία ευρετηρίου αρχείων περίληψης">
+<!ENTITY folderRebuildSummaryFile2.label "Επιδιόρθωση φακέλου">
+<!ENTITY folderRebuildSummaryFile2.accesskey "Ε">
+<!ENTITY folderRebuildSummaryFile.explanation "Μερικές φορές, το αρχείο ευρετηρίου φακέλων (.msf) καταστρέφεται και φαίνεται ότι λείπουν μηνύματα ή εμφανίζονται διαγραμμένα μηνύματα· η επιδιόρθωση του φακέλου ενδέχεται να λύσει αυτά τα ζητήματα.">
+<!ENTITY folderIncludeInGlobalSearch.label "Συμπερίληψη μηνυμάτων φακέλου στα αποτελέσματα της καθολικής αναζήτησης">
+<!ENTITY folderIncludeInGlobalSearch.accesskey "κ">
+
+<!ENTITY retention.label "Πολιτική διατήρησης">
+<!ENTITY retentionUseAccount.label "Χρήση ρυθμίσεων λογαριασμού">
+<!ENTITY retentionUseAccount.accesskey "Χ">
+<!ENTITY daysOld.label "ημερών">
+<!ENTITY message.label "μηνύματα">
+<!ENTITY retentionCleanup.label "Διατήρηση μηνυμάτων:">
+<!ENTITY retentionCleanupImap.label "Διατήρηση μηνυμάτων, τόσο των τοπικών αντιγράφων όσο και τα αρχικών στον διακομιστή:">
+<!ENTITY retentionCleanupPop.label "Διατήρηση μηνυμάτων, καθώς και των πρωτότυπων στον διακομιστή:">
+<!ENTITY retentionDeleteMsg.label "Διαγραφή μηνυμάτων παλαιότερων από">
+<!ENTITY retentionDeleteMsg.accesskey "μ">
+<!ENTITY retentionKeepAll.label "Όλα τα μηνύματα">
+<!ENTITY retentionKeepAll.accesskey "Ό">
+<!ENTITY retentionKeepRecent.label "Το νεότερο">
+<!ENTITY retentionKeepRecent.accesskey "ν">
+<!ENTITY retentionApplyToFlagged.label "Πάντα διατήρηση των μηνυμάτων με σημαία">
+<!ENTITY retentionApplyToFlagged.accesskey "α">
+
+<!ENTITY folderSynchronizationTab.label "Συγχρονισμός">
+<!ENTITY folderCheckForNewMessages2.label "Κατά τη λήψη μηνυμάτων από αυτό τον λογαριασμό, να γίνεται πάντα έλεγχος αυτού του φακέλου">
+<!ENTITY folderCheckForNewMessages2.accesskey "χ">
+
+<!ENTITY offlineFolder.check.label "Επιλογή αυτού του φακέλου για χρήση εκτός σύνδεσης">
+<!ENTITY offlineFolder.check.accesskey "Ε">
+<!ENTITY offlineFolder.button.label "Λήψη τώρα">
+<!ENTITY offlineFolder.button.accesskey "Λ">
+
+<!ENTITY selectofflineNewsgroup.check.label "Επιλογή αυτής της ομάδας συζήτησης για χρήση εκτός σύνδεσης">
+<!ENTITY selectofflineNewsgroup.check.accesskey "ο">
+<!ENTITY offlineNewsgroup.button.label "Λήψη τώρα">
+<!ENTITY offlineNewsgroup.button.accesskey "Λ">
+
+<!ENTITY folderProps.name.label "Όνομα:">
+<!ENTITY folderProps.name.accesskey "Ό">
+<!ENTITY folderProps.location.label "Τοποθεσία:">
+<!ENTITY folderProps.location.accesskey "Τ">
+
+<!ENTITY folderSharingTab.label "Κοινή χρήση">
+<!ENTITY privileges.button.label "Δικαιώματα…">
+<!ENTITY privileges.button.accesskey "Δ">
+<!ENTITY permissionsDesc.label "Έχετε τα ακόλουθα δικαιώματα:">
+<!ENTITY folderType.label "Τύπος φακέλου:">
+
+<!ENTITY folderQuotaTab.label "Όριο">
+<!ENTITY folderQuotaUsage.label "Χρήση:">
+<!ENTITY folderQuotaStatus.label "Κατάσταση:">
+
+<!ENTITY numberOfMessages.label "Αριθμός μηνυμάτων:">
+<!-- LOCALIZATION NOTE: When the number of messages can't be determined, this string is displayed as the number -->
+<!ENTITY numberUnknown.label "άγνωστος">
+<!ENTITY sizeOnDisk.label "Μέγεθος στο δίσκο:">
+<!-- LOCALIZATION NOTE: When the size can't be determined, this string is displayed as the size -->
+<!ENTITY sizeUnknown.label "άγνωστο">
diff --git a/l10n-el/suite/chrome/mailnews/folderWidgets.properties b/l10n-el/suite/chrome/mailnews/folderWidgets.properties
new file mode 100644
index 0000000000..ffa26fd311
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/folderWidgets.properties
@@ -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/.
+
+# LOCALIZATION NOTE(globalInbox)
+# %S=name of the Local folders account
+globalInbox=Καθολικά εισερχόμενα (%S)
+# LOCALIZATION NOTE(verboseFolderFormat): %1$S is folder name, %2$S is server name
+verboseFolderFormat=%1$S στο %2$S
+chooseFolder=Επιλογή φακέλου…
+chooseAccount=Επιλογή λογαριασμού…
+noFolders=Κανένας διαθέσιμος φάκελος
diff --git a/l10n-el/suite/chrome/mailnews/folderpane.dtd b/l10n-el/suite/chrome/mailnews/folderpane.dtd
new file mode 100644
index 0000000000..a2017ede11
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/folderpane.dtd
@@ -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/. -->
+<!ENTITY nameColumn.label "Όνομα">
+<!ENTITY unreadColumn.label "Μη αναγνωσμένα">
+<!ENTITY totalColumn.label "Σύνολο">
+<!ENTITY folderSizeColumn.label "Μέγεθος">
+<!ENTITY folderLocationToolbarItem.title "Τοποθεσία φακέλου">
+<!ENTITY mailViewsToolbarItem.title "Προβολές email">
+<!ENTITY searchToolbarItem.title "Αναζήτηση">
+<!ENTITY searchSubjectOrAddress.placeholder "Αναζήτηση θέματος ή διεύθυνσης">
diff --git a/l10n-el/suite/chrome/mailnews/gloda.properties b/l10n-el/suite/chrome/mailnews/gloda.properties
new file mode 100644
index 0000000000..c33d5f23c1
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/gloda.properties
@@ -0,0 +1,104 @@
+# 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 (*.facetLabel): These are the labels used to label the facet
+# displays in the global search facet display mechanism.
+
+# LOCALIZATION NOTE (*.includeLabel): The label to use for the included group
+# in the facet display. If not provided, we will fall back to
+# "glodaFacetView.facets.included.fallbackLabel".
+
+# LOCALIZATION NOTE (*.excludeLabel): The label to use for the excluded group
+# in the facet display. If not provided, we will fall back to
+# "glodaFacetView.facets.excluded.fallbackLabel".
+
+# LOCALIZATION NOTE (*.remainderLabel): The label to use for the remaining items
+# that are neither part of the included group or the excluded group in the
+# facet display. If not provided, we will fall back to
+# "glodaFacetView.facets.remainder.fallbackLabel".
+
+# LOCALIZATION NOTE (gloda.message.attr.folder.*): Stores the message folder in
+# which the message is stored.
+gloda.message.attr.folder.facetLabel=Φάκελος αλληλογραφίας
+
+# LOCALIZATION NOTE (gloda.message.attr.fromMe.*): Stores everyone involved
+# with the message. This means from/to/cc/bcc.
+gloda.message.attr.fromMe.facetLabel=Από εμένα
+
+# LOCALIZATION NOTE (gloda.message.attr.toMe.*): Stores everyone involved
+# with the message. This means from/to/cc/bcc.
+gloda.message.attr.toMe.facetLabel=Προς εμένα
+
+# LOCALIZATION NOTE (gloda.message.attr.involves.*): Stores everyone involved
+# with the message. This means from/to/cc/bcc.
+gloda.message.attr.involves.facetLabel=Άτομα
+gloda.message.attr.involves.includeLabel=περιλαμβάνονται οποιαδήποτε από:
+gloda.message.attr.involves.excludeLabel=δεν περιλαμβάνονται:
+gloda.message.attr.involves.remainderLabel=άλλοι συμμετέχοντες:
+
+# LOCALIZATION NOTE (gloda.message.attr.date.*): Stores the date of the message.
+# SeaMonkey normally stores the date the message claims it was composed
+# according to the "Date" header. This is not the same as when the message
+# was sent or when it was eventually received by the user. In the future we
+# may change this to be one of the other dates, but not anytime soon.
+gloda.message.attr.date.facetLabel=Ημερομηνία
+
+# LOCALIZATION NOTE (gloda.message.attr.attachmentTypes.*): Stores the list of
+# MIME types (ex: image/png, text/plain) of real attachments (not just part of
+# the message content but explicitly named attachments) on the message.
+# Although we hope to be able to provide localized human-readable explanations
+# of the MIME type (ex: "PowerPoint document"), I don't know if that is going
+# to happen.
+gloda.message.attr.attachmentTypes.facetLabel=Συνημμένα
+
+# LOCALIZATION NOTE (gloda.message.attr.mailing-list.*): Stores the mailing
+# lists detected in the message. This will normally be the e-mail address of
+# the mailing list and only be detected in messages received from the mailing
+# list. Extensions may contribute additional detected mailing-list-like
+# things.
+gloda.message.attr.mailing-list.facetLabel=Συμμετέχει σε λίστα αλληλογραφίας
+
+# LOCALIZATION NOTE (gloda.message.attr.tag.*): Stores the tags applied to the
+# message. Notably, gmail's labels are not currently exposed via IMAP and we
+# do not do anything clever with gmail, so this is indepdendent of gmail
+# labels. This may change in the future, but it's a safe bet it's not
+# happening on SeaMonkey's side prior to 2.0.
+gloda.message.attr.tag.facetLabel=Ετικέτες
+
+# LOCALIZATION NOTE (gloda.message.attr.star.*): Stores whether the message is
+# flagged or not, as indicated by a pretty flag icon.
+# Thunderbird uses a star.
+gloda.message.attr.star.facetLabel=Με σημαία
+
+# LOCALIZATION NOTE (gloda.message.attr.read.*): Stores whether the user has
+# read the message or not.
+gloda.message.attr.read.facetLabel=Αναγνωσμένο
+
+# LOCALIZATION NOTE (gloda.message.attr.repliedTo.*): Stores whether we believe
+# the user has ever replied to the message. We normally show a little icon in
+# the thread pane when this is the case.
+gloda.message.attr.repliedTo.facetLabel=Απαντήθηκε
+
+# LOCALIZATION NOTE (gloda.message.attr.forwarded.*): Stores whether we believe
+# the user has ever forwarded the message. We normally show a little icon in
+# the thread pane when this is the case.
+gloda.message.attr.forwarded.facetLabel=Προωθήθηκε
+
+# LOCALIZATION NOTE (gloda.mimetype.category.*.label): Map categories of MIME
+# types defined in mimeTypeCategories.js to labels.
+# LOCALIZATION NOTE (gloda.mimetype.category.archives.label): Archive is
+# referring to things like zip files, tar files, tar.gz files, etc.
+gloda.mimetype.category.archives.label=Αρχεία
+gloda.mimetype.category.documents.label=Έγγραφα
+gloda.mimetype.category.images.label=Εικόνες
+# LOCALIZATION NOTE (gloda.mimetype.category.media.label): Media is meant to
+# encompass both audio and video. This is because video and audio streams are
+# frequently stored in the same type of container and we cannot rely on the
+# sending e-mail client to have been clever enough to figure out what was
+# really in the file. So we group them together.
+gloda.mimetype.category.media.label=Πολυμέσα (Ήχος, βίντεο)
+gloda.mimetype.category.pdf.label=Αρχεία PDF
+# LOCALIZATION NOTE (gloda.mimetype.category.other.label): Other is the category
+# for MIME types that we don't really know what it is.
+gloda.mimetype.category.other.label=Άλλο
diff --git a/l10n-el/suite/chrome/mailnews/imapMsgs.properties b/l10n-el/suite/chrome/mailnews/imapMsgs.properties
new file mode 100644
index 0000000000..f9d8f5b9ed
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/imapMsgs.properties
@@ -0,0 +1,271 @@
+# 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/.
+
+#
+# The following are used by the imap code to display progress/status/error messages
+#
+
+#LOCALIZATION NOTE(imapAlertDialogTile): Do not translate the word "%S"
+# below. Place the word %S where the account name should appear.
+imapAlertDialogTitle=Ειδοποίηση για τον λογαριασμό %S
+
+# Status - opening folder
+imapStatusSelectingMailbox=Άνοιγμα φακέλου %S…
+
+# Status - create folder
+imapStatusCreatingMailbox=Δημιουργία φακέλου…
+
+# Status - deleting a folder
+# LOCALIZATION NOTE (imapStatusDeletingMailbox): The "%S" below should not be translated.
+# Instead, insert "%S" in your translation where you wish to display the name
+# of the folder being deleted.
+imapStatusDeletingMailbox=Διαγραφή φακέλου %S…
+
+# Status - renaming mailbox
+# LOCALIZATION NOTE (imapStatusRenamingMailbox): The "%S" below should not be translated.
+# Instead, insert "%S" in your translation where you wish to display the name
+# of the folder being renamed.
+imapStatusRenamingMailbox=Μετονομασία φακέλου %S…
+
+# Status - looking for mailboxes
+imapStatusLookingForMailbox=Αναζήτηση φακέλων…
+
+# Status - subscribing to mailbox
+# LOCALIZATION NOTE (imapStatusSubscribeToMailbox): The "%S" below should not be translated.
+# Instead, insert "%S" in your translation where you wish to display the name
+# of the folder being subscribed to.
+imapStatusSubscribeToMailbox=Συνδρομή στον φάκελο %S…
+
+# Status - unsubscribing from mailbox
+# LOCALIZATION NOTE (imapStatusUnsubscribeMailbox): The "%S" below should not be translated.
+# Instead, insert "%S" in your translation where you wish to display the name
+# of the folder being unsubscribed from.
+imapStatusUnsubscribeMailbox=Κατάργηση συνδρομής στο φάκελο %S…
+
+# Status - searching imap folder
+imapStatusSearchMailbox=Αναζήτηση φακέλου…
+
+# Status - closing a folder
+imapStatusCloseMailbox=Κλείσιμο φακέλου…
+
+# Status - compacting a folder
+imapStatusExpungingMailbox=Σύμπτυξη φακέλου…
+
+# Status - logging out
+imapStatusLoggingOut=Αποσύνδεση…
+
+# Status - checking server capabilities
+imapStatusCheckCompat=Έλεγχος δυνατοτήτων διακομιστή email…
+
+# Status - logging on
+imapStatusSendingLogin=Αποστολή πληροφοριών σύνδεσης…
+
+# Status - auth logon
+imapStatusSendingAuthLogin=Αποστολή πληροφοριών σύνδεσης…
+
+# Status - downloading message
+imapDownloadingMessage=Λήψη μηνύματος…
+
+# Status - getting acl for folder
+# LOCALIZATION NOTE (imapGettingACLForFolder): Do not translate the word "ACL" below.
+imapGettingACLForFolder=Λήψη φακέλου ACL…
+
+# Status - getting server info
+imapGettingServerInfo=Λήψη πληροφοριών ρύθμισης διακομιστή…
+
+# Status - getting mailbox info
+imapGettingMailboxInfo=Λήψη πληροφοριών ρύθμισης γραμματοκιβωτίου…
+
+# Status - empty mime part
+imapEmptyMimePart=Αυτό το τμήμα του κυρίως κειμένου θα ληφθεί κατόπιν αιτήματος.
+
+# LOCALIZATION NOTE (imapReceivingMessageHeaders3): Do not translate the words "%1$S", "%2$S", and "%3$S" below.
+# Place the word %1$S in your translation where the number of the header being downloaded should appear.
+# Place the word %2$S in your translation where the total number of headers to be downloaded should appear.
+# Place the word %3$S in your translation where the name of the folder being processed should appear.
+# Note: The account name and separators (e.g. colon, space) are automatically added to the status message.
+# Example: "Joe's Account: Downloading message header 100 of 1000 in Drafts…"
+imapReceivingMessageHeaders3=Λήψη επικεφαλίδας μηνύματος %1$S από %2$S στο %3$S…
+
+# LOCALIZATION NOTE (imapReceivingMessageFlags3): Do not translate the words "%1$S", "%2$S", and "%3$S" below.
+# Place the word %1$S in your translation where the number of the flag being downloaded should appear.
+# Place the word %2$S in your translation where the total number of flags to be downloaded should appear.
+# Place the word %3$S in your translation where the name of the folder being processed should appear.
+# Note: The account name and separators (e.g. colon, space) are automatically added to the status message.
+# Example: "Jim's Account: Downloading message flag 100 of 1000 in INBOX…"
+imapReceivingMessageFlags3=Λήψη σημαίας μηνύματος %1$S από %2$S στο %3$S…
+
+imapDeletingMessages=Διαγραφή μηνυμάτων…
+
+imapDeletingMessage=Διαγραφή μηνύματος…
+
+# LOCALIZATION NOTE (imapMovingMessages): Do not translate the word "%S" below.
+# Place the word %S in your translation where the name of the folder should appear.
+imapMovingMessages=Μετακίνηση μηνυμάτων στο %S…
+
+# LOCALIZATION NOTE (imapMovingMessage): Do not translate the word "%S" below.
+# Place the word %S in your translation where the name of the folder should appear.
+imapMovingMessage=Μετακίνηση μηνύματος στο %S…
+
+# LOCALIZATION NOTE (imapCopyingMessages): Do not translate the word "%S" below.
+# Place the word %S in your translation where the name of the folder should appear.
+imapCopyingMessages=Αντιγραφή μηνυμάτων στο %S…
+
+# LOCALIZATION NOTE (imapCopyingMessage): Do not translate the word "%S" below.
+# Place the word %S in your translation where the name of the folder should appear.
+imapCopyingMessage=Αντιγραφή μηνύματος στο %S…
+
+# LOCALIZATION NOTE (imapFolderReceivingMessageOf3): Do not translate the words "%1$S", "%2$S", and "%3$S" below.
+# Place the word %1$S in your translation where the number of the message being downloaded should appear.
+# Place the word %2$S in your translation where the total number of messages to be downloaded should appear.
+# Place the word %3$S in your translation where the name of the folder being processed should appear.
+# Note: The account name and separators (e.g. colon, space) are automatically added to the status message.
+# Example: "Juan's Account: Downloading message 100 of 1000 in Sent…"
+imapFolderReceivingMessageOf3=Λήψη μηνύματος %1$S από %2$S στο %3$S…
+
+# LOCALIZATION NOTE (imapDiscoveringMailbox): Do not translate the word "%S" below.
+# Place the word %S in your translation where the name of the folder should appear.
+imapDiscoveringMailbox=Βρέθηκε ο φάκελος: %S
+
+# LOCALIZATION NOTE (imapEnterServerPasswordPrompt): Do not translate the words %1$S and %2$S below.
+# Place the word %1$S in your translation where the username should appear.
+# Place the word %2$S in your translation where the servername should appear.
+imapEnterServerPasswordPrompt=Εισάγετε τον κωδικό πρόσβασής σας για το %1$S στο %2$S:
+
+# LOCALIZATION NOTE (imapServerNotImap4): Do not translate the word "IMAP4" below.
+imapServerNotImap4=Ο διακομιστής email %S δεν είναι διακομιστής IMAP4.
+
+# This is intentionally left blank.
+imapDone=
+
+# LOCALIZATION NOTE (imapEnterPasswordPromptTitleWithUsername): Do not translate the
+# word %1$S. Place the word %1$S where the user name should appear.
+imapEnterPasswordPromptTitleWithUsername=Εισάγετε τον κωδικό πρόσβασής σας για το %1$S
+
+imapUnknownHostError=Αποτυχία σύνδεσης στον διακομιστή %S.
+imapOAuth2Error=Σφάλμα ταυτοποίησης κατά τη σύνδεση με τον διακομιστή %S.
+
+imapConnectionRefusedError=Αδυναμία σύνδεσης στον διακομιστή email %S· η σύνδεση απορρίφθηκε.
+
+imapNetTimeoutError=Έληξε ο χρόνος σύνδεσης με τον διακομιστή %S.
+
+# Status - no messages to download
+imapNoNewMessages=Δεν υπάρχουν νέα μηνύματα στον διακομιστή.
+
+imapDefaultAccountName=Αλληλογραφία για %S
+
+imapSpecialChar2=Ο χαρακτήρας %S είναι δεσμευμένος σε αυτό τον διακομιστή IMAP. Παρακαλώ επιλέξτε άλλο όνομα.
+
+imapPersonalSharedFolderTypeName=Προσωπικός φάκελος
+
+imapPublicFolderTypeName=Δημόσιος φάκελος
+
+imapOtherUsersFolderTypeName=Φάκελος άλλου χρήστη
+
+imapPersonalFolderTypeDescription=Αυτός είναι ένας προσωπικός φάκελος email. Δεν είναι κοινόχρηστος.
+
+imapPersonalSharedFolderTypeDescription=Αυτός είναι ένας προσωπικός φάκελος email. Έχει γίνει κοινόχρηστος.
+
+imapPublicFolderTypeDescription=Αυτός είναι ένας δημόσιος φάκελος.
+
+imapOtherUsersFolderTypeDescription=Αυτός είναι ένας φάκελος email που κοινοποιείται από τον χρήστη '%S'.
+
+imapAclFullRights=Πλήρης έλεγχος
+
+imapAclLookupRight=Αναζήτηση
+
+imapAclReadRight=Ανάγνωση
+
+imapAclSeenRight=Ορισμός κατάστασης (μη) αναγνωσμένου
+
+imapAclWriteRight=Εγγραφή
+
+imapAclInsertRight=Εισαγωγή (Αντιγραφή σε)
+
+imapAclPostRight=Δημοσίευση
+
+imapAclCreateRight=Δημιουργία υποφακέλου
+
+imapAclDeleteRight=Διαγραφή μηνυμάτων
+
+imapAclAdministerRight=Διαχείριση φακέλου
+
+imapServerDoesntSupportAcl=Αυτός ο διακομιστής δεν υποστηρίζει κοινόχρηστους φακέλους.
+
+imapAclExpungeRight=Απαλοιφή
+
+imapServerDisconnected= Ο διακομιστής %S αποσυνδέθηκε. Ενδέχεται να έχει "πέσει" ή προέκυψε πρόβλημα δικτύου.
+
+# LOCALIZATION NOTE (autoSubscribeText): %1$S is the imap folder.
+imapSubscribePrompt=Θέλετε να εγγραφείτε στο %1$S;
+
+imapServerDroppedConnection=Αδυναμία σύνδεσης στον διακομιστή ΙΜΑΡ σας. Ίσως έχετε υπερβεί το μέγιστο αριθμό \
+συνδέσεων στον διακομιστή. Αν ναι, μειώστε τον αριθμό προσωρινά αποθηκευμένων συνδέσεων \
+από το παράθυρο "Σύνθετες ρυθμίσεις διακομιστή ΙΜΑΡ".
+
+# This will occur when a folder that has never been imap selected or opened
+# (left-clicked) is first right-clicked to access quota properties.
+imapQuotaStatusFolderNotOpen=Οι πληροφορίες ορίων χρήσης δεν είναι διαθέσιμες γιατί ο φάκελος δεν είναι ανοικτός.
+
+# The imap capability response reports that QUOTA is not supported.
+imapQuotaStatusNotSupported=Αυτός ο διακομιστής δεν υποστηρίζει όρια χρήσης.
+
+# The getqutaroot command succeeded but reported no quota information.
+imapQuotaStatusNoQuota2=Αυτός ο φάκελος δεν αναφέρει πληροφορίες ορίων.
+
+# Folder properties were requested by the user (right-click) before the getquotaroot
+# command was sent.
+imapQuotaStatusInProgress=Οι πληροφορίες ορίων δεν είναι ακόμη διαθέσιμες.
+
+# Out of memory
+imapOutOfMemory=Ανεπάρκεια μνήμης για την εφαρμογή.
+
+# LOCALIZATION NOTE (imapCopyingMessageOf2): Do not translate the word "%S" below.
+# Place the word %3$S in your translation where the name of the destination folder should appear.
+# Place the word %1$S where the currently copying message should appear.
+# Place the word %2$S where the total number of messages should appear.
+imapCopyingMessageOf2=Αντιγραφή μηνύματος %1$S από %2$S στο %3$S…
+
+# LOCALIZATION NOTE (imapMoveFolderToTrash): Do not translate the word %S below.
+# "%S" is the name of the folder.
+imapMoveFolderToTrash=Θέλετε σίγουρα να διαγράψετε το φάκελο '%S';
+
+# LOCALIZATION NOTE (imapDeleteNoTrash): Do not translate the word %S below.
+# "%S" is the name of the folder.
+imapDeleteNoTrash=Η διαγραφή αυτού του φακέλου δεν είναι αναστρέψιμη και θα διαγράψει όλα τα περιεχόμενα μηνύματα και τους υποφακέλους του. Θέλετε σίγουρα να διαγράψετε τον φάκελο '%S';
+
+imapDeleteFolderDialogTitle=Διαγραφή φακέλου
+
+imapDeleteFolderButtonLabel=&Διαγραφή φακέλου
+
+# LOCALIZATION NOTE (imapAuthChangeEncryptToPlainSSL): %S is the server hostname
+imapAuthChangeEncryptToPlainSSL=Ο διακομιστής IMAP %S δεν φαίνεται να υποστηρίζει κρυπτογραφημένους κωδικούς πρόσβασης. Αν μόλις ρυθμίσατε τον λογαριασμό, παρακαλώ επιλέξτε 'Κανονικός κωδικός πρόσβασης' στη ρύθμιση 'Μέθοδος ταυτοποίησης' στο 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'. Αν λειτουργούσε παλιά και τώρα ξαφνικά αποτυγχάνει, παρακαλώ επικοινωνήστε με τον διαχειριστή ή τον πάροχο email σας.
+
+# LOCALIZATION NOTE (imapAuthChangePlainToEncrypt): %S is the server hostname
+imapAuthChangePlainToEncrypt=Ο διακομιστής IMAP %S δεν υποστηρίζει κωδικούς πρόσβασης απλού κειμένου. Παρακαλώ επιλέξτε 'Κρυπτογραφημένος κωδικός πρόσβασης' στη ρύθμιση 'Μέθοδος ταυτοποίησης' στο 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'.
+
+# LOCALIZATION NOTE (imapAuthChangeEncryptToPlainNoSSL): %S is the server hostname
+imapAuthChangeEncryptToPlainNoSSL=Ο διακομιστής IMAP %S δεν φαίνεται να υποστηρίζει κρυπτογραφημένους κωδικούς πρόσβασης. Αν μόλις ρυθμίσατε τον λογαριασμό, παρακαλώ επιλέξτε 'Κωδικός πρόσβασης, μη ασφαλής μετάδοση' στη ρύθμιση 'Μέθοδος ταυτοποίησης' στο 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'. Αν λειτουργούσε παλιά και τώρα ξαφνικά αποτυγχάνει, είναι ένα σύνηθες σενάριο που κάποιος θα μπορούσε να υποκλέψει τον κωδικό πρόσβασής σας.
+
+# LOCALIZATION NOTE (imapAuthMechNotSupported): %S is the server hostname
+imapAuthMechNotSupported=Ο διακομιστής IMAP %S δεν υποστηρίζει την επιλεγμένη μέθοδο ταυτοποίησης. Παρακαλώ αλλάξτε την επιλογή 'Μέθοδος ταυτοποίησης' στο 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'.
+
+# LOCALIZATION NOTE (imapAuthGssapiFailed): %S is the server hostname
+imapAuthGssapiFailed=Το Kerberos/GSSAPI ticket δεν έγινε δεκτό από τον διακομιστή IMAP %S. Παρακαλώ ελέγξτε τη σύνδεση σας στον τομέα Kerberos/GSSAPI.
+
+# LOCALIZATION NOTE (imapServerCommandFailed):
+# Place the word %1$S in your translation where the name of the account name should appear.
+# Place the word %2$S in your translation where the server response should appear.
+imapServerCommandFailed=Η τρέχουσα εντολή απέτυχε. Ο διακομιστής email για τον λογαριασμό %1$S απάντησε: %2$S
+
+# LOCALIZATION NOTE (imapFolderCommandFailed): Do not translate the word %S below.
+# Place the word %1$S in your translation where the name of the account should appear.
+# Place the word %2$S in your translation where the name of the folder should appear.
+# Place the word %3$S in your translation where the server response should appear.
+imapFolderCommandFailed=Η τρέχουσα διεργασία στο '%2$S' απέτυχε. Ο διακομιστής email για τον λογαριασμό %1$S απάντησε: %3$S
+
+# LOCALIZATION NOTE (imapServerAlert):
+# Place the word %1$S in your translation where the name of the account should appear.
+# Place the word %2$S in your translation where the alert from the server should appear.
+imapServerAlert=Ειδοποίηση από τον λογαριασμό %1$S: %2$S
diff --git a/l10n-el/suite/chrome/mailnews/importDialog.dtd b/l10n-el/suite/chrome/mailnews/importDialog.dtd
new file mode 100644
index 0000000000..14febf82a6
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/importDialog.dtd
@@ -0,0 +1,43 @@
+<!-- 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 importDialog.windowTitle "Εισαγωγή">
+<!ENTITY importAll.label "Εισαγωγή όλων">
+<!ENTITY importAll.accesskey "ό">
+<!ENTITY importMail.label "Αλληλογραφία">
+<!ENTITY importMail.accesskey "Α">
+<!ENTITY importFeeds.label "Συνδρομές ροών">
+<!ENTITY importFeeds.accesskey "ρ">
+<!ENTITY importAddressbook.label "Ευρετήρια">
+<!ENTITY importAddressbook.accesskey "Ε">
+<!ENTITY importSettings.label "Ρυθμίσεις">
+<!ENTITY importSettings.accesskey "Ρ">
+<!ENTITY importFilters.label "Φίλτρα">
+<!ENTITY importFilters.accesskey "Φ">
+
+<!ENTITY window.width "40em">
+<!ENTITY window.macWidth "45em">
+
+<!ENTITY importTitle.label "Βοηθός εισαγωγής του &brandShortName;">
+<!ENTITY importShortDesc.label "Εισαγωγή αλληλογραφίας, ευρετηρίων διευθύνσεων και φίλτρων από άλλα προγράμματα">
+
+<!ENTITY importDescription1.label "Αυτός ο βοηθός θα εισαγάγει τα email, τις καταχωρήσεις ευρετηρίων, τις συνδρομές ροών, τις προτιμήσεις και/ή τα φίλτρα σας από άλλα προγράμματα email και συνήθεις μορφές ευρετηρίων στο &brandShortName;.">
+<!ENTITY importDescription2.label "Μόλις ολοκληρωθεί η εισαγωγή, θα μπορείτε να έχετε πρόσβαση σε αυτά από το &brandShortName;.">
+
+<!ENTITY selectDescription.label "Παρακαλώ επιλέξτε τον τύπο του αρχείου που θέλετε να εισαγάγετε:">
+<!ENTITY selectDescriptionB.label "Παρακαλώ επιλέξτε έναν υπάρχοντα λογαριασμό ή δημιουργήστε έναν νέο:">
+<!ENTITY selectDescription.accesskey "Π">
+<!ENTITY acctName.label "Όνομα:">
+<!ENTITY acctName.accesskey "Ό">
+<!ENTITY noModulesFound.label "Δεν βρέθηκε καμία εφαρμογή ή αρχείο για εισαγωγή δεδομένων.">
+
+<!ENTITY back.label "&lt; Πίσω">
+<!ENTITY forward.label "Επόμενο &gt;">
+<!ENTITY finish.label "Τέλος">
+<!ENTITY cancel.label "Ακύρωση">
+
+<!ENTITY select.label "ή επιλέξτε τον τύπο υλικού για εισαγωγή:">
+
+<!ENTITY title.label "Τίτλος">
+<!ENTITY processing.label "Εισαγωγή…">
diff --git a/l10n-el/suite/chrome/mailnews/importMsgs.properties b/l10n-el/suite/chrome/mailnews/importMsgs.properties
new file mode 100644
index 0000000000..3fe2f5b0b0
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/importMsgs.properties
@@ -0,0 +1,306 @@
+# 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/.
+
+#
+# The following are used by the import code to display status/error
+# and informational messages
+#
+
+# Success message when no address books are found to import
+## @name IMPORT_NO_ADDRBOOKS
+## @loc None
+2000=Δεν βρέθηκαν ευρετήρια προς εισαγωγή.
+
+# Error: Address book import not intialized
+## @name IMPORT_ERROR_AB_NOTINITIALIZED
+## @loc None
+2001=Αδυναμία εισαγωγής ευρετηρίων: σφάλμα αρχικοποίησης.
+
+# Error: Unable to create the import thread
+## @name IMPORT_ERROR_AB_NOTHREAD
+## @loc None
+2002=Αδυναμία εισαγωγής ευρετηρίων: αδυναμία δημιουργίας νήματος εισαγωγής.
+
+# Error: Unable to create the import thread
+## @name IMPORT_ERROR_GETABOOK
+## @loc None
+# LOCALIZATION NOTE (Error 2003): Do not translate the word "%S" below.
+2003=Σφάλμα εισαγωγής %S: αδυναμία δημιουργίας ευρετηρίου.
+
+# Success message when no mailboxes are found to import
+## @name IMPORT_NO_MAILBOXES
+## @loc None
+2004=Δεν βρέθηκαν γραμματοκιβώτια προς εισαγωγή
+
+# Error: Mailbox import not intialized
+## @name IMPORT_ERROR_MB_NOTINITIALIZED
+## @loc None
+2005=Αδυναμία εισαγωγής γραμματοκιβωτίων, σφάλμα αρχικοποίησης
+
+# Error: Unable to create the import thread
+## @name IMPORT_ERROR_MB_NOTHREAD
+## @loc None
+2006=Δεν είναι δυνατή η εισαγωγή γραμματοκιβωτίων, αδυναμία δημιουργίας νήματος εισαγωγής
+
+# Error: Unable to create the proxy object for importing mailboxes
+## @name IMPORT_ERROR_MB_NOPROXY
+## @loc None
+2007=Αδυναμία εισαγωγής γραμματοκιβωτίων, δεν είναι δυνατή η δημιουργία αντικειμένου μεσολάβησης για τα γραμματοκιβώτια προορισμού
+
+# Error: Error creating destination mailboxes
+## @name IMPORT_ERROR_MB_FINDCHILD
+## @loc None
+# LOCALIZATION NOTE (Error 2008): Do not translate the word "%S" below.
+# Place %S in your translation where the name of the mailbox should appear.
+2008=Σφάλμα κατά τη δημιουργία γραμματοκιβωτίων προορισμού, δεν είναι δυνατή η εύρεση γραμματοκιβωτίου %S
+
+# Error: Error creating destination mailboxes
+## @name IMPORT_ERROR_MB_CREATE
+## @loc None
+# LOCALIZATION NOTE (Error 2009): Do not translate the word "%S" below.
+# Place %S in your translation where the name of the mailbox should appear.
+2009=Σφάλμα εισαγωγής γραμματοκιβωτίου %S, δεν είναι δυνατή η δημιουργία γραμματοκιβωτίου προορισμού
+
+# Error: No destination folder to import mailboxes
+## @name IMPORT_ERROR_MB_NODESTFOLDER
+## @loc None
+2010=Δεν είναι δυνατή η δημιουργία φακέλου για την εισαγωγή email
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC_START
+## @loc None
+2100=Όνομα
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2101=Επώνυμο
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2102=Εμφανιζόμενο όνομα
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2103=Ψευδώνυμο
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2104=Κύριο email
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2105=Δευτερεύον email
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2106=Τηλέφωνο εργασίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2107=Τηλέφωνο οικίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2108=Αριθμός φαξ
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2109=Αριθμός βομβητή
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2110=Αριθμός κινητού
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2111=Διεύθυνση οικίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2112=Διεύθυνση οικίας 2
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2113=Πόλη οικίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2114=Περιοχή οικίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2115=Ταχ. κώδικας οικίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2116=Χώρα οικίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2117=Διεύθυνση εργασίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2118=Διεύθυνση εργασίας 2
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2119=Πόλη εργασίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2120=Περιοχή εργασίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2121=Ταχ, κώδικας εργασίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2122=Χώρα εργασίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2123=Τίτλος εργασίας
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2124=Τμήμα
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2125=Εταιρεία
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2126=Ιστοσελίδα 1
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2127=Ιστοσελίδα 2
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2128=Έτος γέννησης
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2129=Μήνας γέννησης
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2130=Ημέρα γέννησης
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2131=Προσαρμοσμένο 1
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2132=Προσαρμοσμένο 2
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2133=Προσαρμοσμένο 3
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2134=Προσαρμοσμένο 4
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2135=Σημειώσεις
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC_END
+## @loc None
+2136=Εμφανιζόμενο όνομα
+
+#Error strings
+ImportAlreadyInProgress=Μια διαδικασία εισαγωγής είναι σε εξέλιξη. Δοκιμάστε ξανά όταν ολοκληρωθεί η τρέχουσα εισαγωγή.
+
+#Error strings for settings import
+ImportSettingsBadModule=Αδυναμία φόρτωσης μονάδας ρυθμίσεων
+ImportSettingsNotFound=Αδυναμία εύρεσης ρυθμίσεων. Βεβαιωθείτε ότι η εφαρμογή έχει εγκατασταθεί σε αυτή τη συσκευή.
+ImportSettingsFailed=Προέκυψε σφάλμα κατά την εισαγωγή ρυθμίσεων. Ορισμένες (ή όλες οι) ρυθμίσεις ενδέχεται να μην έχουν εισαχθεί.
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+ImportSettingsSuccess=Έγινε εισαγωγή ρυθμίσεων από το %S
+
+#Error string for mail import
+ImportMailBadModule=Αδυναμία φόρτωσης μονάδας εισαγωγής email
+ImportMailNotFound=Αδυναμία εύρεσης email για εισαγωγή. Βεβαιωθείτε ότι η εφαρμογή email έχει εγκατασταθεί σωστά στη συσκευή αυτή.
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+ImportMailFailed=Προέκυψε σφάλμα κατά την εισαγωγή email από %S
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+ImportMailSuccess=Έγινε επιτυχής εισαγωγή email από %S
+
+# Error string for address import
+ImportAddressBadModule=Αδυναμία φόρτωσης μονάδας εισαγωγής ευρετηρίου.
+ImportAddressNotFound=Αδυναμία εύρεσης ευρετηρίων για εισαγωγή. Βεβαιωθείτε ότι η επιλεγμένη εφαρμογή ή μορφή έχει εγκατασταθεί σωστά στη συσκευή αυτή.
+ImportEmptyAddressBook=Αδυναμία εισαγωγής κενού ευρετηρίου %S.
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+ImportAddressFailed=Προέκυψε σφάλμα κατά την εισαγωγή διευθύνσεων από %S.
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+ImportAddressSuccess=Επιτυχής εισαγωγή διευθύνσεων από το %S.
+
+# Error string for filters import
+ImportFiltersBadModule=Αδυναμία φόρτωσης μονάδας εισαγωγής φίλτρων.
+# LOCALIZATION NOTE : The %S will get replaced by the name of the import module.
+ImportFiltersFailed=Προέκυψε σφάλμα κατά την εισαγωγή φίλτρων από %S.
+# LOCALIZATION NOTE : The %S will get replaced by the name of the import module.
+ImportFiltersSuccess=Επιτυχής εισαγωγή φίλτρων από %S.
+# LOCALIZATION NOTE : The %S will get replaced by the name of the import module.
+ImportFiltersPartial=Έγινε μερική εισαγωγή φίλτρων από %S. Ακολουθούν προειδοποιήσεις:
+
+#Progress strings
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+MailProgressMeterText=Μετατροπή γραμματοκιβωτίων από %S
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+AddrProgressMeterText=Μετατροπή ευρετηρίων από %S
+
+#Import file dialog strings
+ImportSelectSettings=Επιλογή αρχείου ρυθμίσεων
+ImportSelectMailDir=Επιλογή καταλόγου αλληλογραφίας
+ImportSelectAddrDir=Επιλογή καταλόγου ευρετηρίου διευθύνσεων
+ImportSelectAddrFile=Επιλογή αρχείου ευρετηρίου διευθύνσεων
+
+# Folder Names for imported Mail
+DefaultFolderName=Εισηγμένη αλληλογραφία
+# LOCALIZATION NOTE: Do not translate the word "%S" below.
+ImportModuleFolderName=Εισαγωγή %S
diff --git a/l10n-el/suite/chrome/mailnews/junkLog.dtd b/l10n-el/suite/chrome/mailnews/junkLog.dtd
new file mode 100644
index 0000000000..8d1077b653
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/junkLog.dtd
@@ -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/. -->
+
+<!ENTITY adaptiveJunkLog.title "Αρχείο καταγραφής προσαρμοστικής ανεπιθύμητης αλληλογραφίας">
+<!ENTITY adaptiveJunkLogInfo.label "Αρχείο καταγραφής δραστηριότητας για τον προσαρμοστικό έλεγχο ανεπιθύμητης αλληλογραφίας.">
+<!ENTITY clearLog.label "Απαλοιφή αρχείου καταγραφής">
+<!ENTITY clearLog.accesskey "Α">
+<!ENTITY closeLog.label "Κλείσιμο">
+<!ENTITY closeLog.accesskey "λ">
diff --git a/l10n-el/suite/chrome/mailnews/junkMailInfo.dtd b/l10n-el/suite/chrome/mailnews/junkMailInfo.dtd
new file mode 100644
index 0000000000..88b5654cb0
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/junkMailInfo.dtd
@@ -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/. -->
+
+<!ENTITY window.title "Σχετικά με τα ανεπιθύμητα email">
+<!ENTITY window.width "450">
+<!ENTITY info1a.label "Η Αλληλογραφία εντοπίζει αυτόματα τα εισερχόμενα μηνύματα που φαίνεται να είναι ανεπιθύμητα (γνωστά και ως spam). Τα μηνύματα που θεωρούνται ανεπιθύμητα θα εμφανίζουν το αντίστοιχο εικονίδιο">
+<!ENTITY info1b.label ".">
+<!ENTITY info2.label "Αρχικά, θα πρέπει να εκπαιδεύσετε την Αλληλογραφία ώστε να αναγνωρίζει τα ανεπιθύμητα email, επισημαίνοντας τα μηνύματα ως ανεπιθύμητα ή επιθυμητά, με το κουμπί ανεπιθύμητων στη γραμμή εργαλείων.">
+<!ENTITY info3.label "Μόλις η Αλληλογραφία αναγνωρίσει επιτυχώς ανεπιθύμητα email, μπορείτε να χρησιμοποιήσετε τα στοιχεία ελέγχου ανεπιθύμητων email για αυτόματη μετακίνηση εισερχόμενων ανεπιθύμητων email στο φάκελο ανεπιθύμητων.">
+<!ENTITY info4.label 'Για περισσότερες πληροφορίες, κάντε κλικ στο "Βοήθεια".'>
diff --git a/l10n-el/suite/chrome/mailnews/localMsgs.properties b/l10n-el/suite/chrome/mailnews/localMsgs.properties
new file mode 100644
index 0000000000..585d9adc4f
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/localMsgs.properties
@@ -0,0 +1,149 @@
+# 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/.
+
+#
+# The following are used by the local mail code to display progress/status/error messages
+#
+
+# LOCALIZATION NOTE(pop3ErrorDialogTitle): Do not translate the word "%S"
+# below. Place the word %S where the account name should appear.
+pop3ErrorDialogTitle=Σφάλμα με τον λογαριασμό %S
+
+# LOCALIZATION NOTE (pop3EnterPasswordPromptTitleWithUsername): Do not translate the
+# word %1$S. Place the word %1$S where the user name should appear.
+pop3EnterPasswordPromptTitleWithUsername=Εισάγετε τον κωδικό πρόσβασής σας για το %1$S
+
+# LOCALIZATION NOTE(pop3EnterPasswordPrompt): Do not translate the words "%1$S"
+# and "%2$S" below. Place the word %1$S where the user name should appear, and
+# %2$S where the host name should appear.
+pop3EnterPasswordPrompt=Εισάγετε τον κωδικό πρόσβασής σας για το %1$S στο %2$S:
+
+# LOCALIZATION NOTE(pop3PreviouslyEnteredPasswordIsInvalidPrompt): Do not
+# translate the words "%1$S" and "%2$S" below. Place the word %1$S where the
+# user name should appear, and %2$S where the host name should appear.
+pop3PreviouslyEnteredPasswordIsInvalidPrompt=Παρακαλώ εισάγετε ένα νέο κωδικό για τον χρήστη %1$S στο %2$S:
+
+# Status - Downloading message n of m
+# LOCALIZATION NOTE (receivingMessages): Do not translate %1$S or %2$S in the following lines.
+# Place the word %1$S where the number of messages downloaded so far should appear.
+# Place the word %2$S where the total number of messages to receive should appear;
+receivingMessages=Λήψη μηνύματος %1$S από %2$S…
+
+# Status - connecting to host
+hostContact=Έγινε επαφή με κεντρικό υπολογιστή, αποστολή στοιχείων σύνδεσης…
+
+# Status - no messages to download
+noNewMessages=Δεν υπάρχουν νέα μηνύματα.
+
+# Status - messages received after the download
+#LOCALIZATION NOTE : Do not translate %1$S or %2$S in the following line.
+# %1$S will receive the number of messages received
+# %2$S will receive the total number of messages
+receivedMsgs=Ελήφθησαν %1$S από %2$S μηνύματα
+
+# Status - parsing folder
+#LOCALIZATION NOTE (buildingSummary): Do not translate %S in the following line.
+# Place the word %S where the name of the mailbox should appear
+buildingSummary=Δημιουργία αρχείου περίληψης για %S…
+
+# Status - parsing folder
+localStatusDocumentDone=Τέλος
+
+# Status - pop3 server error
+#LOCALIZATION NOTE (pop3ServerError): Do not translate POP3 in the following line.
+pop3ServerError=Προέκυψε σφάλμα στον διακομιστή αλληλογραφίας POP3.
+
+# Status - pop3 user name failed
+pop3UsernameFailure=Αποτυχία αποστολής ονόματος χρήστη.
+
+# Status - password failed
+#LOCALIZATION NOTE (pop3PasswordFailed): Do not translate "%1$S" below.
+# Place the word %1$S where the user name should appear.
+pop3PasswordFailed=Αποτυχία αποστολής κωδικού πρόσβασης για το χρήστη %1$S.
+
+# Status - write error occurred
+pop3MessageWriteError=Αδυναμία εγγραφής του email στο γραμματοκιβώτιο. Βεβαιωθείτε ότι έχετε δικαίωμα εγγραφής στο σύστημα αρχείων και αρκετό χώρο στο δίσκο για την αντιγραφή του γραμματοκιβωτίου.
+
+# Status - pop3 server or folder busy
+# LOCALIZATION NOTE (pop3ServerBusy): Do not translate the word "%S" below.
+# Place %S where the account name should appear.
+pop3ServerBusy=Ο λογαριασμός %S είναι υπό επεξεργασία. Παρακαλώ περιμένετε μέχρι να ολοκληρωθεί η διαδικασία για λήψη μηνυμάτων.
+
+# Status - retr failure from the server
+pop3RetrFailure=Η εντολή RETR απέτυχε. Σφάλμα κατά τη λήψη μηνύματος.
+
+# Status - password undefined
+pop3PasswordUndefined=Σφάλμα λήψης κωδικού πρόσβασης αλληλογραφίας.
+
+# Status - username undefined
+pop3UsernameUndefined=Δεν έχετε καταχωρήσει όνομα χρήστη για αυτό τον διακομιστή. Παρακαλώ εισάγετε ένα στο μενού ρυθμίσεων λογαριασμού και δοκιμάστε ξανά.
+
+# Status - list failure
+pop3ListFailure=Η εντολή LIST απέτυχε. Σφάλμα κατά τη λήψη του ID και του μεγέθους μηνύματος.
+
+# Status - delete error
+pop3DeleFailure=Η εντολή DELE απέτυχε. Σφάλμα κατά την επισήμανση μηνύματος ως διαγραμμένου.
+
+# Status - stat failed
+pop3StatFail=Η εντολή STAT απέτυχε. Σφάλμα κατά τη λήψη αριθμού και μεγεθών μηνυμάτων.
+
+#LOCALIZATION NOTE (pop3ServerSaid): Do not remove the leading space during translation.
+pop3ServerSaid= Ο διακομιστής email %S απάντησε:
+
+copyingMessagesStatus=Αντιγραφή %S από %S μηνύματα σε %S
+
+movingMessagesStatus=Μετακίνηση %S από %S μηνύματα σε %S
+
+movemailCantOpenSpoolFile=Αδυναμία ανοίγματος αρχείου σειράς εκτύπωσης email %S.
+
+movemailCantCreateLock=Αδυναμία δημιουργίας αρχείου κλειδώματος %S. Για να λειτουργήσει το movemail, απαιτείται η δημιουργία αρχείων κλειδώματος στον κατάλογο ουράς email. Σε πολλά συστήματα, αυτό επιτυγχάνεται ορίζοντας τη λειτουργία του καταλόγου ουράς σε 01777.
+
+movemailCantDeleteLock=Αδυναμία διαγραφής αρχείου κλειδώματος %S.
+
+movemailCantTruncateSpoolFile=Αδυναμία περικοπής αρχείου σειράς εκτύπωσης %S.
+
+movemailSpoolFileNotFound=Αδυναμία εντοπισμού αρχείου σειράς εκτύπωσης email.
+
+#LOCALIZATION NOTE (movemailCantParseSpool): %S is file name
+movemailCantParseSpool=Αδυναμία ανάλυσης αρχείου σειράς εκτύπωσης %S. Το αρχείο ενδέχεται να είναι κατεστραμμένο ή μη έγκυρο.
+
+pop3TmpDownloadError=Προέκυψε σφάλμα κατά τη λήψη του εξής μηνύματος: \nΑπό: %S\n Θέμα: %S\n Αυτό το μήνυμα ενδέχεται να περιέχει ιό ή ίσως δεν υπάρχει επαρκής χώρος στο δίσκο. Να γίνει παράκαμψη αυτού του μηνύματος;
+
+# Status - the server doesn't support UIDL…
+# LOCALIZATION NOTE(pop3ServerDoesNotSupportUidlEtc): The following sentence should be translated in this way:
+# Do not translate "POP3"
+# Do not translate "%S". Place %S in your translation where the name of the server should appear.
+# Do not translate "UIDL"
+pop3ServerDoesNotSupportUidlEtc=Ο διακομιστής αλληλογραφίας POP3 (%S) δεν υποστηρίζει UIDL ή XTND XLST, τα οποία απαιτούνται για τις επιλογές "Διατήρηση στον διακομιστή", "Μέγιστο μέγεθος μηνύματος" ή "Λήψη μόνο κεφαλίδων". Για τη λήψη των email σας, απενεργοποιήστε τις επιλογές αυτές στις ρυθμίσεις διακομιστή στο παράθυρο ρυθμίσεων λογαριασμού.
+
+# Status - the server doesn't support the top command
+# LOCALIZATION NOTE(pop3ServerDoesNotSupportTopCommand): The following sentence should be translated in this way:
+# Do not translate "POP3"
+# Do not translate "%S". Place %S in your translation where the name of the server should appear.
+# Do not translate "TOP"
+pop3ServerDoesNotSupportTopCommand=Ο διακομιστής αλληλογραφίας POP3 (%S) δεν υποστηρίζει την εντολή TOP. Χωρίς αυτή την εντολή, δεν είναι δυνατή η εφαρμογή των προτιμήσεων "Μέγιστο μέγεθος μηνύματος'' ή "Λήψη μόνο κεφαλίδων''. Η επιλογή έχει απενεργοποιηθεί και θα γίνεται λήψη μηνυμάτων ανεξαρτήτως μεγέθους.
+
+nsErrorCouldNotConnectViaTls=Αδυναμία δημιουργίας σύνδεσης TLS με τον διακομιστή POP3. Ο διακομιστής μπορεί να είναι εκτός λειτουργίας ή να μην έχει ρυθμιστεί σωστά. Παρακαλώ επαληθεύστε την ορθότητα των ρυθμίσεων του διακομιστή email στο παράθυρο ρυθμίσεων λογαριασμού και δοκιμάστε ξανά.
+
+# LOCALIZATION NOTE (pop3MoveFolderToTrash): Do not translate the word %S below.
+# "%S" is the name of the folder.
+pop3MoveFolderToTrash=Θέλετε σίγουρα να διαγράψετε τον φάκελο '%S';
+
+pop3DeleteFolderDialogTitle=Διαγραφή φακέλου
+
+pop3DeleteFolderButtonLabel=&Διαγραφή φακέλου
+
+pop3AuthInternalError=Εσωτερικό σφάλμα κατάστασης κατά την ταυτοποίηση διακομιστή POP3. Αυτό είναι ένα εσωτερικό, απρόσμενο σφάλμα της εφαρμογής και θα πρέπει να αναφερθεί ως bug.
+
+pop3AuthChangeEncryptToPlainNoSSL=Αυτός ο διακομιστής POP3 δεν φαίνεται να υποστηρίζει κρυπτογραφημένους κωδικούς πρόσβασης. Αν μόλις ρυθμίσατε τον λογαριασμό, παρακαλώ επιλέξτε 'Κωδικός πρόσβασης, μη ασφαλής μετάδοση' στη ρύθμιση 'Μέθοδος ταυτοποίησης' στο 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'. Αν λειτουργούσε παλιά και τώρα ξαφνικά αποτυγχάνει, επικοινωνήστε με τον διαχειριστή ή τον πάροχο email σας.
+
+pop3AuthChangeEncryptToPlainSSL=Αυτός ο διακομιστής POP3 δεν φαίνεται να υποστηρίζει κρυπτογραφημένους κωδικούς πρόσβασης. Αν μόλις ρυθμίσατε τον λογαριασμό, παρακαλώ επιλέξτε 'Κανονικός κωδικός πρόσβασης' στη ρύθμιση 'Μέθοδος ταυτοποίησης' στο 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'. Αν λειτουργούσε παλιά και τώρα ξαφνικά αποτυγχάνει, επικοινωνήστε με τον διαχειριστή ή τον πάροχο email σας.
+
+pop3AuthChangePlainToEncrypt=Αυτός ο διακομιστής POP3 δεν υποστηρίζει κωδικούς πρόσβασης απλού κειμένου. Παρακαλώ επιλέξτε το 'Κρυπτογραφημένος κωδικός πρόσβασης' για τη ρύθμιση 'Μέθοδος ταυτοποίησης' στο 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'.
+
+# Authentication server caps and pref don't match
+pop3AuthMechNotSupported=Ο διακομιστής δεν υποστηρίζει την επιλεγμένη μέθοδο ταυτοποίησης. Παρακαλώ αλλάξτε το 'Μέθοδος ταυτοποίησης' στο 'Ρυθμίσεις λογαριασμού | Ρυθμίσεις διακομιστή'.
+
+# Status - Could not log in to GSSAPI, and it was the only method
+pop3GssapiFailure=Το Kerberos/GSSAPI ticket δεν έγινε δεκτό από τον διακομιστή POP. Παρακαλώ ελέγξτε τη σύνδεση σας στον τομέα Kerberos/GSSAPI.
diff --git a/l10n-el/suite/chrome/mailnews/mailEditorOverlay.dtd b/l10n-el/suite/chrome/mailnews/mailEditorOverlay.dtd
new file mode 100644
index 0000000000..3506678684
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/mailEditorOverlay.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 sendPage.label "Αποστολή σελίδας…">
+<!ENTITY sendPage.accesskey "δ">
diff --git a/l10n-el/suite/chrome/mailnews/mailKeysOverlay.dtd b/l10n-el/suite/chrome/mailnews/mailKeysOverlay.dtd
new file mode 100644
index 0000000000..3227176935
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/mailKeysOverlay.dtd
@@ -0,0 +1,26 @@
+<!-- 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 markAsReadCmd.label "Ως αναγνωσμένο">
+<!ENTITY markAsReadCmd.accesskey "Ω">
+<!ENTITY markAsReadCmd.key "m">
+
+<!ENTITY markFlaggedCmd.label "Σημαία">
+<!ENTITY markFlaggedCmd.accesskey "Σ">
+<!ENTITY markFlaggedCmd.key "i">
+
+<!ENTITY openMessageWindowCmd.label "Άνοιγμα μηνύματος">
+<!ENTITY openMessageWindowCmd.accesskey "Ά">
+<!ENTITY openMessageWindowCmd.key "o">
+
+<!ENTITY tagCmd0.key "0">
+<!ENTITY tagCmd1.key "1">
+<!ENTITY tagCmd2.key "2">
+<!ENTITY tagCmd3.key "3">
+<!ENTITY tagCmd4.key "4">
+<!ENTITY tagCmd5.key "5">
+<!ENTITY tagCmd6.key "6">
+<!ENTITY tagCmd7.key "7">
+<!ENTITY tagCmd8.key "8">
+<!ENTITY tagCmd9.key "9">
diff --git a/l10n-el/suite/chrome/mailnews/mailOverlay.dtd b/l10n-el/suite/chrome/mailnews/mailOverlay.dtd
new file mode 100644
index 0000000000..9e4f638eb2
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/mailOverlay.dtd
@@ -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/. -->
+
+
+<!ENTITY newMessageCmd.key "M">
+<!ENTITY newMessageCmd.label "Μήνυμα">
+<!ENTITY newMessageCmd.accesskey "μ">
+
+<!ENTITY newContactCmd.label "Επαφή…">
+<!ENTITY newContactCmd.accesskey "Ε">
diff --git a/l10n-el/suite/chrome/mailnews/mailTasksOverlay.dtd b/l10n-el/suite/chrome/mailnews/mailTasksOverlay.dtd
new file mode 100644
index 0000000000..d93e28c320
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/mailTasksOverlay.dtd
@@ -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/. -->
+
+
+<!-- LOCALIZATION NOTE (messengerCmd.label): DONT_TRANSLATE -->
+<!ENTITY messengerCmd.label "Αλληλογραφία &amp; ομάδες συζήτησης">
+<!ENTITY messengerCmd.accesskey "ζ">
+<!ENTITY messengerCmd.commandkey "2">
+<!ENTITY addressBookCmd.label "Ευρετήριο">
+<!ENTITY addressBookCmd.accesskey "ρ">
+<!ENTITY addressBookCmd.commandkey "5">
+
+<!ENTITY taskMessenger.tooltip "Αλληλογραφία &amp; ομάδες συζήτησης">
+<!ENTITY taskAddressBook.tooltip "Ευρετήριο">
+
+<!-- searchAddressesCmd is also used by addressbook -->
+<!ENTITY searchAddressesCmd.label "Αναζήτηση διευθύνσεων…">
+<!ENTITY searchAddressesCmd.accesskey "δ">
+
+<!ENTITY searchMailCmd.label "Αναζήτηση μηνυμάτων…">
+<!ENTITY searchMailCmd.accesskey "μ">
+<!ENTITY searchMailCmd.key "f">
diff --git a/l10n-el/suite/chrome/mailnews/mailViewList.dtd b/l10n-el/suite/chrome/mailnews/mailViewList.dtd
new file mode 100644
index 0000000000..948c9bf2d0
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/mailViewList.dtd
@@ -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/. -->
+
+<!--LOCALIZATION NOTE msgViewPickerOverlay.dtd UI for showing various views on a folder -->
+
+<!ENTITY mailViewListTitle.label "Προσαρμογή προβολών μηνύματος">
+<!ENTITY viewName.label "Όνομα προβολής">
diff --git a/l10n-el/suite/chrome/mailnews/mailViewSetup.dtd b/l10n-el/suite/chrome/mailnews/mailViewSetup.dtd
new file mode 100644
index 0000000000..a2f8639ecd
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/mailViewSetup.dtd
@@ -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/. -->
+
+<!--LOCALIZATION NOTE msgViewPickerOverlay.dtd UI for showing various views on a folder -->
+
+<!ENTITY mailViewSetupTitle.label "Ρύθμιση προβολής μηνύματος">
+<!ENTITY mailViewHeading.label "Όνομα προβολής μηνύματος:">
+<!ENTITY mailViewHeading.accesskey "λ">
+<!ENTITY searchTermCaption.label "Σε αυτή την προβολή, να εμφανίζονται μόνο τα μηνύματα που:">
diff --git a/l10n-el/suite/chrome/mailnews/mailviews.properties b/l10n-el/suite/chrome/mailnews/mailviews.properties
new file mode 100644
index 0000000000..3c745e2979
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/mailviews.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/.
+
+#
+# Mail Views
+#
+
+mailViewPeopleIKnow=Γνωστά άτομα
+mailViewRecentMail=Πρόσφατη αλληλογραφία
+mailViewLastFiveDays=Τελευταίες 5 ημέρες
+mailViewNotJunk=Επιθυμητά
+mailViewHasAttachments=Έχει συνημμένα
diff --git a/l10n-el/suite/chrome/mailnews/mapi/mapi.properties b/l10n-el/suite/chrome/mailnews/mapi/mapi.properties
new file mode 100644
index 0000000000..382abc5d8d
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/mapi/mapi.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/.
+
+# MAPI Messages
+loginText=Παρακαλώ εισάγετε τον κωδικό πρόσβασής σας για το %S:
+loginTextwithName=Παρακαλώ εισάγετε το όνομα χρήστη και τον κωδικό πρόσβασής σας
+loginTitle=Αλληλογραφία %S
+PasswordTitle=Αλληλογραφία %S
+
+# MAPI Security Messages
+mapiBlindSendWarning=Κάποια άλλη εφαρμογή προσπαθεί να στείλει email μέσω του προφίλ χρήστη σας. Θέλετε σίγουρα να στείλετε το email;
+mapiBlindSendDontShowAgain=Προειδοποίηση κάθε φορά που άλλες εφαρμογές προσπαθούν να στείλουν email από το προφίλ μου
diff --git a/l10n-el/suite/chrome/mailnews/markByDate.dtd b/l10n-el/suite/chrome/mailnews/markByDate.dtd
new file mode 100644
index 0000000000..dc25121084
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/markByDate.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 messageMarkByDate.label "Επισήμανση μηνυμάτων ως αναγνωσμένων κατά ημερομηνία">
+<!ENTITY markByDateLower.label "Επισήμανση μηνυμάτων ως αναγνωσμένων από:">
+<!ENTITY markByDateLower.accesskey "α">
+<!ENTITY markByDateUpper.accesskey "Έ">
+<!ENTITY markByDateUpper.label "Έως:">
diff --git a/l10n-el/suite/chrome/mailnews/messenger.dtd b/l10n-el/suite/chrome/mailnews/messenger.dtd
new file mode 100644
index 0000000000..b1319e43ed
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/messenger.dtd
@@ -0,0 +1,552 @@
+<!-- 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 messengerWindow.title "Αλληλογραφία &amp; ομάδες συζήτησης">
+<!ENTITY titleModifier.label "&brandShortName;">
+<!ENTITY titleSeparator.label " - ">
+
+<!-- tabmail -->
+<!ENTITY tabmailClose.label "Κλείσιμο καρτέλας">
+<!ENTITY tabmailClose.tooltip "Κλείσιμο καρτέλας">
+<!ENTITY tabmailNewButton.tooltip "Αντιγραφή τρέχουσας καρτέλας">
+<!ENTITY tabmailCloseButton.tooltip "Κλείσιμο τρέχουσας καρτέλας">
+<!ENTITY tabmailAllTabs.tooltip "Λίστα όλων των καρτελών">
+
+<!-- menu items: the . means that the menu item isn't implemented yet -->
+
+<!-- File menu items -->
+<!ENTITY newMessage.label "Νέο μήνυμα">
+<!ENTITY newMessage.accesskey "Ν">
+<!ENTITY newFolderCmd.label "Φάκελος…">
+<!ENTITY newFolderCmd.accesskey "Φ">
+<!ENTITY newVirtualFolderCmd.label "Αποθηκευμένη αναζήτηση…">
+<!ENTITY newVirtualFolderCmd.accesskey "Α">
+<!ENTITY newTabCmd.label "Αντιγραφή καρτέλας">
+<!ENTITY newTabCmd.accesskey "κ">
+<!ENTITY newTabCmd.key "t">
+<!ENTITY closeTabCmd.label "Κλείσιμο καρτέλας">
+<!ENTITY closeTabCmd.accesskey "ρ">
+<!ENTITY newAccountCmd.label "Λογαριασμός…">
+<!ENTITY newAccountCmd.accesskey "Λ">
+<!ENTITY openMessageFileCmd.label "Άνοιγμα αρχείου…">
+<!ENTITY openMessageFileCmd.accesskey "Ά">
+<!ENTITY openAttachmentCmd.label "Συνημμένα">
+<!ENTITY openAttachmentCmd.accesskey "μ">
+<!ENTITY saveAsMenu.label "Αποθήκευση ως">
+<!ENTITY saveAsMenu.accesskey "Α">
+<!ENTITY saveAsFileCmd.label "Αρχείο">
+<!ENTITY saveAsFileCmd.accesskey "χ">
+<!ENTITY saveAsFileCmd.key "s">
+<!ENTITY saveAsTemplateCmd.label "Πρότυπο">
+<!ENTITY saveAsTemplateCmd.accesskey "Π">
+<!ENTITY getNewMsgCmd.label "Λήψη νέων μηνυμάτων">
+<!ENTITY getNewMsgCmd.accesskey "Λ">
+<!ENTITY getNewMsgCmd2.key "d">
+<!ENTITY getNewMsgForCmd.label "Λήψη νέων μηνυμάτων για">
+<!ENTITY getNewMsgForCmd.accesskey "ω">
+<!ENTITY getAllNewMsgCmdPopupMenu.label "Όλους τους λογαριασμούς">
+<!ENTITY getAllNewMsgCmdPopupMenu.accesskey "Ό">
+<!ENTITY getAllNewMsgCmd2.key "d">
+<!ENTITY getNextNMsgCmd.label "Λήψη των επόμενων 500 μηνυμάτων">
+<!ENTITY getNextNMsgCmd.accesskey "τ">
+<!ENTITY sendUnsentCmd.label "Αποστολή μη απεσταλμένων μηνυμάτων">
+<!ENTITY sendUnsentCmd.accesskey "λ">
+<!ENTITY subscribeCmd.label "Συνδρομή…">
+<!ENTITY subscribeCmd.accesskey "δ">
+<!ENTITY renameFolder.label "Μετονομασία φακέλου…">
+<!ENTITY renameFolder.accesskey "Μ">
+<!ENTITY compactFolders.label "Σύμπτυξη φακέλων">
+<!ENTITY compactFolders.accesskey "Σ">
+<!ENTITY emptyTrashCmd.label "Άδειασμα απορριμμάτων">
+<!ENTITY emptyTrashCmd.accesskey "ρ">
+<!ENTITY offlineMenu.label "Εκτός σύνδεσης">
+<!ENTITY offlineMenu.accesskey "κ">
+<!ENTITY synchronizeOfflineCmd.label "Λήψη/Συγχρονισμός τώρα…">
+<!ENTITY synchronizeOfflineCmd.accesskey "Σ">
+<!ENTITY settingsOfflineCmd.label "Ρυθμίσεις εκτός σύνδεσης…">
+<!ENTITY settingsOfflineCmd.accesskey "θ">
+<!ENTITY downloadSelectedCmd.label "Λήψη επιλεγμένων μηνυμάτων">
+<!ENTITY downloadSelectedCmd.accesskey "ψ">
+<!ENTITY downloadFlaggedCmd.label "Λήψη μηνυμάτων με σημαία">
+<!ENTITY downloadFlaggedCmd.accesskey "Λ">
+
+<!-- Edit Menu -->
+<!ENTITY deleteMsgCmd.label "Διαγραφή μηνύματος">
+<!ENTITY deleteMsgCmd.accesskey "Δ">
+<!ENTITY undeleteMsgCmd.label "Αναίρεση διαγραφής μηνύματος">
+<!ENTITY undeleteMsgCmd.accesskey "δ">
+<!ENTITY cancelNewsMsgCmd.label "Ακύρωση μηνύματος">
+<!ENTITY cancelNewsMsgCmd.accesskey "ν">
+<!ENTITY deleteMsgsCmd.label "Διαγραφή επιλεγμένων μηνυμάτων">
+<!ENTITY deleteMsgsCmd.accesskey "Δ">
+<!ENTITY undeleteMsgsCmd.label "Αναίρεση διαγραφής επιλεγμένων μηνυμάτων">
+<!ENTITY undeleteMsgsCmd.accesskey "δ">
+<!ENTITY deleteFolderCmd.label "Διαγραφή φακέλου">
+<!ENTITY deleteFolderCmd.accesskey "Δ">
+<!ENTITY unsubscribeNewsgroupCmd.label "Κατάργηση συνδρομής">
+<!ENTITY unsubscribeNewsgroupCmd.accesskey "σ">
+<!ENTITY selectMenu.label "Επιλογή">
+<!ENTITY selectMenu.accesskey "Ε">
+<!ENTITY selectThreadCmd.label "Νήματος">
+<!ENTITY selectThreadCmd.accesskey "Ν">
+<!ENTITY selectThreadCmd.key "a">
+<!ENTITY selectFlaggedCmd.label "Μηνυμάτων με σημαία">
+<!ENTITY selectFlaggedCmd.accesskey "Μ">
+<!ENTITY menuFavoriteFolder.label "Αγαπημένος φάκελος">
+<!ENTITY menuFavoriteFolder.accesskey "γ">
+<!ENTITY folderPropsCmd.label "Ιδιότητες…">
+<!ENTITY folderPropsFolderCmd.label "Ιδιότητες φακέλου…">
+<!ENTITY folderPropsNewsgroupCmd.label "Ιδιότητες ομάδας συζήτησης…">
+<!ENTITY folderPropsCmd.accesskey "ό">
+<!ENTITY accountManagerCmd.label "Ρυθμίσεις λογαριασμού email &amp; ομάδων συζήτησης…">
+<!ENTITY accountManagerCmd.accesskey "e">
+<!ENTITY undoDeleteMsgCmd.label "Αναίρεση διαγραφής μηνύματος">
+<!ENTITY redoDeleteMsgCmd.label "Επανάληψη διαγραφής μηνύματος">
+<!ENTITY undoMoveMsgCmd.label "Αναίρεση μετακίνησης μηνύματος">
+<!ENTITY redoMoveMsgCmd.label "Επανάληψη μετακίνησης μηνύματος">
+<!ENTITY undoCopyMsgCmd.label "Αναίρεση αντιγραφής μηνύματος">
+<!ENTITY redoCopyMsgCmd.label "Επανάληψη αντιγραφής μηνύματος">
+<!ENTITY undoMarkAllCmd.label "Αναίρεση επισήμανσης όλων ως αναγνωσμένων">
+<!ENTITY redoMarkAllCmd.label "Επανάληψη επισήμανσης όλων ως αναγνωσμένων">
+<!ENTITY undoDefaultCmd.label "Αναίρεση">
+<!ENTITY redoDefaultCmd.label "Επανάληψη">
+
+<!-- View Menu -->
+<!ENTITY showMessengerToolbarCmd.label "Γραμμή αλληλογραφίας">
+<!ENTITY showMessengerToolbarCmd.accesskey "α">
+<!ENTITY showSearchToolbarCmd.label "Γραμμή αναζήτησης">
+<!ENTITY showSearchToolbarCmd.accesskey "μ">
+<!ENTITY showTabsToolbarCmd.label "Γραμμή καρτελών">
+<!ENTITY showTabsToolbarCmd.accesskey "κ">
+
+<!ENTITY messagePaneLayoutStyle.label "Διάταξη">
+<!ENTITY messagePaneLayoutStyle.accesskey "Δ">
+<!ENTITY messagePaneClassic.label "Κλασσική προβολή">
+<!ENTITY messagePaneClassic.accesskey "Κ">
+<!ENTITY messagePaneWide.label "Ευρεία προβολή">
+<!ENTITY messagePaneWide.accesskey "Ε">
+<!ENTITY messagePaneVertical.label "Κάθετη προβολή">
+<!ENTITY messagePaneVertical.accesskey "θ">
+<!ENTITY showMessagePaneCmd.label "Προβολή μηνυμάτων">
+<!ENTITY showMessagePaneCmd.accesskey "μ">
+<!ENTITY showThreadPaneCmd.label "Προβολή νημάτων">
+<!ENTITY showThreadPaneCmd.accesskey "ν">
+<!ENTITY showFolderPaneCmd.label "Προβολή φακέλων">
+<!ENTITY showFolderPaneCmd.accesskey "φ">
+<!-- LOCALIZATION NOTE (toggleFolderPaneCmd.key): This is only used on the
+ mac platform, other platforms use VK_F9. -->
+<!ENTITY toggleFolderPaneCmd.key "S">
+
+<!-- sortMenu is also used by addressbook -->
+<!ENTITY sortMenu.label "Ταξινόμηση κατά">
+<!ENTITY sortMenu.accesskey "ξ">
+
+<!ENTITY sortByDateCmd.label "Ημερομηνία">
+<!ENTITY sortByDateCmd.accesskey "ν">
+<!ENTITY sortByReceivedCmd.label "Ληφθέντα">
+<!ENTITY sortByReceivedCmd.accesskey "θ">
+<!ENTITY sortByFlagCmd.label "Σημαία">
+<!ENTITY sortByFlagCmd.accesskey "μ">
+<!ENTITY sortByPriorityCmd.label "Προτεραιότητα">
+<!ENTITY sortByPriorityCmd.accesskey "Π">
+<!ENTITY sortBySizeCmd.label "Μέγεθος">
+<!ENTITY sortBySizeCmd.accesskey "γ">
+<!ENTITY sortByStatusCmd.label "Κατάσταση">
+<!ENTITY sortByStatusCmd.accesskey "σ">
+<!ENTITY sortByTagsCmd.label "Ετικέτες">
+<!ENTITY sortByTagsCmd.accesskey "κ">
+<!ENTITY sortByJunkStatusCmd.label "Κατάσταση ανεπιθύμητων">
+<!ENTITY sortByJunkStatusCmd.accesskey "Κ">
+<!ENTITY sortBySubjectCmd.label "Θέμα">
+<!ENTITY sortBySubjectCmd.accesskey "Θ">
+<!ENTITY sortByFromCmd.label "Από">
+<!ENTITY sortByFromCmd.accesskey "Α">
+<!ENTITY sortByRecipientCmd.label "Παραλήπτη">
+<!ENTITY sortByRecipientCmd.accesskey "λ">
+<!ENTITY sortByUnreadCmd.label "Αναγνωσμένα">
+<!ENTITY sortByUnreadCmd.accesskey "Α">
+<!ENTITY sortByOrderReceivedCmd.label "Σειρά παραλαβής">
+<!ENTITY sortByOrderReceivedCmd.accesskey "Σ">
+<!ENTITY sortByAttachmentsCmd.label "Συνημμένα">
+<!ENTITY sortByAttachmentsCmd.accesskey "μ">
+<!ENTITY sortAscending.label "Αύξουσα">
+<!ENTITY sortAscending.accesskey "Α">
+<!ENTITY sortDescending.label "Φθίνουσα">
+<!ENTITY sortDescending.accesskey "Φ">
+<!ENTITY sortThreaded.label "Σε νήμα">
+<!ENTITY sortThreaded.accesskey "Σ">
+<!ENTITY sortUnthreaded.label "Εκτός νήματος">
+<!ENTITY sortUnthreaded.accesskey "ν">
+<!ENTITY groupBySort.label "Ομαδοποιημένα κατά ταξινόμηση">
+<!ENTITY groupBySort.accesskey "Ο">
+<!ENTITY msgsMenu.label "Μηνύματα">
+<!ENTITY msgsMenu.accesskey "Μ">
+<!ENTITY threads.label "Νήματα">
+<!ENTITY threads.accesskey "μ">
+<!ENTITY allMsgsCmd.label "Όλα">
+<!ENTITY allMsgsCmd.accesskey "Ό">
+<!ENTITY expandAllThreadsCmd.label "Ανάπτυξη όλων των νημάτων">
+<!ENTITY expandAllThreadsCmd.accesskey "Α">
+<!ENTITY expandAllThreadsCmd.key "*">
+<!ENTITY collapseAllThreadsCmd.label "Σύμπτυξη όλων των νημάτων">
+<!ENTITY collapseAllThreadsCmd.accesskey "Σ">
+<!ENTITY collapseAllThreadsCmd.key "\">
+<!ENTITY unreadMsgsCmd.label "Μη αναγνωσμένα">
+<!ENTITY unreadMsgsCmd.accesskey "Μ">
+<!ENTITY threadsWithUnreadCmd.label "Νήματα με μη αναγνωσμένα">
+<!ENTITY threadsWithUnreadCmd.accesskey "Ν">
+<!ENTITY watchedThreadsWithUnreadCmd.label "Παρακολουθούμενα νήματα με μη αναγνωσμένα">
+<!ENTITY watchedThreadsWithUnreadCmd.accesskey "Π">
+<!ENTITY ignoredThreadsCmd.label "Αγνοημένα νήματα">
+<!ENTITY ignoredThreadsCmd.accesskey "γ">
+
+<!ENTITY headersMenu.label "Κεφαλίδες">
+<!ENTITY headersMenu.accesskey "φ">
+<!ENTITY headersAllCmd.label "Όλες">
+<!ENTITY headersAllCmd.accesskey "Ό">
+<!ENTITY headersNormalCmd.label "Κανονικές">
+<!ENTITY headersNormalCmd.accesskey "Κ">
+<!ENTITY bodyMenu.label "Κυρίως κείμενο μηνύματος ως">
+<!ENTITY bodyMenu.accesskey "Κ">
+<!ENTITY bodyAllowHTML.label "Αρχικό HTML">
+<!ENTITY bodyAllowHTML.accesskey "H">
+<!ENTITY bodySanitized.label "Απλό HTML">
+<!ENTITY bodySanitized.accesskey "L">
+<!ENTITY bodyAsPlaintext.label "Απλό κείμενο">
+<!ENTITY bodyAsPlaintext.accesskey "Α">
+<!ENTITY bodyAllParts.label "Όλα τα μέρη του κυρίως κειμένου">
+<!ENTITY bodyAllParts.accesskey "Ό">
+
+<!ENTITY bodyMenuFeed.label "Κύριο μέρος μηνύματος ροής ως">
+<!ENTITY bodyMenuFeed.accesskey "ω">
+<!ENTITY viewFeedWebPage.label "Ιστοσελίδα">
+<!ENTITY viewFeedWebPage.accesskey "Ι">
+<!ENTITY viewFeedSummary.label "Περίληψη">
+<!ENTITY viewFeedSummary.accesskey "λ">
+<!ENTITY viewFeedSummaryFeedPropsPref.label "Προεπιλεγμένη μορφή">
+<!ENTITY viewFeedSummaryFeedPropsPref.accesskey "Π">
+
+<!ENTITY viewAttachmentsInlineCmd.label "Προβολή συνημμένων εντός μηνύματος">
+<!ENTITY viewAttachmentsInlineCmd.accesskey "Π">
+<!ENTITY reloadCmd.label "Ανανέωση">
+<!ENTITY reloadCmd.accesskey "Α">
+<!ENTITY stopCmd.label "Διακοπή">
+<!ENTITY stopCmd.accesskey "Δ">
+<!ENTITY pageSourceCmd.label "Προέλευση μηνύματος">
+<!ENTITY pageSourceCmd.accesskey "ο">
+<!ENTITY pageSourceCmd.key "u">
+
+<!ENTITY findCmd.label "Εύρεση στο μήνυμα…">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.show.key2):
+ This is the key used to show the Lightning quick filter bar. -->
+<!ENTITY quickFilterBar.show.key2 "K">
+
+<!-- Go Menu -->
+
+<!ENTITY goMenu.label "Μετάβαση">
+<!ENTITY goMenu.accesskey "Μ">
+<!ENTITY nextMenu.label "Επόμενο">
+<!ENTITY nextMenu.accesskey "Ε">
+<!ENTITY nextMsgCmd.label "Μήνυμα">
+<!ENTITY nextMsgCmd.accesskey "Μ">
+<!ENTITY nextMsgCmd.key "f">
+<!ENTITY nextUnreadMsgCmd.label "Μη αναγνωσμένο μήνυμα">
+<!ENTITY nextUnreadMsgCmd.accesskey "η">
+<!ENTITY nextUnreadMsgCmd.key "n">
+<!ENTITY nextFlaggedMsgCmd.label "Μήνυμα με σημαία">
+<!ENTITY nextFlaggedMsgCmd.accesskey "σ">
+<!ENTITY nextUnreadThread.label "Μη αναγνωσμένο νήμα">
+<!ENTITY nextUnreadThread.accesskey "ν">
+<!ENTITY nextUnreadThread.key "t">
+<!ENTITY prevMenu.label "Προηγούμενο">
+<!ENTITY prevMenu.accesskey "Π">
+<!ENTITY prevMsgCmd.label "Μήνυμα">
+<!ENTITY prevMsgCmd.accesskey "Μ">
+<!ENTITY prevMsgCmd.key "b">
+<!ENTITY prevUnreadMsgCmd.label "Μη αναγνωσμένο μήνυμα">
+<!ENTITY prevUnreadMsgCmd.accesskey "η">
+<!ENTITY prevUnreadMsgCmd.key "p">
+<!ENTITY goBackCmd.label "Πίσω">
+<!ENTITY goBackCmd.accesskey "Π">
+<!ENTITY goBackCmd.commandKey "[">
+<!ENTITY goForwardCmd.label "Εμπρός">
+<!ENTITY goForwardCmd.accesskey "Ε">
+<!ENTITY goForwardCmd.commandKey "]">
+<!ENTITY prevFlaggedMsgCmd.label "Μήνυμα με σημαία">
+<!ENTITY prevFlaggedMsgCmd.accesskey "σ">
+<!ENTITY folderMenu.label "Φάκελος">
+<!ENTITY folderMenu.accesskey "κ">
+<!ENTITY startPageCmd.label "Αρχική σελίδα αλληλογραφίας">
+<!ENTITY startPageCmd.accesskey "Α">
+
+<!-- Message Menu -->
+<!ENTITY msgMenu.label "Μήνυμα">
+<!ENTITY msgMenu.accesskey "Μ">
+<!ENTITY newMsgCmd.label "Νέο μήνυμα">
+<!ENTITY newMsgCmd.accesskey "Ν">
+<!ENTITY newNewMsgCmd.label "Μήνυμα">
+<!ENTITY newNewMsgCmd.accesskey "Μ">
+<!ENTITY replyMsgCmd.label "Απάντηση">
+<!ENTITY replyMsgCmd.accesskey "Α">
+<!ENTITY replyMsgCmd.key "r">
+<!ENTITY replyListCmd.label "Απάντηση στη λίστα">
+<!ENTITY replyListCmd.accesskey "σ">
+<!ENTITY replyNewsgroupCmd.label "Απάντηση στην ομάδα συζήτησης">
+<!ENTITY replyNewsgroupCmd.accesskey "η">
+<!ENTITY replySenderCmd.label "Απάντηση μόνο στον αποστολέα">
+<!ENTITY replySenderCmd.accesskey "Α">
+<!ENTITY replyToAllMsgCmd.label "Απάντηση σε όλους">
+<!ENTITY replyToAllMsgCmd.accesskey "σ">
+<!ENTITY replyToAllMsgCmd.key "r">
+<!ENTITY replyToSenderAndNewsgroupCmd.label "Απάντηση στον αποστολέα και την ομάδα συζήτησης">
+<!ENTITY replyToSenderAndNewsgroupCmd.accesskey "λ">
+<!ENTITY replyToAllRecipientsCmd.label "Απάντηση σε όλους τους παραλήπτες">
+<!ENTITY replyToAllRecipientsCmd.accesskey "ρ">
+<!ENTITY forwardMsgCmd.label "Προώθηση">
+<!ENTITY forwardMsgCmd.accesskey "Π">
+<!ENTITY forwardMsgCmd.key "l">
+<!ENTITY forwardAsMenu.label "Προώθηση ως">
+<!ENTITY forwardAsMenu.accesskey "ο">
+<!ENTITY forwardAsInline.label "Εντός μηνύματος">
+<!ENTITY forwardAsInline.accesskey "Ε">
+<!ENTITY forwardAsAttachmentCmd.label "Συνημμένο">
+<!ENTITY forwardAsAttachmentCmd.accesskey "Σ">
+<!ENTITY editMsgAsNewCmd.label "Επεξεργασία μηνύματος ως νέου">
+<!ENTITY editMsgAsNewCmd.accesskey "Ε">
+<!ENTITY editMsgAsNewCmd.key "e">
+<!ENTITY createFilter.label "Δημιουργία φίλτρου από μήνυμα…">
+<!ENTITY createFilter.accesskey "φ">
+<!ENTITY archiveMsgCmd.label "Αρχειοθέτηση">
+<!ENTITY archiveMsgCmd.accesskey "Α">
+<!ENTITY archiveMsgCmd.key "a">
+<!ENTITY moveMsgToMenu.label "Μετακίνηση σε">
+<!ENTITY moveMsgToMenu.accesskey "Μ">
+<!ENTITY copyMessageLocation.label "Αντιγραφή τοποθεσίας μηνύματος">
+<!ENTITY copyMessageLocation.accesskey "μ">
+<!ENTITY copyMsgToMenu.label "Αντιγραφή σε">
+<!ENTITY copyMsgToMenu.accesskey "Α">
+<!ENTITY moveCopyMsgRecentMenu.label "Πρόσφατα">
+<!ENTITY moveCopyMsgRecentMenu.accesskey "Π">
+<!ENTITY killThreadMenu.label "Παράβλεψη νήματος">
+<!ENTITY killThreadMenu.accesskey "β">
+<!ENTITY killThreadMenu.key "k">
+<!ENTITY killSubthreadMenu.label "Παράβλεψη υπονήματος">
+<!ENTITY killSubthreadMenu.accesskey "υ">
+<!ENTITY killSubthreadMenu.key "k">
+<!ENTITY watchThreadMenu.label "Παρακολούθηση νήματος">
+<!ENTITY watchThreadMenu.accesskey "Π">
+<!ENTITY watchThreadMenu.key "w">
+<!ENTITY fileHereMenu.label "Αποθήκευση εδώ">
+<!ENTITY fileHereMenu.accesskey "Α">
+<!ENTITY copyHereMenu.label "Αντιγραφή εδώ">
+<!ENTITY copyHereMenu.accesskey "Α">
+<!ENTITY tagMenu.label "Ετικέτα">
+<!ENTITY tagMenu.accesskey "τ">
+<!ENTITY tagCustomize.label "Προσαρμογή…">
+<!ENTITY tagCustomize.accesskey "Π">
+<!ENTITY markMenu.label "Επισήμανση">
+<!ENTITY markMenu.accesskey "μ">
+<!ENTITY markThreadAsReadCmd.label "Νήματος ως αναγνωσμένου">
+<!ENTITY markThreadAsReadCmd.accesskey "Ν">
+<!ENTITY markThreadAsReadCmd.key "r">
+<!ENTITY markReadByDateCmd.label "Ως αναγνωσμένου κατά ημερομηνία…">
+<!ENTITY markReadByDateCmd.accesskey "η">
+<!ENTITY markReadByDateCmd.key "c">
+<!ENTITY markAllReadCmd.label "Όλων ως αναγνωσμένων">
+<!ENTITY markAllReadCmd.accesskey "Ό">
+<!ENTITY markAllReadCmd.key "c">
+<!ENTITY markAsJunkCmd.label "Ως ανεπιθύμητο">
+<!ENTITY markAsJunkCmd.accesskey "Ω">
+<!ENTITY markAsJunkCmd.key "j">
+<!ENTITY markAsNotJunkCmd.label "Ως επιθυμητό">
+<!ENTITY markAsNotJunkCmd.accesskey "θ">
+<!ENTITY markAsNotJunkCmd.key "j">
+<!ENTITY recalculateJunkScoreCmd.label "Εκτέλεση ελέγχων ανεπιθύμητων email">
+<!ENTITY recalculateJunkScoreCmd.accesskey "Ε">
+<!ENTITY markAsShowRemoteCmd.label "Εμφάνιση απομακρυσμένου περιεχομένου">
+<!ENTITY markAsShowRemoteCmd.accesskey "μ">
+<!ENTITY markAsShowRemoteCmd.key "r">
+<!ENTITY markAsNotPhishCmd.label "Ως μη απάτης">
+<!ENTITY markAsNotPhishCmd.accesskey "Ω">
+<!ENTITY markAsNotPhishCmd.key "p">
+<!ENTITY openFeedMessage.label "Άνοιγμα μηνύματος ροής">
+<!ENTITY openFeedMessage.accesskey "Ά">
+<!ENTITY openFeedWebPageInWindow.label "Ιστοσελίδα σε νέο παράθυρο">
+<!ENTITY openFeedWebPageInWindow.accesskey "Ι">
+<!ENTITY openFeedSummaryInWindow.label "Περίληψη σε νέο παράθυρο">
+<!ENTITY openFeedSummaryInWindow.accesskey "Π">
+<!ENTITY openFeedWebPageInMP.label "Εναλλαγή ιστοσελίδας και περίληψης στο πεδίο μηνυμάτων">
+<!ENTITY openFeedWebPageInMP.accesskey "Ε">
+
+<!-- Tools Menu -->
+<!ENTITY searchMailCmd.label "Αναζήτηση μηνυμάτων…">
+<!ENTITY searchMailCmd.accesskey "μ">
+<!ENTITY searchMailCmd.key "s">
+<!ENTITY searchAddressesCmd.label "Αναζήτηση διευθύνσεων…">
+<!ENTITY searchAddressesCmd.accesskey "θ">
+<!ENTITY filtersCmd.label "Φίλτρα μηνυμάτων…">
+<!ENTITY filtersCmd.accesskey "Φ">
+<!ENTITY filtersApply.label "Εκτέλεση φίλτρων στον φάκελο">
+<!ENTITY filtersApply.accesskey "Ε">
+<!ENTITY filtersApplyToSelection.label "Εκτέλεση φίλτρων στα επιλεγμένα μηνύματα">
+<!ENTITY filtersApplyToSelection.accesskey "λ">
+<!ENTITY filtersApplyToMessage.label "Εκτέλεση φίλτρων στο μήνυμα">
+<!ENTITY filtersApplyToMessage.accesskey "ρ">
+<!ENTITY runJunkControls.label "Εκτέλεση ελέγχων ανεπιθύμητων email στον φάκελο">
+<!ENTITY runJunkControls.accesskey "κ">
+<!ENTITY deleteJunk.label "Διαγραφή επισημασμένου email ως ανεπιθύμητου στον φάκελο">
+<!ENTITY deleteJunk.accesskey "γ">
+<!ENTITY importCmd.label "Εισαγωγή…">
+<!ENTITY importCmd.accesskey "Ε">
+
+<!-- Folder Pane -->
+<!ENTITY nameColumn.label "Όνομα">
+<!ENTITY unreadColumn.label "Μη αναγνωσμένο">
+<!ENTITY totalColumn.label "Σύνολο">
+
+<!-- Toolbar items -->
+<!ENTITY getMsgButton.label "Λήψη μηνυμάτων">
+<!ENTITY getAllNewMsgCmd.label "Λήψη όλων των νέων μηνυμάτων">
+<!ENTITY getAllNewMsgCmd.accesskey "Λ">
+<!ENTITY newMsgButton.label "Σύνθεση">
+<!ENTITY newHTMLMessageCmd.label "Σύνθεση σε HTML">
+<!ENTITY newHTMLMessageCmd.accesskey "H">
+<!ENTITY newPlainTextMessageCmd.label "Σύνθεση σε απλό κείμενο">
+<!ENTITY newPlainTextMessageCmd.accesskey "α">
+<!ENTITY replyButton.label "Απάντηση">
+<!ENTITY replyAllButton.label "Απάντηση σε όλους">
+<!ENTITY forwardButton.label "Προώθηση">
+<!ENTITY fileButton.label "Αρχείο">
+<!ENTITY nextButton.label "Επόμενο">
+<!ENTITY goBackButton.label "Μετάβαση πίσω">
+<!ENTITY goForwardButton.label "Μετάβαση εμπρός">
+<!ENTITY deleteButton.label "Διαγραφή">
+<!ENTITY undeleteButton.label "Επαναφορά">
+<!ENTITY markButton.label "Επισήμανση">
+<!ENTITY printButton.label "Εκτύπωση">
+<!ENTITY stopButton.label "Διακοπή">
+<!ENTITY junkButton.label "Ανεπιθύμητο">
+<!ENTITY notJunkButton.label "Επιθυμητό">
+<!ENTITY searchButton.title "Σύνθετη αναζήτηση">
+
+<!-- Tooltips -->
+<!ENTITY menuBar.tooltip "Γραμμή μενού">
+<!ENTITY mailToolbar.tooltip "Γραμμή αλληλογραφίας">
+<!ENTITY searchToolbar.tooltip "Γραμμή αναζήτησης">
+<!ENTITY advancedButton.tooltip "Σύνθετη αναζήτηση μηνυμάτων">
+<!ENTITY getMsgButton.tooltip "Λήψη νέων μηνυμάτων">
+<!ENTITY newMsgButton.tooltip "Δημιουργία νέου μηνύματος">
+<!ENTITY replyButton.tooltip "Απάντηση στο μήνυμα">
+<!ENTITY replyAllButton.tooltip "Απάντηση στον αποστολέα και όλους τους παραλήπτες">
+<!ENTITY replyAllButtonNews.tooltip "Απάντηση στον αποστολέα και την ομάδα συζήτησης">
+<!ENTITY forwardButton.tooltip "Προώθηση επιλεγμένου μηνύματος">
+<!ENTITY fileButton.tooltip "Αρχειοθέτηση επιλεγμένου μηνύματος">
+<!ENTITY nextButton.tooltip "Μετάβαση στο επόμενο μη αναγνωσμένο μήνυμα">
+<!ENTITY goBackButton.tooltip "Μετάβαση πίσω κατά ένα μήνυμα">
+<!ENTITY goForwardButton.tooltip "Μετάβαση μπροστά κατά ένα μήνυμα">
+<!ENTITY deleteButton.tooltip "Διαγραφή επιλεγμένου μηνύματος ή φακέλου">
+<!ENTITY undeleteButton.tooltip "Επαναφορά επιλεγμένου μηνύματος">
+<!ENTITY markButton.tooltip "Επισήμανση μηνυμάτων">
+<!ENTITY printButton.tooltip "Εκτύπωση μηνύματος">
+<!ENTITY stopButton.tooltip "Διακοπή τρέχουσας μεταφοράς">
+<!ENTITY junkButton.tooltip "Επισήμανση επιλεγμένων μηνυμάτων ως ανεπιθύμητων">
+<!ENTITY notJunkButton.tooltip "Επισήμανση επιλεγμένων μηνυμάτων ως επιθυμητών">
+
+<!-- Remote Content Button Popup -->
+<!ENTITY remoteContentOptionsAllowForMsg.label "Εμφάνιση απομακρυσμένου περιεχομένου στο μήνυμα">
+<!ENTITY remoteContentOptionsAllowForMsg.accesskey "Ε">
+<!ENTITY editRemoteContentSettings.label "Επεξεργασία δικαιωμάτων απομακρυσμένου περιεχομένου…">
+<!ENTITY editRemoteContentSettings.accesskey "Ε">
+
+<!-- Statusbar -->
+<!ENTITY statusText.label "Τέλος">
+
+<!-- Thread Pane Context Menu -->
+<!ENTITY contextOpenNewWindow.label "Άνοιγμα μηνύματος σε νέο παράθυρο">
+<!ENTITY contextOpenNewWindow.accesskey "π">
+<!ENTITY contextOpenNewTab.label "Άνοιγμα μηνύματος σε νέα καρτέλα">
+<!ENTITY contextOpenNewTab.accesskey "κ">
+<!ENTITY contextEditAsNew.label "Επεξεργασία ως νέο…">
+<!ENTITY contextEditAsNew.accesskey "Ε">
+<!ENTITY contextReplySender.label "Απάντηση μόνο στον αποστολέα">
+<!ENTITY contextReplySender.accesskey "ο">
+<!ENTITY contextReplyList.label "Απάντηση στη λίστα">
+<!ENTITY contextReplyList.accesskey "η">
+<!ENTITY contextReplyNewsgroup.label "Απάντηση στην ομάδα συζήτησης">
+<!ENTITY contextReplyNewsgroup.accesskey "η">
+<!ENTITY contextReplyAll.label "Απάντηση σε όλους">
+<!ENTITY contextReplyAll.accesskey "Α">
+<!ENTITY contextReplySenderAndNewsgroup.label "Απάντηση στον αποστολέα και την ομάδα συζήτησης">
+<!ENTITY contextReplySenderAndNewsgroup.accesskey "ν">
+<!ENTITY contextForward.label "Προώθηση">
+<!ENTITY contextForward.accesskey "Π">
+<!ENTITY contextForwardAsAttachment.label "Προώθηση ως συνημμένα">
+<!ENTITY contextForwardAsAttachment.accesskey "ώ">
+<!ENTITY contextArchive.label "Αρχειοθέτηση">
+<!ENTITY contextArchive.accesskey "Α">
+<!ENTITY contextMoveMsgMenu.label "Μετακίνηση σε">
+<!ENTITY contextMoveMsgMenu.accesskey "Μ">
+<!ENTITY contextCopyMsgMenu.label "Αντιγραφή σε">
+<!ENTITY contextCopyMsgMenu.accesskey "Α">
+<!ENTITY contextMoveCopyMsgRecentMenu.label "Πρόσφατα">
+<!ENTITY contextMoveCopyMsgRecentMenu.accesskey "Π">
+<!ENTITY contextMoveCopyMsgFavoritesMenu.label "Αγαπημένα">
+<!ENTITY contextMoveCopyMsgFavoritesMenu.accesskey "π">
+<!ENTITY contextSaveAs.label "Αποθήκευση ως…">
+<!ENTITY contextSaveAs.accesskey "Α">
+<!ENTITY contextPrint.label "Εκτύπωση…">
+<!ENTITY contextPrint.accesskey "Ε">
+<!ENTITY contextPrintPreview.label "Προεπισκόπηση εκτύπωσης">
+<!ENTITY contextPrintPreview.accesskey "ρ">
+
+<!-- Folder Pane Context Menu -->
+<!ENTITY folderContextGetMessages.label "Λήψη μηνυμάτων για λογαριασμό">
+<!ENTITY folderContextGetMessages.accesskey "Λ">
+<!ENTITY folderContextMarkAllFoldersRead.label "Επισήμανση όλων των φακέλων ως αναγνωσμένων">
+<!ENTITY folderContextMarkAllFoldersRead.accesskey "Ε">
+<!ENTITY folderContextOpenNewWindow.label "Άνοιγμα σε νέο παράθυρο email">
+<!ENTITY folderContextOpenNewWindow.accesskey "π">
+<!ENTITY folderContextOpenNewTab.label "Άνοιγμα σε νέα καρτέλα">
+<!ENTITY folderContextOpenNewTab.accesskey "κ">
+<!ENTITY folderContextRename.label "Μετονομασία">
+<!ENTITY folderContextRename.accesskey "Μ">
+<!ENTITY folderContextRemove.label "Διαγραφή">
+<!ENTITY folderContextRemove.accesskey "Δ">
+<!ENTITY folderContextCompact.label "Σύμπτυξη φακέλου">
+<!ENTITY folderContextCompact.accesskey "φ">
+<!ENTITY folderContextEmptyTrash.label "Άδειασμα απορριμμάτων">
+<!ENTITY folderContextEmptyTrash.accesskey "δ">
+<!ENTITY folderContextEmptyJunk.label "Άδειασμα ανεπιθύμητων">
+<!ENTITY folderContextEmptyJunk.accesskey "ι">
+<!ENTITY folderContextSendUnsentMessages.label "Αποστολή μη απεσταλμένων μηνυμάτων">
+<!ENTITY folderContextSendUnsentMessages.accesskey "λ">
+<!ENTITY folderContextUnsubscribe.label "Κατάργηση εγγραφής">
+<!ENTITY folderContextUnsubscribe.accesskey "Κ">
+<!ENTITY folderContextMarkNewsgroupRead.label "Επισήμανση ομάδας συζήτησης ως αναγνωσμένης">
+<!ENTITY folderContextMarkNewsgroupRead.accesskey "ζ">
+<!ENTITY folderContextMarkMailFolderRead.label "Επισήμανση φακέλου ως αναγνωσμένου">
+<!ENTITY folderContextMarkMailFolderRead.accesskey "σ">
+<!ENTITY folderContextNew.label "Νέος υποφάκελος…">
+<!ENTITY folderContextNew.accesskey "Ν">
+<!ENTITY folderContextSubscribe.label "Συνδρομή…">
+<!ENTITY folderContextSubscribe.accesskey "μ">
+<!ENTITY folderContextSearchMessages.label "Αναζήτηση μηνυμάτων…">
+<!ENTITY folderContextSearchMessages.accesskey "Α">
+<!ENTITY folderContextProperties.label "Ιδιότητες…">
+<!ENTITY folderContextProperties.accesskey "Ι">
+<!ENTITY folderContextFavoriteFolder.label "Αγαπημένος φάκελος">
+<!ENTITY folderContextFavoriteFolder.accesskey "γ">
+<!ENTITY folderContextSettings.label "Ρυθμίσεις…">
+<!ENTITY folderContextSettings.accesskey "θ">
+
+<!-- focusSearchInput.key also used by addressbook -->
+<!ENTITY focusSearchInput.key "k">
+<!ENTITY advancedButton.label "Για προχωρημένους…">
+<!ENTITY advancedButton.accesskey "Γ">
+<!ENTITY searchButton.label "Αναζήτηση μηνυμάτων…">
+<!ENTITY searchButton.accesskey "Α">
+
+<!ENTITY all.label "Όλα">
+<!ENTITY all.accesskey "Ό">
diff --git a/l10n-el/suite/chrome/mailnews/messenger.properties b/l10n-el/suite/chrome/mailnews/messenger.properties
new file mode 100644
index 0000000000..b4dd66e85b
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/messenger.properties
@@ -0,0 +1,502 @@
+# 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/.
+
+# The following are used by the messenger application
+
+# LOCALIZATION NOTE(statusMessage):
+# Do not translate the words %1$S and %2$S below. Place the word %1$S where the
+# account name should appear and %2$S where the status message should appear.
+# EXAMPLE: Jim's Account: Downloading messages...
+statusMessage=%1$S: %2$S
+
+renameFolder=Μετονομασία φακέλου…
+compactFolder=Σύμπτυξη φακέλου
+compactFolders=Συμπίεση φακέλου;Συμπίεση φακέλων
+removeAccount=Διαγραφή λογαριασμού…
+removeFolder=Διαγραφή φακέλου
+newFolderMenuItem=Φάκελος…
+newSubfolderMenuItem=Υποφάκελος…
+newFolder=Νέος φάκελος…
+newSubfolder=Νέος υποφάκελος…
+markFolderRead=Επισήμανση φακέλου ως αναγνωσμένου;Επισήμανση φακέλων ως αναγνωσμένων
+markNewsgroupRead=Επισήμανση ομάδας συζήτησης ως αναγνωσμένης;Επισήμανση ομάδων συζήτησης ως αναγνωσμένων
+folderProperties=Ιδιότητες φακέλου
+getMessages=Λήψη μηνυμάτων
+getMessagesFor=Λήψη μηνυμάτων για λογαριασμό
+# LOCALIZATION NOTE (getNextNewsMessages): Semi-colon list of plural forms.
+# #1 is the number of news messages to get.
+getNextNewsMessages=Λήψη επόμενου #1 μηνύματος συζήτησης;Λήψη επόμενων #1 μηνυμάτων συζήτησης
+advanceNextPrompt=Συνέχεια στο επόμενο μη αναγνωσμένο μήνυμα στο %S;
+titleNewsPreHost=στο
+titleMailPreHost=για
+replyToSender=Απάντηση στον αποστολέα
+reply=Απάντηση
+EMLFiles=Αρχεία email
+OpenEMLFiles=Άνοιγμα μηνύματος
+# LOCALIZATION NOTE(defaultSaveMessageAsFileName): Do not translate ".eml"
+# in the line below. Also, the complete file name should be 8.3.
+defaultSaveMessageAsFileName=message.eml
+SaveMailAs=Αποθήκευση μηνύματος ως
+SaveAttachment=Αποθήκευση συνημμένου
+SaveAllAttachments=Αποθήκευση όλων των συνημμένων
+DetachAttachment=Αφαίρεση συνημμένου
+DetachAllAttachments=Αφαίρεση όλων των συνημμένων
+ChooseFolder=Επιλογή φακέλου
+LoadingMessageToPrint=Φόρτωση μηνύματος για εκτύπωση…
+MessageLoaded=Το μήνυμα φορτώθηκε…
+PrintingMessage=Εκτύπωση μηνύματος…
+PrintPreviewMessage=Προεπισκόπηση εκτύπωσης μηνύματος…
+PrintingContact=Εκτύπωση επαφής…
+PrintPreviewContact=Προεπισκόπηση εκτύπωσης επαφής…
+PrintingAddrBook=Εκτύπωση ευρετηρίου…
+PrintPreviewAddrBook=Προεπισκόπηση εκτύπωσης ευρετηρίου…
+PrintingComplete=Ολοκληρώθηκε.
+PreviewTitle=%S - %S
+LoadingMailMsgForPrint=(Φόρτωση περιεχομένου για εκτύπωση)
+LoadingMailMsgForPrintPreview=(Φόρτωση περιεχομένου για προεπισκόπηση εκτύπωσης)
+saveAttachmentFailed=Αδυναμία αποθήκευσης συνημμένου. Παρακαλώ ελέγξτε το όνομα αρχείου και δοκιμάστε ξανά αργότερα.
+saveMessageFailed=Αδυναμία αποθήκευσης μηνύματος. Παρακαλώ ελέγξτε το όνομα αρχείου και δοκιμάστε ξανά αργότερα.
+fileExists=Το %S υπάρχει ήδη. Θέλετε να το αντικαταστήσετε;
+
+downloadingNewsgroups=Λήψη ομάδων συζήτησης για χρήση εκτός σύνδεσης
+downloadingMail=Λήψη email για χρήση εκτός σύνδεσης
+sendingUnsent=Αποστολή μη απεσταλμένων μηνυμάτων
+
+folderExists=Υπάρχει ήδη φάκελος με αυτό το όνομα. Παρακαλώ εισάγετε ένα άλλο όνομα.
+# LOCALIZATION NOTE(confirmDuplicateFolderRename): %1$S is name of folder being moved, %2$S is parent folder name, %3$S is proposed new folder name
+confirmDuplicateFolderRename=Υπάρχει ήδη υποφάκελος με το όνομα '%1$S' στον φάκελο '%2$S'. Θέλετε να μετακινήσετε αυτό τον φάκελο με το νέο όνομα '%3$S';
+folderCreationFailed=Δεν ήταν δυνατή η δημιουργία του φακέλου, επειδή το όνομα που ορίσατε περιέχει άγνωστο χαρακτήρα. Παρακαλώ εισάγετε ένα διαφορετικό όνομα και δοκιμάστε ξανά.
+
+compactingFolder=Συμπίεση φακέλου %S…
+# LOCALIZATION NOTE(compactingDone): %1$S is the compaction gain.
+compactingDone=Η συμπίεση ολοκληρώθηκε (εξοικονομήθηκαν περίπου %1$S).
+autoCompactAllFoldersTitle=Σύμπτυξη φακέλων
+# LOCALIZATION NOTE(autoCompactAllFoldersMsg): %1$S will be replaced by size gain of the compaction (including the unit), %2$S will be replaced by application name
+autoCompactAllFoldersMsg=Τα μηνύματα που έχετε διαγράψει μπορούν να αφαιρεθούν οριστικά από το δίσκο. Η διαδικασία θα εξοικονομήσει περίπου %1$S χώρου δίσκου. Επιλέξτε την παρακάτω ρύθμιση, ώστε το %2$S να το κάνει αυτόματα χωρίς να σας ρωτάει.
+autoCompactNeverAskCheckbox=Οριστική αφαίρεση διαγραμμένων αυτόματα και χωρίς ερώτηση.
+proceedButton=&Συνέχεια
+
+confirmFolderDeletionForFilter=Η διαγραφή του φακέλου '%S' θα απενεργοποιήσει τα σχετικά φίλτρα. Θέλετε σίγουρα να διαγράψετε το φάκελο;
+alertFilterChanged=Τα σχετικά με αυτό τον φάκελο φίλτρα θα ενημερωθούν.
+filterDisabled=Δεν ήταν δυνατή η εύρεση του φακέλου '%S', επομένως θα απενεργοποιηθούν τα σχετικά φίλτρα. Βεβαιωθείτε ότι ο φάκελος υπάρχει και ότι τα φίλτρα αντιστοιχούν σε έγκυρο φάκελο προορισμού.
+filterFolderDeniedLocked=Δεν ήταν δυνατό το φιλτράρισμα των μηνυμάτων στον φάκελο '%S', επειδή μια άλλη διεργασία βρίσκεται σε εξέλιξη.
+parsingFolderFailed=Δεν είναι δυνατό το άνοιγμα του φακέλου %S, επειδή χρησιμοποιείται από άλλη διεργασία. Παρακαλώ περιμένετε να ολοκληρωθεί η διεργασία και έπειτα, επιλέξτε ξανά τον φάκελο.
+deletingMsgsFailed=Αδυναμία διαγραφής μηνυμάτων στον φάκελο %S επειδή χρησιμοποιείται από κάποια άλλη διεργασία. Παρακαλώ περιμένετε να τελειώσει η διεργασία και δοκιμάστε ξανά.
+alertFilterCheckbox=Να μην εμφανιστεί ξανά προειδοποίηση.
+compactFolderDeniedLock=Δεν είναι δυνατή η συμπίεση του φακέλου '%S' επειδή βρίσκεται σε εξέλιξη μια άλλη διεργασία. Παρακαλώ δοκιμάστε ξανά αργότερα.
+compactFolderWriteFailed=Δεν είναι δυνατή η συμπίεση του φακέλου '%S' επειδή απέτυχε η εγγραφή στον φάκελο. Βεβαιωθείτε ότι ο χώρος στον δίσκο επαρκεί και ότι έχετε δικαιώματα εγγραφής στο σύστημα αρχείων, έπειτα δοκιμάστε ξανά.
+compactFolderInsufficientSpace=Δεν είναι δυνατή η συμπίεση ορισμένων φακέλων (π.χ. '%S'), επειδή δεν υπάρχει αρκετός διαθέσιμος χώρος. Παρακαλώ διαγράψτε μερικά αρχεία και δοκιμάστε ξανά.
+filterFolderHdrAddFailed=Δεν ήταν δυνατό το φιλτράρισμα των μηνυμάτων στον φάκελο '%S', επειδή απέτυχε η προσθήκη μηνύματος σε αυτόν. Βεβαιωθείτε ότι ο φάκελος εμφανίζεται σωστά ή δοκιμάστε να τον επιδιορθώσετε από τις ιδιότητες φακέλου.
+filterFolderWriteFailed=Δεν ήταν δυνατό το φιλτράρισμα των μηνυμάτων στον φάκελο '%S', επειδή απέτυχε η εγγραφή στον φάκελο. Βεβαιωθείτε ότι υπάρχει επαρκής χώρος στον δίσκο και ότι έχετε δικαιώματα εγγραφής στον φάκελο και έπειτα, δοκιμάστε ξανά.
+copyMsgWriteFailed=Δεν ήταν δυνατή η μετακίνηση ή η αντιγραφή των μηνυμάτων στον φάκελο '%S', επειδή απέτυχε η εγγραφή στον φάκελο. Για να ανακτήσετε χώρο στον δίσκο, από το μενού "Αρχείο", επιλέξτε "Άδειασμα απορριμμάτων", "Συμπίεση φακέλων" και έπειτα, δοκιμάστε ξανά.
+cantMoveMsgWOBodyOffline=Κατά την εργασία εκτός σύνδεσης, δεν μπορείτε να μετακινήσετε ή να αντιγράψετε μηνύματα που δεν έγινε λήψη του για χρήση εκτός σύνδεσης. Από το παράθυρο "Αλληλογραφία", ανοίξτε το μενού "Αρχείο", επιλέξτε "Εκτός σύνδεσης", καταργήστε την επιλογή "Εργασία με σύνδεση" και δοκιμάστε ξανά.
+operationFailedFolderBusy=Η διεργασία απέτυχε επειδή μια άλλη διεργασία χρησιμοποιεί τον φάκελο. Παρακαλώ περιμένετε να ολοκληρωθεί η διεργασία και δοκιμάστε ξανά.
+folderRenameFailed=Δεν ήταν δυνατή η μετονομασία του φακέλου. Ίσως ο φάκελος να μην υπάρχει, ή το νέο όνομα να μην είναι έγκυρο.
+# LOCALIZATION NOTE(verboseFolderFormat): %1$S is folder name, %2$S is server name
+verboseFolderFormat=%1$S στο %2$S
+# LOCALIZATION NOTE(filterFolderTruncateFailed): %1$S is replaced by the folder name, %2$S is replaced by the brandShortName
+filterFolderTruncateFailed=Προέκυψε σφάλμα περικοπής των εισερχομένων μετά το φιλτράρισμα μηνύματος στον φάκελο '%1$S'. Ίσως χρειαστεί να κλείσετε πλήρως το %2$S και να διαγράψετε το INBOX.msf.
+
+mailboxTooLarge=Ο φάκελος %S είναι πλήρης και δεν μπορεί να χωρέσει άλλα μηνύματα. Για να ελευθερώσετε χώρο, διαγράψτε παλιά ή ανεπιθύμητα μηνύματα και συμπιέστε τον φάκελο.
+outOfDiskSpace=Δεν υπάρχει επαρκής χώρος στον δίσκο για τη λήψη νέων μηνυμάτων. Δοκιμάστε να διαγράψετε παλιά αλληλογραφία, να αδειάσετε τον φάκελο απορριμμάτων και να συμπιέσετε τους φακέλους email σας και έπειτα, δοκιμάστε ξανά.
+errorGettingDB=Αδυναμία ανοίγματος του αρχείου περίληψης για το '%S'. Ενδέχεται να υπάρχει σφάλμα στον δίσκο, ή η πλήρης διαδρομή να είναι μακροσκελής.
+
+defaultServerTag=(Προεπιλογή)
+
+# Used in message database list view to provide a text value for graphic based cells.
+messageUnread=Μη αναγνωσμένο
+messageHasFlag=Με σημαία
+messageHasAttachment=Έχει συνημμένο
+messageJunk=Ανεπιθύμητα
+messageExpanded=Ανεπτυγμένο
+messageCollapsed=Συμπιεσμένο
+
+# Used in the SMTP Account Settings panel when a server value has no properties
+smtpServerList-NotSpecified=<μη καθορισμένο>
+smtpServer-ConnectionSecurityType-0=Κανένας
+smtpServer-ConnectionSecurityType-1=STARTTLS, αν υπάρχει
+smtpServer-ConnectionSecurityType-2=STARTTLS
+smtpServer-ConnectionSecurityType-3=SSL/TLS
+smtpServers-confirmServerDeletionTitle=Διαγραφή διακομιστή
+smtpServers-confirmServerDeletion=Θέλετε σίγουρα να διαγράψετε τον διακομιστή: \n %S;
+
+# Account Settings - Both Incoming and SMTP server
+authNo=Χωρίς ταυτοποίηση
+authOld=Κωδικός πρόσβασης, αρχική μέθοδος (μη ασφαλές)
+authPasswordCleartextInsecurely=Κωδικός πρόσβασης, μη ασφαλής μεταφορά
+authPasswordCleartextViaSSL=Κανονικός κωδικός πρόσβασης
+authPasswordEncrypted=Κρυπτογραφημένος κωδικός πρόσβασης
+authKerberos=Kerberos / GSSAPI
+authExternal=Πιστοποιητικό TLS
+authNTLM=NTLM
+authOAuth2=OAuth2
+authAnySecure=Όλες οι ασφαλείς μέθοδοι (παρωχημένο)
+authAny=Όλες οι μέθοδοι (μη ασφαλές)
+
+# OAuth2 window title
+# LOCALIZATION NOTE(oauth2WindowTitle):
+# %1$S is the username (or full email address) used for authentication.
+# %2$S is the hostname of the account being authenticated.
+oauth2WindowTitle=Εισάγετε τα διαπιστευτήρια για το %1$S στο %2$S
+
+# LOCALIZATION NOTE(serverType-nntp): Do not translate "NNTP" in the line below
+serverType-nntp=Διακομιστής συζητήσεων (NNTP)
+# LOCALIZATION NOTE(serverType-pop3): Do not translate "POP" in the line below
+serverType-pop3=Διακομιστής αλληλογραφίας POP
+# LOCALIZATION NOTE(serverType-imap): Do not translate "IMAP" in the line below
+serverType-imap=Διακομιστής αλληλογραφίας IMAP
+serverType-none=Τοπική αποθήκευση email
+# LOCALIZATION NOTE(serverType-movemail): DONT_TRANSLATE
+serverType-movemail=Unix Movemail
+
+sizeColumnTooltip2=Ταξινόμηση κατά μέγεθος
+sizeColumnHeader=Μέγεθος
+linesColumnTooltip2=Ταξινόμηση κατά γραμμές
+linesColumnHeader=Γραμμές
+
+# status feedback stuff
+documentDone=
+documentLoading=Φόρτωση μηνύματος…
+
+unreadMsgStatus=Μη αναγνωσμένα: %S
+selectedMsgStatus=Επιλεγμένα: %S
+totalMsgStatus=Σύνολο: %S
+
+# localized folder names
+
+localFolders=Τοπικοί φάκελοι
+
+# LOCALIZATION NOTE (inboxFolderName): OK to translate all foldernames, bugzilla #57440 & bugzilla #23625 fixed
+inboxFolderName=Εισερχόμενα
+trashFolderName=Απορρίμματα
+sentFolderName=Απεσταλμένα
+draftsFolderName=Προσχέδια
+templatesFolderName=Πρότυπα
+outboxFolderName=Εξερχόμενα
+junkFolderName=Ανεπιθύμητα
+archivesFolderName=Αρχειοθήκες
+
+# "Normal" priority is often blank,
+# depending on the consumers of these strings
+priorityLowest=Πολύ χαμηλή
+priorityLow=Χαμηλή
+priorityNormal=Κανονική
+priorityHigh=Υψηλή
+priorityHighest=Πολύ υψηλή
+
+#Group by date thread pane titles
+today=Σήμερα
+yesterday=Χθες
+lastWeek=Τελευταία εβδομάδα
+last7Days=Τις τελευταίες 7 ημέρες
+twoWeeksAgo=Δύο εβδομάδες πριν
+last14Days=Τις τελευταίες 14 ημέρες
+older=Παλαιά email
+futureDate=Μελλοντικά
+
+#Grouped By Tags
+untaggedMessages=Μηνύματα χωρίς ετικέτα
+
+# Grouped by status
+messagesWithNoStatus=Καμία κατάσταση
+
+#Grouped by priority
+noPriority=Καμία προτεραιότητα
+
+#Grouped by has attachments
+noAttachments=Κανένα συνημμένο
+attachments=Συνημμένα
+
+#Grouped by flagged
+notFlagged=Χωρίς σημαία
+groupFlagged=Με σημαία
+
+# defaults descriptions for tag prefs listed in mailnews.js
+# (we keep the .labels. names for backwards compatibility)
+mailnews.tags.remove=Αφαίρεση όλων των ετικετών
+mailnews.labels.description.1=Σημαντικό
+mailnews.labels.description.2=Εργασία
+mailnews.labels.description.3=Προσωπικό
+mailnews.labels.description.4=Εκκρεμότητα
+mailnews.labels.description.5=Αργότερα
+
+# Format definition tag menu texts.
+# This is necessary in order to get the accesskeys to be the on the first
+# character of the menu text instead of after the menu text.
+# If a key definition exists for the tag at index n, that key's key will be
+# taken as the accesskey, eg.
+# <key id="key_tag3" key="&tagCmd3.key;" oncommand="ToggleMessageTagKey(3);"/>
+# makes the third tag have the accesskey &tagCmd3.key;.
+# In the menuitem's label, this accesskey appears at %1$S below; %2$S will be
+# replaced by the tag label.
+mailnews.tags.format=%1$S %2$S
+
+replied=Απαντήθηκε
+forwarded=Προωθήθηκε
+new=Νέο
+read=Αναγνωσμένο
+flagged=Με σημαία
+
+# for junk status picker in search and mail views
+junk=Ανεπιθύμητο
+
+# for junk score origin picker in search and mail views
+junkScoreOriginPlugin=Άρθρωμα
+junkScoreOriginFilter=Φίλτρο
+junkScoreOriginWhitelist=Λίστα επιτρεπόμενων
+junkScoreOriginUser=Χρήστης
+junkScoreOriginImapFlag=Σημαία IMAP
+
+# for the has attachment picker in search and mail views
+hasAttachments=Έχει συνημμένα
+
+# for the Tag picker in search and mail views.
+tag=Ετικέτα
+
+# LOCALIZATION NOTE(andOthers):
+# for multiple authors, add this abbreviation to the first author to indicate
+# there are more; for the From column in the threadpane message list.
+andOthers=κ.ά.
+
+# mailnews.js
+mailnews.send_default_charset=UTF-8
+mailnews.view_default_charset=ISO-8859-1
+
+# whether to generate display names in last first order
+# LOCALIZATION NOTE(mail.addr_book.displayName.lastnamefirst):
+# the only valid values are: true OR false (choose from the untranslated English words)
+mail.addr_book.displayName.lastnamefirst=false
+
+# whether to also show phonetic fields in the addressbook
+# LOCALIZATION NOTE(mail.addr_book.show_phonetic_fields):
+# the only valid values are: true OR false (choose from the untranslated English words)
+mail.addr_book.show_phonetic_fields=false
+
+# valid format options are:
+# 1: yyyy/mm/dd
+# 2: yyyy/dd/mm
+# 3: mm/dd/yyyy
+# 4: mm/yyyy/dd
+# 5: dd/mm/yyyy
+# 6: dd/yyyy/mm
+#
+# 0: auto-detect the current locale format
+# a separator has to be either '/', '-', '.' and the year in Chistian year
+# otherwise mm/dd/yyyy (option 3) is used
+#
+mailnews.search_date_format=0
+# separator for search date (e.g. "/", "-"), or empty when search_date_format is zero
+mailnews.search_date_separator=
+# leading zeros for day and month values, not used if mailnews.search_date_format is not zero
+mailnews.search_date_leading_zeros=true
+
+# offline msg
+nocachedbodybody2=Το κυρίως μέρος του μηνύματος δεν έχει ληφθεί από τον \
+διακομιστή για ανάγνωση εκτός σύνδεσης. Για να διαβάσετε το μήνυμα, \
+πρέπει να συνδεθείτε ξανά στο δίκτυο, να επιλέξετε "Εκτός σύνδεσης" από \
+το μενού "Αρχείο" και να καταργήσετε την επιλογή "Εργασία εκτός σύνδεσης". \
+Την επόμενη φορά, μπορείτε να επιλέξετε μηνύματα ή φακέλους για ανάγνωση εκτός σύνδεσης. \
+Επιλέξτε "Εκτός σύνδεσης" από το μενού "Αρχείο" και επιλέξτε "Λήψη/Συγχρονισμός τώρα". \
+Μπορείτε να προσαρμόσετε την προτίμηση "Χώρος δίσκου" για να μην γίνει λήψη μεγάλων \
+μηνυμάτων.
+
+# accountCentral
+mailnews.account_central_page.url=chrome://messenger/content/msgAccountCentral.xul
+# LOCALIZATION NOTE(acctCentralTitleFormat): %1$S is brand, %2$S is account type, %3$S is account name
+acctCentralTitleFormat=%1$S %2$S - %3$S
+mailAcctType=Αλληλογραφία
+newsAcctType=Ειδήσεις
+feedsAcctType=Ροές
+
+# LOCALIZATION NOTE(nocachedbodytitle): Do not translate "<TITLE>" or "</TITLE>" in the line below
+nocachedbodytitle=<TITLE>Συνδεθείτε για προβολή μηνύματος</TITLE>\n
+
+# mailWindowOverlay.js
+confirmUnsubscribeTitle=Επιβεβαίωση ακύρωσης συνδρομής
+confirmUnsubscribeText=Θέλετε σίγουρα να ακυρώσετε τη συνδρομή σας στο %S;
+
+confirmUnsubscribeManyText=Θέλετε σίγουρα να καταργήσετε την εγγραφή σας από αυτές τις ομάδες συζήτησης;
+
+# msgHdrViewOverlay.js
+deleteAttachments=Τα ακόλουθα συνημμένα θα διαγραφούν οριστικά από αυτό το μήνυμα:\n%S\nΑυτή η ενέργεια δεν μπορεί να αναιρεθεί. Θέλετε να συνεχίσετε;
+detachAttachments=Τα ακόλουθα συνημμένα αποθηκεύτηκαν επιτυχώς και τώρα θα διαγραφούν οριστικά από αυτό το μήνυμα:\n%S\nΑυτή η ενέργεια δεν μπορεί να αναιρεθεί. Θέλετε να συνεχίσετε;
+deleteAttachmentFailure=Αποτυχία διαγραφής των επιλεγμένων συνημμένων.
+
+# This is the format for prepending accesskeys to the
+# each of the attachments in the file|attachments menu:
+# ie: 1 file.txt
+# 2 another file.txt
+attachmentDisplayNameFormat=%S %S
+
+# This is the heading for the attachment summary when printing an email
+attachmentsPrintHeader=Συνημμένα:
+
+# Connection Error Messages
+# LOCALIZATION NOTE(unknownHostError): %S is the server name
+unknownHostError=Αποτυχία σύνδεσης με τον διακομιστή %S.
+# LOCALIZATION NOTE(connectionRefusedError): %S is the server name
+connectionRefusedError=Αδυναμία σύνδεσης στον διακομιστή %S· η σύνδεση απορρίφθηκε.
+# LOCALIZATION NOTE(netTimeoutError): %S is the server name
+netTimeoutError=Έληξε ο χρόνος σύνδεσης με τον διακομιστή %S.
+# LOCALIZATION NOTE(netResetError): %S is the server name
+netResetError=Έγινε επαναφορά της σύνδεσης με τον διακομιστή %S.
+# LOCALIZATION NOTE(netInterruptError): %S is the server name
+netInterruptError=Η σύνδεση με τον διακομιστή %S διακόπηκε.
+
+# LOCALIZATION NOTE(biffNotification): %1$S is the number of new messages
+biffNotification_message=έχει %1$S νέο μήνυμα
+biffNotification_messages=έχει %1$S νέα μηνύματα
+
+# LOCALIZATION NOTE(macBiffNotification is Mac only):
+# %1$S is the number of new messages
+# %2$S is a list of names and/or email addresses separated by biffNotification_separator
+# %3$S is the number of new messages not displayed in the biff alert
+macBiffNotification_message=%1$S νέο μήνυμα από %2$S.
+macBiffNotification_messages=%1$S νέα μηνύματα από %2$S.
+macBiffNotification_messages_extra=%1$S νέα μηνύματα από %2$S και %3$S ακόμη.
+# Used to separate names/email addresses in a list. Note the trailing space ', '
+macBiffNotification_separator=,\u0020
+
+# LOCALIZATION NOTE(newMailNotification_message): %1$S is the name of the account %2$S is the number of new messages
+newMailNotification_message=Το %1$S έλαβε %2$S νέο μήνυμα
+
+# LOCALIZATION NOTE(newMailNotification_messages): %1$S is the name of the account %2$S is the number of new messages
+newMailNotification_messages=Το %1$S έλαβε %2$S νέα μηνύματα
+
+# LOCALIZATION NOTE(newMailAlert_message):
+# Semi-colon list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the name of the account, #2 is the number of new messages
+newMailAlert_message=Το #1 έλαβε #2 νέο μήνυμα;Το #1 έλαβε #2 νέα μηνύματα
+
+# For the Quota tab in the mail folder properties dialog
+quotaPercentUsed=%S%% πληρότητα
+
+# for message views
+confirmViewDeleteTitle=Επιβεβαίωση
+confirmViewDeleteMessage=Θέλετε σίγουρα να διαγράψετε αυτή την προβολή;
+
+# for virtual folders
+confirmSavedSearchDeleteTitle=Διαγραφή αποθηκευμένης αναζήτησης
+confirmSavedSearchDeleteMessage=Θέλετε σίγουρα να διαγράψετε αυτή την αποθηκευμένη αναζήτηση;
+confirmSavedSearchDeleteButton=&Διαγραφή αποθηκευμένης αναζήτησης
+
+## @name ENTER_PASSWORD_PROMPT
+## @loc None
+# LOCALIZATION NOTE (passwordPrompt): Do not translate the word %S below.
+# Place the word "%S" in your translation where the email address
+# or the username should appear
+passwordPrompt=Εισάγετε τον κωδικό πρόσβασής σας για το %1$S στο %2$S:
+
+## @name ENTER_PASSWORD_PROMPT_TITLE
+## @loc None
+passwordTitle=Απαιτείται κωδικός πρόσβασης διακομιστή email
+
+# for checking if the user really wants to open lots of messages in separate windows.
+openWindowWarningTitle=Επιβεβαίωση
+# LOCALIZATION NOTE (openWindowWarningConfirmation): Semi-colon list of plural forms.
+# #1 is the number of messages the user is attempting to open.
+openWindowWarningConfirmation=Το άνοιγμα #1 ενδέχεται να είναι αργό. Συνέχεια;;Το άνοιγμα #1 μηνυμάτων ενδέχεται να είναι αργό. Συνέχεια;
+
+# for warning the user that a tag he's trying to create already exists
+tagExists=Υπάρχει ήδη ετικέτα με αυτό το όνομα!
+
+# for checking if the user really wants to delete the adaptive filter training set
+confirmResetJunkTrainingTitle=Επιβεβαίωση
+confirmResetJunkTrainingText=Θέλετε σίγουρα να επαναφέρετε τα δεδομένα εκμάθησης του προσαρμοστικού φίλτρου;
+
+# for the virtual folder list dialog title
+# %S is the name of the saved search folder
+editVirtualFolderPropertiesTitle=Επεξεργασία ιδιοτήτων αποθηκευμένης αναζήτησης για %S
+# LOCALIZATION NOTE (foldersChosen): #1 number of chosen folders
+virtualFolderSourcesChosen=Επιλέχθηκε #1 φάκελος;Επιλέχθηκαν #1 φάκελοι
+
+#alert to inform the user to choose one or more folders to search for a saved search folder
+alertNoSearchFoldersSelected=Πρέπει να επιλέξετε τουλάχιστον έναν φάκελο για αναζήτηση του αποθηκευμένου φακέλου αναζήτησης.
+
+# These are displayed in the message and folder pane windows
+# LOCALIZATION NOTE %.*f is the abbreviated size in the appropriate units
+byteAbbreviation2=%.*f bytes
+kiloByteAbbreviation2=%.*f KB
+megaByteAbbreviation2=%.*f MB
+gigaByteAbbreviation2=%.*f GB
+teraByteAbbreviation2=%.*f TB
+petaByteAbbreviation2=%.*f PB
+
+# Error message if message for a message id wasn't found
+errorOpenMessageForMessageIdTitle=Σφάλμα ανοίγματος id-μηνύματος
+errorOpenMessageForMessageIdMessage=Δεν βρέθηκε μήνυμα για το id-μηνύματος %S
+
+# Warnings to alert users about phishing urls
+confirmPhishingTitle=Προειδοποίηση απάτης email
+#LOCALIZATION NOTE %1$S is the brand name, %2$S is the host name of the url being visited
+confirmPhishingUrl1=Το %1$S θεωρεί ότι αυτή η ιστοσελίδα είναι ύποπτη! Ενδέχεται να προσπαθεί να μιμηθεί την ιστοσελίδα που θέλετε να επισκεφθείτε. Οι περισσότερες νόμιμες ιστοσελίδες χρησιμοποιούν ονόματα αντί για αριθμούς. Θέλετε σίγουρα να επισκεφθείτε το %2$S;
+confirmPhishingUrl2=Το %1$S θεωρεί ότι αυτή η ιστοσελίδα είναι ύποπτη! Ενδέχεται να προσπαθεί να μιμηθεί την ιστοσελίδα που θέλετε να επισκεφθείτε. Θέλετε σίγουρα να επισκεφθείτε το %2$S;
+
+#LOCALIZATION NOTE(mdnBarMessageNormal) %1$S is the name of the sender
+mdnBarMessageNormal=Ο/Η %1$S ζήτησε να ειδοποιηθεί όταν διαβάσετε το μήνυμα.
+#LOCALIZATION NOTE(mdnBarMessageAddressDiffers) %1$S is the name of the sender, %2$S is the address(es) to send return receipt to
+mdnBarMessageAddressDiffers=Ο/Η %1$S ζήτησε να ειδοποιηθεί στο %2$S όταν διαβάσετε αυτό το μήνυμα.
+
+# mailCommands.js
+emptyJunkTitle=Επιβεβαίωση
+emptyJunkMessage=Θέλετε σίγουρα να διαγράψετε οριστικά όλα τα μηνύματα και τους υποφακέλους στον φάκελο "Ανεπιθύμητα";
+emptyJunkDontAsk=Να μην ερωτηθώ ξανά.
+emptyTrashTitle=Επιβεβαίωση
+emptyTrashMessage=Θέλετε σίγουρα να διαγράψετε οριστικά όλα τα μηνύματα και τους υποφακέλους στον φάκελο "Απορρίμματα";
+emptyTrashDontAsk=Να μην ερωτηθώ ξανά.
+
+# junkCommands.js
+junkAnalysisPercentComplete=%S ολοκλήρωση ανάλυσης ανεπιθύμητων
+processingJunkMessages=Επεξεργασία ανεπιθύμητων μηνυμάτων
+
+# Messenger bootstrapping messages
+fileNotFoundTitle = Το αρχείο δεν βρέθηκε
+#LOCALIZATION NOTE(fileNotFoundMsg): %S is the filename
+fileNotFoundMsg = Το αρχείο %S δεν υπάρχει.
+
+confirmMsgDelete.title=Επιβεβαίωση διαγραφής
+confirmMsgDelete.collapsed.desc=Θα γίνει διαγραφή των μηνυμάτων στα συμπτυγμένα νήματα. Θέλετε σίγουρα να συνεχίσετε;
+confirmMsgDelete.deleteNoTrash.desc=Θα γίνει άμεσα διαγραφή των μηνυμάτων, χωρίς αποθήκευση αντιγράφου στα Απορρίμματα. Θέλετε σίγουρα να συνεχίσετε;
+confirmMsgDelete.deleteFromTrash.desc=Θα γίνει οριστική διαγραφή των μηνυμάτων από τα Απορρίμματα. Θέλετε σίγουρα να συνεχίσετε;
+confirmMsgDelete.dontAsk.label=Να μην ερωτηθώ ξανά.
+confirmMsgDelete.delete.label=Διαγραφή
+
+mailServerLoginFailedTitle=Αποτυχία σύνδεσης
+# LOCALIZATION NOTE (mailServerLoginFailedTitleWithAccount):
+# "%S" is the account name.
+mailServerLoginFailedTitleWithAccount=Η σύνδεση στον λογαριασμό "%S" απέτυχε
+# LOCALIZATION NOTE (mailServerLoginFailed2):
+# %1$S is the host name of the server, %2$S is the user name.
+mailServerLoginFailed2=Αποτυχία σύνδεσης στον διακομιστή %1$S με όνομα χρήστη %2$S.
+mailServerLoginFailedRetryButton=&Επανάληψη
+mailServerLoginFailedEnterNewPasswordButton=&Εισαγωγή νέου κωδικού πρόσβασης
+
+confirmMarkAllFoldersReadTitle=Επισήμανση όλων των φακέλων ως αναγνωσμένων
+confirmMarkAllFoldersReadMessage=Θέλετε σίγουρα να επισημάνετε όλα τα μηνύματα σε όλους τους φακέλους αυτού του λογαριασμού ως αναγνωσμένα;
+
+# LOCALIZATION NOTE (junkBarMessage): %S is the brandname
+junkBarMessage=Το %S θεωρεί αυτό το μήνυμα ως ανεπιθύμητο.
+junkBarButton=Επιθυμητό
+junkBarButtonKey=Ε
+junkBarInfoButton=?
+junkBarInfoButtonKey=?
+# LOCALIZATION NOTE (remoteContentBarMessage): %S is the brandname
+remoteContentBarMessage=Για την προστασία του απορρήτου σας, το %S έχει αποκλείσει το απομακρυσμένο περιεχόμενο του μηνύματος.
+remoteContentPrefLabel=Επιλογές
+remoteContentPrefAccesskey=Ε
+# LOCALIZATION NOTE(remoteContentAllow): %S is host name
+remoteContentAllow=Αποδοχή απομακρυσμένου περιεχομένου από %S
+
+# LOCALIZATION NOTE (phishingBarMessage): %S is the brandname
+phishingBarMessage=Το %S θεωρεί αυτό το μήνυμα ως απάτη email.
+phishingBarIgnoreButton=Αγνόηση προειδοποίησης
+phishingBarIgnoreButtonKey=Α
+mdnBarMessage=Ο αποστολέας αυτού του μηνύματος ζήτησε να ειδοποιηθεί όταν διαβάσετε αυτό το μήνυμα. Θέλετε να ειδοποιηθεί ο αποστολέας;
+mdnBarIgnoreButton=Παράβλεψη αιτήματος
+mdnBarIgnoreButtonKey=Π
+mdnBarSendReqButton=Αποστολή αποδεικτικού
+mdnBarSendReqButtonKey=Α
+# LOCALIZATION NOTE (saveAsType): replace %S with the extension of the file to be saved.
+saveAsType=Αρχείο %S
diff --git a/l10n-el/suite/chrome/mailnews/mime.properties b/l10n-el/suite/chrome/mailnews/mime.properties
new file mode 100644
index 0000000000..8f48e9105e
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/mime.properties
@@ -0,0 +1,156 @@
+# 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/.
+
+#
+# The following are used by libmime to emit header display in HTML
+#
+
+# Mail subject
+## @name MIME_MHTML_SUBJECT
+## @loc None
+1000=Θέμα
+
+# Resent-Comments
+## @name MIME_MHTML_RESENT_COMMENTS
+## @loc
+1001=Σχόλια-επαναποστολής
+
+# Resent-Date
+## @name MIME_MHTML_RESENT_DATE
+## @loc
+1002=Ημερομηνία-επαναποστολής
+
+# Resent-Sender
+## @name MIME_MHTML_RESENT_SENDER
+## @loc
+1003=Αποστολέας-επαναποστολής
+
+# Resent-From
+## @name MIME_MHTML_RESENT_FROM
+## @loc
+1004=Επαναποστολή-από
+
+# Resent-To
+## @name MIME_MHTML_RESENT_TO
+## @loc
+1005=Επαναποστολή-προς
+
+# Resent-CC
+## @name MIME_MHTML_RESENT_CC
+## @loc
+# LOCALIZATION NOTE (1006): Do not translate "CC" below.
+1006=Κοινοποίηση-επαναποστολής
+
+# Date
+## @name MIME_MHTML_DATE
+## @loc
+1007=Ημερομηνία
+
+# Sender
+## @name MIME_MHTML_SENDER
+## @loc
+1008=Αποστολέας
+
+# From
+## @name MIME_MHTML_FROM
+## @loc
+1009=Από
+
+# Reply-To
+## @name MIME_MHTML_REPLY_TO
+## @loc
+1010=Απάντηση-σε
+
+# Organization
+## @name MIME_MHTML_ORGANIZATION
+## @loc
+1011=Εταιρεία
+
+# To
+## @name MIME_MHTML_TO
+## @loc
+1012=Προς
+
+# CC
+## @name MIME_MHTML_CC
+## @loc
+# LOCALIZATION NOTE (1013): Do not translate "CC" below.
+1013=Κοιν.
+
+# Newsgroups
+## @name MIME_MHTML_NEWSGROUPS
+## @loc
+1014=Ομάδες συζήτησης
+
+# Followup-To
+## @name MIME_MHTML_FOLLOWUP_TO
+## @loc
+1015=Συνέχεια-σε
+
+# References
+## @name MIME_MHTML_REFERENCES
+## @loc
+1016=Αναφορές
+
+# Message ID
+## @name MIME_MHTML_MESSAGE_ID
+## @loc
+1021=ID-μηνύματος
+
+# BCC
+## @name MIME_MHTML_BCC
+## @loc
+1023=Κρ. Κοιν.
+
+# Link to doc
+## @name MIME_MSG_LINK_TO_DOCUMENT
+## @loc
+1026=Σύνδεσμος για έγγραφο
+
+# Get Doc info
+## @name MIME_MSG_DOCUMENT_INFO
+## @loc
+1027=<B>Πληροφορίες εγγράφου:</B>
+
+# Msg Attachment
+## @name MIME_MSG_ATTACHMENT
+## @loc
+1028=Συνημμένο
+
+# default attachment name
+## @name MIME_MSG_DEFAULT_ATTACHMENT_NAME
+## @loc
+# LOCALIZATION NOTE (1040): Do not translate "%s" below.
+# Place the %s where you wish the part number of the attachment to appear
+1040=Μέρος %s
+
+# default forwarded message prefix
+## @name MIME_FORWARDED_MESSAGE_HTML_USER_WROTE
+## @loc
+1041=-------- Αρχικό μήνυμα --------
+
+# Partial Message Truncated
+## @name MIME_MSG_PARTIAL_TRUNCATED
+## @loc
+MIME_MSG_PARTIAL_TRUNCATED=Έχει περικοπεί!
+
+# Partial Message Truncated Explanation
+## @name MIME_MSG_PARTIAL_TRUNCATED_EXPLANATION
+## @loc
+MIME_MSG_PARTIAL_TRUNCATED_EXPLANATION=Αυτό το μήνυμα υπερβαίνει το μέγιστο μέγεθος μηνυμάτων που έχει οριστεί στις ρυθμίσεις λογαριασμού· γι' αυτό, ελήφθησαν μόνο οι πρώτες γραμμές από τον διακομιστή email.
+
+# Partial Message Not Downloaded
+## @name MIME_MSG_PARTIAL_NOT_DOWNLOADED
+## @loc
+MIME_MSG_PARTIAL_NOT_DOWNLOADED=Δεν έγινε λήψη
+
+# Partial Message Not Downloaded Explanation
+## @name MIME_MSG_PARTIAL_NOT_DOWNLOADED_EXPLANATION
+## @loc
+MIME_MSG_PARTIAL_NOT_DOWNLOADED_EXPLANATION=Ελήφθησαν μόνο οι κεφαλίδες για αυτό το μήνυμα από το διακομιστή email.
+
+# MIME_MSG_PARTIAL_CLICK_FOR_REST
+## @name MIME_MSG_PARTIAL_CLICK_FOR_REST
+## @loc
+MIME_MSG_PARTIAL_CLICK_FOR_REST=Λήψη του υπόλοιπου μηνύματος.
diff --git a/l10n-el/suite/chrome/mailnews/mimeheader.properties b/l10n-el/suite/chrome/mailnews/mimeheader.properties
new file mode 100644
index 0000000000..dcf9526dcf
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/mimeheader.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/.
+
+#
+# The following are used by libmime for header display in XML & HTML
+#
+TO=Προς
+# LOCALIZATION NOTE (BCC); DONT_TRANSLATE
+BCC=BCC
+# LOCALIZATION NOTE (CC); DONT_TRANSLATE
+CC=CC
+DATE=Ημερομηνία
+DISTRIBUTION=Διανομή
+# LOCALIZATION NOTE (FCC); DONT_TRANSLATE
+FCC=FCC
+FOLLOWUP-TO=Συνέχεια σε
+FROM=Από
+STATUS=Κατάσταση
+LINES=Γραμμές
+MESSAGE-ID=ID-μηνύματος
+MIME-VERSION=Έκδοση-MIME
+NEWSGROUPS=Ομάδες συζήτησης
+ORGANIZATION=Εταιρεία
+REFERENCES=Αναφορές
+REPLY-TO=Απάντηση σε
+RESENT-COMMENTS=Σχόλια-επαναποστολής
+RESENT-DATE=Ημερομηνία-επαναποστολής
+RESENT-FROM=Εκ νέου αποστολή από
+RESENT-MESSAGE-ID=ID-μηνύματος-επαναποστολής
+RESENT-SENDER=Αποστολέας-επαναποστολής
+RESENT-TO=Εκ νέου αποστολή προς
+# LOCALIZATION NOTE (RESENT-CC); Do not translate "CC"
+RESENT-CC=Κοινοποίηση-επαναποστολής
+SENDER=Αποστολέας
+SUBJECT=Θέμα
+APPROVED-BY=Εγκρίθηκε-από
+USER-AGENT=Πλατφόρμα-χρήστη
+FILENAME=Όνομα αρχείου
diff --git a/l10n-el/suite/chrome/mailnews/msgAccountCentral.dtd b/l10n-el/suite/chrome/mailnews/msgAccountCentral.dtd
new file mode 100644
index 0000000000..1a07096338
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/msgAccountCentral.dtd
@@ -0,0 +1,24 @@
+<!-- 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 emailSectionHdr.label "Email">
+<!ENTITY readMsgsLink.label "Αναγνωσμένα μηνύματα">
+<!ENTITY composeMsgLink.label "Σύνταξη νέου μηνύματος">
+
+<!ENTITY newsSectionHdr.label "Ομάδες συζήτησης">
+<!ENTITY subscribeNewsLink.label "Διαχείριση συνδρομών ομάδων συζήτησης">
+
+<!ENTITY accountsSectionHdr.label "Λογαριασμοί">
+<!ENTITY subscribeImapFolders.label "Διαχείριση συνδρομών φακέλων">
+<!ENTITY settingsLink.label "Προβολή ρυθμίσεων λογαριασμού">
+<!ENTITY newAcctLink.label "Δημιουργία νέου λογαριασμού">
+
+<!ENTITY advFeaturesSectionHdr.label "Προηγμένες λειτουργίες">
+<!ENTITY searchMsgsLink.label "Αναζήτηση μηνυμάτων">
+<!ENTITY filtersLink.label "Διαχείριση φίλτρων μηνυμάτων">
+<!ENTITY junkSettings.label "Ρυθμίσεις ανεπιθύμητων email">
+<!ENTITY offlineLink.label "Ρυθμίσεις εκτός σύνδεσης">
+
+<!ENTITY feedsSectionHdr.label "Ροές">
+<!ENTITY subscribeFeeds.label "Διαχείριση συνδρομών">
diff --git a/l10n-el/suite/chrome/mailnews/msgHdrViewOverlay.dtd b/l10n-el/suite/chrome/mailnews/msgHdrViewOverlay.dtd
new file mode 100644
index 0000000000..0ca286c04c
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/msgHdrViewOverlay.dtd
@@ -0,0 +1,46 @@
+<!-- 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 toField.label "Προς: ">
+<!ENTITY fromField.label "Από: ">
+<!ENTITY senderField.label "Αποστολέας: ">
+<!ENTITY organizationField.label "Οργανισμός: ">
+<!ENTITY replyToField.label "Απάντηση-σε:">
+
+<!ENTITY subjectField.label "Θέμα: ">
+<!--# LOCALIZATION NOTE (ccField.label): DONT_TRANSLATE -->
+<!ENTITY ccField.label "Cc: ">
+<!ENTITY bccField.label "Κρ. Κοιν:">
+<!ENTITY newsgroupsField.label "Ομάδες συζήτησης: ">
+<!ENTITY followupToField.label "Συνέχεια-σε:">
+
+<!ENTITY tagsHdr.label "Ετικέτες: ">
+<!ENTITY dateField.label "Ημερομηνία: ">
+<!ENTITY userAgentField.label "Πλατφόρμα-χρήστη: ">
+<!ENTITY referencesField.label "Αναφορές: ">
+<!ENTITY messageIdField.label "ID-μηνύματος:">
+<!ENTITY inReplyToField.label "Σε-απάντηση-σε:">
+<!ENTITY originalWebsite.label "Ιστοσελίδα: ">
+
+<!ENTITY editMessage.label "Επεξεργασία προσχεδίου…">
+<!ENTITY editMessage.accesskey "π">
+
+<!ENTITY attachmentsTree.label "Συνημμένα:">
+<!ENTITY attachmentsTree.accesskey "μ">
+<!ENTITY openAttachmentCmd.label "Άνοιγμα">
+<!ENTITY openAttachmentCmd.accesskey "Ά">
+<!ENTITY viewAttachmentCmd.label "Προβολή πηγής">
+<!ENTITY viewAttachmentCmd.accesskey "Π">
+<!ENTITY saveAsAttachmentCmd.label "Αποθήκευση ως…">
+<!ENTITY saveAsAttachmentCmd.accesskey "Α">
+<!ENTITY detachAttachmentCmd.label "Απόσπαση…">
+<!ENTITY detachAttachmentCmd.accesskey "π">
+<!ENTITY deleteAttachmentCmd.label "Διαγραφή">
+<!ENTITY deleteAttachmentCmd.accesskey "φ">
+<!ENTITY saveAllAttachmentsCmd.label "Αποθήκευση όλων…">
+<!ENTITY saveAllAttachmentsCmd.accesskey "Α">
+<!ENTITY detachAllAttachmentsCmd.label "Απόσπαση όλων…">
+<!ENTITY detachAllAttachmentsCmd.accesskey "Α">
+<!ENTITY deleteAllAttachmentsCmd.label "Διαγραφή όλων…">
+<!ENTITY deleteAllAttachmentsCmd.accesskey "γ">
diff --git a/l10n-el/suite/chrome/mailnews/msgHdrViewPopup.dtd b/l10n-el/suite/chrome/mailnews/msgHdrViewPopup.dtd
new file mode 100644
index 0000000000..0f2b8fde3a
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/msgHdrViewPopup.dtd
@@ -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/. -->
+
+<!-- Message Header View Popup -->
+<!ENTITY AddToAddressBook.label "Προσθήκη σε ευρετήριο…">
+<!ENTITY AddToAddressBook.accesskey "ε">
+<!ENTITY EditContact.label "Επεξεργασία επαφής…">
+<!ENTITY EditContact.accesskey "Ε">
+<!ENTITY ViewContact.label "Προβολή επαφής">
+<!ENTITY ViewContact.accesskey "Π">
+<!ENTITY SendMailTo.label "Σύνθεση email προς…">
+<!ENTITY SendMailTo.accesskey "θ">
+<!ENTITY CopyEmailAddress.label "Αντιγραφή διεύθυνσης email">
+<!ENTITY CopyEmailAddress.accesskey "Α">
+<!ENTITY CopyNameAndEmailAddress.label "Αντιγραφή ονόματος και διεύθυνσης email">
+<!ENTITY CopyNameAndEmailAddress.accesskey "ο">
+<!ENTITY CreateFilterFrom.label "Δημιουργία φίλτρου από…">
+<!ENTITY CreateFilterFrom.accesskey "φ">
+<!ENTITY openInBrowser.label "Άνοιγμα στο πρόγραμμα περιήγησης">
+<!ENTITY openInBrowser.accesskey "Ά">
+<!ENTITY bookmarkLinkCmd.label "Προσθήκη σελιδοδείκτη συνδέσμου…">
+<!ENTITY bookmarkLinkCmd.accesskey "Π">
+<!ENTITY copyLinkCmd.label "Αντιγραφή τοποθεσίας συνδέσμου">
+<!ENTITY copyLinkCmd.accesskey "Α">
+<!ENTITY CopyMessageId.label "Αντιγραφή ID μηνύματος">
+<!ENTITY CopyMessageId.accesskey "Α">
+<!ENTITY OpenMessageForMsgId.label "Άνοιγμα μηνύματος για ID">
+<!ENTITY OpenMessageForMsgId.accesskey "Ά">
+<!ENTITY OpenBrowserWithMsgId.label "Άνοιγμα προγράμματος περιήγησης με ID μηνύματος">
+<!ENTITY OpenBrowserWithMsgId.accesskey "π">
diff --git a/l10n-el/suite/chrome/mailnews/msgPrintEngine.dtd b/l10n-el/suite/chrome/mailnews/msgPrintEngine.dtd
new file mode 100644
index 0000000000..08139ffaf8
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/msgPrintEngine.dtd
@@ -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/. -->
+
+<!-- LOCALIZATION NOTE (printCmd.key, closeCmd.key):
+ As defined in msgPrintEngine.xul, Ctrl plus the command keys defined here
+ will be the keyboard shortcuts effective in print preview, e.g. Ctrl+P
+ -->
+
+<!ENTITY printCmd.key "P">
+<!ENTITY closeCmd.key "W">
diff --git a/l10n-el/suite/chrome/mailnews/msgSynchronize.dtd b/l10n-el/suite/chrome/mailnews/msgSynchronize.dtd
new file mode 100644
index 0000000000..95e36a52e7
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/msgSynchronize.dtd
@@ -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/. -->
+
+<!-- extracted from MsgSynchronize.xul and msgSelectOfflineFolders.xul-->
+
+<!ENTITY MsgSynchronize.label "Λήψη και συγχρονισμός μηνυμάτων">
+<!ENTITY MsgSelect.label "Στοιχεία για χρήση εκτός σύνδεσης">
+<!ENTITY MsgSyncDesc.label "Αν έχετε ήδη επιλέξει φακέλους email ή ομάδες συζήτησης για χρήση εκτός σύνδεσης, μπορείτε να κάνετε λήψη και/ή συγχρονισμό τώρα. Διαφορετικά, κάντε κλικ στο κουμπί &quot;Επιλογή&quot; για να επιλέξετε τους φακέλους email και τις ομάδες συζήτησης για χρήση εκτός σύνδεσης.">
+<!ENTITY MsgSyncDirections.label "Λήψη ή/και συγχρονισμός των εξής:">
+<!ENTITY syncTypeMail.label "Μηνύματα email">
+<!ENTITY syncTypeMail.accesskey "Μ">
+<!ENTITY syncTypeNews.label "Μηνύματα ομάδων συζήτησης">
+<!ENTITY syncTypeNews.accesskey "ο">
+<!ENTITY sendMessage.label "Αποστολή μη απεσταλμένων μηνυμάτων">
+<!ENTITY sendMessage.accesskey "Α">
+<!ENTITY workOffline.label "Εργασία εκτός σύνδεσης όταν ολοκληρωθεί η λήψη ή/και ο συγχρονισμός">
+<!ENTITY workOffline.accesskey "Ε">
+<!ENTITY selectButton.label "Επιλογή…">
+<!ENTITY selectButton.accesskey "Ε">
+<!ENTITY MsgSelectDesc.label "Επιλέξτε φακέλους email και συζητήσεων για χρήση εκτός σύνδεσης.">
+<!ENTITY MsgSelectInd.label "Λήψη">
+<!ENTITY MsgSelectItems.label "Φάκελοι και ομάδες συζήτησης">
diff --git a/l10n-el/suite/chrome/mailnews/msgViewPickerOverlay.dtd b/l10n-el/suite/chrome/mailnews/msgViewPickerOverlay.dtd
new file mode 100644
index 0000000000..b71b348045
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/msgViewPickerOverlay.dtd
@@ -0,0 +1,22 @@
+<!-- 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 msgViewPickerOverlay.dtd UI for showing various views on a folder -->
+
+<!ENTITY viewPicker.label "Προβολή:">
+<!ENTITY viewPicker.accesskey "ρ">
+<!ENTITY viewAll.label "Όλων">
+<!ENTITY viewAll.accesskey "Ό">
+<!ENTITY viewUnread.label "Μη αναγνωσμένων">
+<!ENTITY viewUnread.accesskey "Μ">
+<!ENTITY viewNotDeleted.label "Μη διαγραμμένων">
+<!ENTITY viewNotDeleted.accesskey "δ">
+<!ENTITY viewTags.label "Ετικετών">
+<!ENTITY viewTags.accesskey "Ε">
+<!ENTITY viewCustomViews.label "Προσαρμοσμένες προβολές">
+<!ENTITY viewCustomViews.accesskey "β">
+<!ENTITY viewVirtualFolder.label "Αποθήκευση προβολής ως φάκελο…">
+<!ENTITY viewVirtualFolder.accesskey "Α">
+<!ENTITY viewCustomizeView.label "Προσαρμογή…">
+<!ENTITY viewCustomizeView.accesskey "Π">
diff --git a/l10n-el/suite/chrome/mailnews/msgmdn.properties b/l10n-el/suite/chrome/mailnews/msgmdn.properties
new file mode 100644
index 0000000000..3c84bbdca2
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/msgmdn.properties
@@ -0,0 +1,18 @@
+# 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/.
+## Msg Mdn Report strings
+MsgMdnDisplayed=Σημείωση: Αυτό το αποδεικτικό παραλαβής δηλώνει μόνο ότι το μήνυμα προβλήθηκε στον υπολογιστή του παραλήπτη. Δεν υπάρχει εγγύηση πως ο παραλήπτης διάβασε ή κατάλαβε το περιεχόμενο του μηνύματος.
+MsgMdnDispatched=Το μήνυμα είτε εκτυπώθηκε, είτε εστάλη με φαξ, είτε προωθήθηκε χωρίς να εμφανιστεί στον παραλήπτη. Δεν υπάρχει εγγύηση πως ο παραλήπτης θα διαβάσει το μήνυμα αργότερα.
+MsgMdnProcessed=Το πρόγραμμα αλληλογραφίας του παραλήπτη επεξεργάστηκε το μήνυμα χωρίς να γίνει προβολή του. Δεν υπάρχει εγγύηση ότι το μήνυμα θα διαβαστεί αργότερα.
+MsgMdnDeleted=Το μήνυμα διαγράφηκε. Το άτομο στο οποίο το στείλατε μπορεί να μην το είδε. Μπορεί να το επαναφέρει αργότερα και να το διαβάσει.
+MsgMdnDenied=Ο παραλήπτης του μηνύματος δεν επιθυμεί να σας στείλει αποδεικτικό παραλαβής.
+MsgMdnFailed=Προέκυψε σφάλμα. Δεν ήταν δυνατή η δημιουργία ή η αποστολή έγκυρου αποδεικτικού.
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+MsgMdnMsgSentTo=Αυτό είναι ένα αποδεικτικό παραλαβής για το email που στείλατε στο %S.
+MdnDisplayedReceipt=Αποδεικτικό παραλαβής (προβλήθηκε)
+MdnDispatchedReceipt=Αποδεικτικό παραλαβής (απεστάλη)
+MdnProcessedReceipt=Αποδεικτικό παραλαβής (έγινε επεξεργασία)
+MdnDeletedReceipt=Αποδεικτικό παραλαβής (διαγράφηκε)
+MdnDeniedReceipt=Αποδεικτικό παραλαβής (απορρίφθηκε)
+MdnFailedReceipt=Αποδεικτικό παραλαβής (απέτυχε)
diff --git a/l10n-el/suite/chrome/mailnews/newFolderDialog.dtd b/l10n-el/suite/chrome/mailnews/newFolderDialog.dtd
new file mode 100644
index 0000000000..eb33aee8fe
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/newFolderDialog.dtd
@@ -0,0 +1,16 @@
+<!-- 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/. -->
+
+<!-- Labels -->
+<!ENTITY newFolderDialog.title "Νέος φάκελος">
+<!ENTITY name.label "Όνομα:">
+<!ENTITY name.accesskey "ν">
+<!ENTITY description.label "Δημιουργία ως υποφακέλου σε:">
+<!ENTITY description.accesskey "μ">
+<!ENTITY folderRestriction1.label "Αυτός ο διακομιστής περιορίζει τους φακέλου σε δύο ειδικά είδη.">
+<!ENTITY folderRestriction2.label "Να επιτρέπεται στον νέο φάκελο να περιέχει:">
+<!ENTITY foldersOnly.label "Μόνο φάκελους">
+<!ENTITY messagesOnly.label "Μόνο μηνύματα">
+<!ENTITY accept.label "Δημιουργία φακέλου">
+<!ENTITY accept.accesskey "μ">
diff --git a/l10n-el/suite/chrome/mailnews/news.properties b/l10n-el/suite/chrome/mailnews/news.properties
new file mode 100644
index 0000000000..53996c37e6
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/news.properties
@@ -0,0 +1,56 @@
+# 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/.
+downloadHeadersTitlePrefix=Λήψη επικεφαλίδων
+downloadHeadersInfoText=Υπάρχουν %S νέες επικεφαλίδες μηνυμάτων προς λήψη για αυτή την ομάδα συζήτησης.
+cancelDisallowed=Αυτό το μήνυμα δεν φαίνεται να έχει αποσταλεί από εσάς. Μπορείτε να ακυρώσετε μόνο τις δικές σας αναρτήσεις, όχι αυτές που προέρχονται από άλλους.
+cancelConfirm=Είστε βέβαιοι ότι θέλετε να ακυρώσετε αυτό το μήνυμα;
+messageCancelled=Το μήνυμα ακυρώθηκε.
+enterUserPassTitle=Απαιτείται όνομα χρήστη και κωδικός πρόσβασης για τον διακομιστή συζητήσεων
+# LOCALIZATION NOTE (enterUserPassServer): %S is the server being accessed
+enterUserPassServer=Παρακαλώ εισάγετε όνομα χρήστη και κωδικό πρόσβασης για το %S:
+# LOCALIZATION NOTE (enterUserPassGroup): %1$S is a specific newsgroup to set
+# the password for; %2$S is the server from which the newsgroup is accessed
+enterUserPassGroup=Παρακαλώ εισάγετε όνομα χρήστη και κωδικό πρόσβασης για το %1$S στο %2$S:
+okButtonText=Λήψη
+
+noNewMessages=Δεν υπάρχουν νέα μηνύματα στον διακομιστή.
+# LOCALIZATION NOTE (newNewsgroupHeaders): %1$S is the number of the current
+# header being downloaded, %2$S is the number of headers to be downloaded, and
+# %3$S is the newsgroup whose headers are being downloaded.
+newNewsgroupHeaders=Λήψη %1$S από %2$S επικεφαλίδες για το %3$S
+# LOCALIZATION NOTE (newNewsgroupFilteringHeaders): %1$S is the name of the MIME
+# header being filtered on, %2$S is the number of the current header being
+# downloaded, %3$S is the number of headers to be downloaded, and %4$S is the
+# newsgroup whose headers are being downloaded.
+newNewsgroupFilteringHeaders=Λήψη κεφαλίδων για φίλτρα: %1$S (%2$S/%3$S) στο %4$S
+downloadingArticles=Λήψη άρθρων %S-%S
+bytesReceived=Λήψη ομάδων συζήτησης: Ελήφθησαν %S (Ανάγνωση %SKB με %SKB/δ)
+downloadingArticlesForOffline=Λήψη άρθρων %S-%S σε %S
+
+# LOCALIZATION NOTE (autoUnsubscribeText): %1$S is the newsgroup and %2$S is the newsgroup-server it is being removed from.
+autoUnsubscribeText=Η ομάδα συζήτησης %1$S φαίνεται να μην υπάρχει στον διακομιστή %2$S. Θέλετε να καταργήσετε την εγγραφή σας;
+
+# LOCALIZATION NOTE (autoSubscribeText): %1$S is the newsgroup.
+autoSubscribeText=Θέλετε να εγγραφείτε στο %1$S;
+
+# LOCALIZATION NOTE (Error -304): In the following item, don't translate "NNTP"
+# Error - server error
+## @name NNTP_ERROR_MESSAGE
+## @loc None
+-304=Προέκυψε σφάλμα συζήτησης (NNTP):
+
+# Error - newsgroup scan error
+## @name NNTP_NEWSGROUP_SCAN_ERROR
+## @loc None
+-305=Προέκυψε σφάλμα ομάδας συζήτησης. Η σάρωση όλων των ομάδων συζήτησης δεν ολοκληρώθηκε. Δοκιμάστε να κάνετε ξανά προβολή όλων των ομάδων συζήτησης
+
+# Error - NNTP authinfo failure
+## @name NNTP_AUTH_FAILED
+## @loc None
+-260=Προέκυψε σφάλμα ταυτοποίησης. Παρακαλώ δοκιμάστε να εισάγετε ξανά το όνομα και/ή τον κωδικό πρόσβασης σας.
+
+# Error - TCP error
+## @name TCP_ERROR
+## @loc None
+-206=Προέκυψε σφάλμα επικοινωνίας. Δοκιμάστε να συνδεθείτε ξανά. Σφάλμα TCP:
diff --git a/l10n-el/suite/chrome/mailnews/newsError.dtd b/l10n-el/suite/chrome/mailnews/newsError.dtd
new file mode 100644
index 0000000000..652f5ba1c4
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/newsError.dtd
@@ -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/. -->
+
+<!-- LOCALIZATION NOTE (newsError.title): The title of the news error page.
+ Not generally visible. -->
+<!ENTITY newsError.title "Πρόβλημα φόρτωσης άρθρου">
+
+<!-- LOCALIZATION NOTE (articleNotFound.title): The main heading for the news
+ error page. -->
+<!ENTITY articleNotFound.title "Το άρθρο δεν βρέθηκε">
+
+<!-- LOCALIZATION NOTE (articleNotFound.desc): A longer description for the news
+ error page. -->
+<!ENTITY articleNotFound.desc "Ο διακομιστής ομάδας συζήτησης αναφέρει ότι δεν μπορεί να βρει το άρθρο.">
+
+<!-- LOCALIZATION NOTE (serverResponded.title): A string preceding the text
+ response from the newsgroup server describing the error. -->
+<!ENTITY serverResponded.title "Ο διακομιστής ομάδας συζήτησης αποκρίθηκε:">
+
+<!-- LOCALIZATION NOTE (articleExpired.title): A string explaining that the
+ article may have expired. -->
+<!ENTITY articleExpired.title "Μήπως το άρθρο έχει λήξει;">
+
+<!-- LOCALIZATION NOTE (trySearching.title): A string preceding the message's
+ ID. -->
+<!ENTITY trySearching.title "Δοκιμάστε να αναζητήσετε το άρθρο:">
+
+<!-- LOCALIZATION NOTE (removeExpiredArticles.title): The label for the button
+ to remove all expired articles from the newsgroup. -->
+<!ENTITY removeExpiredArticles.title "Αφαίρεση όλων των ληγμένων άρθρων">
diff --git a/l10n-el/suite/chrome/mailnews/newsblog/am-newsblog.dtd b/l10n-el/suite/chrome/mailnews/newsblog/am-newsblog.dtd
new file mode 100644
index 0000000000..295dc61045
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/newsblog/am-newsblog.dtd
@@ -0,0 +1,17 @@
+<!-- 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 biffAll.label "Ενεργοποίηση ενημερώσεων για όλες τις ροές">
+<!ENTITY biffAll.accesskey "Ε">
+
+<!ENTITY newFeedSettings.label "Προεπιλεγμένες ρυθμίσεις για ροές ειδήσεων">
+
+<!ENTITY manageSubscriptions.label "Διαχείριση συνδρομών…">
+<!ENTITY manageSubscriptions.accesskey "Δ">
+
+<!-- entities from rss.rdf -->
+<!ENTITY feeds.accountName "Blog &amp; ροές ειδήσεων">
+<!ENTITY feeds.wizardShortName "Ροές">
+<!ENTITY feeds.wizardLongName "Blog &amp; ροές ειδήσεων">
+<!ENTITY feeds.wizardLongName.accesskey "ρ">
diff --git a/l10n-el/suite/chrome/mailnews/newsblog/feed-subscriptions.dtd b/l10n-el/suite/chrome/mailnews/newsblog/feed-subscriptions.dtd
new file mode 100644
index 0000000000..c81c95884a
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/newsblog/feed-subscriptions.dtd
@@ -0,0 +1,55 @@
+<!-- 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/. -->
+
+<!-- Subscription Dialog -->
+<!ENTITY feedSubscriptions.label "Συνδρομές ροών">
+<!ENTITY learnMore.label "Μάθετε περισσότερα για τις ροές">
+
+<!ENTITY feedTitle.label "Τίτλος:">
+<!ENTITY feedTitle.accesskey "Τ">
+
+<!ENTITY feedLocation.label "URL ροής:">
+<!ENTITY feedLocation.accesskey "ρ">
+<!ENTITY feedLocation2.placeholder "Εισάγετε ένα έγκυρο URL ροής">
+<!ENTITY locationValidate.label "Επικύρωση">
+<!ENTITY validateText.label "Έλεγχος επαλήθευσης και ανάκτηση έγκυρου URL.">
+
+<!ENTITY feedFolder.label "Αποθήκευση άρθρων σε:">
+<!ENTITY feedFolder.accesskey "Α">
+
+<!-- Account Settings and Subscription Dialog -->
+<!ENTITY biffStart.label "Έλεγχος για νέα άρθρα κάθε ">
+<!ENTITY biffStart.accesskey "κ">
+<!ENTITY biffMinutes.label "λεπτά">
+<!ENTITY biffMinutes.accesskey "λ">
+<!ENTITY biffDays.label "ημέρες">
+<!ENTITY biffDays.accesskey "μ">
+<!ENTITY recommendedUnits.label "Ο εκδότης προτείνει:">
+
+<!ENTITY quickMode.label "Εμφάνιση σύνοψης άρθρου αντί για φόρτωση της ιστοσελίδας">
+<!ENTITY quickMode.accesskey "μ">
+
+<!ENTITY autotagEnable.label "Αυτόματη δημιουργία ετικετών από τα ονόματα &lt;κατηγοριών&gt; ροής">
+<!ENTITY autotagEnable.accesskey "τ">
+<!ENTITY autotagUsePrefix.label "Πρόθεμα ετικετών:">
+<!ENTITY autotagUsePrefix.accesskey "Π">
+<!ENTITY autoTagPrefix.placeholder "Εισάγετε πρόθεμα ετικέτας">
+
+<!-- Subscription Dialog -->
+<!ENTITY button.addFeed.label "Προσθήκη">
+<!ENTITY button.addFeed.accesskey "Π">
+<!ENTITY button.verifyFeed.label "Επαλήθευση">
+<!ENTITY button.verifyFeed.accesskey "Ε">
+<!ENTITY button.updateFeed.label "Ενημέρωση">
+<!ENTITY button.updateFeed.accesskey "Ε">
+<!ENTITY button.removeFeed.label "Αφαίρεση">
+<!ENTITY button.removeFeed.accesskey "Α">
+<!ENTITY button.importOPML.label "Εισαγωγή">
+<!ENTITY button.importOPML.accesskey "Ε">
+<!ENTITY button.exportOPML.label "Εξαγωγή">
+<!ENTITY button.exportOPML.accesskey "ξ">
+<!ENTITY button.exportOPML.tooltip "Εξαγωγή ροών με δομή φακέλου· κάντε Ctrl+κλικ ή πατήστε Ctrl+Enter για εξαγωγή ροών σε λίστα">
+
+<!ENTITY cmd.close.commandKey "w">
+<!ENTITY button.close.label "Κλείσιμο">
diff --git a/l10n-el/suite/chrome/mailnews/newsblog/newsblog.properties b/l10n-el/suite/chrome/mailnews/newsblog/newsblog.properties
new file mode 100644
index 0000000000..7267a17493
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/newsblog/newsblog.properties
@@ -0,0 +1,93 @@
+# 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/.
+
+subscribe-validating-feed=Επαλήθευση ροής…
+subscribe-cancelSubscription=Θέλετε σίγουρα να ακυρώσετε τη συνδρομή σας στην τρέχουσα ροή;
+subscribe-cancelSubscriptionTitle=Συνδρομή σε ροή…
+subscribe-feedAlreadySubscribed=Έχετε ήδη συνδρομή σε αυτή τη ροή.
+subscribe-errorOpeningFile=Αδυναμία ανοίγματος αρχείου.
+subscribe-feedAdded=Η ροή προστέθηκε.
+subscribe-feedUpdated=Η ροή ενημερώθηκε.
+subscribe-feedMoved=Η συνδρομή ροής μετακινήθηκε.
+subscribe-feedCopied=Η συνδρομή ροής αντιγράφηκε.
+subscribe-feedRemoved=Η συνδρομή στη ροή καταργήθηκε.
+subscribe-feedNotValid=Το URL ροής δεν είναι έγκυρη ροή.
+subscribe-feedVerified=Το URL ροής έχει επαληθευτεί.
+subscribe-networkError=Αδυναμία εύρεσης URL ροής. Παρακαλώ ελέγξτε το όνομα και δοκιμάστε ξανά.
+subscribe-noAuthError=Το URL ροής δεν είναι πιστοποιημένο.
+subscribe-loading=Φόρτωση, παρακαλώ περιμένετε…
+
+subscribe-OPMLImportTitle=Επιλογή αρχείου OPML για εισαγωγή
+## LOCALIZATION NOTE(subscribe-OPMLExportTitleList):
+## %S is the name of the feed account folder name.
+subscribe-OPMLExportTitleList=Εξαγωγή %S ως αρχείο OPML - Λίστα ροών
+## LOCALIZATION NOTE(subscribe-OPMLExportTitleStruct):
+## %S is the name of the feed account folder name.
+subscribe-OPMLExportTitleStruct=Εξαγωγή του %S ως αρχείου OPML - Ροές με δομή φακέλου
+## LOCALIZATION NOTE(subscribe-OPMLExportFileDialogTitle):
+## %1$S is the brandShortName, %2$S is the name of the feed account folder name.
+subscribe-OPMLExportFileDialogTitle=Εξαγωγή %1$S OPML - %2$S
+## LOCALIZATION NOTE(subscribe-OPMLExportDefaultFileName):
+## %1$S is the brandShortName (Thunderbird for example), %2$S is the account name.
+## The default extension (.opml) is added here as it is not automatically appended in the file picker on MacOS.
+subscribe-OPMLExportDefaultFileName=Ροές%1$S-%2$S.opml
+## LOCALIZATION NOTE(subscribe-OPMLImportInvalidFile): %S is the name of the OPML file the user tried to import.
+subscribe-OPMLImportInvalidFile=Το αρχείο %S δεν φαίνεται να είναι ένα έγκυρο αρχείο OPML.
+## LOCALIZATION NOTE(subscribe-OPMLImportFeedCount): Semi-colon list of plural forms.
+## See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+## #1 is the count of new imported entries.
+subscribe-OPMLImportFeedCount=Εισήχθη #1 νέα ροή.;Εισήχθησαν #1 νέες ροές.
+## LOCALIZATION NOTE(subscribe-OPMLImportUniqueFeeds): Semi-colon list of plural forms.
+## #1 is the count of new imported entries
+subscribe-OPMLImportUniqueFeeds=Εισήχθη #1 νέα ροή στην οποία δεν έχετε ήδη εγγραφεί;Εισήχθησαν #1 νέες ροές στις οποίες δεν έχετε ήδη εγγραφεί
+## LOCALIZATION NOTE(subscribe-OPMLImportFoundFeeds):
+## #1 is total number of elements found in the file
+subscribe-OPMLImportFoundFeeds=(από #1 καταχώρηση);(από #1 καταχωρήσεις συνολικά)
+## LOCALIZATION NOTE(subscribe-OPMLImportStatus):
+## This is the concatenation of the two strings defined above to compose 1 sentence.
+## %1$S = subscribe-OPMLImportUniqueFeeds
+## %2$S = subscribe-OPMLImportFoundFeeds
+subscribe-OPMLImportStatus=%1$S %2$S.
+
+subscribe-OPMLExportOPMLFilesFilterText=Αρχεία OPML
+## LOCALIZATION NOTE(subscribe-OPMLExportDone): %S is the export file name.
+subscribe-OPMLExportDone=Οι ροές σε αυτό τον λογαριασμό έχουν εξαχθεί στο %S.
+
+subscribe-confirmFeedDeletionTitle=Αφαίρεση ροής
+## LOCALIZATION NOTE(subscribe-confirmFeedDeletion): %S is the name of the feed the user wants to unsubscribe from.
+subscribe-confirmFeedDeletion=Θέλετε σίγουρα να ακυρώσετε τη συνδρομή σας στη ροή: \n %S;
+
+## LOCALIZATION NOTE(subscribe-gettingFeedItems):
+## - The first %S is the number of articles processed so far;
+## - The second %S is the total number of items
+subscribe-gettingFeedItems=Λήψη άρθρων ροής (%S από %S)…
+
+newsblog-noNewArticlesForFeed=Δεν υπάρχουν νέα άρθρα για αυτή τη ροή.
+## LOCALIZATION NOTE(newsblog-networkError): %S is the feed URL
+newsblog-networkError=Αδυναμία εύρεσης του %S. Παρακαλώ ελέγξτε το όνομα και δοκιμάστε ξανά.
+## LOCALIZATION NOTE(newsblog-feedNotValid): %S is the feed URL
+newsblog-feedNotValid=Το %S δεν είναι έγκυρη ροή.
+## LOCALIZATION NOTE(newsblog-badCertError): %S is the feed URL host
+newsblog-badCertError=Το %S χρησιμοποιεί ένα μη έγκυρο πιστοποιητικό ασφαλείας.
+## LOCALIZATION NOTE(newsblog-noAuthError): %S is the feed URL
+newsblog-noAuthError=Το %S δεν είναι πιστοποιημένο.
+newsblog-getNewMsgsCheck=Έλεγχος ροών για νέα στοιχεία…
+
+## LOCALIZATION NOTE(feeds-accountname): This string should be the same as feeds.accountName in am-newsblog.dtd
+feeds-accountname=Blog & ροές ειδήσεων
+
+## LOCALIZATION NOTE(externalAttachmentMsg): Content in the MIME part for external link attachments.
+externalAttachmentMsg=Αυτό το συνημμένο MIME έχει αποθηκευτεί ξεχωριστά από το μήνυμα.
+
+## Import wizard.
+ImportFeedsCreateNewListItem=* Νέος λογαριασμός *
+ImportFeedsNewAccount=Δημιουργία και εισαγωγή σε νέο λογαριασμό ροών
+ImportFeedsExistingAccount=Εισαγωγή σε υπάρχοντα λογαριασμό ροών
+## LOCALIZATION NOTE(ImportFeedsDone):
+## - The first %S is the import file name;
+## - The second %S is the value of either ImportFeedsNew or ImportFeedsExisting;
+## - The third %S is the feed account name.
+ImportFeedsNew=νέο
+ImportFeedsExisting=υπάρχον
+ImportFeedsDone=Η εισαγωγή συνδρομών ροών από το αρχείο %1$S στον λογαριασμό %2$S '%3$S' έχει ολοκληρωθεί.
diff --git a/l10n-el/suite/chrome/mailnews/oeImportMsgs.properties b/l10n-el/suite/chrome/mailnews/oeImportMsgs.properties
new file mode 100644
index 0000000000..799586965e
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/oeImportMsgs.properties
@@ -0,0 +1,77 @@
+# 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/.
+
+#
+# The following are used by the outlook express import code to display status/error
+# and informational messages
+#
+
+# Short name of import module
+## @name OEIMPORT_NAME
+## @loc None
+## LOCALIZATION NOTE (2000): DONT_TRANSLATE
+2000=Outlook Express
+
+# Description of import module
+## @name OEIMPORT_DESCRIPTION
+## @loc None
+## LOCALIZATION NOTE (2011): In this item, don't translate "Outlook Express"
+2011=Αλληλογραφία, ευρετήρια και ρυθμίσεις Outlook Express
+
+# Success message
+## @name OEIMPORT_MAILBOX_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2002): In this item, don't translate "%S" or "%d"
+## The variable %S will contain the name of the Mailbox
+## The variable %d will contain the number of messages
+
+2002=Γραμματοκιβώτιο %S, εισήχθησαν %d μηνύματα
+
+# Error message
+## @name OEIMPORT_MAILBOX_BADPARAM
+## @loc None
+2003=Εσφαλμένη παράμετρος στην εισαγωγή γραμματοκιβωτίου.
+
+# Error message
+## @name OEIMPORT_MAILBOX_BADSOURCEFILE
+## @loc None
+## LOCALIZATION NOTE (2004): In this item, don't translate "%S"
+## The variable %S will contain the name of the Mailbox
+2004=Σφάλμα πρόσβασης αρχείου για το γραμματοκιβώτιο %S.
+
+# Error message
+## @name OEIMPORT_MAILBOX_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2005): In this item, don't translate "%S"
+## The variable %S will contain the name of the Mailbox
+2005=Σφάλμα εισαγωγής γραμματοκιβωτίου %S, ενδέχεται να μην εισαχθούν όλα τα μηνύματα από το γραμματοκιβώτιο.
+
+# Default name of imported addressbook
+## @name OEIMPORT_DEFAULT_NAME
+## @loc None
+2006=Ευρετήριο Outlook Express
+
+# Autofind description
+## @name OEIMPORT_AUTOFIND
+## @loc None
+2007=Ευρετήριο Outlook Express (ευρετήριο των Windows)
+
+# Description
+## @name OEIMPORT_ADDRESS_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2006): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2008=Εισήχθη το ευρετήριο %S
+
+# Error message
+## @name OEIMPORT_ADDRESS_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2009): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2009=Σφάλμα εισαγωγής ευρετηρίου %S, ενδέχεται να μην έχουν εισαχθεί όλες οι διευθύνσεις.
+
+# Error message
+## @name OEIMPORT_ADDRESS_BADPARAM
+## @loc None
+2010=Εσφαλμένη παράμετρος στην εισαγωγή ευρετηρίου.
diff --git a/l10n-el/suite/chrome/mailnews/offline.properties b/l10n-el/suite/chrome/mailnews/offline.properties
new file mode 100644
index 0000000000..2434b8cfb3
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/offline.properties
@@ -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/.
+
+# LOCALIZATION NOTE :
+# do not localize "\n". use "\n" to make the text fit nicely in the dialog.
+
+#
+# Download Messages Prompt
+#
+downloadMessagesWindowTitle=Εργασία εκτός σύνδεσης
+
+# LOCALIZATION NOTE :
+# do not localize "\n". use "\n" to make the text fit nicely in the dialog.
+downloadMessagesLabel=Θέλετε να κάνετε λήψη μηνυμάτων \nγια εργασία εκτός σύνδεσης πριν αποσυνδεθείτε;\n\n
+
+downloadMessagesCheckboxLabel=Πάντα ερώτηση κατά την αποσύνδεση
+downloadMessagesDownloadButtonLabel=Λήψη
+downloadMessagesNoDownloadButtonLabel=Χωρίς λήψη
+downloadMessagesCancelButtonLabel=Ακύρωση
+
+#
+# Send Messages Prompt
+#
+sendMessagesWindowTitle=Εργασία με σύνδεση
+
+sendMessagesLabel2=Θέλετε να στείλετε τα μη απεσταλμένα μηνύματά σας τώρα;
+sendMessagesCheckboxLabel=Να γίνεται πάντα ερώτηση κατά τη σύνδεση
+sendMessagesSendButtonLabel=Αποστολή
+sendMessagesNoSendButtonLabel=Χωρίς αποστολή
+sendMessagesCancelButtonLabel=Ακύρωση
+
+#
+# GetMessages Offline Prompt
+#
+getMessagesOfflineWindowTitle=Λήψη μηνυμάτων
+
+# LOCALIZATION NOTE :
+# do not localize "\n". use "\n" to make the text fit nicely in the dialog.
+getMessagesOfflineLabel=Αυτή τη στιγμή βρίσκεστε εκτός σύνδεσης. Θέλετε να \nσυνδεθείτε για λήψη των νέων μηνυμάτων σας;\n\n
+getMessagesOfflineGoButtonLabel=Σύνδεση
+
+#
+# Send Messages Offline Prompt
+#
+sendMessagesOfflineWindowTitle=Αποστολή μηνυμάτων
+
+# LOCALIZATION NOTE :
+# do not localize "\n". use "\n" to make the text fit nicely in the dialog.
+sendMessagesOfflineLabel=Αυτή τη στιγμή βρίσκεστε εκτός σύνδεσης. Θέλετε να \nσυνδεθείτε για αποστολή των μη απεσταλμένων μηνυμάτων σας;\n\n
+sendMessagesOfflineGoButtonLabel=Σύνδεση
diff --git a/l10n-el/suite/chrome/mailnews/offlineStartup.properties b/l10n-el/suite/chrome/mailnews/offlineStartup.properties
new file mode 100644
index 0000000000..640e33cb49
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/offlineStartup.properties
@@ -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/.
+
+title=Εργασία με σύνδεση
+desc=Θέλετε να συνδεθείτε τώρα;\n\n(Αν επιλέξετε να εργαστείτε χωρίς σύνδεση, μπορείτε να συνδεθείτε αργότερα - επιλέξτε 'Εκτός σύνδεσης' από το μενού 'Αρχείο' και απενεργοποιήστε το `Εργασία εκτός σύνδεσης'.)
+workOnline=Εργασία με σύνδεση
+workOffline=Εργασία εκτός σύνδεσης
diff --git a/l10n-el/suite/chrome/mailnews/outlookImportMsgs.properties b/l10n-el/suite/chrome/mailnews/outlookImportMsgs.properties
new file mode 100644
index 0000000000..5bd5032b47
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/outlookImportMsgs.properties
@@ -0,0 +1,72 @@
+# 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/.
+
+#
+# The following are used by the outlook express import code to display status/error
+# and informational messages
+#
+
+# Short name of import module
+## @name OUTLOOKIMPORT_NAME
+## @loc None
+## LOCALIZATION NOTE (2000): DONT_TRANSLATE
+2000=Outlook
+
+# Description of import module
+## @name OUTLOOKIMPORT_DESCRIPTION
+## @loc None
+## LOCALIZATION NOTE (2010): In this item, don't translate "Outlook"
+2010=Αλληλογραφία, ευρετήρια διευθύνσεων και ρυθμίσεις Outlook
+
+# Success message
+## @name OUTLOOKIMPORT_MAILBOX_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2002): In this item, don't translate "%S" or "%d"
+## The variable %S will receive the name of the mailbox
+## The variable %d will receive the number of messages
+2002=Γραμματοκιβώτιο %S, εισήχθησαν %d μηνύματα
+
+# Error message
+## @name OUTLOOKIMPORT_MAILBOX_BADPARAM
+## @loc None
+2003=Λανθασμένη παράμετρος στην εισαγωγή γραμματοκιβωτίου.
+
+# Error message
+## @name OUTLOOKIMPORT_MAILBOX_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2004): In this item, don't translate "%S"
+## The variable %S will receive the name of the mailbox
+2004=Σφάλμα εισαγωγής γραμματοκιβωτίου %S, ενδέχεται να μην εισαχθούν όλα τα μηνύματα από το γραμματοκιβώτιο.
+
+# Address book name
+## @name OUTLOOKIMPORT_ADDRNAME
+## @loc None
+## LOCALIZATION NOTE (2005): In this item, don't translate "Outlook"
+2005=Ευρετήρια διευθύνσεων Outlook
+
+# Description
+## @name OUTLOOKIMPORT_ADDRESS_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2006): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2006=Εισήχθη το ευρετήριο %S
+
+# Error message
+## @name OUTLOOKIMPORT_ADDRESS_BADPARAM
+## @loc None
+2007=Λανθασμένη παράμετρος στην εισαγωγή ευρετηρίου.
+
+# Error message
+## @name OUTLOOKIMPORT_ADDRESS_BADSOURCEFILE
+## @loc None
+## LOCALIZATION NOTE (2008): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2008=Σφάλμα πρόσβασης στο αρχείο για το ευρετήριο διευθύνσεων %S.
+
+# Error message
+## @name OUTLOOKIMPORT_ADDRESS_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2009): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2009=Σφάλμα εισαγωγής ευρετηρίου %S, ενδέχεται να μην έχουν εισαχθεί όλες οι διευθύνσεις.
diff --git a/l10n-el/suite/chrome/mailnews/pgpmime.properties b/l10n-el/suite/chrome/mailnews/pgpmime.properties
new file mode 100644
index 0000000000..3dff679894
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pgpmime.properties
@@ -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/.
+
+#
+# The following are used by the pgpmime content type handler
+#
+
+# LOCALIZATION NOTE(pgpMimeNeedsAddon): The text can contain HTML tags.
+# %S is the url to Enigmail on AMO supplied from preferences.
+pgpMimeNeedsAddon=Αυτό είναι ένα κρυπτογραφημένο μήνυμα OpenPGP.<br>Για να αποκρυπτογραφήσετε αυτό το email, θα πρέπει να εγκαταστήσετε ένα <a href="%S">πρόσθετο</a>.
diff --git a/l10n-el/suite/chrome/mailnews/pref/AccountManager.dtd b/l10n-el/suite/chrome/mailnews/pref/AccountManager.dtd
new file mode 100644
index 0000000000..8f91961aea
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/AccountManager.dtd
@@ -0,0 +1,26 @@
+<!-- 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/. -->
+
+<!-- extracted from AccountManager.xul -->
+
+<!ENTITY accountManagerTitle.label "Ρυθμίσεις λογαριασμού αλληλογραφίας &amp; ομάδων συζήτησης">
+
+<!ENTITY addAccountButton.label "Προσθήκη λογαριασμού…">
+<!ENTITY addAccountButton.accesskey "λ">
+<!ENTITY setDefaultButton.label "Ορισμός ως προεπιλογή">
+<!ENTITY setDefaultButton.accesskey "π">
+<!ENTITY removeButton.label "Αφαίρεση λογαριασμού">
+<!ENTITY removeButton.accesskey "Α">
+
+<!-- AccountManager.xul -->
+<!-- LOCALIZATION NOTE : this is part of an inline-style attribute on the account
+ setting dialog, which specifies the width and height in em units of the dialog.
+ Localizers ONLY can increase these widths if they are having difficulty getting
+ panel content to fit.
+ 1ch = The width of the "0" (ZERO, U+0030) glyph for the current font.
+ 1em = The height of the font.
+ XUL/FE DEVELOPERS: DO NOT MODIFY THIS VALUE. It represents the correct size of
+ this window for en-US. -->
+<!ENTITY accountManager.size "width: 105ch; height: 55em;">
+<!ENTITY accountTree.width "width: 32ch;">
diff --git a/l10n-el/suite/chrome/mailnews/pref/AccountWizard.dtd b/l10n-el/suite/chrome/mailnews/pref/AccountWizard.dtd
new file mode 100644
index 0000000000..e605764382
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/AccountWizard.dtd
@@ -0,0 +1,127 @@
+<!-- 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/. -->
+
+<!-- Entities for AccountWizard -->
+
+<!ENTITY windowTitle.label "Βοηθός λογαριασμών">
+<!ENTITY accountWizard.size "width: 40em; height: 38em;">
+
+<!-- Entities for Account Type page -->
+
+<!ENTITY accountSetupInfo2.label "Για να λαμβάνετε μηνύματα, θα πρέπει πρώτα να ρυθμίσετε έναν λογαριασμό.">
+<!ENTITY accountTypeTitle.label "Ρύθμιση νέου λογαριασμού">
+<!ENTITY accountTypeDesc2.label "Ο οδηγός θα συλλέξει τις απαραίτητες πληροφορίες για τη ρύθμιση ενός λογαριασμού. Αν δεν γνωρίζετε τις απαιτούμενες πληροφορίες, επικοινωνήστε με τον διαχειριστή του συστήματος ή τον πάροχο υπηρεσιών διαδικτύου σας.">
+<!ENTITY accountTypeDirections.label "Επιλέξτε τον τύπο λογαριασμού που θέλετε να ρυθμίσετε:">
+<!ENTITY accountTypeMail.label "Λογαριασμός email">
+<!ENTITY accountTypeMail.accesskey "m">
+<!ENTITY accountTypeNews.label "Λογαριασμός ομάδας συζήτησης">
+<!ENTITY accountTypeNews.accesskey "μ">
+<!-- LOCALIZATION NOTE(accountTypeMovemail.label): do not translate 'Movemail' -->
+<!ENTITY accountTypeMovemail.label "Unix Mailspool (Movemail)">
+<!ENTITY accountTypeMovemail.accesskey "U">
+
+<!-- Entities for Identity page -->
+
+<!ENTITY identityTitle.label "Ταυτότητα">
+<!ENTITY identityDesc.label "Κάθε λογαριασμός έχει μια ταυτότητα, που αποτελεί τις πληροφορίες που σας ταυτοποιούν στους παραλήπτες των μηνυμάτων σας.">
+
+<!-- LOCALIZATION NOTE (fullnameDesc.label) : do not translate two of "&quot;" in below line -->
+<!ENTITY fullnameDesc.label "Εισάγετε το όνομα που θέλετε να εμφανίζεται στο πεδίο &quot;Από&quot; των εξερχόμενων μηνυμάτων σας">
+<!-- LOCALIZATION NOTE (fullnameExample.label) : use following directions for below line
+ 1, do not translate two of "&quot;"
+ 2, Use localized full name instead of "John Smith"
+-->
+<!ENTITY fullnameExample.label "(για παράδειγμα, &quot;Ιωάννης Παπαδόπουλος&quot;).">
+<!ENTITY fullnameLabel.label "Το όνομά σας:">
+<!ENTITY fullnameLabel.accesskey "Τ">
+
+<!ENTITY emailLabel.label "Διεύθυνση email:">
+<!ENTITY emailLabel.accesskey "e">
+
+<!-- Entities for Incoming Server page -->
+
+<!ENTITY incomingTitle.label "Πληροφορίες διακομιστή εισερχομένων">
+<!ENTITY incomingServerTypeDesc.label "Επιλέξτε τον τύπο του διακομιστή εισερχομένων που χρησιμοποιείτε.">
+<!-- LOCALIZATION NOTE (imapType.label) : Do not translate "IMAP" in below line -->
+<!ENTITY imapType.label "IMAP">
+<!ENTITY imapType.accesskey "I">
+<!-- LOCALIZATION NOTE (popType.label) : Do not translate "POP" in below line -->
+<!ENTITY popType.label "POP">
+<!ENTITY popType.accesskey "P">
+<!ENTITY portNum.label "Θύρα:">
+<!ENTITY portNum.accesskey "ρ">
+<!ENTITY defaultPortLabel.label "Προεπιλογή:">
+<!ENTITY defaultPortValue.label "">
+<!-- LOCALIZATION NOTE (incomingServerNameDesc.label) : Do not translate "&quot;pop.example.net&quot;" in below line -->
+<!ENTITY incomingServer.description "Εισάγετε το όνομα διακομιστή εισερχομένων (για παράδειγμα, &quot;mail.example.net&quot;).">
+<!ENTITY incomingServer.label "Διακομιστής εισερχομένων:">
+<!ENTITY incomingServer.accesskey "Δ">
+<!ENTITY leaveMsgsOnSrvr.label "Διατήρηση μηνυμάτων στον διακομιστή">
+<!ENTITY leaveMsgsOnSrvr.accesskey "Δ">
+<!-- LOCALIZATION NOTE (incomingUsername.description) : do not translate "&quot;jsmith&quot;" in below line -->
+<!ENTITY incomingUsername.description "Εισάγετε το όνομα χρήστη εισερχομένων που σας παραχώρησε ο πάροχος email σας (για παράδειγμα, &quot;jsmith&quot;).">
+<!ENTITY incomingUsername.label "Όνομα χρήστη:">
+<!ENTITY incomingUsername.accesskey "χ">
+<!-- LOCALIZATION NOTE (newsServerNameDesc.label) : Do not translate "NNTP" or the "&quot;" entities in below line -->
+<!ENTITY newsServerNameDesc.label "Εισάγετε το όνομα του διακομιστή συζητήσεων (NNTP) σας (για παράδειγμα, &quot;news.example.net&quot;).">
+<!ENTITY newsServerLabel.label "Διακομιστής ομάδας συζήτησης:">
+<!ENTITY newsServerLabel.accesskey "Δ">
+
+<!-- Entities for Outgoing Server page -->
+
+<!ENTITY outgoingTitle.label "Πληροφορίες διακομιστή εξερχομένων">
+<!-- LOCALIZATION NOTE (outgoingServer.description) : Do not translate "SMTP" and "&quot;smtp.example.net&quot;" in below line -->
+<!ENTITY outgoingServer.description "Εισάγετε το όνομα του διακομιστή εξερχομένων (SMTP) (για παράδειγμα, &quot;smtp.example.net&quot;).">
+<!ENTITY outgoingServer.label "Διακομιστής εξερχομένων:">
+<!ENTITY outgoingServer.accesskey "Δ">
+<!ENTITY outgoingUsername.description "Εισάγετε το όνομα χρήστη εξερχομένων που σας δόθηκε από τον πάροχο email σας (αυτό συνήθως είναι ίδιο με το όνομα χρήστη εισερχομένων).">
+<!ENTITY outgoingUsername.label "Όνομα χρήστη εξερχομένων:">
+<!ENTITY outgoingUsername.accesskey "χ">
+
+<!-- LOCALIZATION NOTE (modifyOutgoing.suffix) : This string will be appended after each of
+ haveSmtp1.suffix3, haveSmtp2.suffix3, haveSmtp3.suffix3 .
+-->
+<!ENTITY modifyOutgoing.suffix "Μπορείτε να τροποποιήσετε τις ρυθμίσεις διακομιστή εξερχομένων μέσα από τις Ρυθμίσεις λογαριασμού email &amp; ομάδων συζήτησης.">
+<!-- LOCALIZATION NOTE (haveSmtp1.prefix and haveSmtp1.suffix3) : Do not translate "SMTP" and "&quot;" in
+ these variables. Also, translate haveSmtp1.prefix and haveSmtp1.suffix3 as a single sentence, inserting
+ text after the "&quot;" entity in haveSmtp1.suffix3, if required grammatically.
+-->
+<!ENTITY haveSmtp1.prefix "Θα χρησιμοποιηθεί ο υπάρχων διακομιστής εξερχομένων (SMTP) σας, &quot;">
+<!ENTITY haveSmtp1.suffix3 "&quot;.">
+<!-- LOCALIZATION NOTE (haveSmtp2.prefix and haveSmtp2.suffix3) : Do not translate "SMTP" and "&quot;" in
+ these variables. Also, translate haveSmtp2.prefix and haveSmtp2.suffix3 as a single sentence, inserting
+ text after the "&quot;" entity in haveSmtp2.suffix3, if required grammatically.
+-->
+<!ENTITY haveSmtp2.prefix "Θα χρησιμοποιηθεί το υπάρχον όνομα χρήστη εξερχομένων (SMTP) σας, &quot;">
+<!ENTITY haveSmtp2.suffix3 "&quot;.">
+<!-- LOCALIZATION NOTE (haveSmtp3.prefix and haveSmtp3.suffix3) : Do not translate "SMTP" and "&quot;" in
+ these variables. Also, translate haveSmtp3.prefix and haveSmtp3.suffix3 as a single sentence, inserting
+ text after the "&quot;" entity in haveSmtp3.suffix3, if required grammatically.
+-->
+<!ENTITY haveSmtp3.prefix "Ο διακομιστής εξερχομένων (SMTP) σας, &quot;">
+<!ENTITY haveSmtp3.suffix3 "&quot;, είναι ίδιος με τον διακομιστή εισερχομένων σας, θα χρησιμοποιηθεί το όνομα χρήστη εισερχομένων σας για πρόσβαση σε αυτόν.">
+
+<!-- Entities for Account name page -->
+
+<!ENTITY accnameTitle.label "Όνομα λογαριασμού">
+<!-- LOCALIZATION NOTE (accnameDesc.label) : do not translate any "&quot;" in below line -->
+<!ENTITY accnameDesc.label "Εισάγετε το όνομα με το οποίο θέλετε να αναφέρεστε σε αυτό τον λογαριασμό (για παράδειγμα, &quot;Εργασιακός λογαριασμός&quot;, &quot;Οικιακός λογαριασμός&quot; ή &quot;Λογαριασμός συζητήσεων&quot;).">
+<!ENTITY accnameLabel.label "Όνομα λογαριασμού:">
+<!ENTITY accnameLabel.accesskey "Ό">
+
+<!-- Entities for Done (Congratulations) page -->
+
+<!ENTITY completionTitle.label "Συγχαρητήρια!">
+<!ENTITY completionText.label "Παρακαλώ επαληθεύστε την εγκυρότητα των παρακάτω πληροφοριών.">
+<!ENTITY serverTypePrefix.label "Τύπος διακομιστή εισερχομένων:">
+<!ENTITY serverNamePrefix.label "Όνομα διακομιστή εισερχομένων:">
+<!ENTITY smtpServerNamePrefix.label "Όνομα διακομιστή εξερχομένων (SMTP):">
+<!ENTITY newsServerNamePrefix.label "Όνομα διακομιστή ειδήσεων (NNTP):">
+<!ENTITY downloadOnLogin.label "Λήψη μηνυμάτων τώρα">
+<!ENTITY downloadOnLogin.accesskey "Λ">
+<!ENTITY deferStorageDesc.label "Ενεργοποιήστε αυτή την επιλογή για αποθήκευση email για αυτό τον λογαριασμό στα Γενικά εισερχόμενα των τοπικών φακέλων. Διαφορετικά, ο λογαριασμός εμφανίζεται ως λογαριασμός ανώτερου επιπέδου και τα email του αποθηκεύονται στον δικό τους κατάλογο.">
+<!ENTITY deferStorage.label "Χρήση γενικών εισερχομένων (αποθήκευση email σε τοπικούς φακέλους)">
+<!ENTITY deferStorage.accesskey "γ">
+<!ENTITY clickFinish.label 'Κάντε κλικ στο "Τέλος" για αποθήκευση ρυθμίσεων και κλείσιμο του Βοηθού λογαριασμών.'>
+<!ENTITY clickFinish.labelMac 'Κάντε κλικ στο "Τέλος" για αποθήκευση ρυθμίσεων και κλείσιμο του Βοηθού λογαριασμών.'>
diff --git a/l10n-el/suite/chrome/mailnews/pref/am-addressing.dtd b/l10n-el/suite/chrome/mailnews/pref/am-addressing.dtd
new file mode 100644
index 0000000000..e49f797121
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/am-addressing.dtd
@@ -0,0 +1,49 @@
+<!-- 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/. -->
+
+<!-- extracted from am-addressing.xul -->
+
+<!ENTITY addressing.label "Σύνθεση &amp; διευθυνσιοδότηση">
+<!ENTITY addressingGroupTitle.label "Διευθυνσιοδότηση">
+<!ENTITY autocompleteToMyDomain.label "Αυτόματη προσθήκη του τομέα μου σε διευθύνσεις">
+<!ENTITY autocompleteToMyDomain.accesskey "υ">
+<!ENTITY addressingText.label "Κατά την αναζήτηση διευθύνσεων:">
+<!-- LOCALIZATION NOTE (override.label) : do not translate "LDAP" in below line -->
+<!ENTITY useGlobal.label "Χρήση γενικών προτιμήσεων διακομιστή LDAP για αυτό τον λογαριασμό">
+<!ENTITY useGlobal.accesskey "Χ">
+<!ENTITY editDirectories.label "Επεξεργασία καταλόγων…">
+<!ENTITY editDirectories.accesskey "Ε">
+<!-- LOCALIZATION NOTE (directories.label) : do not translate "LDAP" in below line -->
+<!ENTITY directories.label "Χρήση διαφορετικού διακομιστή LDAP:">
+<!ENTITY directories.accesskey "δ">
+<!ENTITY directoriesNone.label "Κανένα">
+
+<!-- am-addressing.xul -->
+
+<!ENTITY compositionGroupTitle.label "Σύνθεση">
+<!-- LOCALIZATION NOTE (useHtml.label) : do not translate "html" in below line -->
+<!ENTITY useHtml.label "Σύνταξη μηνυμάτων σε μορφή HTML">
+<!ENTITY useHtml.accesskey "Σ">
+<!ENTITY autoQuote.label "Αυτόματη παράθεση αρχικού μηνύματος κατά την απάντηση">
+<!ENTITY autoQuote.accesskey "μ">
+<!-- LOCALIZATION NOTE (quoting.label): This will concatenate with the 4 strings that follow. -->
+<!ENTITY quoting.label "Κατά την παράθεση,">
+<!ENTITY quoting.accesskey "π">
+<!ENTITY aboveQuote.label "έναρξη απάντησης πάνω από την παράθεση">
+<!ENTITY belowQuote.label "έναρξη απάντησης κάτω από την παράθεση">
+<!ENTITY selectAndQuote.label "επιλογή παράθεσης">
+<!ENTITY place.label "και τοποθέτηση υπογραφής">
+<!ENTITY place.accesskey "υ">
+<!ENTITY belowText.label "κάτω από την παράθεση (προτείνεται)">
+<!ENTITY aboveText.label "κάτω από την απάντηση (πάνω από την παράθεση)">
+<!ENTITY includeSigOnReply.label "Συμπερίληψη υπογραφής στις απαντήσεις">
+<!ENTITY includeSigOnReply.accesskey "Σ">
+<!ENTITY includeSigOnForward.label "Συμπερίληψη υπογραφής στις προωθήσεις">
+<!ENTITY includeSigOnForward.accesskey "ω">
+
+<!ENTITY globalComposingPrefs.label "Γενικές προτιμήσεις σύνθεσης…">
+<!ENTITY globalComposingPrefs.accesskey "Γ">
+
+<!ENTITY globalAddressingPrefs.label "Γενικές προτιμήσεις διευθυνσιοδότησης…">
+<!ENTITY globalAddressingPrefs.accesskey "π">
diff --git a/l10n-el/suite/chrome/mailnews/pref/am-advanced.dtd b/l10n-el/suite/chrome/mailnews/pref/am-advanced.dtd
new file mode 100644
index 0000000000..9f073e5aee
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/am-advanced.dtd
@@ -0,0 +1,25 @@
+<!-- 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 (smtpServer.label): do not translate "SMTP" in below line -->
+<!ENTITY smtpServer.label "Ρυθμίσεις διακομιστή εξερχομένων (SMTP)">
+<!-- LOCALIZATION NOTE (smtpDescription.label): do not translate "SMTP" in below line -->
+<!ENTITY smtpDescription.label "Κατά τη διαχείριση των ταυτοτήτων σας, μπορείτε να χρησιμοποιήσετε έναν διακομιστή από τη λίστα, επιλέγοντάς τον ως διακομιστή εξερχομένων (SMTP), ή μπορείτε να χρησιμοποιήσετε τον προεπιλεγμένο, επιλέγοντας &quot;Χρήση προεπιλεγμένου διακομιστή&quot;.">
+
+<!ENTITY smtpListAdd.label "Προσθήκη…">
+<!ENTITY smtpListAdd.accesskey "θ">
+<!ENTITY smtpListEdit.label "Επεξεργασία…">
+<!ENTITY smtpListEdit.accesskey "Ε">
+<!ENTITY smtpListDelete.label "Αφαίρεση">
+<!ENTITY smtpListDelete.accesskey "φ">
+<!ENTITY smtpListSetDefault.label "Ορισμός προεπιλογής">
+<!ENTITY smtpListSetDefault.accesskey "μ">
+
+<!ENTITY serverDetails.label "Λεπτομέρειες επιλεγμένου διακομιστή:">
+<!ENTITY serverDescription.label "Περιγραφή:">
+<!ENTITY serverName.label "Όνομα διακομιστή: ">
+<!ENTITY serverPort.label "Θύρα: ">
+<!ENTITY userName.label "Όνομα χρήστη: ">
+<!ENTITY connectionSecurity.label "Ασφάλεια σύνδεσης: ">
+<!ENTITY authMethod.label "Μέθοδος ταυτοποίησης: ">
diff --git a/l10n-el/suite/chrome/mailnews/pref/am-archiveoptions.dtd b/l10n-el/suite/chrome/mailnews/pref/am-archiveoptions.dtd
new file mode 100644
index 0000000000..16d9fad34b
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/am-archiveoptions.dtd
@@ -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/. -->
+
+<!-- extracted from am-archiveoptions.xul -->
+
+<!ENTITY dialogTitle.label "Επιλογές αρχειοθέτησης">
+<!ENTITY archiveGranularityPrefix.label "Κατά την αρχειοθέτηση μηνυμάτων, τοποθέτηση σε:">
+<!ENTITY archiveFlat.label "Έναν μοναδικό φάκελο">
+<!ENTITY archiveFlat.accesskey "μ">
+<!ENTITY archiveYearly.label "Ετήσιους φακέλους αρχειοθέτησης">
+<!ENTITY archiveYearly.accesskey "Ε">
+<!ENTITY archiveMonthly.label "Μηνιαίους φακέλους αρχειοθέτησης">
+<!ENTITY archiveMonthly.accesskey "ν">
+<!ENTITY keepFolderStructure.label "Διατήρηση υπάρχουσας δομής φακέλων των αρχειοθετημένων μηνυμάτων">
+<!ENTITY keepFolderStructure.accesskey "Δ">
+<!ENTITY archiveExample.label "Παράδειγμα">
+<!-- LOCALIZATION NOTE (archiveFolderName.label): this should match the default
+ name for the "Archives" folder -->
+<!ENTITY archiveFolderName.label "Αρχειοθήκες">
+<!-- LOCALIZATION NOTE (inboxFolderName.label): this should match the default
+ name for the "Inbox" folder -->
+<!ENTITY inboxFolderName.label "Εισερχόμενα">
diff --git a/l10n-el/suite/chrome/mailnews/pref/am-copies.dtd b/l10n-el/suite/chrome/mailnews/pref/am-copies.dtd
new file mode 100644
index 0000000000..66be25ca21
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/am-copies.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/. -->
+
+<!-- extracted from am-copies.xul -->
+
+<!ENTITY copyAndFolderTitle.label "Αντίγραφα &amp; φάκελοι">
+<!ENTITY sendingPrefix.label "Κατά την αποστολή μηνυμάτων:">
+<!ENTITY fccMailFolder.label "Αυτόματη δημιουργία αντιγράφου στο:">
+<!ENTITY fccMailFolder.accesskey "υ">
+<!ENTITY fccReplyFollowsParent.label "Τοποθέτηση απαντήσεων στον ίδιο φάκελο με το αρχικό μήνυμα">
+<!ENTITY fccReplyFollowsParent.accesskey "Τ">
+<!-- LOCALIZATION NOTE (ccAddress.label): do not translate "Cc" in below line -->
+<!ENTITY ccAddress.label "Κοινοποίηση στις διευθύνσεις email:">
+<!ENTITY ccAddress.accesskey "Κ">
+<!ENTITY ccAddressList.placeholder "Διαχωρισμός διευθύνσεων με κόμματα">
+<!-- LOCALIZATION NOTE (bccAddress.label): do not translate "Bcc" in below line -->
+<!ENTITY bccAddress.label "Κρυφή κοινοποίηση στις διευθύνσεις email:">
+<!ENTITY bccAddress.accesskey "Κ">
+<!ENTITY bccAddressList.placeholder "Διαχωρισμός διευθύνσεων με κόμματα">
+<!ENTITY saveMessageDlg.label "Εμφάνιση παραθύρου επιβεβαίωσης κατά την αποθήκευση μηνυμάτων">
+<!ENTITY saveMessageDlg.accesskey "φ">
+<!-- LOCALIZATION NOTE (sentFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY sentFolderOn.label "Στο φάκελο &quot;Απεσταλμένα&quot; του:">
+<!ENTITY sentFolderOn.accesskey "Α">
+<!ENTITY sentInOtherFolder.label "Σε άλλο φάκελο:">
+<!ENTITY sentInOtherFolder.accesskey "ά">
+<!-- LOCALIZATION NOTE (archivesFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY archivesTitle.label "Αρχεία μηνυμάτων">
+<!ENTITY keepArchives.label "Διατήρηση αρχείων μηνυμάτων:">
+<!ENTITY keepArchives.accesskey "Δ">
+<!ENTITY archiveHierarchyButton.label "Επιλογές αρχειοθέτησης…">
+<!ENTITY archiveHierarchyButton.accesskey "θ">
+<!ENTITY archivesFolderOn.label "Στο φάκελο &quot;Αρχειοθήκη&quot; του:">
+<!ENTITY archivesFolderOn.accesskey "χ">
+<!ENTITY archiveInOtherFolder.label "Σε άλλο φάκελο:">
+<!ENTITY archiveInOtherFolder.accesskey "λ">
+<!ENTITY specialFolders.label "Προσχέδια και πρότυπα">
+<!ENTITY keepDrafts2.label "Διατήρηση προσχεδίων μηνυμάτων:">
+<!-- LOCALIZATION NOTE (draftsFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY draftsFolderOn.label "Στο φάκελο &quot;Προσχέδια&quot; του:">
+<!ENTITY draftsFolderOn.accesskey "Π">
+<!ENTITY draftInOtherFolder.label "Σε άλλο φάκελο:">
+<!ENTITY draftInOtherFolder.accesskey "λ">
+<!ENTITY keepTemplates.label "Διατήρηση προτύπων μηνυμάτων:">
+<!-- LOCALIZATION NOTE (templatesFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY templatesFolderOn.label "Στο φάκελο &quot;Πρότυπα&quot; του:">
+<!ENTITY templatesFolderOn.accesskey "τ">
+<!ENTITY templateInOtherFolder.label "Σε άλλο φάκελο:">
+<!ENTITY templateInOtherFolder.accesskey "κ">
diff --git a/l10n-el/suite/chrome/mailnews/pref/am-identities-list.dtd b/l10n-el/suite/chrome/mailnews/pref/am-identities-list.dtd
new file mode 100644
index 0000000000..a28a31372c
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/am-identities-list.dtd
@@ -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/. -->
+
+<!ENTITY identitiesListManageDesc.label "Διαχειριστείτε τις ταυτότητες αυτού του λογαριασμού. Η πρώτη ταυτότητα χρησιμοποιείται από προεπιλογή.">
+<!ENTITY identitiesListAdd.label "Προσθήκη…">
+<!ENTITY identitiesListAdd.accesskey "Π">
+<!ENTITY identitiesListEdit.label "Επεξεργασία…">
+<!ENTITY identitiesListEdit.accesskey "Ε">
+<!ENTITY identitiesListDefault.label "Ορισμός προεπιλογής">
+<!ENTITY identitiesListDefault.accesskey "Ο">
+<!ENTITY identitiesListDelete.label "Διαγραφή">
+<!ENTITY identitiesListDelete.accesskey "Δ">
+<!ENTITY identitiesListClose.label "Κλείσιμο">
+<!ENTITY identitiesListClose.accesskey "Κ">
diff --git a/l10n-el/suite/chrome/mailnews/pref/am-identity-edit.dtd b/l10n-el/suite/chrome/mailnews/pref/am-identity-edit.dtd
new file mode 100644
index 0000000000..10df378d26
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/am-identity-edit.dtd
@@ -0,0 +1,18 @@
+<!-- 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 (identityDialog.style): This value should be roughly
+ equal to the value of accountManager.size entity minus the value
+ of accountTree.width entity. -->
+<!ENTITY identityDialog.style "min-width: 75ch;">
+<!ENTITY identityListDesc.label "Διαμορφώστε τις ρυθμίσεις αυτής της ταυτότητας:">
+
+<!ENTITY settingsTab.label "Ρυθμίσεις">
+<!ENTITY copiesFoldersTab.label "Αντίγραφα &amp; φάκελοι">
+<!ENTITY addressingTab.label "Σύνθεση &amp; διευθυνσιοδότηση">
+
+<!ENTITY publicData.label "Δημόσια δεδομένα">
+<!ENTITY privateData.label "Ιδιωτικά δεδομένα">
+<!ENTITY identityAlias.label "Ετικέτα ταυτότητας:">
+<!ENTITY identityAlias.accesskey "κ">
diff --git a/l10n-el/suite/chrome/mailnews/pref/am-junk.dtd b/l10n-el/suite/chrome/mailnews/pref/am-junk.dtd
new file mode 100644
index 0000000000..3e12eadbb8
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/am-junk.dtd
@@ -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/. -->
+
+<!ENTITY junkSettings.label "Ρυθμίσεις ανεπιθύμητων">
+<!ENTITY trainingDescription.label "Αν ενεργοποιηθεί, θα πρέπει πρώτα να εκπαιδεύσετε το &brandShortName; ώστε να αναγνωρίζει τα ανεπιθύμητα email, επισημαίνοντας τα μηνύματα ως ανεπιθύμητα ή μη, με το κουμπί ανεπιθύμητων στη γραμμή εργαλείων. Έπειτα, το &brandShortName; θα επισημαίνει αυτόματα τα email ως ανεπιθύμητα.">
+<!ENTITY level.label "Ενεργοποίηση προσαρμοστικών ελέγχων ανεπιθύμητης αλληλογραφίας για αυτό τον λογαριασμό">
+<!ENTITY level.accesskey "Ε">
+
+<!ENTITY move.label "Μετακίνηση νέων ανεπιθύμητων μηνυμάτων:">
+<!ENTITY move.accesskey "Μ">
+<!ENTITY junkFolderOn.label "Στο φάκελο &quot;Ανεπιθύμητα&quot; του:">
+<!ENTITY junkFolderOn.accesskey "Α">
+<!ENTITY otherFolder.label "Σε άλλο:">
+<!ENTITY otherFolder.accesskey "ά">
+<!ENTITY purge1.label "Αυτόματη διαγραφή ανεπιθύμητων email, παλαιότερων από">
+<!ENTITY purge1.accesskey "υ">
+<!ENTITY purge2.label "ημέρες">
+
+<!ENTITY whitelistHeader.label "Να μην γίνεται αυτόματη επισήμανση email ως ανεπιθύμητων, όταν ο αποστολέας είναι σε: ">
+<!ENTITY whitelistHeader.accesskey "Ν">
+
+<!ENTITY ispHeadersWarning.label "Αν ενεργοποιηθεί, το &brandShortName; θα θεωρεί αυτομάτως ανεπιθύμητα τα μηνύματα που επισημαίνονται από αυτή την εξωτερική υπηρεσία ταξινόμησης.">
+<!ENTITY ispHeaders.label "Να θεωρούνται έμπιστες οι κεφαλίδες ανεπιθύμητων email που ορίζονται από: ">
+<!ENTITY ispHeaders.accesskey "θ">
+
+<!ENTITY junkClassification.label "Επιλογή">
+<!ENTITY junkActions.label "Προορισμός και διατήρηση">
+
+<!ENTITY globalJunkPrefs.label "Γενικές προτιμήσεις ανεπιθύμητων…">
+<!ENTITY globalJunkPrefs.accesskey "Γ">
diff --git a/l10n-el/suite/chrome/mailnews/pref/am-main.dtd b/l10n-el/suite/chrome/mailnews/pref/am-main.dtd
new file mode 100644
index 0000000000..3147186108
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/am-main.dtd
@@ -0,0 +1,46 @@
+<!-- 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/. -->
+
+<!-- extracted from am-main.xul -->
+
+<!ENTITY accountTitle.label "Ρυθμίσεις λογαριασμού">
+<!ENTITY accountName.label "Όνομα λογαριασμού:">
+<!ENTITY accountName.accesskey "Ό">
+<!ENTITY identityTitle.label "Προεπιλεγμένη ταυτότητα">
+<!ENTITY identityDesc.label "Κάθε λογαριασμός έχει μια ταυτότητα, που αποτελεί τις πληροφορίες που βλέπουν οι αναγνώστες των μηνυμάτων σας.">
+<!ENTITY name.label "Το όνομά σας:">
+<!ENTITY name.accesskey "Τ">
+<!ENTITY email.label "Διεύθυνση email:">
+<!ENTITY email.accesskey "e">
+<!ENTITY catchAll.label "Απάντηση από αυτή την ταυτότητα όταν ταιριάζουν οι κεφαλίδες παράδοσης:">
+<!ENTITY catchAll.accesskey "τ">
+<!ENTITY replyTo.label "Διεύθυνση απάντησης:">
+<!ENTITY replyTo.accesskey "ν">
+<!ENTITY replyTo.placeholder "Οι παραλήπτες θα απαντούν στην εναλλακτική διεύθυνση">
+<!ENTITY organization.label "Οργανισμός:">
+<!ENTITY organization.accesskey "Ο">
+<!ENTITY signatureText.label "Κείμενο υπογραφής:">
+<!ENTITY signatureText.accesskey "μ">
+<!ENTITY signatureHtml.label "Χρήση HTML">
+<!ENTITY signatureHtml.accesskey "L">
+<!ENTITY signatureFile.label "Επισύναψη υπογραφής από αρχείο:">
+<!ENTITY signatureFile.accesskey "ψ">
+<!ENTITY choose.label "Επιλογή…">
+<!ENTITY choose.accesskey "Ε">
+<!ENTITY editVCard.label "Επεξεργασία κάρτας…">
+<!ENTITY editVCard.accesskey "ξ">
+<!-- LOCALIZATION NOTE (attachVCard.label) : do not translate "vCard" in below line -->
+<!ENTITY attachVCard.label "Επισύναψη της vCard μου στα μηνύματα">
+<!ENTITY attachVCard.accesskey "ψ">
+
+<!ENTITY manageIdentities.label "Διαχείριση ταυτοτήτων…">
+<!ENTITY manageIdentities.accesskey "Δ">
+
+<!-- LOCALIZATION NOTE (smtpName.label) : do not translate "SMTP" in below line -->
+<!ENTITY smtpName.label "Διακομιστής εξερχομένων (SMTP):">
+<!ENTITY smtpName.accesskey "σ">
+<!ENTITY smtpDefaultServer.label "Χρήση προεπιλεγμένου διακομιστή">
+
+<!ENTITY smtpServerEdit.label "Επεξεργασία διακομιστή SMTP…">
+<!ENTITY smtpServerEdit.accesskey "P">
diff --git a/l10n-el/suite/chrome/mailnews/pref/am-mdn.dtd b/l10n-el/suite/chrome/mailnews/pref/am-mdn.dtd
new file mode 100644
index 0000000000..e589d6ebfc
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/am-mdn.dtd
@@ -0,0 +1,34 @@
+<!-- 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 pane.title "Αποδεικτικά ανάγνωσης">
+<!ENTITY useGlobalPrefs.label "Χρήση γενικών προτιμήσεων αποδεικτικών παράδοσης για αυτό τον λογαριασμό">
+<!ENTITY useGlobalPrefs.accesskey "Χ">
+<!ENTITY globalReceipts.label "Γενικές προτιμήσεις…">
+<!ENTITY globalReceipts.accesskey "Γ">
+<!ENTITY useCustomPrefs.label "Προσαρμογή αποδεικτικών ανάγνωσης για αυτό τον λογαριασμό">
+<!ENTITY useCustomPrefs.accesskey "Π">
+<!ENTITY requestReceipt.label "Κατά την αποστολή μηνυμάτων, να ζητείται πάντα αποδεικτικό παράδοσης">
+<!ENTITY requestReceipt.accesskey "Κ">
+<!ENTITY receiptArrive.label "Όταν φτάνει αποδεικτικό:">
+<!ENTITY leaveIt.label "Να παραμένει στα εισερχόμενά μου">
+<!ENTITY leaveIt.accesskey "ε">
+<!-- LOCALIZATION NOTE moveToSent.label Translate: 'Sent' according to Netscape glossary -->
+<!ENTITY moveToSent.label "Να μετακινείται στο φάκελο &quot;Απεσταλμένα&quot;">
+<!ENTITY moveToSent.accesskey "Ν">
+<!ENTITY requestMDN.label "Κατά τη λήψη αιτήματος για αποδεικτικό παραλαβής:">
+<!ENTITY returnSome.label "Αποδοχή αποδεικτικών ανάγνωσης για ορισμένα μηνύματα">
+<!ENTITY returnSome.accesskey "δ">
+<!ENTITY never.label "Να μην αποστέλλεται ποτέ αποδεικτικό παραλαβής">
+<!ENTITY never.accesskey "Ν">
+<!ENTITY notInToCc.label 'Αν δεν είμαι στα πεδία "Προς" ή "Κοιν." του μηνύματος:
+'>
+<!ENTITY notInToCc.accesskey "Π">
+<!ENTITY outsideDomain.label "Aν ο αποστολέας είναι εκτός του τομέα μου:">
+<!ENTITY outsideDomain.accesskey "α">
+<!ENTITY otherCases.label "Σε όλες τις άλλες περιπτώσεις:">
+<!ENTITY otherCases.accesskey "ά">
+<!ENTITY askMe.label "Ερώτηση">
+<!ENTITY alwaysSend.label "Πάντα αποστολή">
+<!ENTITY neverSend.label "Ποτέ αποστολή">
diff --git a/l10n-el/suite/chrome/mailnews/pref/am-mdn.properties b/l10n-el/suite/chrome/mailnews/pref/am-mdn.properties
new file mode 100644
index 0000000000..a6dbc50e5e
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/am-mdn.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/.
+
+## Strings used in prefs.
+prefPanel-mdn=Αποδεικτικά ανάγνωσης
diff --git a/l10n-el/suite/chrome/mailnews/pref/am-offline.dtd b/l10n-el/suite/chrome/mailnews/pref/am-offline.dtd
new file mode 100644
index 0000000000..d222b88e05
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/am-offline.dtd
@@ -0,0 +1,57 @@
+<!-- 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 doNotDownloadPop3Movemail.label "Για εξοικονόμηση χώρου, να μη λαμβάνονται:">
+<!ENTITY doNotDownloadNntp.label "Για εξοικονόμηση χώρου, να μην γίνεται λήψη για χρήση εκτός σύνδεσης:">
+<!ENTITY doNotDownloadImap.label "Για εξοικονόμηση χώρου, μπορείτε να περιορίσετε κατά ημερομηνία ή μέγεθος τη λήψη μηνυμάτων από τον διακομιστή και τη διατήρηση τοπικών αντιγράφων για χρήση εκτός σύνδεσης.">
+<!ENTITY allFoldersOffline2.label "Διατήρηση μηνυμάτων σε όλους τους φακέλους αυτού του λογαριασμού σε αυτό τον υπολογιστή">
+<!ENTITY allFoldersOffline2.accesskey "ο">
+<!ENTITY allFoldersOfflineNote.label 'Σημείωση: Η αλλαγή αυτή θα επηρεάσει όλους τους φακέλους του λογαριασμού. Για ορισμό μεμονωμένων φακέλων, κάντε κλικ στο κουμπί "Για προχωρημένους…".'>
+<!ENTITY offlineNotDownload.label "Μηνύματα μεγαλύτερα από">
+<!ENTITY offlineNotDownload.accesskey "Μ">
+<!ENTITY autosyncNotDownload.label "Να μην γίνεται λήψη μηνυμάτων, μεγαλύτερων από">
+<!ENTITY autosyncNotDownload.accesskey "μ">
+<!ENTITY kb.label "KB">
+<!ENTITY daysOld.label "ημερών">
+<!ENTITY message.label "μηνυμάτων">
+<!ENTITY nntpNotDownloadRead.label "Ανάγνωση μηνυμάτων">
+<!ENTITY nntpNotDownloadRead.accesskey "γ">
+<!ENTITY nntpDownloadMsg.label "Μηνύματα πάνω από">
+<!ENTITY nntpDownloadMsg.accesskey "η">
+<!ENTITY retentionCleanup.label "Για την ανάκτηση χώρου, μπορείτε να διαγράψετε οριστικά τα παλιά μηνύματα.">
+<!ENTITY retentionCleanupImap.label "Για ανάκτηση χώρου στο δίσκο, μπορείτε να διαγράψετε οριστικά τα παλιά σας μηνύματα από τους τοπικούς φακέλους σας και τον διακομιστή.">
+<!ENTITY retentionCleanupPop.label "Για ανάκτηση χώρου στο δίσκο, μπορείτε να διαγράψετε οριστικά τα παλιά σας μηνύματα, καθώς και τα πρωτότυπά τους από τον διακομιστή.">
+<!ENTITY retentionKeepMsg.label "Διαγραφή μηνυμάτων παλαιότερων από">
+<!ENTITY retentionKeepMsg.accesskey "φ">
+<!ENTITY retentionKeepAll.label "Να μην γίνει διαγραφή μηνυμάτων">
+<!ENTITY retentionKeepAll.accesskey "ν">
+<!ENTITY retentionKeepRecent.label "Διαγραφή όλων εκτός από τα πιο πρόσφατα">
+<!ENTITY retentionKeepRecent.accesskey "φ">
+<!ENTITY retentionApplyToFlagged.label "Πάντα διατήρηση των μηνυμάτων με σημαία">
+<!ENTITY retentionApplyToFlagged.accesskey "δ">
+<!ENTITY nntpRemoveMsgBody.label "Αφαίρεση κυρίως μερών από μηνύματα, πάνω από">
+<!ENTITY nntpRemoveMsgBody.accesskey "φ">
+<!ENTITY offlineSelectNntp.label "Επιλογή ομάδων συζήτησης για χρήση εκτός σύνδεσης…">
+<!ENTITY offlineSelectNntp.accesskey "Ε">
+<!ENTITY offlineImapAdvancedOffline.label "Για προχωρημένους…">
+<!ENTITY offlineImapAdvancedOffline.accesskey "ω">
+<!ENTITY syncGroupTitle.label "Συγχρονισμός μηνυμάτων">
+<!ENTITY diskspaceGroupTitle.label "Χώρος δίσκου">
+
+<!-- LOCALIZATION NOTE: (ageAutosyncBefore.label, ageAutosyncMiddle.label, ageAutosyncAfter.label):
+ The entities ageAutosyncBefore.label, ageAutosyncMiddle.label, and ageAutosyncAfter.label appear
+ on a single line within the scope of useAutosync.ByAge as follows:
+
+ &ageAutosyncBefore.label [textbox for autosync value] &ageAutosyncMiddle.label; [dropdown for autosync interval] &ageAutosyncAfter.label;
+-->
+<!ENTITY allAutosync.label "Τοπικός συγχρονισμός όλων των μηνυμάτων ανεξαρτήτως ημερομηνίας">
+<!ENTITY allAutosync.accesskey "χ">
+<!ENTITY ageAutosyncBefore.label "Συγχρονισμός των τελευταίων">
+<!ENTITY ageAutosync.accesskey "Σ">
+<!ENTITY ageAutosyncMiddle.label "">
+<!ENTITY dayAgeInterval.label "ημερών">
+<!ENTITY weekAgeInterval.label "εβδομάδων">
+<!ENTITY monthAgeInterval.label "μηνών">
+<!ENTITY yearAgeInterval.label "ετών">
+<!ENTITY ageAutosyncAfter.label "">
diff --git a/l10n-el/suite/chrome/mailnews/pref/am-server-advanced.dtd b/l10n-el/suite/chrome/mailnews/pref/am-server-advanced.dtd
new file mode 100644
index 0000000000..0ebbd29925
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/am-server-advanced.dtd
@@ -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/. -->
+
+<!ENTITY serverAdvanced.label "Προηγμένες ρυθμίσεις λογαριασμού">
+<!-- LOCALIZATION NOTE (serverDirectory.label): DONT_TRANSLATE "IMAP" -->
+<!ENTITY serverDirectory.label "Κατάλογος διακομιστή IMAP:">
+<!ENTITY serverDirectory.accesskey "δ">
+<!ENTITY usingSubscription.label "Εμφάνιση μόνο εγγεγραμμένων φακέλων">
+<!ENTITY usingSubscription.accesskey "γ">
+<!ENTITY dualUseFolders.label "Ο διακομιστής υποστηρίζει φακέλους που περιέχουν υποφακέλους και μηνύματα">
+<!ENTITY dualUseFolders.accesskey "φ">
+<!ENTITY maximumConnectionsNumber.label "Μέγιστος αριθμός συνδέσεων διακομιστή στην προσωρινή μνήμη">
+<!ENTITY maximumConnectionsNumber.accesskey "Μ">
+<!-- LOCALIZATION NOTE (namespaceDesc.label): DONT_TRANSLATE "IMAP" -->
+<!ENTITY namespaceDesc.label "Αυτές οι προτιμήσεις καθορίζουν τους χώρους ονομάτων στον διακομιστή IMAP σας">
+<!ENTITY personalNamespace.label "Προσωπικός χώρος ονόματος:">
+<!ENTITY personalNamespace.accesskey "Π">
+<!ENTITY publicNamespace.label "Δημόσιο (κοινόχρηστο):">
+<!ENTITY publicNamespace.accesskey "μ">
+<!ENTITY otherUsersNamespace.label "Άλλοι χρήστες:">
+<!ENTITY otherUsersNamespace.accesskey "Ά">
+<!ENTITY overrideNamespaces.label "Να επιτρέπεται στον διακομιστή η παράκαμψη αυτών των χώρων ονομάτων">
+<!ENTITY overrideNamespaces.accesskey "Ν">
+<!ENTITY pop3DeferringDesc.label "Κατά τη λήψη email από τον διακομιστή του λογαριασμού, να γίνεται χρήση του εξής φακέλου για αποθήκευση νέων μηνυμάτων:">
+<!ENTITY accountInbox.label "Εισερχόμενα αυτού του λογαριασμού">
+<!ENTITY accountInbox.accesskey "σ">
+<!ENTITY deferToServer.label "Εισερχόμενα διαφορετικού λογαριασμού">
+<!ENTITY deferToServer.accesskey "δ">
+<!ENTITY deferGetNewMail.label "Να περιλαμβάνεται αυτός ο διακομιστής κατά τη λήψη νέων email">
+<!ENTITY deferGetNewMail.accesskey "π">
diff --git a/l10n-el/suite/chrome/mailnews/pref/am-server-top.dtd b/l10n-el/suite/chrome/mailnews/pref/am-server-top.dtd
new file mode 100644
index 0000000000..5352cc933b
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/am-server-top.dtd
@@ -0,0 +1,89 @@
+<!-- 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 messageStorage.label "Αποθήκευση μηνυμάτων">
+<!ENTITY securitySettings.label "Ρυθμίσεις ασφαλείας">
+<!ENTITY serverSettings.label "Ρυθμίσεις διακομιστή">
+<!ENTITY serverType.label "Τύπος διακομιστή:">
+<!ENTITY serverName.label "Όνομα διακομιστή:">
+<!ENTITY serverName.accesskey "δ">
+<!ENTITY userName.label "Όνομα χρήστη:">
+<!ENTITY userName.accesskey "Ό">
+<!ENTITY port.label "Θύρα:">
+<!ENTITY port.accesskey "Θ">
+<!ENTITY serverPortDefault.label "Προεπιλογή:">
+<!-- LOCALIZATION NOTE (biffStart.label) : translate below 2 line with grammer dependency
+ For example, in Japanese cases:
+ biffStart.label "every"
+ biffEnd.label "minutes for new messages Check"
+-->
+<!ENTITY biffStart.label "Έλεγχος για νέα μηνύματα κάθε ">
+<!ENTITY biffStart.accesskey "ν">
+<!ENTITY biffEnd.label "λεπτά">
+<!ENTITY useIdleNotifications.label "Αποδοχή άμεσων ειδοποιήσεων διακομιστή όταν έρχονται νέα μηνύματα">
+<!ENTITY useIdleNotifications.accesskey "χ">
+<!ENTITY connectionSecurity.label "Ασφάλεια σύνδεσης:">
+<!ENTITY connectionSecurity.accesskey "σ">
+<!ENTITY connectionSecurityType-0.label "Καμία">
+<!ENTITY connectionSecurityType-1.label "STARTTLS, αν υπάρχει">
+<!ENTITY connectionSecurityType-2.label "STARTTLS">
+<!ENTITY connectionSecurityType-3.label "SSL/TLS">
+<!ENTITY authMethod.label "Μέθοδος ταυτοποίησης:">
+<!ENTITY authMethod.accesskey "θ">
+<!ENTITY leaveOnServer.label "Διατήρηση μηνυμάτων στον διακομιστή">
+<!ENTITY leaveOnServer.accesskey "τ">
+<!ENTITY headersOnly.label "Λήψη κεφαλίδων μόνο">
+<!ENTITY headersOnly.accesskey "ψ">
+<!ENTITY deleteByAgeFromServer.label "Για το πολύ">
+<!ENTITY deleteByAgeFromServer.accesskey "ο">
+<!ENTITY daysEnd.label "ημέρες">
+<!ENTITY deleteOnServer2.label "Μέχρι να τα διαγράψω">
+<!ENTITY deleteOnServer2.accesskey "δ">
+<!ENTITY downloadOnBiff.label "Αυτόματη λήψη νέων μηνυμάτων">
+<!ENTITY downloadOnBiff.accesskey "μ">
+<!ENTITY deleteMessagePrefix.label "Κατά τη διαγραφή ενός μηνύματος:">
+<!ENTITY modelMoveToTrash.label "Μετακίνηση στο φάκελο:">
+<!ENTITY modelMoveToTrash.accesskey "φ">
+<!ENTITY modelMarkDeleted.label "Επισήμανση ως διαγραμμένο">
+<!ENTITY modelMarkDeleted.accesskey "μ">
+<!ENTITY modelDeleteImmediately.label "Άμεση αφαίρεση">
+<!ENTITY modelDeleteImmediately.accesskey "φ">
+<!-- LOCALIZATION NOTE (expungeOnExit.label) : do not translate two of "&quot;" in below line -->
+<!ENTITY expungeOnExit.label "Εκκαθάριση (&quot;Διαγραφή&quot;) εισερχομένων κατά την έξοδο">
+<!ENTITY expungeOnExit.accesskey "Ε">
+<!ENTITY emptyTrashOnExit.label "Άδειασμα απορριμάτων κατά την έξοδο">
+<!ENTITY emptyTrashOnExit.accesskey "δ">
+<!ENTITY loginAtStartup.label "Έλεγχος για νέα μηνύματα κατά την εκκίνηση">
+<!ENTITY loginAtStartup.accesskey "Έ">
+<!-- LOCALIZATION NOTE (maxMessagesStart.label) : translate below 2 lines with grammar dependency
+ maxMessengerStart.label will be followed by maxMessagesEnd.label with the number
+ of messages between them
+-->
+<!ENTITY maxMessagesStart.label "Ερώτηση πριν τη λήψη περισσοτέρων από">
+<!ENTITY maxMessagesStart.accesskey "π">
+<!-- LOCALIZATION NOTE (maxMessagesEnd.label) : see note for maxMessagesStart.label -->
+<!ENTITY maxMessagesEnd.label "μηνυμάτων">
+<!ENTITY alwaysAuthenticate.label "Να απαιτείται πάντα ταυτοποίηση κατά τη σύνδεση στον διακομιστή">
+<!ENTITY alwaysAuthenticate.accesskey "π">
+<!ENTITY newsrcFilePath.label "Αρχείο newsrc:">
+<!ENTITY newsrcPicker.label "Επιλογή αρχείου newsrc">
+<!ENTITY abbreviate.label "Εμφάνιση ονομάτων ομάδων συζήτησης στην προβολή φακέλων αλληλογραφίας με:">
+<!ENTITY abbreviateOn.label "Πλήρη ονόματα (για παράδειγμα, 'netscape.public.mozilla.mail-news')">
+<!ENTITY abbreviateOff.label "Σύντομα ονόματα (για παράδειγμα, 'n.p.m.mail-news')">
+<!ENTITY advancedButton.label "Για προχωρημένους…">
+<!ENTITY serverDefaultCharset2.label "Προεπιλεγμένη κωδικοποίηση κειμένου:">
+<!ENTITY advancedButton.accesskey "χ">
+<!ENTITY localPath.label "Τοπικός κατάλογος:">
+<!ENTITY localFolderPicker.label "Επιλογή τοπικού καταλόγου">
+<!ENTITY browseFolder.label "Περιήγηση…">
+<!ENTITY browseFolder.accesskey "Π">
+<!ENTITY browseNewsrc.label "Περιήγηση…">
+<!ENTITY browseNewsrc.accesskey "ρ">
+
+<!ENTITY accountTitle.label "Ρυθμίσεις λογαριασμού">
+<!ENTITY accountSettingsDesc.label "Ο ακόλουθος λογαριασμός είναι ειδικός. Δεν υπάρχουν ταυτότητες που να σχετίζονται με αυτόν.">
+<!ENTITY storeType.label "Τρόπος αποθήκευσης μηνυμάτων:">
+<!ENTITY storeType.accesskey "Τ">
+<!ENTITY mboxStore2.label "Αρχείο ανά φάκελο (mbox)">
+<!ENTITY maildirStore.label "Αρχείο ανά μήνυμα (maildir)">
diff --git a/l10n-el/suite/chrome/mailnews/pref/am-serverwithnoidentities.dtd b/l10n-el/suite/chrome/mailnews/pref/am-serverwithnoidentities.dtd
new file mode 100644
index 0000000000..06104d3446
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/am-serverwithnoidentities.dtd
@@ -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/. -->
+
+<!ENTITY accountName.label "Όνομα λογαριασμού:">
+<!ENTITY accountName.accesskey "Ό">
diff --git a/l10n-el/suite/chrome/mailnews/pref/mailPrefsOverlay.dtd b/l10n-el/suite/chrome/mailnews/pref/mailPrefsOverlay.dtd
new file mode 100644
index 0000000000..d096261311
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/mailPrefsOverlay.dtd
@@ -0,0 +1,25 @@
+<!-- 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/. -->
+
+<!-- These are added to the Advanced - Scripts & Plugins panel -->
+<!ENTITY enbPluginCheckMailNews.label "Αλληλογραφία &amp; ομάδες συζήτησης">
+<!ENTITY enbPluginCheckMailNews.accesskey "λ">
+
+<!-- These are added to the Window menu -->
+<!ENTITY mail.label "Αλληλογραφία &amp; ομάδες συζήτησης">
+<!ENTITY mail.accesskey "Α">
+<!ENTITY addressbook.label "Ευρετήριο">
+<!ENTITY addressbook.accesskey "Ε">
+
+<!-- These are added to Preferences dialog -->
+<!ENTITY viewingMessages.label "Προβολή μηνύματος">
+<!ENTITY notifications.label "Ειδοποιήσεις">
+<!ENTITY composingMessages.label "Σύνθεση">
+<!ENTITY format.label "Μορφή αποστολής">
+<!ENTITY address.label "Διευθυνσιοδότηση">
+<!ENTITY junk.label "Ανεπιθύμητα &amp; ύποπτα email">
+<!ENTITY tags.label "Ετικέτες">
+<!ENTITY return.label "Αποδεικτικά ανάγνωσης">
+<!ENTITY characterEncoding2.label "Κωδικοποίηση κειμένου">
+<!ENTITY networkStorage.label "Δίκτυο &amp; αποθήκευση">
diff --git a/l10n-el/suite/chrome/mailnews/pref/pref-addressing.dtd b/l10n-el/suite/chrome/mailnews/pref/pref-addressing.dtd
new file mode 100644
index 0000000000..57b71300a5
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/pref-addressing.dtd
@@ -0,0 +1,22 @@
+<!-- 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 pref.addressing.title "Διευθυνσιοδότηση">
+<!ENTITY emailCollectiontitle.label "Συλλογή διευθύνσεων email">
+<!ENTITY emailCollectionPicker.label "Προσθήκη διευθύνσεων email στο:">
+<!ENTITY emailCollectionPicker.accesskey "σ">
+<!ENTITY emailCollectiontext.label "Οι διευθύνσεις email από τα εξερχόμενα μηνύματα μπορούν να προστεθούν αυτόματα σε ένα τοπικό ευρετήριο.">
+
+<!-- Autocompletion -->
+<!ENTITY addressingTitle.label "Αυτόματη συμπλήρωση διευθύνσεων">
+<!ENTITY highlightNonMatches.label "Επισήμανση διευθύνσεων που δεν συμπληρώνονται αυτόματα">
+<!ENTITY highlightNonMatches.accesskey "δ">
+<!ENTITY addressingEnable.label "Τοπικά ευρετήρια">
+<!ENTITY addressingEnable.accesskey "Τ">
+<!ENTITY autocompleteText.label "Κατά τη διευθυνσιοδότηση μηνυμάτων, αναζήτηση για αντίστοιχες καταχωρήσεις σε:">
+<!ENTITY directories.label "Διακομιστής καταλόγου:">
+<!ENTITY directories.accesskey "Δ">
+<!ENTITY directoriesNone.label "Κανένας">
+<!ENTITY editDirectories.label "Επεξεργασία καταλόγων…">
+<!ENTITY editDirectories.accesskey "Ε">
diff --git a/l10n-el/suite/chrome/mailnews/pref/pref-character_encoding.dtd b/l10n-el/suite/chrome/mailnews/pref/pref-character_encoding.dtd
new file mode 100644
index 0000000000..7b3241968c
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/pref-character_encoding.dtd
@@ -0,0 +1,17 @@
+<!-- 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 pref.character.encoding2.title "Κωδικοποίηση κειμένου">
+<!ENTITY messageDisplay.caption "Προβολή μηνύματος">
+<!ENTITY viewFallbackCharset2.label "Εφεδρική κωδικοποίηση κειμένου:">
+<!ENTITY viewFallbackCharset2.accesskey "Ε">
+<!ENTITY viewFallbackCharset.desc "(Για παλαιό περιεχόμενο που δεν δηλώνει την κωδικοποίησή του.)">
+
+<!ENTITY composingMessages.caption "Σύνθεση μηνυμάτων">
+<!ENTITY useMIME.label "Για μηνύματα με χαρακτήρες 8-bit, χρησιμοποιήστε την κωδικοποίηση MIME 'quoted printable'. Αν δεν το επιλέξετε, τα μηνύματα θα αποστέλλονται ως έχουν.">
+<!ENTITY useMIME.accesskey "Γ">
+<!ENTITY sendDefaultCharset2.label "Προεπιλεγμένη κωδικοποίηση κειμένου:">
+<!ENTITY sendDefaultCharset2.accesskey "κ">
+<!ENTITY replyInDefaultCharset3.label "Όταν είναι δυνατό, να χρησιμοποιείται αυτή η προεπιλεγμένη κωδικοποίηση κειμένου στις απαντήσεις. (Αν δεν το επιλέξετε, μόνο τα νέα μηνύματα θα χρησιμοποιούν αυτή την προεπιλογή.)">
+<!ENTITY replyInDefaultCharset3.accesskey "Ό">
diff --git a/l10n-el/suite/chrome/mailnews/pref/pref-composing_messages.dtd b/l10n-el/suite/chrome/mailnews/pref/pref-composing_messages.dtd
new file mode 100644
index 0000000000..78947e56e9
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/pref-composing_messages.dtd
@@ -0,0 +1,56 @@
+<!-- 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 pref.composing.messages.title "Σύνθεση">
+<!ENTITY generalComposing.label "Γενικά">
+<!ENTITY forwardMsg.label "Προώθηση μηνυμάτων:">
+<!ENTITY inline.label "Εντός μηνύματος">
+<!ENTITY inline.accesskey "ν">
+<!ENTITY asAttachment.label "Ως συνημμένο">
+<!ENTITY asAttachment.accesskey "Ω">
+
+<!ENTITY replyQuoteInline.label "Παράθεση ενσωματωμένων συνημμένων στις απαντήσεις">
+<!ENTITY replyQuoteInline.accesskey "Π">
+<!ENTITY warnOnSendAccelKey.label "Επιβεβαίωση κατά τη χρήση συντόμευσης πληκτρολογίου για αποστολή μηνύματος">
+<!ENTITY warnOnSendAccelKey.accesskey "β">
+<!-- LOCALIZATION NOTE (autoSave.label): This will concatenate with
+ "xxx minutes", using a number and (autoSaveEnd.label). -->
+<!ENTITY autoSave.label "Αυτόματη αποθήκευση μηνύματος κάθε">
+<!ENTITY autoSave.accesskey "υ">
+<!ENTITY autoSaveEnd.label "λεπτά">
+<!-- LOCALIZATION NOTE (wrapOutMsg.label): This will concatenate with "xxx characters", using a number and (char.label). -->
+<!ENTITY wrapOutMsg.label "Αναδίπλωση μηνυμάτων απλού κειμένου στους">
+<!ENTITY wrapOutMsg.accesskey "Α">
+<!ENTITY char.label "χαρακτήρες">
+
+<!ENTITY defaultMessagesHeader.label "Προεπιλογές για μηνύματα HTML">
+<!ENTITY font.label "Γραμματοσειρά:">
+<!ENTITY font.accesskey "Γ">
+<!ENTITY size.label "Μέγεθος:">
+<!ENTITY size.accesskey "Μ">
+<!ENTITY fontColor.label "Κείμενο:">
+<!ENTITY fontColor.accesskey "Κ">
+<!ENTITY bgColor.label "Φόντο:">
+<!ENTITY bgColor.accesskey "Φ">
+<!ENTITY defaultCompose.label "Προεπιλεγμένη μορφή σύνθεσης:">
+<!ENTITY defaultBodyText.label "Κύριο μέρος (το πλήκτρο Enter εισάγει νέα γραμμή)">
+<!ENTITY defaultBodyText.accesskey "ο">
+<!ENTITY defaultParagraph.label "Παράγραφος (το πλήκτρο Enter δημιουργεί νέα παράγραφο)">
+<!ENTITY defaultParagraph.accesskey "Π">
+
+<!ENTITY selectHeaderType.label "Επιλογή τύπου κεφαλίδας απάντησης:">
+<!ENTITY selectHeaderType.accesskey "ύ">
+<!ENTITY noReplyOption.label "Χωρίς κεφαλίδα απάντησης">
+<!-- LOCALIZATION NOTE (authorWroteOption.label): this is tied to the
+ mailnews.reply_header_authorwrotesingle preference. [Author] needs to be
+ translated. -->
+<!ENTITY authorWroteOption.label "Ο/Η [συντάκτης] έγραψε:">
+<!-- LOCALIZATION NOTE (onDateAuthorWroteOption.label): this is tied to the
+ mailnews.reply_header_ondateauthorwrote preference. [Author] and [date]
+ need to be translated. -->
+<!ENTITY onDateAuthorWroteOption.label "Στις [ημερομηνία], ο/η [συντάκτης] έγραψε:">
+<!-- LOCALIZATION NOTE (onDateAuthorWroteOption.label): this is tied to the
+ mailnews.reply_header_authorwroteondate preference. [Author] and [date]
+ need to be translated. -->
+<!ENTITY authorWroteOnDateOption.label "Ο/Η [συντάκτης] έγραψε στις [ημερομηνία]:">
diff --git a/l10n-el/suite/chrome/mailnews/pref/pref-directory-add.dtd b/l10n-el/suite/chrome/mailnews/pref/pref-directory-add.dtd
new file mode 100644
index 0000000000..424a116bbb
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/pref-directory-add.dtd
@@ -0,0 +1,45 @@
+<!-- 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 directoryName.label "Όνομα:">
+<!ENTITY directoryName.accesskey "ν">
+<!ENTITY directoryHostname.label "Όνομα κεντρικού υπολογιστή: ">
+<!ENTITY directoryHostname.accesskey "ε">
+<!ENTITY directoryBaseDN.label "DN βάσης: ">
+<!ENTITY directoryBaseDN.accesskey "β">
+<!ENTITY findButton.label "Εύρεση">
+<!ENTITY findButton.accesskey "ρ">
+<!ENTITY directorySecure.label "Χρήση ασφαλούς σύνδεσης (SSL)">
+<!ENTITY directorySecure.accesskey "Χ">
+<!ENTITY directoryLogin.label "DN σύνδεσης: ">
+<!ENTITY directoryLogin.accesskey "δ">
+<!ENTITY General.tab "Γενικά">
+<!ENTITY Offline.tab "Εκτός σύνδεσης">
+<!ENTITY Advanced.tab "Για προχωρημένους">
+<!ENTITY portNumber.label "Αριθμός θύρας:">
+<!ENTITY portNumber.accesskey "α">
+<!ENTITY searchFilter.label "Φίλτρο αναζήτησης: ">
+<!ENTITY searchFilter.accesskey "ζ">
+<!ENTITY scope.label "Εμβέλεια: ">
+<!ENTITY scope.accesskey "β">
+<!ENTITY scopeOneLevel.label "Ένα επίπεδο">
+<!ENTITY scopeOneLevel.accesskey "Έ">
+<!ENTITY scopeSubtree.label "Υπόδεντρο">
+<!ENTITY scopeSubtree.accesskey "Υ">
+<!ENTITY return.label "Να μην επιστρέφονται πάνω από">
+<!ENTITY return.accesskey "ρ">
+<!ENTITY results.label "αποτελέσματα">
+<!ENTITY offlineText.label "Μπορείτε να κάνετε λήψη ενός τοπικού αντιγράφου αυτού του καταλόγου για εργασία εκτός σύνδεσης.">
+<!ENTITY saslMechanism.label "Μέθοδος σύνδεσης: ">
+<!ENTITY saslMechanism.accesskey "σ">
+<!ENTITY saslOff.label "Απλή">
+<!ENTITY saslOff.accesskey "λ">
+<!ENTITY saslGSSAPI.label "Kerberos (GSSAPI)">
+<!ENTITY saslGSSAPI.accesskey "K">
+
+<!-- Localization note: this is here because the width of the dialog
+ is determined by the width of the base DN box; and that is likely
+ to vary somewhat with the language.
+-->
+<!ENTITY newDirectoryWidth "36em">
diff --git a/l10n-el/suite/chrome/mailnews/pref/pref-directory.dtd b/l10n-el/suite/chrome/mailnews/pref/pref-directory.dtd
new file mode 100644
index 0000000000..4ef1c568f6
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/pref-directory.dtd
@@ -0,0 +1,17 @@
+<!-- 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 (window.title) : do not translate "LDAP" in below line -->
+<!ENTITY pref.ldap.window.title "Διακομιστές καταλόγου LDAP">
+<!-- LOCALIZATION NOTE (directories.label) : do not translate "LDAP" in below line -->
+<!ENTITY directories.label "Διακομιστής καταλόγου LDAP:">
+<!-- LOCALIZATION NOTE (directoriesText.label) : do not translate "LDAP" in below line -->
+<!ENTITY directoriesText.label "Επιλέξτε έναν διακομιστή καταλόγου LDAP:">
+<!ENTITY directoriesText.accesskey "Ε">
+<!ENTITY addDirectory.label "Προσθήκη">
+<!ENTITY addDirectory.accesskey "θ">
+<!ENTITY editDirectory.label "Επεξεργασία">
+<!ENTITY editDirectory.accesskey "ξ">
+<!ENTITY deleteDirectory.label "Διαγραφή">
+<!ENTITY deleteDirectory.accesskey "φ">
diff --git a/l10n-el/suite/chrome/mailnews/pref/pref-formatting.dtd b/l10n-el/suite/chrome/mailnews/pref/pref-formatting.dtd
new file mode 100644
index 0000000000..13e7b6d5c6
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/pref-formatting.dtd
@@ -0,0 +1,42 @@
+<!-- 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 pref.formatting.title "Μορφή αποστολής">
+<!ENTITY sendMaildesc.label "Όταν γίνεται αποστολή μορφοποιημένων (HTML) μηνυμάτων και ορισμένοι παραλήπτες δεν μπορούν να λάβουν HTML:">
+<!ENTITY askMe.label "Ερώτηση για ενέργεια (θα σας ζητηθεί να επιλέξετε μορφή)">
+<!ENTITY askMe.accesskey "ρ">
+<!ENTITY convertPlain2.label "Μετατροπή μηνύματος σε απλό κείμενο (η μορφοποίηση ενδέχεται να χαθεί)">
+<!ENTITY convertPlain2.accesskey "Μ">
+<!ENTITY sendHTML2.label "Αποστολή μηνύματος μόνο ως HTML (πιθανά προβλήματα εμφάνισης)">
+<!ENTITY sendHTML2.accesskey "Α">
+<!ENTITY sendBoth2.label "Αποστολή μηνύματος σε HTML και απλό κείμενο (μεγαλύτερο μέγεθος)">
+<!ENTITY sendBoth2.accesskey "λ">
+
+<!-- Html and Plain Text Domains -->
+<!ENTITY domain.title "Τομείς HTML και απλού κειμένου">
+<!ENTITY domaindesc.label "Κατά την αποστολή μηνύματος σε διεύθυνση με ένα από τα παρακάτω ονόματα τομέων, θα γίνεται αυτόματα αποστολή στην προτιμώμενη μορφή (μορφοποιημένο ή απλό κείμενο).">
+<!ENTITY HTMLdomaintitle.label "Τομείς HTML">
+<!ENTITY HTMLdomaintitle.accesskey "M">
+<!ENTITY PlainTexttitle.label "Τομείς απλού κειμένου">
+<!ENTITY PlainTexttitle.accesskey "α">
+<!ENTITY AddButton.label "Προσθήκη…">
+<!ENTITY AddHtmlDomain.accesskey "Π">
+<!ENTITY AddPlainText.accesskey "θ">
+<!ENTITY DeleteButton.label "Διαγραφή">
+<!ENTITY DeleteHtmlDomain.accesskey "γ">
+<!ENTITY DeletePlainText.accesskey "ρ">
+
+<!-- Add Domain Name -->
+<!ENTITY add.htmltitle "Προσθήκη ονόματος τομέα HTML">
+<!ENTITY add.htmldomain "Όνομα τομέα HTML:">
+<!ENTITY add.plaintexttitle "Προσθήκη ονόματος τομέα απλού κειμένου">
+<!ENTITY add.plaintextdomain "Όνομα τομέα απλού κειμένου:">
+
+<!ENTITY domainnameError.title "Σφάλμα ονόματος τομέα">
+<!-- LOCALIZATION NOTE: do not translate @string@ -->
+<!ENTITY invalidEntryError.label "Το όνομα τομέα @string@ δεν είναι έγκυρο και θα αγνοηθεί. Τα έγκυρα ονόματα τομέων πρέπει να περιέχουν τουλάχιστον ένα '.' και χαρακτήρες εκατέρωθεν.">
+
+<!-- Global auto-detect switch -->
+<!ENTITY autoDowngrade.label "Αυτόματη αποστολή μηνύματος ως απλού κειμένου αν δεν υπάρχει σημαντική μορφοποίηση (παρακάμπτει άλλες επιλογές)">
+<!ENTITY autoDowngrade.accesskey "έ">
diff --git a/l10n-el/suite/chrome/mailnews/pref/pref-junk.dtd b/l10n-el/suite/chrome/mailnews/pref/pref-junk.dtd
new file mode 100644
index 0000000000..d9bb98bc61
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/pref-junk.dtd
@@ -0,0 +1,40 @@
+<!-- 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 pref.junk.title "Ανεπιθύμητη &amp; ύποπτη αλληλογραφία">
+<!ENTITY junkSettings.caption "Καθολικές ρυθμίσεις ανεπιθύμητης αλληλογραφίας">
+<!ENTITY junkMail.intro "Μεταβείτε στις Ρυθμίσεις λογαριασμού για να διαμορφώσετε τις ρυθμίσεις ανεπιθύμητων email για αυτό τον λογαριασμό.">
+
+<!-- Junk Mail Controls -->
+<!ENTITY manualMark.label "Κατά την επισήμανση μηνυμάτων ως ανεπιθύμητων:">
+<!ENTITY manualMark.accesskey "Κ">
+<!ENTITY manualMarkModeMove.label "Μετακίνηση στον φάκελο &quot;Ανεπιθύμητα&quot; του λογαριασμού">
+<!ENTITY manualMarkModeMove.accesskey "Μ">
+<!ENTITY manualMarkModeDelete.label "Διαγραφή">
+<!ENTITY manualMarkModeDelete.accesskey "Δ">
+
+<!ENTITY markAsRead.intro "Επισήμανση μηνυμάτων ως αναγνωσμένων:">
+<!ENTITY autoMarkAsRead.label "Όταν το &brandShortName; αποφασίζει ότι είναι ανεπιθύμητα">
+<!ENTITY autoMarkAsRead.accesskey "θ">
+<!ENTITY manualMarkAsRead.label "Όταν τα επισημαίνω χειροκίνητα ως ανεπιθύμητα">
+<!ENTITY manualMarkAsRead.accesskey "μ">
+
+<!ENTITY enableJunkLogging.label "Ενεργοποίηση καταγραφής φίλτρου ανεπιθύμητων">
+<!ENTITY enableJunkLogging.accesskey "Ε">
+<!ENTITY openJunkLog.label "Εμφάνιση αρχείου καταγραφής">
+<!ENTITY openJunkLog.accesskey "μ">
+<!ENTITY resetTrainingData.label "Επαναφορά δεδομένων εκμάθησης">
+<!ENTITY resetTrainingData.accesskey "φ">
+
+<!ENTITY pref.suspectMail.caption "Ύποπτα email">
+
+<!-- Phishing Detector -->
+<!ENTITY pref.phishing.caption "Απάτες email">
+<!ENTITY enablePhishingDetector.label "Ειδοποίηση αν το μήνυμα που διαβάζω είναι ύποπτο για απάτη email">
+<!ENTITY enablePhishingDetector.accesskey "Ε">
+
+<!-- Anti Virus -->
+<!ENTITY pref.antivirus.caption "Προστασία από ιούς">
+<!ENTITY antiVirus.label "Να επιτρέπεται η σάρωση εισερχόμενων μηνυμάτων από προγράμματα προστασίας">
+<!ENTITY antiVirus.accesskey "Ν">
diff --git a/l10n-el/suite/chrome/mailnews/pref/pref-mailnews.dtd b/l10n-el/suite/chrome/mailnews/pref/pref-mailnews.dtd
new file mode 100644
index 0000000000..e300711822
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/pref-mailnews.dtd
@@ -0,0 +1,38 @@
+<!-- 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 pref.mailnews.title "Αλληλογραφία &amp; ομάδες συζήτησης">
+<!ENTITY generalSettings.caption "Γενικές ρυθμίσεις">
+<!ENTITY confirmMove.label "Επιβεβαίωση κατά τη μετακίνηση φακέλων στα Απορρίμματα">
+<!ENTITY confirmMove.accesskey "Ε">
+<!ENTITY preserveThreading.label "Διατήρηση νημάτων κατά την ταξινόμηση μηνυμάτων">
+<!ENTITY preserveThreading.accesskey "ν">
+<!ENTITY loadInBackground.label "Εναλλαγή σε νέες καρτέλες όταν ανοίγουν">
+<!ENTITY loadInBackground.accesskey "γ">
+<!ENTITY mailBiffOnNewWindow.label "Έλεγχος για νέα email μόνο μετά το άνοιγμα της Αλληλογραφίας &amp; ομάδων συζητήσεων">
+<!ENTITY mailBiffOnNewWindow.accesskey "Έ">
+
+<!ENTITY defaultMailSettings.description "Ορισμός του &brandShortName; ως προεπιλογής για:">
+<!ENTITY setDefaultMail.label "Αλληλογραφία">
+<!ENTITY setDefaultMail.accesskey "Α">
+<!ENTITY setDefaultNews.label "Ειδήσεις">
+<!ENTITY setDefaultNews.accesskey "Ε">
+<!ENTITY setDefaultFeed.label "Ροές">
+<!ENTITY setDefaultFeed.accesskey "έ">
+
+<!ENTITY useInternalSettings.description "Χρήση αλληλογραφίας &amp; ομάδων ειδήσεων του &brandShortName; κατά το άνοιγμα συνδέσμων για:">
+<!ENTITY useInternalMail.label "Αλληλογραφία (mailto:)">
+<!ENTITY useInternalMail.accesskey "λ">
+<!ENTITY useInternalNews.label "Ειδήσεις (news:, snews:, nntp:)">
+<!ENTITY useInternalNews.accesskey "δ">
+
+<!ENTITY messengerStartPage.caption "Αρχική σελίδα αλληλογραφίας">
+<!ENTITY enableStartPage.label "Όταν ανοίγει η προβολή αλληλογραφίας, να εμφανίζεται η αρχική σελίδα στην περιοχή μηνυμάτων">
+<!ENTITY enableStartPage.accesskey "Ό">
+<!ENTITY location.label "Τοποθεσία:">
+<!ENTITY location.accesskey "Τ">
+<!ENTITY useDefault.label "Επαναφορά προεπιλογής">
+<!ENTITY useDefault.accesskey "π">
+<!ENTITY rememberLastMsg.label "Αποθήκευση του τελευταίου επιλεγμένου μηνύματος">
+<!ENTITY rememberLastMsg.accesskey "Α">
diff --git a/l10n-el/suite/chrome/mailnews/pref/pref-notifications.dtd b/l10n-el/suite/chrome/mailnews/pref/pref-notifications.dtd
new file mode 100644
index 0000000000..9fa35e6cd9
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/pref-notifications.dtd
@@ -0,0 +1,46 @@
+<!-- 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 pref.notifications.title "Ειδοποιήσεις">
+<!ENTITY notifications.caption "Ειδοποιήσεις">
+<!ENTITY newMessagesArrive.label "Όταν φθάνουν νέα μηνύματα:">
+
+<!-- LOCALIZATION NOTE: (showAlertFor.label, showAlertTimeEnd.label)
+ showAlertFor.label is associated with the checkbox to show the alert,
+ leading into a numerical field to enter a time in seconds, followed by
+ showAlertTimeEnd.label which in en-US is the unit of the value -->
+
+<!ENTITY showAlertFor.label "Εμφάνιση ειδοποίησης για">
+<!ENTITY showAlertFor.accesskey "Ε">
+<!ENTITY showAlertTimeEnd.label "δευτερόλεπτα">
+
+<!ENTITY showAlertPreviewText.label "Εμφάνιση προεπισκόπησης κειμένου μηνύματος">
+<!ENTITY showAlertPreviewText.accesskey "φ">
+<!ENTITY showAlertSubject.label "Εμφάνιση θέματος">
+<!ENTITY showAlertSubject.accesskey "θ">
+<!ENTITY showAlertSender.label "Εμφάνιση αποστολέα">
+<!ENTITY showAlertSender.accesskey "π">
+<!ENTITY useSystemAlert.label "Χρήση ειδοποιήσεων λειτουργικού συστήματος">
+<!ENTITY useSystemAlert.accesskey "λ">
+<!ENTITY useBuiltInAlert.label "Χρήση παραθύρων ειδοποιήσεων του &brandShortName;">
+<!ENTITY useBuiltInAlert.accesskey "π">
+
+<!ENTITY showTrayIcon.label "Εμφάνιση εικονιδίου στη γραμμή">
+<!ENTITY showTrayIcon.accesskey "μ">
+<!ENTITY showBalloon.label "Εμφάνιση ειδοποίησης συστήματος">
+<!ENTITY showBalloon.accesskey "ο">
+<!ENTITY bounceSystemDockIcon.label "Κίνηση εικονιδίου γραμμής">
+<!ENTITY bounceSystemDockIcon.accesskey "Κ">
+
+<!ENTITY playSound.label "Αναπαραγωγή ήχου">
+<!ENTITY playSound.accesskey "Α">
+<!ENTITY playButton.label "Αναπαραγωγή">
+<!ENTITY playButton.accesskey "γ">
+<!ENTITY systemsound.label "Ήχος νέου email συστήματος">
+<!ENTITY systemsound.accesskey "μ">
+<!ENTITY customsound.label "Προσαρμοσμένο αρχείο ήχου">
+<!ENTITY customsound.accesskey "Π">
+<!ENTITY browse.label "Περιήγηση…">
+<!ENTITY browse.accesskey "Π">
+<!ENTITY browse.title "Επιλογή αρχείου">
diff --git a/l10n-el/suite/chrome/mailnews/pref/pref-offline.dtd b/l10n-el/suite/chrome/mailnews/pref/pref-offline.dtd
new file mode 100644
index 0000000000..b1eb310c21
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/pref-offline.dtd
@@ -0,0 +1,38 @@
+<!-- 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/. -->
+
+<!-- extracted from content/pref-offline.xul -->
+
+<!--LOCALIZATION NOTE : FILE The 'Offline' preferences dialog -->
+<!ENTITY pref.network.title "Δίκτυο &amp; αποθήκευση">
+<!ENTITY pref.offline.caption "Εκτός σύνδεσης">
+<!ENTITY textStartUp "Κατά την εκκίνηση:">
+<!ENTITY textStartUp.accesskey "Κ">
+<!ENTITY menuitemRememberPrevState "Αποθήκευση προηγούμενης κατάστασης σύνδεσης">
+<!ENTITY menuitemAskMe "Ερώτηση για κατάσταση σύνδεσης κατά την εκκίνηση">
+<!ENTITY menuitemAlwaysOnline "Πάντα έναρξη με σύνδεση">
+<!ENTITY menuitemAlwaysOffline "Πάντα έναρξη εκτός σύνδεσης">
+<!ENTITY menuitemAutomatic "Αυτόματη ανίχνευση (αν είναι δυνατό)">
+<!ENTITY textGoingOnline "Αποστολή μη απεσταλμένων μηνυμάτων κατά τη σύνδεση;">
+<!ENTITY radioAutoSend "Ναι">
+<!ENTITY radioAutoSend.accesskey "Ν">
+<!ENTITY radioNotSend "Όχι">
+<!ENTITY radioNotSend.accesskey "Ό">
+<!ENTITY radioAskUnsent "Ερώτηση">
+<!ENTITY radioAskUnsent.accesskey "τ">
+<!ENTITY textGoingOffline "Λήψη μηνυμάτων για χρήση εκτός σύνδεσης κατά την αποσύνδεση;">
+<!ENTITY radioAutoDownload "Ναι">
+<!ENTITY radioAutoDownload.accesskey "α">
+<!ENTITY radioNotDownload "Όχι">
+<!ENTITY radioNotDownload.accesskey "χ">
+<!ENTITY radioAskDownload "Ερώτηση">
+<!ENTITY radioAskDownload.accesskey "ρ">
+<!ENTITY mailConnections.caption "Συνδέσεις αλληλογραφίας">
+<!ENTITY mailnewsTimeout.label "Λήξη χρονικού ορίου σύνδεσης:">
+<!ENTITY mailnewsTimeout.accesskey "ξ">
+<!ENTITY mailnewsTimeoutSeconds.label "δευτερόλεπτα">
+<!ENTITY Diskspace "Χώρος δίσκου">
+<!ENTITY offlineCompactFolders.label "Συμπίεση όλων των φακέλων όταν θα εξοικονομηθούν πάνω από">
+<!ENTITY offlineCompactFolders.accesskey "Σ">
+<!ENTITY offlineCompactFoldersMB.label "MB συνολικά">
diff --git a/l10n-el/suite/chrome/mailnews/pref/pref-receipts.dtd b/l10n-el/suite/chrome/mailnews/pref/pref-receipts.dtd
new file mode 100644
index 0000000000..6567298e6b
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/pref-receipts.dtd
@@ -0,0 +1,28 @@
+<!-- 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 pref-receipts.dtd: UI for Mail/News Return Receipts prefs -->
+<!ENTITY pref.receipts.title "Αποδεικτικά ανάγνωσης">
+<!ENTITY prefReceipts.caption "Αποδεικτικά ανάγνωσης">
+<!ENTITY requestReceipt.label "Κατά την αποστολή μηνυμάτων, να απαιτείται πάντα αποδεικτικό παραλαβής">
+<!ENTITY requestReceipt.accesskey "Κ">
+<!ENTITY receiptArrive.label "Κατά την παραλαβή αποδεικτού:">
+<!ENTITY leaveIt.label "Να παραμένει στα εισερχόμενά μου">
+<!ENTITY leaveIt.accesskey "Ν">
+<!ENTITY moveToSent.label "Να μεταφέρεται στον φάκελο &quot;Απεσταλμένα&quot;">
+<!ENTITY moveToSent.accesskey "μ">
+<!ENTITY requestMDN.label "Κατά τη λήψη αιτήματος για αποδεικτικό παραλαβής:">
+<!ENTITY returnSome.label "Να επιτρέπονται αποδεικτικά ανάγνωσης για ορισμένα μηνύματα">
+<!ENTITY returnSome.accesskey "Ν">
+<!ENTITY never.label "Να μην αποστέλλεται ποτέ αποδεικτικό παραλαβής">
+<!ENTITY never.accesskey "π">
+<!ENTITY notInToCc.label "Αν δεν είμαι στα πεδία Προς ή Κοιν. του μηνύματος:">
+<!ENTITY notInToCc.accesskey "Π">
+<!ENTITY outsideDomain.label "Aν ο αποστολέας είναι εκτός του τομέα μου:">
+<!ENTITY outsideDomain.accesskey "α">
+<!ENTITY otherCases.label "Σε όλες τις άλλες περιπτώσεις:">
+<!ENTITY otherCases.accesskey "ό">
+<!ENTITY askMe.label "Ερώτηση">
+<!ENTITY alwaysSend.label "Πάντα αποστολή">
+<!ENTITY neverSend.label "Ποτέ αποστολή">
diff --git a/l10n-el/suite/chrome/mailnews/pref/pref-tags.dtd b/l10n-el/suite/chrome/mailnews/pref/pref-tags.dtd
new file mode 100644
index 0000000000..e198e7b6ef
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/pref-tags.dtd
@@ -0,0 +1,20 @@
+<!-- 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 pref.tags.title "Ετικέτες">
+<!ENTITY pref.tags.caption "Προσαρμογή ετικετών">
+<!ENTITY pref.tags.description "Οι ετικέτες είναι χρήσιμες για τον ορισμό κατηγοριών και προτεραιότητας των μηνυμάτων σας. Αλλάξτε την εμφάνιση και τη σημασία των ετικετών με τις παρακάτω ρυθμίσεις. Οι ετικέτες κοντά στο πάνω μέρος είναι πιο σημαντικές από αυτές που βρίσκονται πιο κάτω.">
+<!ENTITY tagColumn.label "Ετικέτα">
+<!ENTITY colorColumn.label "Χρώμα">
+<!ENTITY defaultTagName.label "Ετικέτα χωρίς τίτλο">
+<!ENTITY addTagButton.label "Προσθήκη">
+<!ENTITY addTagButton.accesskey "Π">
+<!ENTITY deleteTagButton.label "Διαγραφή">
+<!ENTITY deleteTagButton.accesskey "Δ">
+<!ENTITY raiseTagButton.label "Αύξηση σημασίας">
+<!ENTITY raiseTagButton.accesskey "Α">
+<!ENTITY lowerTagButton.label "Μείωση σημασίας">
+<!ENTITY lowerTagButton.accesskey "Μ">
+<!ENTITY restoreButton.label "Επαναφορά προεπιλογών">
+<!ENTITY restoreButton.accesskey "ν">
diff --git a/l10n-el/suite/chrome/mailnews/pref/pref-viewing_messages.dtd b/l10n-el/suite/chrome/mailnews/pref/pref-viewing_messages.dtd
new file mode 100644
index 0000000000..ac232f7f75
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/pref-viewing_messages.dtd
@@ -0,0 +1,47 @@
+<!-- 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 pref.viewing.messages.title "Προβολή μηνύματος">
+<!ENTITY style.label "Στυλ:">
+<!ENTITY style.accesskey "Σ">
+<!ENTITY regular.label "Κανονικά">
+<!ENTITY bold.label "Έντονα">
+<!ENTITY italic.label "Πλάγια">
+<!ENTITY boldItalic.label "Έντονα πλάγια">
+<!ENTITY size.label "Μέγεθος:">
+<!ENTITY size.accesskey "θ">
+<!ENTITY bigger.label "Μεγαλύτερο">
+<!ENTITY smaller.label "Μικρότερο">
+<!ENTITY color.label "Χρώμα:">
+<!ENTITY color.accesskey "Χ">
+<!ENTITY displayPlainText.caption "Μηνύματα απλού κειμένου">
+<!ENTITY fontPlainText.label "Γραμματοσειρά:">
+<!ENTITY fontPlainText.accesskey "Γ">
+<!ENTITY displayQuoted.label "Ρυθμίσεις μηνυμάτων σε παράθεση:">
+<!ENTITY wrapInMsg.label "Αναδίπλωση κειμένου για προσαρμογή στο πλάτος του παραθύρου">
+<!ENTITY wrapInMsg.accesskey "Α">
+<!-- LOCALIZATION NOTE : (convertEmoticons.label) 'Emoticons' are also known as 'Smileys', e.g. :-) -->
+<!ENTITY convertEmoticons.label "Εμφάνιση emoticons ως γραφικών στοιχείων">
+<!ENTITY convertEmoticons.accesskey "Ε">
+<!ENTITY generalMessageDisplay.caption "Γενικά">
+<!ENTITY autoMarkAsRead.label "Αυτόματη επισήμανση μηνυμάτων ως αναγνωσμένων">
+<!ENTITY autoMarkAsRead.accesskey "Α">
+<!-- LOCALIZATION NOTE (markAsReadAfter.label): This will concatenate to
+ "Only after displaying for [___] seconds",
+ using (markAsReadAfter.label) and a number (secondsLabel.label). -->
+<!ENTITY markAsReadAfter.label "Μόνο μετά από προβολή για">
+<!ENTITY markAsReadAfter.accesskey "β">
+<!ENTITY secondsLabel.label "δευτερόλεπτα">
+
+<!ENTITY openingMessages.label "Κατά το άνοιγμα μηνυμάτων, προβολή σε:">
+<!ENTITY newWindowRadio.label "Νέο παράθυρο μηνύματος">
+<!ENTITY newWindowRadio.accesskey "ν">
+<!ENTITY existingWindowRadio.label "Υπάρχον παράθυρο μηνύματος">
+<!ENTITY existingWindowRadio.accesskey "χ">
+<!ENTITY disableContent.label "Φραγή εικόνων και άλλου περιεχομένου από απομακρυσμένες πηγές">
+<!ENTITY disableContent.accesskey "Φ">
+<!ENTITY showCondensedAddresses.label "Προβολή μόνο του εμφανιζόμενου ονόματος για άτομα του ευρετηρίου μου">
+<!ENTITY showCondensedAddresses.accesskey "ο">
+<!ENTITY closeMsgWindowOnDelete.label "Κλείσιμο παραθύρου μηνυμάτων κατά τη διαγραφή του μηνύματος">
+<!ENTITY closeMsgWindowOnDelete.accesskey "λ">
diff --git a/l10n-el/suite/chrome/mailnews/pref/prefs.properties b/l10n-el/suite/chrome/mailnews/pref/prefs.properties
new file mode 100644
index 0000000000..0e3d0e718c
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/prefs.properties
@@ -0,0 +1,90 @@
+# 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/.
+
+#
+# The following are used by the Account Wizard
+#
+enterValidEmail=Παρακαλώ εισάγετε μια έγκυρη διεύθυνση email.
+accountNameExists=Υπάρχει ήδη ένας λογαριασμός με αυτό το όνομα. Παρακαλώ εισάγετε ένα διαφορετικό όνομα λογαριασμού.
+accountNameEmpty=Το όνομα λογαριασμού δεν μπορεί να είναι κενό.
+modifiedAccountExists=Υπάρχει ήδη ένας λογαριασμός με αυτό το όνομα χρήστη και το όνομα διακομιστή. Επιλέξτε ένα διαφορετικό όνομα χρήστη ή/και διακομιστή.
+userNameChanged=Το όνομα χρήστη σας ενημερώθηκε. Ίσως χρειαστεί να ενημερώσετε τη διεύθυνση email και/ή το όνομα χρήστη που σχετίζεται με αυτό τον λογαριασμό.
+serverNameChanged=Η ρύθμιση ονόματος διακομιστή άλλαξε. Παρακαλώ βεβαιωθείτε ότι οι φάκελοι που χρησιμοποιούνται από φίλτρα υπάρχουν στον νέο διακομιστή.
+# LOCALIZATION NOTE (junkSettingsBroken): %1$S is the account name
+junkSettingsBroken=Ενδέχεται να υπάρχει πρόβλημα στις ρυθμίσεις ανεπιθύμητων του λογαριασμού "%1$S". Θέλετε να τις δείτε πριν αποθηκεύσετε τις ρυθμίσεις λογαριασμού;
+# LOCALIZATION NOTE (localDirectoryChanged): %1$S is program name (&brandShortName;)
+localDirectoryChanged=Το %1$S πρέπει να επανεκκινηθεί για την εφαρμογή της αλλαγής στη ρύθμιση τοπικού καταλόγου.
+localDirectoryRestart=Επανεκκίνηση
+userNameEmpty=Το όνομα χρήστη δεν μπορεί να είναι κενό.
+# LOCALIZATION NOTE (localDirectoryInvalid): %1$S is path to folder
+localDirectoryInvalid=Η διαδρομή του τοπικού καταλόγου "%1$S" δεν είναι έγκυρη. Παρακαλώ επιλέξτε έναν διαφορετικό κατάλογο.
+# LOCALIZATION NOTE (localDirectoryNotAllowed): %1$S is path to folder
+localDirectoryNotAllowed=Η διαδρομή του τοπικού καταλόγου "%1$S" δεν είναι κατάλληλη για αποθήκευση μηνυμάτων. Παρακαλώ επιλέξτε έναν διαφορετικό κατάλογο.
+# if the user chooses to cancel the wizard when no accounts are there throw a message
+# LOCALIZATION NOTE (cancelWizard)
+# do not localize "\n\n"
+cancelWizard=Θέλετε σίγουρα να κλείσετε το Βοηθό λογαριασμών;\n\nΑν τον κλείσετε, θα χαθούν όλες οι πληροφορίες που έχετε εισαγάγει και δεν θα δημιουργηθεί ο λογαριασμός.
+accountWizard=Βοηθός λογαριασμών
+WizardExit=Έξοδος
+WizardContinue=Ακύρωση
+# when the wizard already has a domain (Should we say something different?)
+enterValidServerName=Παρακαλούμε εισάγετε ένα έγκυρο όνομα διακομιστή.
+failedRemoveAccount=Αποτυχία αφαίρεσης λογαριασμού.
+#LOCALIZATION NOTE: accountName: %1$S is server name, %2$S is user name
+accountName=%1$S - %2$S
+
+# LOCALIZATION NOTE: confirmDeferAccountWarning: do not localize "\n\n", it means a new empty line in the string.
+confirmDeferAccountWarning=Αν αποθηκεύσετε τα νέα email αυτού του λογαριασμού στα εισερχόμενα ενός άλλου λογαριασμού, δεν θα έχετε πρόσβαση στα ήδη ληφθέντα email σας για αυτό τον λογαριασμό. Αν έχετε email σε αυτό τον λογαριασμό, παρακαλώ αντιγράψτε τα πρώτα σε άλλο λογαριασμό.\n\nΑν έχετε φίλτρα email σε αυτό τον λογαριασμό, θα πρέπει να τα απενεργοποιήσετε ή να αλλάξετε τον φάκελο προορισμού. Αν κάποιοι λογαριασμοί έχουν ειδικούς φακέλους σε αυτό τον λογαριασμό (Απεσταλμένα, Προσχέδια, Πρότυπα, Αρχειοθέτηση, Ανεπιθύμητα), θα πρέπει να τα μετακινήσετε σε άλλο λογαριασμό.\n\nΘέλετε ακόμα να αποθηκεύσετε τα email αυτού του λογαριασμού σε διαφορετικό λογαριασμό;
+confirmDeferAccountTitle=Μετάθεση λογαριασμού;
+
+directoryAlreadyUsedByOtherAccount=Ο κατάλογος της ρύθμισης τοπικού καταλόγου χρησιμοποιείται ήδη από τον λογαριασμό "%S". Παρακαλώ επιλέξτε έναν διαφορετικό κατάλογο.
+directoryParentUsedByOtherAccount=Ένας γονικός κατάλογος του καταλόγου που καθορίζεται στη ρύθμιση του τοπικού καταλόγου χρησιμοποιείται ήδη από τον λογαριασμό "%S". Παρακαλώ επιλέξτε έναν διαφορετικό κατάλογο.
+directoryChildUsedByOtherAccount=Ένας υποκατάλογος του καταλόγου που καθορίζεται στη ρύθμιση τοπικού καταλόγου χρησιμοποιείται ήδη από τον λογαριασμό "%S". Παρακαλώ επιλέξτε έναν διαφορετικό κατάλογο.
+#Provide default example values for sample email address
+exampleEmailUserName=χρήστης
+exampleEmailDomain=example.net
+emailFieldText=Διεύθυνση email:
+#LOCALIZATION NOTE: defaultEmailText: %1$S is user name, %2$S is domain
+defaultEmailText=Εισάγετε τη διεύθυνση email σας. Αυτή είναι η διεύθυνση που θα χρησιμοποιούν όσοι θέλουν να σας στείλουν email (για παράδειγμα, "%1$S@%2$S").
+#LOCALIZATION NOTE: customizedEmailText: %1$S is provider, %2$S is email username, %3$S is sample email, %4$S is sample username
+customizedEmailText=Εισάγετε το %1$S %2$S σας (για παράδειγμα, αν η %1$S διεύθυνση email σας είναι "%3$S", το %2$S σας είναι "%4$S").
+
+# account manager stuff
+prefPanel-server=Ρυθμίσεις διακομιστή
+prefPanel-copies=Αντίγραφα & φάκελοι
+prefPanel-synchronization=Συγχρονισμός & αποθήκευση
+prefPanel-diskspace=Χώρος δίσκου
+prefPanel-addressing=Σύνθεση & διευθυνσιοδότηση
+prefPanel-junk=Ρυθμίσεις ανεπιθύμητων
+## LOCALIZATION NOTE (prefPanel-smtp): Don't translate "SMTP"
+prefPanel-smtp=Διακομιστής εξερχομένων (SMTP)
+
+# account manager multiple identity support
+#LOCALIZATION NOTE: accountName: %1$S
+identity-list-title=Ταυτότητες για %1$S
+
+identityDialogTitleAdd=Νέα ταυτότητα
+## LOCALIZATION NOTE (identityDialogTitleEdit): %S is the identity name
+identityDialogTitleEdit=Επεξεργασία %S
+
+identity-edit-req=Πρέπει να ορίσετε μια έγκυρη διεύθυνση email για αυτή την ταυτότητα.
+identity-edit-req-title=Σφάλμα δημιουργίας ταυτότητας
+
+## LOCALIZATION NOTE (identity-delete-confirm): %S is the identity name
+# and should be put on a new line. The new line is produced with the "\n" string.
+identity-delete-confirm=Θέλετε σίγουρα να διαγράψετε την ταυτότητα\n %S;
+## LOCALIZATION NOTE (identity-delete-confirm-title): %S is the account name
+identity-delete-confirm-title=Διαγραφή ταυτότητας για %S
+identity-delete-confirm-button=Διαγραφή
+
+choosefile=Επιλογή αρχείου
+
+forAccount=Για τον λογαριασμό "%S"
+
+removeFromServerTitle=Επιβεβαίωση οριστικής, αυτόματης διαγραφής μηνυμάτων
+removeFromServer=Αυτή η ρύθμιση θα διαγράψει οριστικά τα παλιά μηνύματα από τον απομακρυσμένο διακομιστή ΚΑΙ τον τοπικό σας χώρο. Θέλετε σίγουρα να συνεχίσετε;
+
+confirmSyncChangesTitle=Επιβεβαίωση αλλαγών συγχρονισμού
+confirmSyncChanges=Οι ρυθμίσεις συγχρονισμού μηνυμάτων άλλαξαν.\n\nΘέλετε να τις αποθηκεύσετε;
+confirmSyncChangesDiscard=Απόρριψη
diff --git a/l10n-el/suite/chrome/mailnews/pref/removeAccount.dtd b/l10n-el/suite/chrome/mailnews/pref/removeAccount.dtd
new file mode 100644
index 0000000000..27ea487539
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/removeAccount.dtd
@@ -0,0 +1,22 @@
+<!-- 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 dialogTitle "Διαγραφή λογαριασμού και δεδομένων">
+<!ENTITY removeButton.label "Αφαίρεση">
+<!ENTITY removeButton.accesskey "Α">
+<!ENTITY removeAccount.label "Αφαίρεση πληροφοριών λογαριασμού">
+<!ENTITY removeAccount.accesskey "λ">
+<!ENTITY removeAccount.desc "Αφαιρεί μόνο τις πληροφορίες του &brandShortName; για αυτό τον λογαριασμό. Δεν επηρεάζει τον ίδιο τον λογαριασμό στον διακομιστή.">
+<!ENTITY removeData.label "Αφαίρεση δεδομένων μηνυμάτων">
+<!ENTITY removeData.accesskey "δ">
+<!ENTITY removeDataChat.label "Διαγραφή δεδομένων συζήτησης">
+<!ENTITY removeDataChat.accesskey "δ">
+<!ENTITY removeDataLocalAccount.desc "Διαγράφει όλα τα μηνύματα, τους φακέλους και τα φίλτρα που σχετίζονται με αυτό τον λογαριασμό από τον τοπικό σας δίσκο. Δεν επηρεάζει τα μηνύματα που υπάρχουν στον διακομιστή. Μην το επιλέξετε αν σκοπεύετε να αρχειοθετήσετε τα τοπικά δεδομένα ή να τα χρησιμοποιήσετε ξανά στο &brandShortName;.">
+<!ENTITY removeDataServerAccount.desc "Διαγράφει όλα τα μηνύματα, τους φακέλους και τα φίλτρα που σχετίζονται αυτό τον λογαριασμό από τον τοπικό σας δίσκο. Τα μηνύματα και οι φάκελοί σας θα διατηρηθούν στον διακομιστή.">
+<!ENTITY removeDataChatAccount.desc "Αφαιρεί όλα τα αρχεία συζητήσεων από τον τοπικό σας δίσκο για αυτό τον λογαριασμό.">
+<!ENTITY showData.label "Εμφάνιση τοποθεσίας δεδομένων">
+<!ENTITY showData.accesskey "Ε">
+<!ENTITY progressPending "Αφαίρεση επιλεγμένων δεδομένων…">
+<!ENTITY progressSuccess "Επιτυχής αφαίρεση.">
+<!ENTITY progressFailure "Αποτυχία αφαίρεσης.">
diff --git a/l10n-el/suite/chrome/mailnews/pref/removeAccount.properties b/l10n-el/suite/chrome/mailnews/pref/removeAccount.properties
new file mode 100644
index 0000000000..5a0eb0478c
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/removeAccount.properties
@@ -0,0 +1,5 @@
+# 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/.
+
+removeQuestion=Θέλετε σίγουρα να αφαιρέσετε το λογαριασμό "%S";
diff --git a/l10n-el/suite/chrome/mailnews/pref/replicationProgress.properties b/l10n-el/suite/chrome/mailnews/pref/replicationProgress.properties
new file mode 100644
index 0000000000..1303dca7d7
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/replicationProgress.properties
@@ -0,0 +1,20 @@
+# 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/.
+replicationStarted=Η αντιγραφή ξεκίνησε…
+changesStarted=Η εύρεση αλλαγών προς αντιγραφή ξεκίνησε…
+replicationSucceeded=Η αντιγραφή ολοκληρώθηκε επιτυχώς
+replicationFailed=Η αντιγραφή απέτυχε
+replicationCancelled=Η αντιγραφή ακυρώθηκε
+# LOCALIZATION NOTE
+# do not localize %S. %S is the current entry number (an integer)
+currentCount=Αντιγραφή καταχώρισης καταλόγου: %S
+
+downloadButton=Λήψη τώρα
+downloadButton.accesskey=Λ
+cancelDownloadButton=Ακύρωση λήψης
+cancelDownloadButton.accesskey=Α
+
+directoryTitleNew=Νέος κατάλογος LDAP
+## LOCALIZATION NOTE (directoryTitleEdit): %S will be replaced by the LDAP directory's display name
+directoryTitleEdit=Ιδιότητες %S
diff --git a/l10n-el/suite/chrome/mailnews/pref/smtpEditOverlay.dtd b/l10n-el/suite/chrome/mailnews/pref/smtpEditOverlay.dtd
new file mode 100644
index 0000000000..cad0dd7695
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/pref/smtpEditOverlay.dtd
@@ -0,0 +1,24 @@
+<!-- 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 settings.caption "Ρυθμίσεις">
+<!ENTITY security.caption "Ασφάλεια και έλεγχος ταυτότητας">
+<!ENTITY serverName.label "Όνομα διακομιστή:">
+<!ENTITY serverName.accesskey "δ">
+<!ENTITY serverDescription.label "Περιγραφή:">
+<!ENTITY serverDescription.accesskey "Π">
+<!ENTITY serverPort.label "Θύρα:">
+<!ENTITY serverPort.accesskey "Θ">
+<!ENTITY userName.label "Όνομα χρήστη:">
+<!ENTITY userName.accesskey "μ">
+<!ENTITY connectionSecurity.label "Ασφάλεια σύνδεσης:">
+<!ENTITY connectionSecurity.accesskey "φ">
+<!ENTITY connectionSecurityType-0.label "Καμία">
+<!ENTITY connectionSecurityType-1.label "STARTTLS, αν υπάρχει">
+<!ENTITY connectionSecurityType-2.label "STARTTLS">
+<!ENTITY connectionSecurityType-3.label "SSL/TLS">
+<!ENTITY smtpEditTitle.label "Διακομιστής SMTP">
+<!ENTITY serverPortDefault.label "Προεπιλογή:">
+<!ENTITY authMethod.label "Μέθοδος ταυτοποίησης:">
+<!ENTITY authMethod.accesskey "ο">
diff --git a/l10n-el/suite/chrome/mailnews/renameFolderDialog.dtd b/l10n-el/suite/chrome/mailnews/renameFolderDialog.dtd
new file mode 100644
index 0000000000..7b16f49700
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/renameFolderDialog.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 renameFolderDialog.title "Μετονομασία φακέλου">
+<!ENTITY rename.label "Εισάγετε το νέο όνομα του φακέλου σας:">
+<!ENTITY rename.accesskey "Ε">
+<!ENTITY accept.label "Μετονομασία">
+<!ENTITY accept.accesskey "Μ">
diff --git a/l10n-el/suite/chrome/mailnews/search-attributes.properties b/l10n-el/suite/chrome/mailnews/search-attributes.properties
new file mode 100644
index 0000000000..89c492f9f7
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/search-attributes.properties
@@ -0,0 +1,45 @@
+# 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/.
+
+#these need to match nsMsgSearchAttrib interface in nsMsgSearchCore.idl
+#and nsMsgSearchAttribMap in nsMsgSearchAdapter.cpp
+Subject=Θέμα
+From=Από
+Body=Κύριο μέρος
+Date=Ημερομηνία
+Priority=Προτεραιότητα
+Status=Κατάσταση
+To=Προς
+Cc=Κοιν.
+ToOrCc=Προς ή Κοιν.
+AgeInDays=Παλαιότητα σε ημέρες
+SizeKB=Μέγεθος (KB)
+Tags=Ετικέτες
+# for AB and LDAP
+AnyName=Οποιοδήποτε όνομα
+DisplayName=Εμφανιζόμενο όνομα
+Nickname=Ψευδώνυμο
+ScreenName=Εμφανιζόμενο όνομα
+Email=Email
+AdditionalEmail=Επιπρόσθετο email
+AnyNumber=Οποιοσδήποτε αριθμός
+WorkPhone=Τηλέφωνο εργασίας
+HomePhone=Τηλέφωνο οικίας
+Fax=Φαξ
+Pager=Βομβητής
+Mobile=Κινητό
+City=Πόλη
+Street=Οδός
+Title=Τίτλος
+Organization=Εταιρεία
+Department=Τμήμα
+# more mailnews
+FromToCcOrBcc=Από, Προς, Κοιν. ή Κρ. κοιν.
+JunkScoreOrigin=Προέλευση βαθμολογίας ανεπιθύμητου
+JunkPercent=Ποσοστό ανεπιθύμητου
+AttachmentStatus=Κατάσταση συνημμένου
+JunkStatus=Κατάσταση ανεπιθύμητων
+Label=Ετικέτα
+Customize=Προσαρμογή…
+MissingCustomTerm=Απουσία προσαρμοσμένου όρου
diff --git a/l10n-el/suite/chrome/mailnews/search-operators.properties b/l10n-el/suite/chrome/mailnews/search-operators.properties
new file mode 100644
index 0000000000..421a0eed7f
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/search-operators.properties
@@ -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/.
+
+0=περιέχει
+1=δεν περιέχει
+2=είναι
+3=δεν είναι
+4=είναι κενό
+
+5=είναι πριν από
+6=είναι μετά από
+
+7=είναι υψηλότερο από
+8=είναι χαμηλότερο από
+
+9=αρχίζει με
+10=τελειώνει με
+
+11=μοιάζει με
+12=LdapDwim
+
+13=είναι μεγαλύτερο από
+14=είναι μικρότερο από
+
+15=NameCompletion
+16=είναι στο ευρετήριο διευθύνσεων μου
+17=δεν είναι στο ευρετήριο διευθύνσεων μου
+18=δεν είναι κενό
+19=ταιριάζει
+20=δεν ταιριάζει
diff --git a/l10n-el/suite/chrome/mailnews/search.properties b/l10n-el/suite/chrome/mailnews/search.properties
new file mode 100644
index 0000000000..c0ba08ffe1
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/search.properties
@@ -0,0 +1,28 @@
+# 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/.
+
+# search and filter strings
+#
+# these are the fields that get inserted in the search line
+# for "and" searches, this looks like:
+#
+# searchAnd0 <attribute> searchAnd1 <operator> searchAnd2 <value> searchAnd4
+#
+# for example, in english this looks like:
+# and the [Sender ] [doesn't contain] [John]
+#
+# TODO: need to special-case the first line (filterindex==0)
+
+# filter stuff
+searchingMessage=Αναζήτηση…
+# LOCALIZATION NOTE (matchesFound): #1 number of matches found
+matchesFound=Βρέθηκε #1 αντιστοιχία;Βρέθηκαν #1 αντιστοιχίες
+noMatchesFound=Δεν βρέθηκαν αντιστοιχίες
+labelForStopButton=Διακοπή
+labelForSearchButton=Αναζήτηση
+labelForStopButton.accesskey=Δ
+labelForSearchButton.accesskey=Α
+
+moreButtonTooltipText=Προσθήκη νέου κανόνα
+lessButtonTooltipText=Αφαίρεση κανόνα
diff --git a/l10n-el/suite/chrome/mailnews/searchTermOverlay.dtd b/l10n-el/suite/chrome/mailnews/searchTermOverlay.dtd
new file mode 100644
index 0000000000..24bceefce3
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/searchTermOverlay.dtd
@@ -0,0 +1,18 @@
+<!-- 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 matchAll.label "Αντιστοίχιση όλων των παρακάτω">
+<!ENTITY matchAll.accesskey "Α">
+<!ENTITY matchAny.label "Αντιστοίχιση όλων των παρακάτω">
+<!ENTITY matchAny.accesskey "ν">
+<!ENTITY matchAllMsgs.label "Αντιστοίχιση όλων των μηνυμάτων">
+<!ENTITY matchAllMsgs.accesskey "τ">
+<!-- LOCALIZATION NOTE
+ The values below are used to control the widths of the search widgets.
+ Change the values only when the localized strings in the popup menus
+ are truncated in the widgets.
+ -->
+<!ENTITY searchTermListAttributesFlexValue "1">
+<!ENTITY searchTermListOperatorsFlexValue "1">
+<!ENTITY searchTermListValueFlexValue "3">
diff --git a/l10n-el/suite/chrome/mailnews/shutdownWindow.properties b/l10n-el/suite/chrome/mailnews/shutdownWindow.properties
new file mode 100644
index 0000000000..0f11b02b66
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/shutdownWindow.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/.
+
+
+# These strings are loaded and represented by the XUL dialog.
+shutdownDialogTitle=Παράθυρο προόδου τερματισμού
+taskProgress=Εκτέλεση %1$S από %2$S εργασίες
+
+# These strings are loaded by the individual shutdown tasks.
diff --git a/l10n-el/suite/chrome/mailnews/smime.properties b/l10n-el/suite/chrome/mailnews/smime.properties
new file mode 100644
index 0000000000..55e331e0b9
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/smime.properties
@@ -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/.
+
+#
+# The following are used by the smime content type handler
+#
+
+## @name NS_MSG_UNABLE_TO_OPEN_FILE
+## LOCALIZATION NOTE: the text can contain HTML tags.
+1000=Αυτό είναι ένα <B>ΚΡΥΠΤΟΓΡΑΦΗΜΕΝΟ</B> ή <B>ΥΠΟΓΕΓΡΑΜΜΕΝΟ</B> μήνυμα.<br> Αυτή η εφαρμογή αλληλογραφίας δεν υποστηρίζει κωδικοποιημένα ή υπογεγραμμένα email.
diff --git a/l10n-el/suite/chrome/mailnews/smime/am-smime.dtd b/l10n-el/suite/chrome/mailnews/smime/am-smime.dtd
new file mode 100644
index 0000000000..0f95160397
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/smime/am-smime.dtd
@@ -0,0 +1,37 @@
+<!-- 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 securityTitle.label "Ασφάλεια">
+<!ENTITY securityTab.label "Ασφάλεια">
+<!ENTITY securityHeading.label "Για αποστολή και λήψη υπογεγραμμένων ή κρυπτογραφημένων μηνυμάτων, θα πρέπει να ορίσετε ένα πιστοποιητικό ψηφιακής υπογραφής και ένα πιστοποιητικό κρυπτογράφησης.">
+<!ENTITY encryptionGroupTitle.label "Κρυπτογράφηση">
+<!ENTITY encryptionChoiceLabel.label "Προεπιλεγμένη ρύθμιση κρυπτογράφησης κατά την αποστολή μηνυμάτων:">
+<!ENTITY neverEncrypt.label "Ποτέ (χωρίς κρυπτογράφηση)">
+<!ENTITY neverEncrypt.accesskey "Π">
+<!ENTITY alwaysEncryptMessage.label "Απαιτείται (δεν γίνεται αποστολή αν δεν έχουν όλοι οι παραλήπτες πιστοποιητικό)">
+<!ENTITY alwaysEncryptMessage.accesskey "τ">
+<!ENTITY encryptionCert.message "Χρήση αυτού του πιστοποιητικού για κρυπτογράφηση &amp; αποκρυπτογράφηση ληφθέντων μηνυμάτων:">
+<!ENTITY digitalSign.certificate.button "Επιλογή…">
+<!ENTITY digitalSign.certificate.accesskey "Ε">
+<!ENTITY digitalSign.certificate_clear.button "Απαλοιφή">
+<!ENTITY digitalSign.certificate_clear.accesskey "Α">
+<!ENTITY encryption.certificate.button "Επιλογή…">
+<!ENTITY encryption.certificate.accesskey "γ">
+<!ENTITY encryption.certificate_clear.button "Απαλοιφή">
+<!ENTITY encryption.certificate_clear.accesskey "λ">
+<!ENTITY signingGroupTitle.label "Ψηφιακή υπογραφή">
+<!ENTITY signMessage.label "Ψηφιακή υπογραφή μηνυμάτων (από προεπιλογή)">
+<!ENTITY signMessage.accesskey "Ψ">
+<!ENTITY signingCert.message "Χρήση αυτού του πιστοποιητικού για ψηφιακή υπογραφή απεσταλμένων μηνυμάτων:">
+
+<!ENTITY certificates.label "Πιστοποιητικά">
+<!ENTITY manageCerts2.label "Διαχείριση πιστοποιητικών…">
+<!ENTITY manageCerts2.accesskey "Δ">
+<!ENTITY manageDevices.label "Διαχείριση συσκευών ασφαλείας…">
+<!ENTITY manageDevices.accesskey "χ">
+
+<!-- Strings for the cert picker dialog -->
+<!ENTITY certPicker.title "Επιλογή πιστοποιητικού">
+<!ENTITY certPicker.info "Πιστοποιητικό:">
+<!ENTITY certPicker.detailsLabel "Λεπτομέρειες επιλεγμένου πιστοποιητικού:">
diff --git a/l10n-el/suite/chrome/mailnews/smime/am-smime.properties b/l10n-el/suite/chrome/mailnews/smime/am-smime.properties
new file mode 100644
index 0000000000..df81548f2a
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/smime/am-smime.properties
@@ -0,0 +1,41 @@
+# 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/.
+
+## S/MIME error strings.
+## Note to localization: %S is a placeholder
+NoSenderSigningCert=Ζητήσατε να υπογραφεί ψηφιακά αυτό το μήνυμα, αλλά η εφαρμογή είτε δεν μπόρεσε να βρει το πιστοποιητικό υπογραφής που ορίσατε στις ρυθμίσεις λογαριασμού αλληλογραφίας & ομάδων συζήτησης, είτε το πιστοποιητικό έχει λήξει.
+NoSenderEncryptionCert=Ορίσατε κρυπτογράφηση για αυτό το μήνυμα, αλλά η εφαρμογή είτε δεν μπόρεσε να βρει το καθορισμένο πιστοποιητικό κρυπτογράφησης από τις ρυθμίσεις λογαριασμού αλληλογραφίας & ομάδων συζητήσεων, είτε το πιστοποιητικό έχει λήξει.
+MissingRecipientEncryptionCert=Ορίσατε κρυπτογράφηση για αυτό το μήνυμα, αλλά η εφαρμογή απέτυχε να βρει πιστοποιητικό κρυπτογράφησης για το %S.
+ErrorEncryptMail=Αδυναμία κρυπτογράφησης μηνύματος. Παρακαλώ ελέγξτε ότι έχετε έγκυρο πιστοποιητικό email για κάθε παραλήπτη. Βεβαιωθείτε επίσης ότι τα καθορισμένα πιστοποιητικά στις ρυθμίσεις λογαριασμού αλληλογραφίας & συζήτησης είναι έγκυρα και αξιόπιστα.
+ErrorCanNotSignMail=Αδυναμία υπογραφής μηνύματος. Παρακαλώ ελέγξτε αν τα καθορισμένα πιστοποιητικά στις ρυθμίσεις λογαριασμού αλληλογραφίας και συζήτησης είναι έγκυρα και αξιόπιστα.
+
+## Strings used for in the prefs.
+prefPanel-smime=Ασφάλεια
+NoSigningCert=Η Διαχείριση πιστοποιητικών δεν μπορεί να βρει έγκυρο πιστοποιητικό για την ψηφιακή υπογραφή των μηνυμάτων σας.
+NoSigningCertForThisAddress=Η Διαχείριση πιστοποιητικών δεν μπορεί να βρει ένα έγκυρο πιστοποιητικό για την ψηφιακή υπογραφή των μηνυμάτων σας με τη διεύθυνση <%S>.
+NoEncryptionCert=Η Διαχείριση Πιστοποιητικών δεν μπορεί να βρει ένα έγκυρο πιστοποιητικό ώστε να μπορούν άλλοι να σας στείλουν κρυπτογραφημένα email.
+NoEncryptionCertForThisAddress=Η Διαχείριση πιστοποιητικών δεν μπορεί να βρει ένα έγκυρο πιστοποιητικό που μπορούν να χρησιμοποιήσουν άλλα άτομα για να σας στείλουν κρυπτογραφημένα email στη διεύθυνση <%S>.
+
+encryption_needCertWantSame=Θα πρέπει επίσης να καθορίσετε ένα πιστοποιητικό που θα χρησιμοποιούν άλλα άτομα, όταν σας στέλνουν κρυπτογραφημένα μηνύματα. Θέλετε να χρησιμοποιήσετε το ίδιο πιστοποιητικό για κρυπτογράφηση & αποκρυπτογράφηση εισερχόμενων μηνυμάτων;
+encryption_wantSame=Θέλετε να χρησιμοποιήσετε το ίδιο πιστοποιητικό για κρυπτογράφηση και αποκρυπτογράφηση εισερχόμενων μηνυμάτων;
+encryption_needCertWantToSelect=Θα πρέπει επίσης να ορίσετε ένα πιστοποιητικό που θα χρησιμοποιούν οι άλλοι χρήστες όταν θα σάς στέλνουν κρυπτογραφημένα μηνύματα. Θέλετε να ρυθμίσετε ένα πιστοποιητικό κρυπτογράφησης τώρα;
+signing_needCertWantSame=Θα πρέπει επίσης να ορίσετε ένα πιστοποιητικό για την ψηφιακή υπογραφή των μηνυμάτων σας. Θέλετε να χρησιμοποιήσετε το ίδιο πιστοποιητικό για την ψηφιακή υπογραφή των μηνυμάτων σας;
+signing_wantSame=Θέλετε να χρησιμοποιήσετε το ίδιο πιστοποιητικό για ψηφιακή υπογραφή των μηνυμάτων σας;
+signing_needCertWantToSelect=Θα πρέπει επίσης να ορίσετε ένα πιστοποιητικό για χρήση στην ψηφιακή υπογραφή των μηνυμάτων σας. Θέλετε να ρυθμίσετε τώρα ένα πιστοποιητικό για την ψηφιακή υπογραφή μηνυμάτων;
+
+## Strings used by nsMsgComposeSecure
+mime_smimeEncryptedContentDesc=Κρυπτογραφημένο μήνυμα S/MIME
+mime_smimeSignatureContentDesc=Κρυπτογραφημένη υπογραφή S/MIME
+
+## Strings used by the cert picker.
+CertInfoIssuedFor=Εκδόθηκε για:
+CertInfoIssuedBy=Εκδόθηκε από:
+CertInfoValid=Έγκυρο
+CertInfoFrom=από
+CertInfoTo=έως
+CertInfoPurposes=Σκοποί
+CertInfoEmail=Email
+CertInfoStoredIn=Αποθηκεύτηκε σε:
+NicknameExpired=(έληξε)
+NicknameNotYetValid=(δεν είναι ακόμα έγκυρο)
diff --git a/l10n-el/suite/chrome/mailnews/smime/certFetchingStatus.dtd b/l10n-el/suite/chrome/mailnews/smime/certFetchingStatus.dtd
new file mode 100644
index 0000000000..fdf65fe0ae
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/smime/certFetchingStatus.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/. -->
+
+<!--LOCALIZATION NOTE shown while obtaining certificates from a directory -->
+
+<!ENTITY title.label "Λήψη πιστοποιητικών">
+<!ENTITY info.message "Αναζήτηση του καταλόγου για πιστοποιητικά παραληπτών. Μπορεί να διαρκέσει μερικά λεπτά.">
+<!ENTITY stop.label "Διακοπή αναζήτησης">
diff --git a/l10n-el/suite/chrome/mailnews/smime/msgCompSMIMEOverlay.dtd b/l10n-el/suite/chrome/mailnews/smime/msgCompSMIMEOverlay.dtd
new file mode 100644
index 0000000000..dfcd136f16
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/smime/msgCompSMIMEOverlay.dtd
@@ -0,0 +1,20 @@
+<!-- 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 msgCompSMIMEOverlay.dtd UI for s/mime hooks in message composition -->
+
+<!ENTITY menu_securityEncryptRequire.label "Κρυπτογράφηση μηνύματος">
+<!ENTITY menu_securityEncryptRequire.accesskey "Κ">
+
+<!ENTITY menu_securitySign.label "Ψηφιακή υπογραφή μηνύματος">
+<!ENTITY menu_securitySign.accesskey "Ψ">
+
+<!ENTITY menu_securityStatus.label "Προβολή πληροφοριών ασφάλειας">
+<!ENTITY menu_securityStatus.accesskey "Π">
+
+<!ENTITY securityButton.label "Ασφάλεια">
+<!ENTITY securityButton.tooltip "Προβολή ή αλλαγή ρυθμίσεων ασφαλείας">
+
+<!ENTITY menu_viewSecurityStatus.label "Πληροφορίες ασφάλειας μηνύματος">
+<!ENTITY menu_viewSecurityStatus.accesskey "Π">
diff --git a/l10n-el/suite/chrome/mailnews/smime/msgCompSMIMEOverlay.properties b/l10n-el/suite/chrome/mailnews/smime/msgCompSMIMEOverlay.properties
new file mode 100644
index 0000000000..420263cc62
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/smime/msgCompSMIMEOverlay.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/.
+
+## S/MIME mail compose window error strings.
+NeedSetup=Πρέπει να ρυθμίσετε ένα ή περισσότερα προσωπικά πιστοποιητικά πριν τη χρήση αυτής της λειτουργίας ασφάλειας. Θέλετε να μάθετε τώρα πώς να το κάνετε αυτό;
diff --git a/l10n-el/suite/chrome/mailnews/smime/msgCompSecurityInfo.dtd b/l10n-el/suite/chrome/mailnews/smime/msgCompSecurityInfo.dtd
new file mode 100644
index 0000000000..3c03662a09
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/smime/msgCompSecurityInfo.dtd
@@ -0,0 +1,18 @@
+<!-- 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 msgCompSecurityInfo.dtd UI for viewing security status when composing a message -->
+
+<!ENTITY title.label "Ασφάλεια μηνύματος">
+<!ENTITY subject.plaintextWarning "Σημείωση: οι γραμμές θέματος των μηνυμάτων email δεν κρυπτογραφούνται ποτέ.">
+<!ENTITY status.heading "Το περιεχόμενο του μηνύματός σας θα αποσταλεί ως εξής:">
+<!ENTITY status.signed "Ψηφιακή υπογραφή:">
+<!ENTITY status.encrypted "Κρυπτογράφηση:">
+<!ENTITY status.certificates "Πιστοποιητικά:">
+<!ENTITY view.label "Προβολή">
+<!ENTITY view.accesskey "Π">
+<!ENTITY tree.recipient "Παραλήπτης">
+<!ENTITY tree.status "Κατάσταση">
+<!ENTITY tree.issuedDate "Έκδοση">
+<!ENTITY tree.expiresDate "Λήξη">
diff --git a/l10n-el/suite/chrome/mailnews/smime/msgCompSecurityInfo.properties b/l10n-el/suite/chrome/mailnews/smime/msgCompSecurityInfo.properties
new file mode 100644
index 0000000000..05547bec3c
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/smime/msgCompSecurityInfo.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/.
+
+StatusNotFound=Δεν βρέθηκε
+StatusValid=Έγκυρο
+StatusExpired=Έληξε
+StatusUntrusted=Μη έμπιστο
+StatusRevoked=Ανακλήθηκε
+StatusInvalid=Μη έγκυρο
+StatusYes=Ναι
+StatusNo=Όχι
+StatusNotPossible=Αδύνατο
diff --git a/l10n-el/suite/chrome/mailnews/smime/msgReadSMIMEOverlay.dtd b/l10n-el/suite/chrome/mailnews/smime/msgReadSMIMEOverlay.dtd
new file mode 100644
index 0000000000..708350f4b2
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/smime/msgReadSMIMEOverlay.dtd
@@ -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/. -->
+
+<!--LOCALIZATION NOTE msgReadSMIMEOverlay.dtd UI for s/mime hooks in message reading -->
+
+<!ENTITY menu_securityStatus.label "Πληροφορίες ασφάλειας μηνύματος">
+<!ENTITY menu_securityStatus.accesskey "Π">
diff --git a/l10n-el/suite/chrome/mailnews/smime/msgReadSMIMEOverlay.properties b/l10n-el/suite/chrome/mailnews/smime/msgReadSMIMEOverlay.properties
new file mode 100644
index 0000000000..2bad5efd68
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/smime/msgReadSMIMEOverlay.properties
@@ -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/.
+
+ImapOnDemand=Το παρόν μήνυμα έχει υπογραφεί ψηφιακά, αλλά δεν έχουν ληφθεί ακόμα όλα τα συνημμένα του. Για το λόγο αυτό, δεν είναι δυνατή η επικύρωση της υπογραφής. Κάντε κλικ στο ΟΚ για λήψη του πλήρους μηνύματος και επαλήθευση της υπογραφής.
+#
+#NOTE To translater, anything between %..% and <..> should not be translated.
+# the former will be replaced by java script, and the latter is HTML formatting.
+#
+CantDecryptTitle=Το %brand% δεν μπορεί να αποκρυπτογραφήσει αυτό το μήνυμα
+CantDecryptBody=Ο αποστολέας κρυπτογράφησε το μήνυμα με κάποιο από τα ψηφιακά πιστοποιητικά σας, αλλά το %brand% δεν μπόρεσε να βρει αυτό το πιστοποιητικό και το αντίστοιχο ιδιωτικό κλειδί. <br>Πιθανές λύσεις: <br><ul><li>Αν διαθέτετε μια έξυπνη κάρτα, παρακαλούμε κάντε εισαγωγή τώρα. <li>Αν χρησιμοποιείτε μια νέα συσκευή, ή ένα νέο προφίλ στο %brand%, θα πρέπει να ανακτήσετε το πιστοποιητικό και το ιδιωτικό κλειδί σας από ένα αντίγραφο ασφαλείας. Τα αντίγραφα ασφαλείας πιστοποιητικών συνήθως τελειώνουν σε ".p12".</ul>
diff --git a/l10n-el/suite/chrome/mailnews/smime/msgReadSecurityInfo.dtd b/l10n-el/suite/chrome/mailnews/smime/msgReadSecurityInfo.dtd
new file mode 100644
index 0000000000..43cd4ea236
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/smime/msgReadSecurityInfo.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/. -->
+
+<!--LOCALIZATION NOTE msgReadSecurityInfo.dtd UI for viewing security status when reading a received message -->
+
+<!ENTITY status.label "Ασφάλεια μηνύματος">
+<!ENTITY signatureCert.label "Προβολή πιστοποιητικού υπογραφής">
+<!ENTITY encryptionCert.label "Προβολή πιστοποιητικού κρυπτογράφησης">
+
+<!ENTITY signer.name "Υπογράφηκε από:">
+<!ENTITY recipient.name "Κρυπτογραφήθηκε για:">
+<!ENTITY email.address "Διεύθυνση email:">
+<!ENTITY issuer.name "Έκδοση πιστοποιητικού από:">
diff --git a/l10n-el/suite/chrome/mailnews/smime/msgSecurityInfo.properties b/l10n-el/suite/chrome/mailnews/smime/msgSecurityInfo.properties
new file mode 100644
index 0000000000..3420114872
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/smime/msgSecurityInfo.properties
@@ -0,0 +1,44 @@
+# 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/.
+
+## Signature Information strings
+SINoneLabel=Το μήνυμα δεν έχει ψηφιακή υπογραφή
+SINone=Αυτό το μήνυμα δεν περιέχει την ψηφιακή υπογραφή του αποστολέα. Η απουσία ψηφιακής υπογραφής σημαίνει ότι το μήνυμα μπορεί να έχει σταλεί από κάποιον που προσποιείται ότι έχει αυτή τη διεύθυνση email. Επίσης, ενδέχεται να έχει αλλοιωθεί το μήνυμα κατά την μεταβίβαση στο δίκτυο. Ωστόσο, είναι μάλλον απίθανο να έχει συμβεί κάτι από αυτά τα δύο.
+
+SIValidLabel=Το μήνυμα είναι υπογεγραμμένο
+SIValid=Το μήνυμα περιέχει μια έγκυρη ψηφιακή υπογραφή. Το μήνυμα δεν αλλοιώθηκε μετά την αποστολή του.
+
+SIInvalidLabel=Η ψηφιακή υπογραφή δεν είναι έγκυρη
+SIInvalidHeader=Το μήνυμα περιέχει μια ψηφιακή υπογραφή, αλλά δεν είναι έγκυρη.
+
+SIContentAltered=Η υπογραφή δεν ταιριάζει με τα περιεχόμενα του μηνύματος. Φαίνεται ότι το μήνυμα έχει αλλοιωθεί μετά την υπογραφή του από τον αποστολέα. Δεν θα πρέπει να εμπιστευθείτε τα περιεχόμενα του μηνύματος μέχρι να επιβεβαιώσετε το περιεχόμενό του με τον αποστολέα.
+SIExpired=Το πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος φαίνεται να έχει λήξει. Βεβαιωθείτε ότι η ώρα του υπολογιστή σας είναι ρυθμισμένη σωστά.
+SIRevoked=Η πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος έχει ανακληθεί. Δεν θα πρέπει να εμπιστευτείτε την εγκυρότητα αυτού του μηνύματος μέχρι να επαληθεύσετε το περιεχόμενο του με τον αποστολέα.
+SINotYetValid=Το πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος δεν είναι ακόμα έγκυρο. Βεβαιωθείτε ότι το ρολόι του υπολογιστή σας είναι σωστά ρυθμισμένο.
+SIUnknownCA=Το πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος εκδόθηκε από μια άγνωστη αρχή πιστοποιητικών.
+SIUntrustedCA=Το πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος έχει εκδοθεί από αρχή πιστοποιητικών που δεν εμπιστεύεστε για την έκδοση τέτοιων πιστοποιητικών.
+SIExpiredCA=Το πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος έχει εκδοθεί από μια αρχή πιστοποιητικών, της οποίας το πιστοποιητικό έχει λήξει. Βεβαιωθείτε ότι το ρολόι του υπολογιστή σας είναι σωστά ρυθμισμένο.
+SIRevokedCA=Το πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος έχει εκδοθεί από μια αρχή πιστοποιητικών, της οποίας το πιστοποιητικό έχει ανακληθεί. Δεν θα πρέπει να εμπιστευθείτε τα περιεχόμενα του μηνύματος μέχρι να επιβεβαιώσετε το περιεχόμενό του με τον αποστολέα.
+SINotYetValidCA=Το πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος έχει εκδοθεί από μια αρχή πιστοποιητικών, της οποίας το πιστοποιητικό δεν είναι ακόμα έγκυρο. Βεβαιωθείτε ότι το ρολόι του υπολογιστή σας είναι σωστά ρυθμισμένο.
+SIInvalidCipher=Το μήνυμα έχει υπογραφεί με κρυπτογράφηση που δεν υποστηρίζεται από την έκδοση του λογισμικού σας.
+SIClueless=Υπάρχουν άγνωστα προβλήματα με αυτήν την ψηφιακή υπογραφή. Δεν πρέπει να εμπιστευθείτε την εγκυρότητα του μηνύματος μέχρι να επιβεβαιώσετε τα περιεχόμενα του με τον αποστολέα.
+
+SIPartiallyValidLabel=Το μήνυμα είναι υπογεγραμμένο
+SIPartiallyValidHeader=Αν και η ψηφιακή υπογραφή είναι έγκυρη, δεν είναι σίγουρο ότι ο αποστολέας και ο υπογράφων είναι το ίδιο άτομο.
+
+SIHeaderMismatch=Η διεύθυνση email στο πιστοποιητικό του υπογράφοντα είναι διαφορετική από τη διεύθυνση email απ' όπου στάλθηκε το μήνυμα. Παρακαλώ κοιτάξτε τις λεπτομέρειες του πιστοποιητικού υπογραφής για να μάθετε ποιος υπέγραψε το μήνυμα.
+SICertWithoutAddress=Το πιστοποιητικό που χρησιμοποιήθηκε για την υπογραφή του μηνύματος δεν περιέχει διεύθυνση email. Παρακαλώ ελέγξτε τις λεπτομέρειες του πιστοποιητικού υπογραφής για να μάθετε ποιος υπέγραψε το μήνυμα.
+
+## Encryption Information strings
+EINoneLabel2=Το μήνυμα δεν είναι κρυπτογραφημένο
+EINone=Αυτό το μήνυμα δεν κρυπτογραφήθηκε πριν αποσταλεί σε εσάς. Οι πληροφορίες που αποστέλλονται μέσω διαδικτύου χωρίς κρυπτογράφηση μπορούν να προβληθούν άλλα άτομα κατά τη μεταφορά.
+
+EIValidLabel=Το μήνυμα είναι κρυπτογραφημένο
+EIValid=Αυτό το μήνυμα κρυπτογραφήθηκε πριν αποσταλεί σε εσάς. Η κρυπτογράφηση δυσκολεύει την ανάγνωση πληροφοριών από άλλα άτομα καθώς μεταφέρονται στο δίκτυο.
+
+EIInvalidLabel=Το μήνυμα δεν μπορεί να αποκρυπτογραφηθεί
+EIInvalidHeader=Αυτό το μήνυμα κρυπτογραφήθηκε πριν αποσταλεί σε εσάς, αλλά δεν μπορεί να αποκρυπτογραφηθεί.
+
+EIContentAltered=Το περιεχόμενο του μηνύματος φαίνεται να άλλαξε κατά τη μεταφορά.
+EIClueless=Υπάρχουν άγνωστα προβλήματα με αυτό το κρυπτογραφημένο μήνυμα.
diff --git a/l10n-el/suite/chrome/mailnews/start.dtd b/l10n-el/suite/chrome/mailnews/start.dtd
new file mode 100644
index 0000000000..f934b70f32
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/start.dtd
@@ -0,0 +1,34 @@
+<!-- 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 startpage.title 'Καλώς ορίσατε στην ενότητα "Αλληλογραφία &amp; ομάδες συζητήσεων" του &brandShortName;'>
+<!--# LOCALIZATION NOTE (headline.label): the URL for <a id="vendorURL"> is fetched from brand.properties -->
+<!ENTITY headline.label
+'Καλώς ορίσατε στην ενότητα "Αλληλογραφία &amp; ομάδες συζητήσεων" του <a id="vendorURL" href="">&brandShortName;</a>!'>
+<!ENTITY description.label
+"Το &brandShortName; είναι μια ισχυρή εφαρμογή email και συζητήσεων ανοικτού κώδικα,
+με προηγμένη ανίχνευση ανεπιθύμητων email και άλλες χρήσιμες λειτουργίες.">
+<!ENTITY features.title "Χαρακτηριστικά">
+<!ENTITY feat_multiacc.label "Υποστήριξη πολλαπλών λογαριασμών">
+<!ENTITY feat_junk.label "Ανίχνευση ανεπιθύμητων email">
+<!ENTITY feat_feeds.label "Ανάγνωση ροών">
+<!ENTITY feat_filters.label "Φίλτρα μηνυμάτων">
+<!ENTITY feat_htmlmsg.label "Υποστήριξη μηνυμάτων HTML">
+<!ENTITY feat_abook.label "Ευρετήριο">
+<!ENTITY feat_tags.label "Προσαρμόσιμες ετικέτες και προβολές email">
+<!ENTITY feat_integration.label
+"Βαθιά ενσωμάτωση με τη σουίτα εφαρμογών &brandShortName;">
+<!ENTITY dict.title "Λεξικά">
+<!ENTITY dict_intro.label "Τα λεξικά χρησιμοποιούνται για τον ορθογραφικό έλεγχο των μηνυμάτων σας.">
+<!--# LOCALIZATION NOTE (dict_info.label): the URL for <a id="dictURL"> is fetched from brand.properties -->
+<!ENTITY dict_info.label2
+'Μπορείτε να εγκαταστήσετε ακόμη περισσότερες γλώσσες από την
+ενότητα <a id="dictURL" href="">λεξικών</a> στα
+<a href="https://addons.thunderbird.net/seamonkey/">Πρόσθετα SeaMonkey και Thunderbird</a>.'>
+<!ENTITY info.title "Περισσότερες πληροφορίες">
+<!--# LOCALIZATION NOTE (info_bugs.label): the URL for <a id="releaseNotesURL"> is fetched from brand.properties -->
+<!ENTITY info_bugs.label
+'<a href="https://developer.mozilla.org/docs/Mozilla/Projects/MailNews">Δεχόμαστε</a> αναφορές σφαλμάτων και αιτήματα
+λειτουργιών, αλλά παρακαλούμε διαβάστε τις <a id="releaseNotesURL" href="">σημειώσεις έκδοσης</a> και ανατρέξτε
+πρώτα στο <a href="https://bugzilla.mozilla.org/query.cgi">Bugzilla</a>.'>
diff --git a/l10n-el/suite/chrome/mailnews/subscribe.dtd b/l10n-el/suite/chrome/mailnews/subscribe.dtd
new file mode 100644
index 0000000000..3e19fd367d
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/subscribe.dtd
@@ -0,0 +1,22 @@
+<!-- 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 subscribeDialog.title "Συνδρομή">
+<!ENTITY subscribeButton.label "Συνδρομή">
+<!ENTITY subscribeButton.accesskey "Σ">
+<!ENTITY unsubscribeButton.label "Κατάργηση συνδρομής">
+<!ENTITY unsubscribeButton.accesskey "Κ">
+<!ENTITY newGroupsTab.label "Νέες ομάδες">
+<!ENTITY newGroupsTab.accesskey "Ν">
+<!ENTITY refreshButton.label "Ανανέωση">
+<!ENTITY refreshButton.accesskey "Α">
+<!ENTITY stopButton.label "Διακοπή">
+<!ENTITY stopButton.accesskey "Δ">
+<!ENTITY server.label "Λογαριασμός:">
+<!ENTITY server.accesskey "Λ">
+<!ENTITY subscribedHeader.label "Συνδρομή">
+<!-- commenting out until bug 38906 is fixed
+<!ENTITY messagesHeader.label "Messages"> -->
+<!ENTITY namefield.label "Εμφάνιση στοιχείων που περιέχουν:">
+<!ENTITY namefield.accesskey "φ">
diff --git a/l10n-el/suite/chrome/mailnews/subscribe.properties b/l10n-el/suite/chrome/mailnews/subscribe.properties
new file mode 100644
index 0000000000..908a652596
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/subscribe.properties
@@ -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/.
+columnHeader-nntp=Όνομα ομάδας συζήτησης
+columnHeader-imap=Όνομα φακέλου
+subscribeLabel-nntp=Επιλέξτε ομάδες συζήτησης για εγγραφή:
+subscribeLabel-imap=Επιλέξτε φακέλους για εγγραφή:
+currentListTab-nntp.label=Τρέχουσα λίστα ομάδων
+currentListTab-nntp.accesskey=Τ
+currentListTab-imap.label=Λίστα φακέλων
+currentListTab-imap.accesskey=Λ
+pleaseWaitString=Παρακαλώ περιμένετε…
+offlineState=Είστε εκτός σύνδεσης. Δεν ήταν δυνατή η ανάκτηση στοιχείων από τον διακομιστή.
+errorPopulating=Σφάλμα ανάκτησης στοιχείων από τον διακομιστή.
diff --git a/l10n-el/suite/chrome/mailnews/tabmail.properties b/l10n-el/suite/chrome/mailnews/tabmail.properties
new file mode 100644
index 0000000000..071b242e5b
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/tabmail.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/.
+
+tabs.closeWarningTitleAll=Επιβεβαίωση κλεισίματος
+# LOCALIZATION NOTE (tabs.closeWarningAll):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# The singular form is not considered since this string is used only for
+# multiple tabs.
+tabs.closeWarningAll=;Αυτό το παράθυρο μηνυμάτων έχει #1 ανοικτές καρτέλες. Θέλετε να το κλείσετε μαζί με τις καρτέλες του;
+tabs.closeButtonAll=Κλείσιμο όλων των καρτελών
+tabs.closeWarningPromptMeAll=Προειδοποίηση κατά το κλείσιμο πολλαπλών καρτελών
diff --git a/l10n-el/suite/chrome/mailnews/textImportMsgs.properties b/l10n-el/suite/chrome/mailnews/textImportMsgs.properties
new file mode 100644
index 0000000000..792470728c
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/textImportMsgs.properties
@@ -0,0 +1,43 @@
+# 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/.
+
+#
+# The following are used by the outlook express import code to display status/error
+# and informational messages
+#
+
+# Short name of import module
+## @name TEXTIMPORT_NAME
+## @loc None
+2000=Αρχείο κειμένου (LDIF, .tab, .csv, .txt)
+
+# Description of import module
+## @name TEXTIMPORT_DESCRIPTION
+## @loc None
+2001=Εισαγωγή ευρετηρίου από αρχείο κειμένου, όπως: αρχεία μορφής LDIF (.ldif, .ldi), αρχεία διαχωρισμού με καρτέλες (.tab, .txt) ή αρχεία διαχωρισμού με κόμματα (.csv).
+
+# Description of import module
+## @name TEXTIMPORT_ADDRESS_NAME
+## @loc None
+2002=Ευρετήριο διευθύνσεων κειμένου
+
+# Description
+## @name TEXTIMPORT_ADDRESS_SUCCESS
+## @loc None
+2003=Έγινε εισαγωγή του ευρετηρίου %S
+
+# Error message
+## @name TEXTIMPORT_ADDRESS_BADPARAM
+## @loc None
+2004=Λανθασμένη παράμετρος στην εισαγωγή ευρετηρίου.
+
+# Error message
+## @name TEXTIMPORT_ADDRESS_BADSOURCEFILE
+## @loc None
+2005=Σφάλμα πρόσβασης αρχείου για το ευρετήριο %S.
+
+# Error message
+## @name TEXTIMPORT_ADDRESS_CONVERTERROR
+## @loc None
+2006=Σφάλμα εισαγωγής ευρετηρίου %S, ενδέχεται να μην έχουν εισαχθεί όλες οι διευθύνσεις.
diff --git a/l10n-el/suite/chrome/mailnews/threadpane.dtd b/l10n-el/suite/chrome/mailnews/threadpane.dtd
new file mode 100644
index 0000000000..679ca7cc5b
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/threadpane.dtd
@@ -0,0 +1,45 @@
+<!-- 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 threadColumn.label "Νήμα">
+<!ENTITY fromColumn.label "Από">
+<!ENTITY recipientColumn.label "Παραλήπτης">
+<!ENTITY attachmentColumn.label "Συνημμένα">
+<!ENTITY subjectColumn.label "Θέμα">
+<!ENTITY dateColumn.label "Ημερομηνία">
+<!ENTITY priorityColumn.label "Προτεραιότητα">
+<!ENTITY tagsColumn.label "Ετικέτες">
+<!ENTITY accountColumn.label "Λογαριασμός">
+<!ENTITY statusColumn.label "Κατάσταση">
+<!ENTITY sizeColumn.label "Μέγεθος">
+<!ENTITY junkStatusColumn.label "Κατάσταση ανεπιθύμητων">
+<!ENTITY unreadColumn.label "Μη αναγνωσμένα στο νήμα">
+<!ENTITY totalColumn.label "Συνολικά στο νήμα">
+<!ENTITY readColumn.label "Αναγνωσμένα">
+<!ENTITY receivedColumn.label "Ληφθέντα">
+<!ENTITY flagColumn.label "Σημαία">
+<!ENTITY locationColumn.label "Τοποθεσία">
+<!ENTITY idColumn.label "Σειρά παραλαβής">
+
+<!--Tooltips-->
+<!ENTITY columnChooser2.tooltip "Επιλογή στηλών για εμφάνιση">
+<!ENTITY threadColumn2.tooltip "Προβολή νημάτων μηνυμάτων">
+<!ENTITY fromColumn2.tooltip "Ταξινόμηση κατά αποστολέα">
+<!ENTITY recipientColumn2.tooltip "Ταξινόμηση κατά παραλήπτη">
+<!ENTITY attachmentColumn2.tooltip "Ταξινόμηση κατά συνημμένα">
+<!ENTITY subjectColumn2.tooltip "Ταξινόμηση κατά θέμα">
+<!ENTITY dateColumn2.tooltip "Ταξινόμηση κατά ημερομηνία">
+<!ENTITY priorityColumn2.tooltip "Ταξινόμηση κατά προτεραιότητα">
+<!ENTITY tagsColumn2.tooltip "Ταξινόμηση κατά ετικέτες">
+<!ENTITY accountColumn2.tooltip "Ταξινόμηση κατά λογαριασμό">
+<!ENTITY statusColumn2.tooltip "Ταξινόμηση κατά κατάσταση">
+<!ENTITY sizeColumn2.tooltip "Ταξινόμηση κατά μέγεθος">
+<!ENTITY junkStatusColumn2.tooltip "Ταξινόμηση κατά κατάσταση ανεπιθύμητων">
+<!ENTITY unreadColumn2.tooltip "Αριθμός μη αναγνωσμένων μηνυμάτων στο νήμα">
+<!ENTITY totalColumn2.tooltip "Αριθμός συνολικών μηνυμάτων στο νήμα">
+<!ENTITY readColumn2.tooltip "Ταξινόμηση κατά αναγνωσμένα">
+<!ENTITY receivedColumn2.tooltip "Ταξινόμηση κατά ημερομηνία παραλαβής">
+<!ENTITY flagColumn2.tooltip "Ταξινόμηση κατά σημαία">
+<!ENTITY locationColumn2.tooltip "Ταξινόμηση κατά τοποθεσία">
+<!ENTITY idColumn2.tooltip "Ταξινόμηση κατά σειρά παραλαβής">
diff --git a/l10n-el/suite/chrome/mailnews/vCardImportMsgs.properties b/l10n-el/suite/chrome/mailnews/vCardImportMsgs.properties
new file mode 100644
index 0000000000..652b254d64
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/vCardImportMsgs.properties
@@ -0,0 +1,26 @@
+# 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/.
+
+#
+# The following are used by the vCard import code to display status, error, and
+# informational messages
+#
+
+vCardImportName=Αρχείο vCard (.vcf)
+
+vCardImportDescription=Εισαγωγή ευρετηρίου διευθύνσεων από μορφή vCard
+
+vCardImportAddressName=Ευρετήριο vCard
+
+# LOCALIZATION NOTE (vCardImportAddressSuccess): %S is replaced by the
+# name of the address book being imported.
+vCardImportAddressSuccess=Έγινε εισαγωγή του ευρετηρίου %S
+
+# LOCALIZATION NOTE (vCardImportAddressSuccess): %S is replaced by the
+# name of the address book being imported.
+vCardImportAddressBadSourceFile=Σφάλμα πρόσβασης αρχείου για το ευρετήριο %S.
+
+# LOCALIZATION NOTE (vCardImportAddressSuccess): %S is replaced by the
+# name of the address book being imported.
+vCardImportAddressConvertError=Σφάλμα εισαγωγής ευρετηρίου %S, ενδέχεται να μην έχουν εισαχθεί όλες οι διευθύνσεις.
diff --git a/l10n-el/suite/chrome/mailnews/viewLog.dtd b/l10n-el/suite/chrome/mailnews/viewLog.dtd
new file mode 100644
index 0000000000..b50fb1c690
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/viewLog.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 viewLog.title "Αρχείο καταγραφής φίλτρου">
+<!ENTITY viewLogInfo.text "Το αρχείο καταγραφής φίλτρου είναι ένα αρχείο που καταγράφει ποια φίλτρα εκτελούνται για αυτό τον λογαριασμό. Χρησιμοποιήστε την παρακάτω επιλογή για να ενεργοποιήσετε την καταγραφή.">
+<!ENTITY clearLog.label "Εκκαθάριση αρχείου καταγραφής">
+<!ENTITY clearLog.accesskey "Ε">
+<!ENTITY enableLog.label "Ενεργοποίηση καταγραφής φίλτρου">
+<!ENTITY enableLog.accesskey "Ε">
+<!ENTITY closeLog.label "Κλείσιμο">
+<!ENTITY closeLog.accesskey "λ">
diff --git a/l10n-el/suite/chrome/mailnews/virtualFolderListDialog.dtd b/l10n-el/suite/chrome/mailnews/virtualFolderListDialog.dtd
new file mode 100644
index 0000000000..b24414122d
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/virtualFolderListDialog.dtd
@@ -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/. -->
+
+<!ENTITY virtualFolderListTitle.title "Επιλογή φακέλου(ων)">
+<!ENTITY virtualFolderDesc.label "Επιλέξτε φακέλους για αναζήτηση:">
+<!ENTITY folderName.label "Όνομα φακέλου">
+<!ENTITY folderSearch.label "Αναζήτηση">
diff --git a/l10n-el/suite/chrome/mailnews/virtualFolderProperties.dtd b/l10n-el/suite/chrome/mailnews/virtualFolderProperties.dtd
new file mode 100644
index 0000000000..66a3118777
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/virtualFolderProperties.dtd
@@ -0,0 +1,22 @@
+<!-- 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 virtualFolderProperties.title "Νέος αποθηκευμένος φάκελος αναζήτησης">
+<!ENTITY name.label "Όνομα:">
+<!ENTITY name.accesskey "Ό">
+<!ENTITY description.label "Δημιουργία ως υποφακέλου του:">
+<!ENTITY description.accesskey "Δ">
+
+<!ENTITY searchTermCaption.label "Ρύθμιση των κριτηρίων αναζήτησης για αυτό τον αποθηκευμένο φάκελο αναζήτησης:">
+
+<!ENTITY folderSelectionCaption.label "Επιλογή φακέλων για αναζήτηση:">
+<!ENTITY chooseFoldersButton.label "Επιλογή…">
+<!ENTITY chooseFoldersButton.accesskey "λ">
+
+<!ENTITY searchOnline.label "Διαδικτυακή αναζήτηση (Παρέχει ενημερωμένα αποτελέσματα για φακέλους IMAP και συζητήσεων, αλλά αυξάνει το χρόνο ανοίγματος του φακέλου)">
+<!ENTITY searchOnline.accesskey "Α">
+<!ENTITY newFolderButton.label "Δημιουργία">
+<!ENTITY newFolderButton.accesskey "ρ">
+<!ENTITY editFolderButton.label "Ενημέρωση">
+<!ENTITY editFolderButton.accesskey "Ε">
diff --git a/l10n-el/suite/chrome/mailnews/wmImportMsgs.properties b/l10n-el/suite/chrome/mailnews/wmImportMsgs.properties
new file mode 100644
index 0000000000..adb467e802
--- /dev/null
+++ b/l10n-el/suite/chrome/mailnews/wmImportMsgs.properties
@@ -0,0 +1,76 @@
+# 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/.
+
+#
+# The following are used by the windows live mail import code to display status/error
+# and informational messages
+#
+
+# Short name of import module
+## @name WMIMPORT_NAME
+## @loc None
+## LOCALIZATION NOTE (2000): DONT_TRANSLATE
+2000=Windows Live Mail
+
+# Description of import module
+## @name WMIMPORT_DESCRIPTION
+## @loc None
+## LOCALIZATION NOTE (2001): In this item, don't translate "Windows Live Mail"
+2001=Ρυθμίσεις Windows Live Mail
+
+# Success message
+## @name WMIMPORT_MAILBOX_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2002): In this item, don't translate "%1$S" or "%2$d"
+## The variable %1$S will contain the name of the Mailbox
+## The variable %2$d will contain the number of messages
+2002=Γραμματοκιβώτιο %1$S, εισήχθησαν %2$d μηνύματα
+
+# Error message
+## @name WMIMPORT_MAILBOX_BADPARAM
+## @loc None
+2003=Λανθασμένη παράμετρος στην εισαγωγή γραμματοκιβωτίου.
+
+# Error message
+## @name WMIMPORT_MAILBOX_BADSOURCEFILE
+## @loc None
+## LOCALIZATION NOTE (2004): In this item, don't translate "%S"
+## The variable %S will contain the name of the Mailbox
+2004=Σφάλμα πρόσβασης αρχείου για το γραμματοκιβώτιο %S.
+
+# Error message
+## @name WMIMPORT_MAILBOX_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2005): In this item, don't translate "%S"
+## The variable %S will contain the name of the Mailbox
+2005=Σφάλμα εισαγωγής γραμματοκιβωτίου %S, ενδέχεται να μην εισαχθούν όλα τα μηνύματα από το γραμματοκιβώτιο.
+
+# Default name of imported addressbook
+## @name WMIMPORT_DEFAULT_NAME
+## @loc None
+2006=Ευρετήριο διευθύνσεων Windows Live Mail
+
+# Autofind description
+## @name WMIMPORT_AUTOFIND
+## @loc None
+2007=Ευρετήριο Windows Live Mail (ευρετήριο των Windows)
+
+# Description
+## @name WMIMPORT_ADDRESS_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2006): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2008=Εισήχθη το ευρετήριο %S
+
+# Error message
+## @name WMIMPORT_ADDRESS_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2009): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2009=Σφάλμα εισαγωγής ευρετηρίου %S, ενδέχεται να μην εισαχθούν όλες οι διευθύνσεις.
+
+# Error message
+## @name WMIMPORT_ADDRESS_BADPARAM
+## @loc None
+2010=Λανθασμένη παράμετρος στην εισαγωγή ευρετηρίου.
diff --git a/l10n-el/suite/chrome/mozldap/ldap.properties b/l10n-el/suite/chrome/mozldap/ldap.properties
new file mode 100644
index 0000000000..394ec409d8
--- /dev/null
+++ b/l10n-el/suite/chrome/mozldap/ldap.properties
@@ -0,0 +1,261 @@
+#
+# 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/.
+
+# The following two strings are used when prompting the user for authentication
+# information:
+
+## @name AUTH_PROMPT_TITLE
+## @loc none
+authPromptTitle=Απαιτείται κωδικός πρόσβασης διακομιστή LDAP
+
+## @name AUTH_PROMPT_TEXT
+## @loc %1$S should not be localized. It is the hostname of the LDAP server.
+authPromptText=Παρακαλούμε εισάγετε τον κωδικό πρόσβασής σας για το %1$S.
+
+# These are string versions of all the errors defined in
+# nsILDAPErrors.idl, as well as the nsresult codes based on those
+# errors. See that file for the genesis of these codes, as well as
+# for info about how to get documentation about their precise
+# meanings.
+
+## @name OPERATIONS_ERROR
+## @loc none
+1=Σφάλμα διεργασιών
+
+## @name PROTOCOL_ERROR
+## @loc none
+2=Σφάλμα πρωτοκόλλου
+
+## @name TIMELIMIT_EXCEEDED
+## @loc none
+3=Υπέρβαση χρονικού ορίου
+
+## @name SIZELIMIT_EXCEEDED
+## @loc none
+4=Υπέρβαση ορίου μεγέθους
+
+## @name COMPARE_FALSE
+## @loc none
+5=Ψευδής σύγκριση
+
+## @name COMPARE_TRUE
+## @loc none
+6=Αληθής σύγκριση
+
+## @name STRONG_AUTH_NOT_SUPPORTED
+## @loc none
+7=Η μέθοδος ταυτοποίησης δεν υποστηρίζεται
+
+## @name STRONG_AUTH_REQUIRED
+## @loc none
+8=Απαιτείται αυστηρή ταυτοποίηση
+
+## @name PARTIAL_RESULTS
+## @loc none
+9=Έγινε λήψη μερικών αποτελεσμάτων και παραπομπών
+
+## @name REFERRAL
+## @loc none
+10=Έγινε λήψη παραπομπής
+
+## @name ADMINLIMIT_EXCEEDED
+## @loc none
+11=Υπέρβαση ορίου διαχείρισης
+
+## @name UNAVAILABLE_CRITICAL_EXTENSION
+## @loc none
+12=Μη διαθέσιμη κρίσιμη επέκταση
+
+## @name CONFIDENTIALITY_REQUIRED
+## @loc none
+13=Απαιτείται εμπιστευτικότητα
+
+## @name SASL_BIND_IN_PROGRESS
+## @loc none
+14=Σύνδεση SASL σε εξέλιξη
+
+## @name NO_SUCH_ATTRIBUTE
+## @loc none
+16=Δεν υπάρχει τέτοια ιδιότητα
+
+## @name UNDEFINED_TYPE
+## @loc none
+17=Μη ορισμένος τύπος ιδιότητας
+
+## @name INAPPROPRIATE MATCHIN
+## @loc none
+18=Ακατάλληλη αντιστοίχιση
+
+## @name CONSTRAINT_VIOLATION
+## @loc none
+19=Παραβίαση περιορισμού
+
+## @name TYPE_OR_VALUE_EXISTS
+## @loc none
+20=Ο τύπος ή η τιμή υπάρχει
+
+## @name INVALID_SYNTAX
+## @loc none
+21=Μη έγκυρη σύνταξη
+
+## @name NO_SUCH_OBJECT
+## @loc none
+32=Δεν υπάρχει τέτοιο αντικείμενο
+
+## @name ALIAS_PROBLEM
+## @loc none
+33=Πρόβλημα ψευδώνυμου
+
+## @name INVALID_DN_ SYNTAX
+## @loc none
+34=Μη έγκυρη σύνταξη DN
+
+## @name IS_LEAF
+## @loc none
+35=Το αντικείμενο είναι φύλλο
+
+## @name ALIAS_DEREF_PROBLEM
+## @loc none
+36=Πρόβλημα διακοπής αναφοράς ψευδωνύμου
+
+## @name INAPPROPRIATE_AUTH
+## @loc none
+48=Ακατάλληλη ταυτοποίηση
+
+## @name INVALID_CREDENTIALS
+## @loc none
+49=Μη έγκυρα διαπιστευτήρια
+
+## @name INSUFFICIENT_ACCESS
+## @loc none
+50=Ανεπαρκής πρόσβαση
+
+## @name BUSY
+## @loc none
+51=Ο διακομιστής LDAP είναι απασχολημένος
+
+## @name UNAVAILABLE
+## @loc none
+52=Ο διακομιστής LDAP δεν είναι διαθέσιμος
+
+## @name UNWILLING_TO_PERFORM
+## @loc none
+53=Ο διακομιστής LDAP δεν ανταποκρίνεται
+
+## @name LOOP_DETECT
+## @loc none
+54=Εντοπίστηκε βρόχος
+
+## @name SORT_CONTROL_MISSING
+## @loc none
+60=Λείπει ο έλεγχος ταξινόμησης
+
+## @name INDEX_RANGE_ERROR
+## @loc none
+61=Τα αποτελέσματα αναζήτησης ξεπερνούν το εύρος που ορίστηκε από τις αντισταθμίσεις
+
+## @name NAMING_VIOLATION
+## @loc none
+64=Παραβίαση ονομασίας
+
+## @name OBJECT_CLASS_VIOLATION
+## @loc none
+65=Παραβίαση κλάσης αντικειμένου
+
+## @name NOT_ALLOWED_ON_NONLEAF
+## @loc none
+66=Η λειτουργία δεν επιτρέπεται σε μη φύλλα
+
+## @name NOT_ALLOWED_ON_RDN
+## @loc none
+67=Η λειτουργία δεν επιτρέπεται σε RDN
+
+## @name ALREADY_EXISTS
+## @loc none
+68=Υπάρχει ήδη
+
+## @name NO_OBJECT_CLASS_MODS
+## @loc none
+69=Αδυναμία τροποποίησης της κλάσης αντικειμένου
+
+## @name RESULTS_TOO_LARGE
+## @loc none
+70=Τα αποτελέσματα είναι πολύ μεγάλα
+
+## @name AFFECTS_MULTIPLE_DSAS
+## @loc none
+71=Επηρεάζει πολλούς διακομιστές
+
+## @name OTHER
+## @loc none
+80=Άγνωστο σφάλμα
+
+## @name SERVER_DOWN
+## @loc none
+81=Αδυναμία επικοινωνίας με τον διακομιστή LDAP
+
+## @name LOCAL_ERROR
+## @loc none
+82=Τοπικό σφάλμα
+
+## @name ENCODING_ERROR
+## @loc none
+83=Σφάλμα κωδικοποίησης
+
+## @name DECODING_ERROR
+## @loc none
+84=Σφάλμα αποκωδικοποίησης
+
+## @name TIMEOUT
+## @loc none
+85=Το χρονικό όριο του διακομιστή LDAP έληξε
+
+## @name AUTH_UNKNOWN
+## @loc none
+86=Άγνωστη μέθοδος ταυτοποίησης
+
+## @name FILTER_ERROR
+## @loc none
+87=Μη έγκυρο φίλτρο αναζήτησης
+
+## @name USER_CANCELLED
+## @loc none
+88=Ο χρήστης ακύρωσε τη λειτουργία
+
+## @name PARAM_ERROR
+## @loc none
+89=Λάθος παράμετρος σε ρουτίνα LDAP
+
+## @name NO_MEMORY
+## @loc none
+90=Aνεπάρκεια μνήμης
+
+## @name CONNECT_ERROR
+## @loc none
+91=Αδυναμία σύνδεσης στον διακομιστή LDAP
+
+## @name NOT_SUPPORTED
+## @loc none
+92=Δεν υποστηρίζεται από αυτή την έκδοση του πρωτοκόλλου LDAP
+
+## @name CONTROL_NOT_FOUND
+## @loc none
+93=Ο ζητούμενος έλεγχος LDAP δεν βρέθηκε
+
+## @name NO_RESULTS_RETURNED
+## @loc none
+94=Δεν επιστράφηκαν αποτελέσματα
+
+## @name MORE_RESULTS_TO_RETURN
+## @loc none
+95=Περισσότερα αποτελέσματα προς επιστροφή
+
+## @name CLIENT_LOOP
+## @loc none
+96=Το πρόγραμμα εντόπισε βρόχο
+
+## @name REFERRAL_LIMIT_EXCEEDED
+## @loc none
+97=Υπέρβαση ορίου της παραπομπής hop
diff --git a/l10n-el/suite/crashreporter/crashreporter-override.ini b/l10n-el/suite/crashreporter/crashreporter-override.ini
new file mode 100644
index 0000000000..4326083886
--- /dev/null
+++ b/l10n-el/suite/crashreporter/crashreporter-override.ini
@@ -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/.
+
+# This file is in the UTF-8 encoding
+[Strings]
+# LOCALIZATION NOTE (CrashReporterProductErrorText2): The %s is replaced with a string containing detailed information.
+CrashReporterProductErrorText2=Το SeaMonkey αντιμετώπισε ένα πρόβλημα και κατέρρευσε. Θα προσπαθήσουμε να ανακτήσουμε τις καρτέλες και τα παράθυρά σας όταν επανεκκινηθεί.\n\nΔυστυχώς, η εφαρμογή αναφοράς καταρρεύσεων δεν μπόρεσε να υποβάλλει μια αναφορά κατάρρευσης.\n\nΛεπτομέρειες: %s
+CrashReporterDescriptionText2=Το SeaMonkeyαντιμετώπισε ένα πρόβλημα και κατέρρευσε. Θα προσπαθήσουμε να ανακτήσουμε τις καρτέλες και τα παράθυρά σας όταν επανεκκινηθεί.\n\nΓια να μας βοηθήσετε να διαγνώσουμε και να διορθώσουμε το πρόβλημα, μπορείτε να μας στείλετε μια αναφορά κατάρρευσης.
diff --git a/l10n-el/suite/defines.inc b/l10n-el/suite/defines.inc
new file mode 100644
index 0000000000..c5f9f9afd1
--- /dev/null
+++ b/l10n-el/suite/defines.inc
@@ -0,0 +1,9 @@
+#filter emptyLines
+
+#define MOZ_LANGPACK_CREATOR mozilla.org
+
+# If non-English locales wish to credit multiple contributors, uncomment this
+# variable definition and use the format specified.
+#define MOZ_LANGPACK_CONTRIBUTORS
+
+#unfilter emptyLines
diff --git a/l10n-el/suite/installer/windows/custom.properties b/l10n-el/suite/installer/windows/custom.properties
new file mode 100644
index 0000000000..b464e59a34
--- /dev/null
+++ b/l10n-el/suite/installer/windows/custom.properties
@@ -0,0 +1,90 @@
+# 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:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+REG_APP_DESC=Το $BrandShortName παρέχει ασφαλή και εύκολη περιήγηση στο διαδίκτυο. Με το οικείο περιβάλλον χρήσης, τα προηγμένα χαρακτηριστικά ασφαλείας, όπως η προστασία από κλοπή διαδικτυακής ταυτότητας, καθώς και την ενσωματωμένη αναζήτηση, μπορείτε να αξιοποιήσετε το διαδίκτυο στο έπακρο.
+OPTIONAL_COMPONENTS_TITLE=Επιλογή προαιρετικών στοιχείων
+OPTIONAL_COMPONENTS_SUBTITLE=Επιλέξτε τις λειτουργίες του $BrandFullNameDA που θέλετε να εγκαταστήσετε.
+OPTIONAL_COMPONENTS_LABEL=Προαιρετικά στοιχεία:
+DOMI_TITLE=Επιθεώρηση DOM
+DOMI_TEXT=Επιθεωρεί τη δομή και τις ιδιότητες ενός παραθύρου και των περιεχομένων του.
+DEBUGQA_TITLE=Διεπαφή εντοπισμού σφαλμάτων και ΔΠ
+DEBUGQA_TEXT=Παρέχει επιπλέον UI εντοπισμού σφαλμάτων και ΔΠ για την ανάπτυξη του $BrandShortName.
+CHATZILLA_TITLE=ChatZilla
+CHATZILLA_TEXT=Ένα απλό στη χρήση, αλλά εξαιρετικά επεκτάσιμο πρόγραμμα IRC.
+CONTEXT_OPTIONS=&Επιλογές $BrandShortName
+CONTEXT_SAFE_MODE=&Ασφαλής λειτουργία του $BrandShortName
+SAFE_MODE=Ασφαλής λειτουργία
+# MAILNEWS_TEXT appears in Windows (All) Programs menu as "SeaMonkey $(MAILNEWS_TEXT)"
+MAILNEWS_TEXT=Αλληλογραφία
+PROFILE_TEXT=Διαχείριση προφίλ
+OPTIONS_PAGE_TITLE=Τύπος εγκατάστασης
+OPTIONS_PAGE_SUBTITLE=Επιλογές εγκατάστασης
+SHORTCUTS_PAGE_TITLE=Ρύθμιση συντομεύσεων
+SHORTCUTS_PAGE_SUBTITLE=Δημιουργία εικονιδίων προγράμματος
+SUMMARY_PAGE_TITLE=Περίληψη
+SUMMARY_PAGE_SUBTITLE=Όλα έτοιμα για την εγκατάσταση του $BrandShortName
+SUMMARY_INSTALLED_TO=Το $BrandShortName θα εγκατασταθεί στην ακόλουθη τοποθεσία:
+SUMMARY_CLICK=Κάντε κλικ στο "Εγκατάσταση" για συνέχεια.
+SUMMARY_REBOOT_REQUIRED_INSTALL=Ενδέχεται να χρειαστεί επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί η εγκατάσταση.
+SUMMARY_REBOOT_REQUIRED_UNINSTALL=Ενδέχεται να χρειαστεί επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί η κατάργηση εγκατάστασης.
+SURVEY_TEXT=&Πείτε μας τη γνώμη σας για το $BrandShortName
+LAUNCH_TEXT=&Εκκίνηση του $BrandFullNameDA τώρα
+CREATE_ICONS_DESC=Δημιουργία εικονιδίων για το $BrandShortName:
+ICONS_DESKTOP=Στην &επιφάνεια εργασίας
+ICONS_STARTMENU=Στο &φάκελο προγραμμάτων του μενού έναρξης
+ICONS_QUICKLAUNCH=Στη &γραμμή εργασιών
+WARN_WRITE_ACCESS=Δεν έχετε δικαιώματα εγγραφής στον κατάλογο εγκατάστασης.\n\nΚάντε κλικ στο "ΟΚ" για να επιλέξετε έναν άλλο κατάλογο.
+WARN_DISK_SPACE=Δεν έχετε αρκετό χώρο για εγκατάσταση σε αυτή την τοποθεσία.\n\nΚάντε κλικ στο "ΟΚ" για να επιλέξετε μια διαφορετική τοποθεσία.
+WARN_MIN_SUPPORTED_CPU_MSG=Συγγνώμη, το $BrandShortName δεν μπορεί να εγκατασταθεί. Αυτή η έκδοση του $BrandShortName απαιτεί επεξεργαστή με υποστήριξη ${MinSupportedCPU}. Παρακαλώ κάντε κλικ στο "OK" για περαιτέρω πληροφορίες.
+WARN_MIN_SUPPORTED_OSVER_MSG=Συγγνώμη, το $BrandShortName δεν μπορεί να εγκατασταθεί. Αυτή η έκδοση του $BrandShortName απαιτεί ${MinSupportedVer} ή νεότερο. Παρακαλώ κάντε κλικ στο "OK" για περαιτέρω πληροφορίες.
+WARN_MIN_SUPPORTED_OSVER_CPU_MSG=Συγγνώμη, το $BrandShortName δεν μπορεί να εγκατασταθεί. Αυτή η έκδοση του $BrandShortName απαιτεί ${MinSupportedVer} ή νεότερο και επεξεργαστή με υποστήριξη ${MinSupportedCPU}. Παρακαλώ κάντε κλικ στο "OK" για περαιτέρω πληροφορίες.
+WARN_MANUALLY_CLOSE_APP_INSTALL=Το $BrandShortName πρέπει να κλείσει για να συνεχιστεί η εγκατάσταση.\n\nΠαρακαλώ κλείστε το $BrandShortName για να συνεχίσετε.
+WARN_MANUALLY_CLOSE_APP_LAUNCH=Το $BrandShortName εκτελείται ήδη.\n\nΠαρακαλώ κλείστε το $BrandShortName πριν την εκκίνηση της έκδοσης που μόλις εγκαταστήσατε.
+WARN_MANUALLY_CLOSE_APP_UNINSTALL=Το $BrandShortName πρέπει να κλείσει για να συνεχιστεί η κατάργηση εγκατάστασης.\n\nΠαρακαλώ κλείστε το $BrandShortName για να συνεχίσετε.
+WARN_RESTART_REQUIRED_UNINSTALL=Θα πρέπει να γίνει επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί μια προηγούμενη κατάργηση εγκατάστασης του $BrandShortName. Θέλετε να γίνει επανεκκίνηση τώρα;
+WARN_RESTART_REQUIRED_UPGRADE=Θα πρέπει να γίνει επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί μια προηγούμενη αναβάθμιση του $BrandShortName. Θέλετε να γίνει επανεκκίνηση τώρα;
+ERROR_CREATE_DIRECTORY_PREFIX=Σφάλμα δημιουργίας καταλόγου:
+ERROR_CREATE_DIRECTORY_SUFFIX=Κάντε κλικ στο "Ακύρωση" για να διακόψετε την εγκατάσταση ή\nτο "Επανάληψη" για να δοκιμάσετε ξανά.
+
+UN_CONFIRM_CLICK=Κάντε κλικ στο "Απεγκατάσταση" για να συνεχίσετε.
+UN_CONFIRM_PAGE_TITLE=Κατάργηση εγκατάστασης του $BrandFullName
+UN_CONFIRM_PAGE_SUBTITLE=Αφαίρεση του $BrandFullName από τον υπολογιστή σας.
+UN_CONFIRM_UNINSTALLED_FROM=Το $BrandShortName θα αφαιρεθεί από την ακόλουθη τοποθεσία:
+
+STATUS_INSTALL_APP=Εγκατάσταση του $BrandShortName…
+STATUS_INSTALL_LANG=Εγκατάσταση αρχείων γλώσσας (${AB_CD})…
+STATUS_INSTALL_OPTIONAL=Εγκατάσταση προαιρετικών στοιχείων…
+STATUS_UNINSTALL_MAIN=Κατάργηση εγκατάστασης του $BrandShortName…
+STATUS_CLEANUP=Τακτοποίηση…
+
+BANNER_CHECK_EXISTING=Έλεγχος υπάρχουσας εγκατάστασης…
+
+# _DESC strings support approximately 65 characters per line.
+# One line
+OPTIONS_SUMMARY=Επιλέξτε τον τύπο εγκατάστασης που επιθυμείτε και κάντε κλικ στο "Επόμενο".
+# One line
+OPTION_STANDARD_DESC=Το $BrandShortName θα εγκατασταθεί με τις πιο κοινές επιλογές.
+OPTION_STANDARD_RADIO=&Τυπική
+# One line
+OPTION_COMPLETE_DESC=Το $BrandShortName θα εγκατασταθεί με όλες τις διαθέσιμες επιλογές.
+OPTION_COMPLETE_RADIO=Π&λήρης
+# Two lines
+OPTION_CUSTOM_DESC=Μπορείτε να επιλέξετε μεμονωμένες επιλογές προς εγκατάσταση. Συνιστάται για έμπειρους χρήστες.
+OPTION_CUSTOM_RADIO=&Προσαρμοσμένη
diff --git a/l10n-el/suite/installer/windows/mui.properties b/l10n-el/suite/installer/windows/mui.properties
new file mode 100644
index 0000000000..2d57a00fda
--- /dev/null
+++ b/l10n-el/suite/installer/windows/mui.properties
@@ -0,0 +1,64 @@
+# 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/.
+
+# To make the l10n tinderboxen see changes to this file you can change a value
+# name by adding - to the end of the name followed by chars (e.g. Branding-2).
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+MUI_TEXT_WELCOME_INFO_TITLE=Καλώς ορίσατε στο βοηθό εγκατάστασης του $BrandFullNameDA
+MUI_TEXT_WELCOME_INFO_TEXT=Αυτός ο βοηθός θα σας καθοδηγήσει στην εγκατάσταση του $BrandFullNameDA.\n\nΕίναι καλύτερο να κλείσετε όλα τα άλλα προγράμματα πριν ξεκινήσετε με την εγκατάσταση. Έτσι, θα ενημερωθούν όλα τα απαραίτητα αρχεία του συστήματος, χωρίς να χρειαστεί επανεκκίνηση.\n\n$_CLICK
+MUI_TEXT_LICENSE_TITLE=Συμφωνία άδειας
+MUI_TEXT_LICENSE_SUBTITLE=Παρακαλούμε διαβάστε τους όρους άδειας πριν εγκαταστήσετε το $BrandFullNameDA.
+MUI_INNERTEXT_LICENSE_TOP=Πατήστε το Page Down για να δείτε την υπόλοιπη συμφωνία.
+MUI_INNERTEXT_LICENSE_BOTTOM_CHECKBOX=Αν συμφωνείτε με τους όρους της συμφωνίας, κάντε κλικ στο πλαίσιο ελέγχου παρακάτω. Πρέπει να αποδεχτείτε τη συμφωνία για να γίνει εγκατάσταση του $BrandFullNameDA. $_CLICK
+MUI_TEXT_COMPONENTS_TITLE=Επιλογή στοιχείων
+MUI_TEXT_COMPONENTS_SUBTITLE=Επιλέξτε τις λειτουργίες του $BrandFullNameDA που θέλετε να εγκαταστήσετε.
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE=Περιγραφή
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO=Τοποθετήστε το δείκτη του ποντικιού σας πάνω από ένα στοιχείο για να δείτε την περιγραφή του.
+MUI_TEXT_DIRECTORY_TITLE=Επιλογή τοποθεσίας εγκατάστασης
+MUI_TEXT_DIRECTORY_SUBTITLE=Επιλέξτε τον φάκελο όπου θα εγκατασταθεί το $BrandFullNameDA.
+MUI_TEXT_INSTALLING_TITLE=Εγκατάσταση
+MUI_TEXT_INSTALLING_SUBTITLE=Παρακαλώ περιμένετε όσο γίνεται η εγκατάσταση του $BrandFullNameDA.
+MUI_TEXT_FINISH_TITLE=Η εγκατάσταση ολοκληρώθηκε
+MUI_TEXT_FINISH_SUBTITLE=Η εγκατάσταση ολοκληρώθηκε επιτυχώς.
+MUI_TEXT_ABORT_TITLE=Η εγκατάσταση ακυρώθηκε
+MUI_TEXT_ABORT_SUBTITLE=Η εγκατάσταση δεν ολοκληρώθηκε επιτυχώς.
+MUI_BUTTONTEXT_FINISH=&Τέλος
+MUI_TEXT_FINISH_INFO_TITLE=Ολοκλήρωση του Βοηθού εγκατάστασης του $BrandFullNameDA
+MUI_TEXT_FINISH_INFO_TEXT=Το $BrandFullNameDA έχει εγκατασταθεί στον υπολογιστή σας.\n\nΚάντε κλικ στο "Τέλος" για να κλείσετε τον βοηθό.
+MUI_TEXT_FINISH_INFO_REBOOT=Θα πρέπει να γίνει επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί η εγκατάσταση του $BrandFullNameDA. Θέλετε να γίνει επανεκκίνηση τώρα;
+MUI_TEXT_FINISH_REBOOTNOW=Επανεκκίνηση τώρα
+MUI_TEXT_FINISH_REBOOTLATER=Επανεκκίνηση αργότερα
+MUI_TEXT_STARTMENU_TITLE=Επιλογή φακέλου στο μενού "Έναρξη"
+MUI_TEXT_STARTMENU_SUBTITLE=Επιλέξτε ένα φάκελο του μενού "Έναρξη" για τις συντομεύσεις του $BrandFullNameDA.
+MUI_INNERTEXT_STARTMENU_TOP=Επιλέξτε το φάκελο του μενού "Έναρξη" όπου θα δημιουργηθούν οι συντομεύσεις του προγράμματος. Μπορείτε ακόμα να εισαγάγετε ένα όνομα για να δημιουργηθεί ένας νέος φάκελος.
+MUI_TEXT_ABORTWARNING=Θέλετε σίγουρα να κλείσετε την εγκατάσταση του $BrandFullName;
+MUI_UNTEXT_WELCOME_INFO_TITLE=Καλώς ορίσατε στον βοηθό κατάργησης εγκατάστασης του $BrandFullNameDA
+MUI_UNTEXT_WELCOME_INFO_TEXT=Αυτός ο βοηθός θα σας καθοδηγήσει για την κατάργηση εγκατάστασης του $BrandFullNameDA.\n\nΠριν ξεκινήσετε την απεγκατάσταση, βεβαιωθείτε ότι δεν εκτελείται το $BrandFullNameDA.\n\n$_CLICK
+MUI_UNTEXT_CONFIRM_TITLE=Κατάργηση εγκατάστασης του $BrandFullNameDA
+MUI_UNTEXT_CONFIRM_SUBTITLE=Αφαίρεση του $BrandFullNameDA από τον υπολογιστή σας.
+MUI_UNTEXT_UNINSTALLING_TITLE=Κατάργηση εγκατάστασης
+MUI_UNTEXT_UNINSTALLING_SUBTITLE=Παρακαλώ περιμένετε όσο καταργείται η εγκατάσταση του $BrandFullNameDA.
+MUI_UNTEXT_FINISH_TITLE=Η κατάργηση εγκατάστασης ολοκληρώθηκε
+MUI_UNTEXT_FINISH_SUBTITLE=Η κατάργηση εγκατάστασης ολοκληρώθηκε επιτυχώς.
+MUI_UNTEXT_ABORT_TITLE=Η κατάργηση εγκατάστασης ακυρώθηκε
+MUI_UNTEXT_ABORT_SUBTITLE=Η κατάργηση εγκατάστασης δεν ολοκληρώθηκε επιτυχώς.
+MUI_UNTEXT_FINISH_INFO_TITLE=Ολοκλήρωση του βοηθού κατάργησης εγκατάστασης του $BrandFullNameDA
+MUI_UNTEXT_FINISH_INFO_TEXT=Η εγκατάσταση του $BrandFullNameDA καταργήθηκε από τον υπολογιστή σας.\n\nΚάντε κλικ στο "Τέλος" για να κλείσετε αυτό τον βοηθό.
+MUI_UNTEXT_FINISH_INFO_REBOOT=Θα πρέπει να γίνει επανεκκίνηση του υπολογιστή σας για να ολοκληρωθεί η κατάργηση εγκατάστασης του $BrandFullNameDA. Θέλετε να γίνει επανεκκίνηση τώρα;
+MUI_UNTEXT_ABORTWARNING=Θέλετε σίγουρα να ακυρώσετε την κατάργηση εγκατάστασης του $BrandFullName;
diff --git a/l10n-el/suite/installer/windows/override.properties b/l10n-el/suite/installer/windows/override.properties
new file mode 100644
index 0000000000..655e58fd0d
--- /dev/null
+++ b/l10n-el/suite/installer/windows/override.properties
@@ -0,0 +1,86 @@
+# 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:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+# Strings that require a space at the end should be enclosed with double
+# quotes and the double quotes will be removed. To add quotes to the beginning
+# and end of a strong enclose the add and additional double quote to the
+# beginning and end of the string (e.g. ""This will include quotes"").
+
+SetupCaption=Εγκατάσταση του $BrandFullName
+UninstallCaption=Κατάργηση εγκατάστασης του $BrandFullName
+BackBtn=< &Πίσω
+NextBtn=&Επόμενο >
+AcceptBtn=&Αποδέχομαι τους όρους της άδειας χρήσης
+DontAcceptBtn=Δεν &αποδέχομαι τους όρους της άδειας χρήσης
+InstallBtn=&Εγκατάσταση
+UninstallBtn=&Απεγκατάσταση
+CancelBtn=Ακύρωση
+CloseBtn=&Κλείσιμο
+BrowseBtn=Π&εριήγηση…
+ShowDetailsBtn=Εμφάνιση &λεπτομερειών
+ClickNext=Κάντε κλικ στο "Επόμενο" για να συνεχίσετε.
+ClickInstall=Κάντε κλικ στο "Εγκατάσταση" για να ξεκινήσετε την εγκατάσταση.
+ClickUninstall=Κάντε κλικ στο "Απεγκατάσταση" για να ξεκινήσετε την κατάργηση εγκατάστασης.
+Completed=Ολοκληρώθηκε
+LicenseTextRB=Παρακαλώ διαβάστε την ακόλουθη άδεια χρήσης πριν την εγκατάσταση του $BrandFullNameDA. Αν αποδέχεστε τους όρους, κάντε κλικ στην πρώτη επιλογή. $_CLICK
+ComponentsText=Επιλέξτε τα στοιχεία που θέλετε να εγκατασταθούν και καταργήστε την επιλογή όσων δεν θέλετε. $_CLICK
+ComponentsSubText2_NoInstTypes=Επιλογή στοιχείων για εγκατάσταση:
+DirText=Το $BrandFullNameDA θα εγκατασταθεί στον ακόλουθο φάκελο. Για εγκατάσταση σε διαφορετικό φάκελο, κάντε κλικ στο "Περιήγηση" και επιλέξτε έναν άλλο φάκελο. $_CLICK
+DirSubText=Φάκελος προορισμού
+DirBrowseText=Επιλέξτε φάκελο για την εγκατάσταση του $BrandFullNameDA:
+SpaceAvailable="Διαθέσιμος χώρος: "
+SpaceRequired="Απαιτούμενος χώρος: "
+UninstallingText=Το $BrandFullNameDA θα αφαιρεθεί από τον ακόλουθο φάκελο. $_CLICK
+UninstallingSubText=Κατάργηση εγκατάστασης από:
+FileError=Σφάλμα ανοίγματος αρχείου για εγγραφή: \r\n\r\n$0\r\n\r\nΚάντε κλικ στο "Ακύρωση" για να διακόψετε την εγκατάσταση,\r\nστο "Επανάληψη" για να δοκιμάσετε ξανά, ή στο\r\n"Παράβλεψη" για να παραλείψετε αυτό το αρχείο.
+FileError_NoIgnore=Σφάλμα ανοίγματος αρχείου για εγγραφή: \r\n\r\n$0\r\n\r\nΚάντε κλικ στο "Επανάληψη" για να δοκιμάσετε ξανά, ή στο\r\n"Ακύρωση" για να διακόψετε την εγκατάσταση.
+CantWrite="Αδυναμία εγγραφής: "
+CopyFailed=Αποτυχία αντιγραφής
+CopyTo="Αντιγραφή σε "
+Registering="Εγγραφή: "
+Unregistering="Κατάργηση εγγραφής: "
+SymbolNotFound="Αδυναμία εύρεσης συμβόλου: "
+CouldNotLoad="Αδυναμία φόρτωσης: "
+CreateFolder="Δημιουργία φακέλου: "
+CreateShortcut="Δημιουργία συντόμευσης: "
+CreatedUninstaller="Δημιουργήθηκε πρόγραμμα αφαίρεσης: "
+Delete="Διαγραφή αρχείου: "
+DeleteOnReboot="Διαγραφή κατά την επανεκκίνηση: "
+ErrorCreatingShortcut="Σφάλμα δημιουργίας συντόμευσης: "
+ErrorCreating="Σφάλμα δημιουργίας: "
+ErrorDecompressing=Σφάλμα αποσυμπίεσης δεδομένων! Μήπως έχει καταστραφεί το πρόγραμμα εγκατάστασης;
+ErrorRegistering=Σφάλμα εγγραφής DLL
+ExecShell="ExecShell: "
+Exec="Εκτέλεση: "
+Extract="Εξαγωγή: "
+ErrorWriting="Εξαγωγή: σφάλμα εγγραφής σε αρχείο "
+InvalidOpcode=Κατεστραμμένο πρόγραμμα εγκατάστασης: μη έγκυρο opcode
+NoOLE="Δεν υπάρχει OLE για: "
+OutputFolder="Φάκελος εξόδου: "
+RemoveFolder="Αφαίρεση φακέλου: "
+RenameOnReboot="Μετονομασία κατά την επανεκκίνηση: "
+Rename="Μετονομασία: "
+Skipped="Παράλειψη: "
+CopyDetails=Αντιγραφή λεπτομερειών στο πρόχειρο
+LogInstall=Καταγραφή διαδικασίας εγκατάστασης
+Byte=B
+Kilo=K
+Mega=M
+Giga=G
diff --git a/l10n-el/suite/profile/bookmarks.inc b/l10n-el/suite/profile/bookmarks.inc
new file mode 100644
index 0000000000..179be632f3
--- /dev/null
+++ b/l10n-el/suite/profile/bookmarks.inc
@@ -0,0 +1,77 @@
+#filter emptyLines
+
+# LOCALIZATION NOTE: The 'en-US' strings in some URLs will be replaced with
+# your locale code, and link to your translated pages as soon as they're live.
+
+#define bookmarks_title Σελιδοδείκτες
+#define bookmarks_heading Σελιδοδείκτες
+
+#define personal_toolbarfolder Φάκελος προσωπικής γραμμής εργαλείων
+
+#define seamonkey_and_mozilla SeaMonkey και Mozilla
+
+# LOCALIZATION NOTE (seamonkey):
+# link title for https://www.seamonkey-project.org/ (in the personal toolbar)
+#define seamonkey SeaMonkey
+
+# LOCALIZATION NOTE (seamonkey_long):
+# link title for https://www.seamonkey-project.org/ (in normal bookmarks)
+#define seamonkey_long Το έργο SeaMonkey
+
+# LOCALIZATION NOTE (mozilla_org_long):
+# link title for https://www.mozilla.org/ (in normal bookmarks)
+#define mozilla_org_long Ο οργανισμός Mozilla
+
+#define extend_seamonkey Επέκταση του SeaMonkey
+
+# LOCALIZATION NOTE (seamonkey_addons):
+# link title for https://addons.thunderbird.net/en-US/seamonkey/
+#define seamonkey_addons Πρόσθετα SeaMonkey
+
+# LOCALIZATION NOTE (seamonkey_themes):
+# link title for https://addons.thunderbird.net/en-US/seamonkey/themes
+#define seamonkey_themes Θέματα SeaMonkey
+
+# LOCALIZATION NOTE (seamonkey_dictionaries):
+# link title for https://addons.thunderbird.net/en-US/seamonkey/dictionaries
+#define seamonkey_dictionaries Λεξικά ορθογραφικού ελέγχου
+
+# LOCALIZATION NOTE (seamonkey_plugins):
+# link title for https://addons.thunderbird.net/en-US/seamonkey/plugins
+#define seamonkey_plugins Αρθρώματα για το SeaMonkey
+
+# LOCALIZATION NOTE (mozdev):
+# link title for http://www.mozdev.org/
+#define mozdev mozdev.org
+
+# LOCALIZATION NOTE (mozdev_seamonkey):
+# link title for http://www.mozdev.org/projects/applications/SeaMonkey.html
+#define mozdev_seamonkey Επεκτάσεις SeaMonkey από το mozdev.org
+
+#define community_support Κοινότητα &amp; υποστήριξη
+
+# LOCALIZATION NOTE (seamonkey_community):
+# link title for https://www.seamonkey-project.org/community
+#define seamonkey_community Κοινότητα SeaMonkey
+
+# LOCALIZATION NOTE (mozillazine):
+# link title for http://www.mozillazine.org/
+#define mozillazine mozillaZine
+
+# LOCALIZATION NOTE (seamonkey_support):
+# link title for the mozillaZine SeaMonkey Support forum
+#define seamonkey_support Φόρουμ υποστήριξης SeaMonkey (mozillaZine)
+
+# LOCALIZATION NOTE (seamonkey_l10n):
+# insert full bookmark line for localized SeaMonkey page (personal toolbar)
+# e.g. #define seamonkey_l10n <DT><A HREF="https://www.seamonkey.tlh/">SeaMonkey tlhIngan</a>
+# Do not remove the trailing spaces here or MERGE_FILE in l0n builds will fail!
+#define seamonkey_l10n
+
+# LOCALIZATION NOTE (seamonkey_l10n_long):
+# insert full bookmark line for localized SeaMonkey page (normal bookmark)
+# e.g. #define seamonkey_l10n_long <DT><A HREF="https://www.seamonkey.tld/">tlhIngan Hol SeaMonkey</a>
+# Do not remove the trailing spaces here or or MERGE_FILE in l0n builds will fail!
+#define seamonkey_l10n_long
+
+#unfilter emptyLines
diff --git a/l10n-el/suite/updater/updater.ini b/l10n-el/suite/updater/updater.ini
new file mode 100644
index 0000000000..a4d615fb3d
--- /dev/null
+++ b/l10n-el/suite/updater/updater.ini
@@ -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 file is in the UTF-8 encoding
+[Strings]
+TitleText=Ενημέρωση του %MOZ_APP_DISPLAYNAME%
+InfoText=Το %MOZ_APP_DISPLAYNAME% εγκαθιστά τις ενημερώσεις σας και θα ξεκινήσει σε λίγο…
diff --git a/l10n-el/toolkit/chrome/alerts/alert.dtd b/l10n-el/toolkit/chrome/alerts/alert.dtd
new file mode 100644
index 0000000000..ffde707d56
--- /dev/null
+++ b/l10n-el/toolkit/chrome/alerts/alert.dtd
@@ -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/. -->
+
+<!ENTITY closeAlert.tooltip "Κλείσιμο αυτής της ειδοποίησης">
+<!ENTITY settings.label "Ρυθμίσεις">
diff --git a/l10n-el/toolkit/chrome/alerts/alert.properties b/l10n-el/toolkit/chrome/alerts/alert.properties
new file mode 100644
index 0000000000..5d61a5cb34
--- /dev/null
+++ b/l10n-el/toolkit/chrome/alerts/alert.properties
@@ -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/.
+
+# LOCALIZATION NOTE(closeButton.title): Used as the close button text for web notifications on OS X.
+# This should ideally match the string that OS X uses for the close button on alert-type
+# notifications. OS X will truncate the value if it's too long.
+closeButton.title = Κλείσιμο
+# LOCALIZATION NOTE(actionButton.label): Used as the button label to provide more actions on OS X notifications. OS X will truncate this if it's too long.
+actionButton.label = …
+# LOCALIZATION NOTE(webActions.disableForOrigin.label): %S is replaced
+# with the hostname origin of the notification.
+webActions.disableForOrigin.label = Απενεργοποίηση ειδοποιήσεων από: %S
+
+# LOCALIZATION NOTE(source.label): Used to show the URL of the site that
+# sent the notification (e.g., "via mozilla.org"). "%1$S" is the source host
+# and port.
+source.label=μέσω %1$S
+webActions.settings.label = Ρυθμίσεις ειδοποιήσεων
+
+# LOCALIZATION NOTE(pauseNotifications.label): %S is replaced with the
+# brandShortName of the application.
+pauseNotifications.label = Παύση ειδοποιήσεων μέχρι να επανεκκινηθεί το %S
diff --git a/l10n-el/toolkit/chrome/autoconfig/autoconfig.properties b/l10n-el/toolkit/chrome/autoconfig/autoconfig.properties
new file mode 100644
index 0000000000..17aa35087b
--- /dev/null
+++ b/l10n-el/toolkit/chrome/autoconfig/autoconfig.properties
@@ -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/.
+
+readConfigTitle = Σφάλμα παραμέτρων ρυθμίσεων
+readConfigMsg = Αποτυχία ανάγνωσης αρχείου παραμέτρων ρυθμίσεων. Παρακαλούμε επικοινωνήστε με το διαχειριστή συστήματος σας.
+
+autoConfigTitle = Προειδοποίηση AutoConfig
+autoConfigMsg = Αποτυχία Netscape.cfg/AutoConfig. Παρακαλούμε επικοινωνήστε με το διαχειριστή συστήματος σας. \n Σφάλμα: Αποτυχία %S:
+
+emailPromptTitle = Διεύθυνση email
+emailPromptMsg = Εισάγετε τη διεύθυνση email σας
diff --git a/l10n-el/toolkit/chrome/global-platform/mac/intl.properties b/l10n-el/toolkit/chrome/global-platform/mac/intl.properties
new file mode 100644
index 0000000000..71265a9ef1
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global-platform/mac/intl.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/.
+
+# LOCALIZATION NOTE (intl.ellipsis): Use the unicode ellipsis char, \u2026,
+# or use "..." if \u2026 doesn't suit traditions in your locale.
+intl.ellipsis=…
diff --git a/l10n-el/toolkit/chrome/global-platform/mac/platformKeys.properties b/l10n-el/toolkit/chrome/global-platform/mac/platformKeys.properties
new file mode 100644
index 0000000000..725e977441
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global-platform/mac/platformKeys.properties
@@ -0,0 +1,30 @@
+# 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/.
+
+# Platform: Mac
+# This file defines the on-screen display names for the various modifier keys
+# and the Return key (VK_RETURN).
+# These are used in XP menus to show keyboard shortcuts.
+
+# The Shift key - open up arrow symbol (ctrl-e)
+VK_SHIFT=\u21e7
+
+# The Command key - clover leaf symbol (ctrl-q)
+VK_META=\u2318
+
+# The Win key - never generated by native key event
+VK_WIN=win
+
+# The Option/Alt key - splitting tracks symbol (ctrl-g)
+VK_ALT=\u2325
+
+# The Control key - hat symbol (ctrl-f)
+VK_CONTROL=\u2303
+
+# The Return key (on the main keyboard or numpad):
+# "Enter" on Windows/Unix, "Return" on Mac
+VK_RETURN=Return
+
+# The separator character used between modifiers (none on Mac OS)
+MODIFIER_SEPARATOR=
diff --git a/l10n-el/toolkit/chrome/global-platform/unix/intl.properties b/l10n-el/toolkit/chrome/global-platform/unix/intl.properties
new file mode 100644
index 0000000000..71265a9ef1
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global-platform/unix/intl.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/.
+
+# LOCALIZATION NOTE (intl.ellipsis): Use the unicode ellipsis char, \u2026,
+# or use "..." if \u2026 doesn't suit traditions in your locale.
+intl.ellipsis=…
diff --git a/l10n-el/toolkit/chrome/global-platform/unix/platformKeys.properties b/l10n-el/toolkit/chrome/global-platform/unix/platformKeys.properties
new file mode 100644
index 0000000000..3a1394d871
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global-platform/unix/platformKeys.properties
@@ -0,0 +1,30 @@
+# 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/.
+
+# Platform: Unix
+# This file defines the on-screen display names for the various modifier keys
+# and the Enter key (VK_RETURN).
+# These are used in XP menus to show keyboard shortcuts.
+
+# The Shift key
+VK_SHIFT=Shift
+
+# The Command key
+VK_META=Meta
+
+# The Win key (Super key and Hyper keys are mapped to DOM Win key)
+VK_WIN=Win
+
+# The Alt key
+VK_ALT=Alt
+
+# The Control key
+VK_CONTROL=Ctrl
+
+# The Enter key (on the main keyboard or numpad):
+# "Enter" on Windows/Unix, "Return" on Mac
+VK_RETURN=Enter
+
+# The separator character used between modifiers
+MODIFIER_SEPARATOR=+
diff --git a/l10n-el/toolkit/chrome/global-platform/win/intl.properties b/l10n-el/toolkit/chrome/global-platform/win/intl.properties
new file mode 100644
index 0000000000..71265a9ef1
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global-platform/win/intl.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/.
+
+# LOCALIZATION NOTE (intl.ellipsis): Use the unicode ellipsis char, \u2026,
+# or use "..." if \u2026 doesn't suit traditions in your locale.
+intl.ellipsis=…
diff --git a/l10n-el/toolkit/chrome/global-platform/win/platformKeys.properties b/l10n-el/toolkit/chrome/global-platform/win/platformKeys.properties
new file mode 100644
index 0000000000..e05354c9ae
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global-platform/win/platformKeys.properties
@@ -0,0 +1,30 @@
+# 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/.
+
+# Platform: Windows
+# This file defines the on-screen display names for the various modifier keys
+# and the Enter key (VK_RETURN).
+# These are used in XP menus to show keyboard shortcuts.
+
+# The Shift key
+VK_SHIFT=Shift
+
+# The Command key
+VK_META=Meta
+
+# The Win key
+VK_WIN=Win
+
+# The Alt key
+VK_ALT=Alt
+
+# The Control key
+VK_CONTROL=Ctrl
+
+# The Enter key (on the main keyboard or numpad):
+# "Enter" on Windows/Unix, "Return" on Mac
+VK_RETURN=Enter
+
+# The separator character used between modifiers
+MODIFIER_SEPARATOR=+
diff --git a/l10n-el/toolkit/chrome/global/aboutReader.properties b/l10n-el/toolkit/chrome/global/aboutReader.properties
new file mode 100644
index 0000000000..c523d9b533
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/aboutReader.properties
@@ -0,0 +1,66 @@
+# 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 (aboutReader.loading2):
+# Use the unicode ellipsis char, \u2026,
+# or use "..." if \u2026 doesn't suit traditions in your locale.
+aboutReader.loading2=Φόρτωση…
+aboutReader.loadError=Απέτυχε η φόρτωση του άρθρου από τη σελίδα
+
+aboutReader.colorScheme.light=Φωτεινό
+aboutReader.colorScheme.dark=Σκοτεινό
+aboutReader.colorScheme.sepia=Σέπια
+aboutReader.colorScheme.auto=Αυτόματο
+
+# LOCALIZATION NOTE (aboutReader.estimatedReadTimeValue1): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of minutes it is estimated to take to read the article
+# example: `3 minutes`
+aboutReader.estimatedReadTimeValue1=#1 λεπτό;#1 λεπτά
+
+#LOCALIZATION NOTE (aboutReader.estimatedReadTimeRange1): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# When there is some uncertainty in how long the article will take to read show a range of
+# minutes it is expected to take.
+# #1 is the number of minutes it is estimated to take to read the article for a fast reader
+# #2 is the number of minutes it is estimated to take to read the article for a slow reader
+# #2 is the variable used to determine the plural form to use.
+# example: `5-8 minutes`
+aboutReader.estimatedReadTimeRange1=#1-#2 λεπτό;#1-#2 λεπτά
+
+# LOCALIZATION NOTE (aboutReader.fontType.serif, aboutReader.fontType.sans-serif):
+# These are the styles of typeface that are options in the reader view controls.
+aboutReader.fontType.serif=Serif
+aboutReader.fontType.sans-serif=Sans-serif
+
+# LOCALIZATION NOTE (aboutReader.fontTypeSample): String used to sample font types.
+# For followup see: https://bugzilla.mozilla.org/show_bug.cgi?id=1637089
+aboutReader.fontTypeSample=Αα
+
+aboutReader.toolbar.close=Κλείσιμο προβολής ανάγνωσης
+aboutReader.toolbar.typeControls=Ρυθμίσεις τυπογραφίας
+
+# This is used as a label for the Reader View toolbar button.
+# This is a label used for the Save to Pocket option in the toolbar.
+# %S is replaced by Pocket.
+readerView.savetopocket.label=Αποθήκευση σε %S
+# This is a label used for done option in the toolbar
+readerView.done.label=Τέλος
+# These are used for the Reader View toolbar button and the menuitem within the
+# View menu.
+readerView.enter=Άνοιγμα προβολής ανάγνωσης
+readerView.enter.accesskey=Α
+readerView.close=Κλείσιμο προβολής ανάγνωσης
+readerView.close.accesskey=Α
+
+# These are used as tooltips in Type Control
+aboutReader.toolbar.minus = Μείωση μεγέθους γραμματοσειράς
+aboutReader.toolbar.plus = Αύξηση μεγέθους γραμματοσειράς
+aboutReader.toolbar.contentwidthminus = Μείωση πλάτους περιεχομένου
+aboutReader.toolbar.contentwidthplus = Αύξηση πλάτους περιεχομένου
+aboutReader.toolbar.lineheightminus = Μείωση ύψους γραμμής
+aboutReader.toolbar.lineheightplus = Αύξηση ύψους γραμμής
+aboutReader.toolbar.colorschemelight = Ανοιχτόχρωμο σύνολο χρωμάτων
+aboutReader.toolbar.colorschemedark = Σκουρόχρωμο σύνολο χρωμάτων
+aboutReader.toolbar.colorschemesepia = Σέπια σύνολο χρωμάτων
diff --git a/l10n-el/toolkit/chrome/global/aboutStudies.properties b/l10n-el/toolkit/chrome/global/aboutStudies.properties
new file mode 100644
index 0000000000..dfbade3a8d
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/aboutStudies.properties
@@ -0,0 +1,33 @@
+# 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 (title): keep "Shield" in English. See
+# https://wiki.mozilla.org/Firefox/Shield/Shield_Studies for more information
+title = Μελέτες Shield
+removeButton = Αφαίρεση
+
+# LOCALIZATION NOTE (activeStudiesList): Title above a list of active studies
+activeStudiesList = Ενεργές μελέτες
+# LOCALIZATION NOTE (activeStudiesList): Title above a list of completed studies
+completedStudiesList = Ολοκληρωμένες μελέτες
+# LOCALIZATION NOTE (activeStatus): Displayed for an active study
+activeStatus = Ενεργό
+
+# LOCALIZATION NOTE (completeStatus): Displayed for a study that is already complete
+completeStatus = Ολόκληρο
+
+updateButtonWin = Επιλογές ενημερώσεων
+updateButtonUnix = Προτιμήσεις ενημερώσεων
+learnMore = Μάθετε περισσότερα
+noStudies = Δεν έχετε λάβει μέρος σε καμία μελέτη.
+disabledList = Αυτή είναι μια λίστα με τις μελέτες που έχετε συμμετάσχει. Δεν θα γίνουν νέες μελέτες.
+# LOCALIZATION NOTE (enabledList): %S is brandShortName (e.g. Firefox)
+enabledList = Τι είναι αυτό; Το %S ενδέχεται να εγκαταστήσει και να εκτελέσει περιστασιακά μελέτες.
+
+# LOCALIZATION NOTE (preferenceStudyDescription) $1%S will be replaced with the
+# name of a preference (such as "stream.improvesearch.topSiteSearchShortcuts")
+# and $2%S will be replaced with the value of that preference. Both values will
+# be formatted differently than the surrounding text.
+preferenceStudyDescription = Αυτή η μελέτη ορίζει το %1$S σε %2$S. \ No newline at end of file
diff --git a/l10n-el/toolkit/chrome/global/aboutWebrtc.properties b/l10n-el/toolkit/chrome/global/aboutWebrtc.properties
new file mode 100644
index 0000000000..7164c41a15
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/aboutWebrtc.properties
@@ -0,0 +1,191 @@
+# 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 (document_title):
+# The text "WebRTC" is a proper noun and should not be translated.
+# It is the general label for the standards based technology. see http://www.webrtc.org
+document_title = Εσωτερικά του WebRTC
+cannot_retrieve_log = Δεν είναι δυνατή η ανάκτηση δεδομένων καταγραφής για το WebRTC
+
+# LOCALIZATION NOTE (save_page_msg):
+# %1$S will be replaced by a full path file name: the target of the SavePage operation.
+save_page_msg = η σελίδα αποθηκεύτηκε στην διαδρομή: %1$S
+
+# LOCALIZATION NOTE (save_page_dialog_title): "about:webrtc" is a internal browser URL and should not be
+# translated. This string is used as a title for a file save dialog box.
+save_page_dialog_title = αποθήκευση about:webrtc ως
+
+# LOCALIZATION NOTE (debug_mode_off_state_msg):
+# %1$S will be replaced by the full path file name of the debug log.
+debug_mode_off_state_msg = το αρχείο πληροφοριών μπορεί να βρεθεί στο: %1$S
+
+# LOCALIZATION NOTE (debug_mode_on_state_msg):
+# %1$S will be replaced by the full path file name of the debug log.
+debug_mode_on_state_msg = κατάσταση αποσφαλμάτωσης ενεργή, το αρχείο πληροφοριών είναι στο: %1$S
+
+# LOCALIZATION NOTE (aec_logging_msg_label, aec_logging_off_state_label,
+# aec_logging_on_state_label, aec_logging_on_state_msg):
+# AEC is an abbreviation for Acoustic Echo Cancellation.
+aec_logging_msg_label = Καταγραφή AEC
+aec_logging_off_state_label = Έναρξη καταγραφής AEC
+aec_logging_on_state_label = Διακοπή καταγραφής AEC
+aec_logging_on_state_msg = Καταγραφή AEC ενεργή (μιλήστε με τον καλών για λίγα λεπτά και μετά σταματήστε την καταγραφή)
+
+# LOCALIZATION NOTE (aec_logging_off_state_msg):
+# %1$S will be replaced by the full path to the directory containing the captured log files.
+# AEC is an abbreviation for Acoustic Echo Cancellation.
+aec_logging_off_state_msg = τα αρχεία καταγραφής μπορούν να βρεθούν στο: %1$S
+
+# LOCALIZATION NOTE (peer_connection_id_label): "PeerConnection" is a proper noun
+# associated with the WebRTC module. "ID" is an abbreviation for Identifier. This string
+# should not normally be translated and is used as a data label.
+peer_connection_id_label = PeerConnection ID
+
+# LOCALIZATION NOTE (sdp_heading, local_sdp_heading, remote_sdp_heading, sdp_history_heading, sdp_parsing_errors_heading):
+# "SDP" is an abbreviation for Session Description Protocol, an IETF standard.
+# See http://wikipedia.org/wiki/Session_Description_Protocol
+sdp_heading = SDP
+local_sdp_heading = Τοπικό SDP
+remote_sdp_heading = Απομακρυσμένο SDP
+
+sdp_history_heading = Ιστορικό SDP
+sdp_parsing_errors_heading = Σφάλματα ανάλυσης SDP
+# LOCALIZATION NOTE (sdp_set_at_timestamp): the local or remote SDP and when it was set
+# %1$S will be replaced by local_sdp_heading or remote sdp_heading and %2$S
+# will be a numeric timestamp.
+sdp_set_at_timestamp = Ορισμός %1$S στη χρονική σήμανση %2$S
+# LOCALIZATION NOTE (sdp_set_timestamp): the absolute and relative times
+# when the sdp was set. %1$S and $2$S are both numeric timestamps. The
+# first is the absolute time, the second is the elapsed time since the
+# first sdp was set. ms is an abbreviation for milliseconds.
+sdp_set_timestamp = Χρονική σήμανση %1$S (+ %2$S ms)
+# LOCALIZATION NOTE (offer, answer):
+# offer and answer describe whether the local sdp is an offer or answer or
+# the remote sdp is an offer or answer. These are appended to the local and
+# remote sdp headings.
+offer = Προσφορά
+answer = Απάντηση
+
+# LOCALIZATION NOTE (rtp_stats_heading): "RTP" is an abbreviation for the
+# Real-time Transport Protocol, an IETF specification, and should not
+# normally be translated. "Stats" is an abbreviation for Statistics.
+rtp_stats_heading = Στατιστικά RTP
+
+# LOCALIZATION NOTE (ice_state, ice_stats_heading): "ICE" is an abbreviation
+# for Interactive Connectivity Establishment, which is an IETF protocol,
+# and should not normally be translated. "Stats" is an abbreviation for
+# Statistics.
+ice_state = Κατάσταση ICE
+ice_stats_heading = Στατιστικά ICE
+ice_restart_count_label = Επανεκκινήσεις ICE
+ice_rollback_count_label = Ακυρώσεις ICE
+ice_pair_bytes_sent = Απεσταλμένα bytes
+ice_pair_bytes_received = Ληφθέντα bytes
+ice_component_id = Αναγνωριστικό στοιχείου
+
+# LOCALIZATION NOTE (avg_bitrate_label, avg_framerate_label): "Avg." is an abbreviation
+# for Average. These are used as data labels.
+avg_bitrate_label = Μέσος ρυθμός δεδομένων bit
+avg_framerate_label = Μέσος αριθμός ρυθμού πλαισίων
+
+# LOCALIZATION NOTE (typeLocal, typeRemote): These adjectives are used to label a
+# line of statistics collected for a peer connection. The data represents
+# either the local or remote end of the connection.
+typeLocal = Τοπικά
+typeRemote = Απομακρυσμένα
+
+# LOCALIZATION NOTE (nominated): This adjective is used to label a table column.
+# Cells in this column contain the localized javascript string representation of "true"
+# or are left blank.
+nominated = Υποψήφια
+
+# LOCALIZATION NOTE (selected): This adjective is used to label a table column.
+# Cells in this column contain the localized javascript string representation of "true"
+# or are left blank. This represents an attribute of an ICE candidate.
+selected = Επιλεγμένα
+
+# LOCALIZATION NOTE (trickle_caption_msg2, trickle_highlight_color_name2): ICE
+# candidates arriving after the remote answer arrives are considered trickled
+# (an attribute of an ICE candidate). These are highlighted in the ICE stats
+# table with light blue background. %S is replaced by
+# trickle_highlight_color_name2 ("blue"), highlighted with a light blue
+# background to visually match the trickled ICE candidates.
+trickle_caption_msg2 = Οι αργοί υποψήφιοι (που φθάνουν μετά από απάντηση) επισημαίνονται με %S
+trickle_highlight_color_name2 = μπλε
+
+save_page_label = Αποθήκευση σελίδας
+debug_mode_msg_label = Λειτουργία αποσφαλμάτωσης
+debug_mode_off_state_label = Έναρξη λειτουργίας αποσφαλμάτωσης
+debug_mode_on_state_label = Διακοπή λειτουργίας αποσφαλμάτωσης
+stats_heading = Στατιστικά συνεδρίας
+stats_clear = Εκκαθάριση ιστορικού
+log_heading = Αρχείο καταγραφής σύνδεσης
+log_clear = Εκκαθάριση αρχείου καταγραφής
+log_show_msg = εμφάνιση αρχείου καταγραφής
+log_hide_msg = απόκρυψη αρχείου καταγραφής
+connection_closed = έκλεισε
+local_candidate = Τοπικός υποψήφιος
+remote_candidate = Απομακρυσμένος υποψήφιος
+raw_candidates_heading = Όλοι οι ανεπεξέργαστοι υποψήφιοι
+raw_local_candidate = Ανεπεξέργαστος τοπικός υποψήφιος
+raw_remote_candidate = Ανεπεξέργαστος απομακρυσμένος υποψήφιος
+raw_cand_show_msg = εμφάνιση ανεπεξέργαστων υποψήφιων
+raw_cand_hide_msg = απόκρυψη ανεπεξέργαστων υποψήφιων
+priority = Προτεραιότητα
+fold_show_msg = εμφάνιση λεπτομερειών
+fold_show_hint = κάντε κλικ για επέκταση ενότητας
+fold_hide_msg = απόκρυψη λεπτομερειών
+fold_hide_hint = κάντε κλικ για σύμπτυξη ενότητας
+dropped_frames_label = Απορριφθέντα πλαίσια
+discarded_packets_label = Απορριφθέντα πακέτα
+decoder_label = Αποκωδικοποιητής
+encoder_label = Κωδικοποιητής
+received_label = Λήφθησαν
+packets = πακέτα
+lost_label = Χάθηκαν
+jitter_label = Διακύμανση
+sent_label = Απεσταλμένα
+
+show_tab_label = Εμφάνιση καρτέλας
+
+frame_stats_heading = Στατιστικά καρέ βίντεο
+n_a = Μ/Δ
+width_px = Πλάτος (px)
+height_px = Ύψος (px)
+consecutive_frames = Διαδοχικά καρέ
+time_elapsed = Χρόνος που έχει παρέλθει (s)
+estimated_framerate = Εκτιμώμενος ρυθμός καρέ
+rotation_degrees = Περιστροφή (μοίρες)
+first_frame_timestamp = Χρονική σήμανση λήψης πρώτου καρέ
+last_frame_timestamp = Χρονική σήμανση λήψης τελευταίου καρέ
+# SSRCs are identifiers that represent endpoints in an RTP stream
+# This is an SSRC on the local side of the connection that is receiving RTP
+local_receive_ssrc = Τοπική λήψη SSRC
+# This is an SSRC on the remote side of the connection that is sending RTP
+remote_send_ssrc = Απομακρυσμένη αποστολή SSRC
+# An option whose value will not be displayed but instead noted as having been
+# provided
+configuration_element_provided = Παρέχεται
+# An option whose value will not be displayed but instead noted as having not
+# been provided
+configuration_element_not_provided = Δεν παρέχεται
+# The options set by the user in about:config that could impact a WebRTC call
+custom_webrtc_configuration_heading = Προτιμήσεις χρήστη για το WebRTC
+
+# Section header for estimated bandwidths of WebRTC media flows
+bandwidth_stats_heading = Εκτιμώμενο εύρος ζώνης
+# The ID of the MediaStreamTrack
+track_identifier = Αναγνωριστικό κομματιού
+# The estimated bandwidth available for sending WebRTC media in bytes per second
+send_bandwidth_bytes_sec = Εύρος ζώνης αποστολής (bytes/δ)
+# The estimated bandwidth available for receiving WebRTC media in bytes per second
+receive_bandwidth_bytes_sec = Εύρος ζώνης λήψης (bytes/δ)
+# Maximum number of bytes per second that will be padding zeros at the ends of packets
+max_padding_bytes_sec = Μέγιστο padding (bytes/δ)
+# The amount of time inserted between packets to keep them spaced out
+pacer_delay_ms = Καθυστέρηση pacer (ms)
+# The amount of time it takes for a packet to travel from the local machine to the remote machine,
+# and then have a packet return
+round_trip_time_ms = RTT ms
+
diff --git a/l10n-el/toolkit/chrome/global/appPicker.dtd b/l10n-el/toolkit/chrome/global/appPicker.dtd
new file mode 100644
index 0000000000..976b5c0ce9
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/appPicker.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 NoAppFound.label "Δεν βρέθηκαν εφαρμογές για αυτό τον τύπο αρχείου.">
+<!ENTITY BrowseButton.label "Περιήγηση…">
+<!ENTITY SendMsg.label "Αποστολή αυτού του αντικειμένου σε:">
diff --git a/l10n-el/toolkit/chrome/global/autocomplete.properties b/l10n-el/toolkit/chrome/global/autocomplete.properties
new file mode 100644
index 0000000000..039129eb08
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/autocomplete.properties
@@ -0,0 +1,29 @@
+# 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 (searchWithEngine, searchInPrivateWindowWithEngine): %S will
+# be replaced with the search engine provider's name. This format was chosen
+# because the provider can also end with "Search" (e.g.: MSN Search).
+searchWithEngine = Αναζήτηση με %S
+
+searchInPrivateWindowWithEngine = Αναζήτηση με %S σε ιδιωτικό παράθυρο
+
+# LOCALIZATION NOTE (searchInPrivateWindow): Used when the private browsing
+# engine is the same as the default engine.
+searchInPrivateWindow = Αναζήτηση σε ιδιωτικό παράθυρο
+
+# LOCALIZATION NOTE (switchToTab2): This is the same as the older switchToTab
+# string that it's replacing, except it uses title case, so "Switch" and "Tab"
+# are capitalized.
+switchToTab2 = Εναλλαγή σε καρτέλα
+
+# LOCALIZATION NOTE (visit): This is shown next to autocomplete entries that are
+# simple URLs or sites, which will be visited when the user selects them.
+visit = Επίσκεψη
+
+# LOCALIZATION NOTE (bookmarkKeywordSearch): This is the title of autocomplete
+# entries that are bookmark keyword searches. %1$S will be replaced with the
+# domain name of the bookmark, and %2$S will be replaced with the keyword
+# search text that the user is typing. %2$S will not be empty.
+bookmarkKeywordSearch = %1$S: %2$S
diff --git a/l10n-el/toolkit/chrome/global/browser.properties b/l10n-el/toolkit/chrome/global/browser.properties
new file mode 100644
index 0000000000..a1fbf5094b
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/browser.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/.
+
+formPostSecureToInsecureWarning.title = Προειδοποίηση ασφαλείας
+formPostSecureToInsecureWarning.message = Οι πληροφορίες που έχετε εισάγει σε αυτή την ιστοσελίδα θα σταλούν μέσω μιας μη ασφαλούς σύνδεσης και θα είναι ορατές από τρίτους.\n\nΕίστε βέβαιοι ότι θέλετε να στείλετε αυτές τις πληροφορίες;
+formPostSecureToInsecureWarning.continue = Συνέχεια
diff --git a/l10n-el/toolkit/chrome/global/charsetMenu.dtd b/l10n-el/toolkit/chrome/global/charsetMenu.dtd
new file mode 100644
index 0000000000..37df08e860
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/charsetMenu.dtd
@@ -0,0 +1,5 @@
+<!-- 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 charsetMenu2.label "Κωδικοποίηση κειμένου">
diff --git a/l10n-el/toolkit/chrome/global/charsetMenu.properties b/l10n-el/toolkit/chrome/global/charsetMenu.properties
new file mode 100644
index 0000000000..2927a4dba5
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/charsetMenu.properties
@@ -0,0 +1,127 @@
+# 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: The property keys ending with ".key" are for access keys.
+# Localizations may add or delete properties where the property key ends with
+# ".key" as appropriate for the localization. The code that uses this data can
+# deal with the absence of an access key for an item.
+#
+# For gbk, gbk.bis and gbk.bis.key are used to trigger string changes in
+# localizations.
+#
+# In the en-US version of this file, access keys are given to the following:
+# * UTF-8
+# * All encodings that are the fallback encoding for some locale in Firefox
+# * All encodings that are the fallback encoding for some locale in IE
+# * All Japanese encodings
+#
+# For the items whose property key does not end in ".key" and whose value
+# includes "(" U+0028 LEFT PARENTHESIS, the "(" character is significant for
+# processing by CharsetMenu.jsm. If your localization does not use ASCII
+# parentheses where en-US does in this file, please file a bug to make
+# CharsetMenu.jsm also recognize the delimiter your localization uses.
+# (When this code was developed, all localizations appeared to use
+# U+0028 LEFT PARENTHESIS for this purpose.)
+
+# Auto-Detect (sub)menu
+charsetMenuCharsets = Κωδικοποίηση χαρακτήρων
+charsetMenuAutodet = Αυτόματος εντοπισμός
+# 'A' is reserved for Arabic:
+charsetMenuAutodet.key = ε
+charsetMenuAutodet.off = (ανενεργό)
+charsetMenuAutodet.off.key = α
+charsetMenuAutodet.ru = Ρώσικα
+charsetMenuAutodet.ru.key = Ρ
+charsetMenuAutodet.uk = Ουκρανικά
+charsetMenuAutodet.uk.key = Ο
+
+# Globally-relevant
+
+_autodetect_all.key = μ
+_autodetect_all = Αυτόματο
+UTF-8.key = U
+UTF-8 = Unicode
+windows-1252.key = Δ
+windows-1252 = Δυτικά
+
+# Arabic
+windows-1256.key = Α
+windows-1256 = Αραβικά (Windows)
+ISO-8859-6 = Αραβικά (ISO)
+
+# Baltic
+windows-1257.key = Β
+windows-1257 = Βαλτικά (Windows)
+ISO-8859-4 = Βαλτικά (ISO)
+
+# Central European
+windows-1250.key = Ε
+windows-1250 = Κεντρική Ευρώπη (Windows)
+ISO-8859-2.key = υ
+ISO-8859-2 = Κεντρική Ευρώπη (ISO)
+
+# Chinese, Simplified
+gbk.bis.key = Α
+gbk.bis = Κινέζικα, Απλοποιημένα
+
+# Chinese, Traditional
+Big5.key = Π
+Big5 = Κινεζικά, Παραδοσιακά
+
+# Cyrillic
+windows-1251.key = Κ
+windows-1251 = Κυριλλικά (Windows)
+ISO-8859-5 = Κυριλλικά (ISO)
+KOI8-R = Κυριλλικά (KOI8-R)
+KOI8-U = Κυριλλικά (KOI8-U)
+IBM866 = Κυριλλικά (DOS)
+
+# UI string in anticipation of Cyrillic analog of bug 1543077;
+# deliberately not in use yet
+
+# LOCALIZATION NOTE (Cyrillic.key): If taken into use, this string will appear
+# instead of the string for windows-1251.key, so the use of the same
+# accelerator is deliberate.
+Cyrillic.key = λ
+# LOCALIZATION NOTE (Cyrillic): If taken into use, this string will appear
+# as a single item instead of the five items windows-1251, ISO-8859-5,
+# KOI8-R, KOI8-U, and IBM866, so this string does not need to make sense
+# together with those strings and should be translated the way those were
+# but omitting the part in parentheses.
+Cyrillic = Κυριλλικά
+
+# Greek
+windows-1253.key = η
+windows-1253 = Ελληνικά (Windows)
+ISO-8859-7.key = O
+ISO-8859-7 = Ελληνικά (ISO)
+
+# Hebrew
+windows-1255.key = Ε
+windows-1255 = Εβραϊκά
+# LOCALIZATION NOTE (ISO-8859-8): The value for this item should begin with
+# the same word for Hebrew as the value for windows-1255 so that this item
+# sorts right after that one in the collation order for your locale.
+ISO-8859-8 = Εβραϊκά, Οπτικά
+
+# Japanese (NOT AN ENCODING NAME)
+Japanese.key = Ι
+Japanese = Ιαπωνικά
+
+# Korean
+EUC-KR.key = τ
+EUC-KR = Κορεατικά
+
+# Thai
+windows-874.key = λ
+windows-874 = Ταϊλανδικά
+
+# Turkish
+windows-1254.key = ι
+windows-1254 = Τουρκικά
+
+# Vietnamese
+windows-1258.key = ζ
+windows-1258 = Βιετναμέζικα
+
diff --git a/l10n-el/toolkit/chrome/global/commonDialog.dtd b/l10n-el/toolkit/chrome/global/commonDialog.dtd
new file mode 100644
index 0000000000..1ce511269d
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/commonDialog.dtd
@@ -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/. -->
+
+<!ENTITY editfield0.label "Όνομα χρήστη:">
+<!ENTITY editfield1.label "Κωδικός πρόσβασης:">
+<!ENTITY copyCmd.label "Αντιγραφή">
+<!ENTITY copyCmd.accesskey "Α">
+<!ENTITY selectAllCmd.label "Επιλογή όλων">
+<!ENTITY selectAllCmd.accesskey "λ">
diff --git a/l10n-el/toolkit/chrome/global/commonDialogs.properties b/l10n-el/toolkit/chrome/global/commonDialogs.properties
new file mode 100644
index 0000000000..dcc9ab6c01
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/commonDialogs.properties
@@ -0,0 +1,35 @@
+# 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/.
+
+Alert=Προειδοποίηση
+Confirm=Επιβεβαίωση
+ConfirmCheck=Επιβεβαίωση
+Prompt=Ερώτηση
+# LOCALIZATION NOTE - %S is brandFullName
+PromptUsernameAndPassword3=Απαιτείται εξουσιοδότηση - %S
+# LOCALIZATION NOTE - %S is brandFullName
+PromptPassword3=Απαιτείται κωδικός πρόσβασης - %S
+Select=Επιλογή
+OK=OK
+Cancel=Ακύρωση
+Yes=&Ναι
+No=&Όχι
+Save=&Αποθήκευση
+Revert=&Επαναφορά
+DontSave=Να μη γίνει αποθήκευση
+ScriptDlgGenericHeading=[Εφαρμογή JavaScript]
+ScriptDlgHeading=Η σελίδα στο %S δηλώνει:
+ScriptDlgNullPrincipalHeading=Αυτή η σελίδα λέει:
+ScriptDialogLabel=Αποτροπή δημιουργίας επιπρόσθετων διαλόγων από αυτήν τη σελίδα
+ScriptDialogPreventTitle=Επιβεβαίωση προτίμησης διαλόγων
+# LOCALIZATION NOTE (EnterLoginForRealm3, EnterLoginForProxy3):
+# %1 is an untrusted string provided by a remote server. It could try to
+# take advantage of sentence structure in order to mislead the user (see
+# bug 244273). %1 should be integrated into the translated sentences as
+# little as possible. %2 is the url of the site being accessed.
+EnterLoginForRealm3=Το %2$S ζητάει το όνομα χρήστη και τον κωδικό πρόσβασής σας. Η ιστοσελίδα αναφέρει: “%1$S”
+EnterLoginForProxy3=Ο διαμεσολαβητής %2$S ζητάει ένα όνομα χρήστη και κωδικό πρόσβασης. Η ιστοσελίδα αναφέρει: “%1$S”
+EnterUserPasswordFor2=Το %1$S ζητάει το όνομα χρήστη και τον κωδικό πρόσβασής σας.
+EnterUserPasswordForCrossOrigin2=Το %1$S ζητάει το όνομα χρήστη και τον κωδικό πρόσβασής σας. ΠΡΟΕΙΔΟΠΟΙΗΣΗ: Ο κωδικός πρόσβασής σας δεν θα αποσταλεί στην ιστοσελίδα που επισκέπτεστε τώρα!
+EnterPasswordFor=Εισάγετε κωδικό για %1$S σε %2$S
diff --git a/l10n-el/toolkit/chrome/global/contentAreaCommands.properties b/l10n-el/toolkit/chrome/global/contentAreaCommands.properties
new file mode 100644
index 0000000000..642ad0a2be
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/contentAreaCommands.properties
@@ -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/.
+
+# context menu strings
+
+SaveImageTitle=Αποθήκευση εικόνας
+SaveMediaTitle=Αποθήκευση μέσου
+SaveVideoTitle=Αποθήκευση βίντεο
+SaveAudioTitle=Αποθήκευση ήχου
+SaveLinkTitle=Αποθήκευση ως
+DefaultSaveFileName=κατάλογος
+WebPageCompleteFilter=Ιστοσελίδα, πλήρης
+WebPageHTMLOnlyFilter=Ιστοσελίδα, μόνο HTML
+WebPageXHTMLOnlyFilter=Ιστοσελίδα, μόνο XHTML
+WebPageSVGOnlyFilter=Ιστοσελίδα, μόνο SVG
+WebPageXMLOnlyFilter=Ιστοσελίδα, μόνο XML
+
+# LOCALIZATION NOTE (filesFolder):
+# This is the name of the folder that is created parallel to a HTML file
+# when it is saved "With Images". The %S section is replaced with the
+# leaf name of the file being saved (minus extension).
+filesFolder=%S_files
diff --git a/l10n-el/toolkit/chrome/global/datetimebox.dtd b/l10n-el/toolkit/chrome/global/datetimebox.dtd
new file mode 100644
index 0000000000..f370e9b9a6
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/datetimebox.dtd
@@ -0,0 +1,35 @@
+<!-- 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/. -->
+
+<!-- Placeholders for input type=time -->
+
+<!ENTITY time.hour.placeholder "--">
+<!ENTITY time.minute.placeholder "--">
+<!ENTITY time.second.placeholder "--">
+<!ENTITY time.millisecond.placeholder "--">
+<!ENTITY time.dayperiod.placeholder "--">
+
+<!-- Field labels for input type=time -->
+
+<!ENTITY time.hour.label "Ώρες">
+<!ENTITY time.minute.label "Λεπτά">
+<!ENTITY time.second.label "Δευτερόλεπτα">
+<!ENTITY time.millisecond.label "Χιλιοστά δευτερολέπτου">
+<!ENTITY time.dayperiod.label "ΠΜ/ΜΜ">
+
+<!-- Placeholders for input type=date -->
+
+<!ENTITY date.year.placeholder "εεεε">
+<!ENTITY date.month.placeholder "μμ">
+<!ENTITY date.day.placeholder "ηη">
+
+<!-- Field labels for input type=date -->
+
+<!ENTITY date.year.label "Έτος">
+<!ENTITY date.month.label "Μήνας">
+<!ENTITY date.day.label "Ημέρα">
+
+<!-- Date/time clear button -->
+
+<!ENTITY datetime.reset.label "Εκκαθάριση">
diff --git a/l10n-el/toolkit/chrome/global/dialog.properties b/l10n-el/toolkit/chrome/global/dialog.properties
new file mode 100644
index 0000000000..55d85e5cf0
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/dialog.properties
@@ -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/.
+
+button-accept=OK
+button-cancel=Ακύρωση
+button-help=Βοήθεια
+button-disclosure=Περισσότερες πληροφορίες
+accesskey-accept=
+accesskey-cancel=
+accesskey-help=Β
+accesskey-disclosure=Π
diff --git a/l10n-el/toolkit/chrome/global/dialogOverlay.dtd b/l10n-el/toolkit/chrome/global/dialogOverlay.dtd
new file mode 100644
index 0000000000..7263b4b86f
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/dialogOverlay.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/. -->
+
+<!-- WARNING!!! This file is obsoleted by the dialog.xml widget -->
+
+<!-- OK Cancel Buttons -->
+<!ENTITY okButton.label "OK">
+<!ENTITY cancelButton.label "Ακύρωση">
diff --git a/l10n-el/toolkit/chrome/global/editMenuOverlay.dtd b/l10n-el/toolkit/chrome/global/editMenuOverlay.dtd
new file mode 100644
index 0000000000..94a831c03c
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/editMenuOverlay.dtd
@@ -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/. -->
+
+<!ENTITY findCmd.label "Εύρεση">
+<!ENTITY findCmd.key "F">
+<!ENTITY findCmd.accesskey "ρ">
+<!ENTITY findAgainCmd.label "Εύρεση ξανά">
+<!ENTITY findAgainCmd.key "G">
+<!ENTITY findAgainCmd.key2 "VK_F3">
+<!ENTITY findAgainCmd.accesskey "ξ">
diff --git a/l10n-el/toolkit/chrome/global/extensions.properties b/l10n-el/toolkit/chrome/global/extensions.properties
new file mode 100644
index 0000000000..e1666ecdb2
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/extensions.properties
@@ -0,0 +1,44 @@
+# 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/.
+
+csp.error.missing-directive = Λείπει από την πολιτική μια απαραίτητη οδηγία «%S»
+
+#LOCALIZATION NOTE (csp.error.illegal-keyword) %1$S is the name of a CSP directive, such as "script-src". %2$S is the name of a CSP keyword, usually 'unsafe-inline'.
+csp.error.illegal-keyword = Η οδηγία «%1$S» περιέχει μια απαγορευμένη λέξη-κλειδί %2$S
+
+#LOCALIZATION NOTE (csp.error.illegal-protocol) %2$S a protocol name, such as "http", which appears as "http:", as it would in a URL.
+csp.error.illegal-protocol = Η οδηγία «%1$S» περιέχει μια απαγορευμένη πηγή %2$S: πρωτοκόλλου
+
+#LOCALIZATION NOTE (csp.error.missing-host) %2$S a protocol name, such as "http", which appears as "http:", as it would in a URL.
+csp.error.missing-host = Το %2$S: πρωτόκολλο απαιτεί έναν υπολογιστή στις οδηγίες «%1$S»
+
+#LOCALIZATION NOTE (csp.error.missing-source) %1$S is the name of a CSP directive, such as "script-src". %2$S is the name of a CSP source, usually 'self'.
+csp.error.missing-source = Η οδηγία «%1$S» πρέπει να περιλαμβάνει την πηγή %2$S
+
+#LOCALIZATION NOTE (csp.error.illegal-host-wildcard) %2$S a protocol name, such as "http", which appears as "http:", as it would in a URL.
+csp.error.illegal-host-wildcard = Οι %2$S: πηγές με μπαλαντέρ στις οδηγίες «%1$S» πρέπει να περιλαμβάνουν τουλάχιστον ένα μη γενικό υποτομέα (π.χ., *.example.com αντί για *.com)
+
+#LOCALIZATION NOTE (uninstall.confirmation.title) %S is the name of the extension which is about to be uninstalled.
+uninstall.confirmation.title = Απεγκατάσταση του %S
+
+#LOCALIZATION NOTE (uninstall.confirmation.message) %S is the name of the extension which is about to be uninstalled.
+uninstall.confirmation.message = Η επέκταση “%S” ζητά να απεγκατασταθεί. Τι επιθυμείτε να κάνετε;
+
+uninstall.confirmation.button-0.label = Απεγκατάσταση
+uninstall.confirmation.button-1.label = Να παραμείνει εγκατεστημένη
+
+saveaspdf.saveasdialog.title = Αποθήκευση ως
+
+#LOCALIZATION NOTE (newTabControlled.message2) %S is the icon and name of the extension which updated the New Tab page.
+newTabControlled.message2 = Μια επέκταση, το %S, άλλαξε την σελίδα που βλέπετε όταν ανοίγετε μια νέα καρτέλα.
+newTabControlled.learnMore = Μάθετε περισσότερα
+
+#LOCALIZATION NOTE (homepageControlled.message) %S is the icon and name of the extension which updated the homepage.
+homepageControlled.message = Μια επέκταση, το %S, άλλαξε αυτά που βλέπετε όταν ανοίγετε την αρχική σελίδα και νέα παράθυρα.
+homepageControlled.learnMore = Μάθετε περισσότερα
+
+#LOCALIZATION NOTE (tabHideControlled.message) %1$S is the icon and name of the extension which hid tabs, %2$S is the icon of the all tabs button.
+tabHideControlled.message = Μια επέκταση, το %1$S, αποκρύπτει κάποιες από τις καρτέλες σας. Μπορείτε να έχετε πρόσβαση σε όλες τις καρτέλες σας από το %2$S.
+tabHideControlled.learnMore = Μάθετε περισσότερα
+
diff --git a/l10n-el/toolkit/chrome/global/fallbackMenubar.properties b/l10n-el/toolkit/chrome/global/fallbackMenubar.properties
new file mode 100644
index 0000000000..2cde684b04
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/fallbackMenubar.properties
@@ -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/.
+
+# OSX only. Default menu label when there is no xul menubar.
+
+quitMenuitem.label=Έξοδος
+quitMenuitem.key=q
diff --git a/l10n-el/toolkit/chrome/global/filepicker.properties b/l10n-el/toolkit/chrome/global/filepicker.properties
new file mode 100644
index 0000000000..c3f6ce07a6
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/filepicker.properties
@@ -0,0 +1,17 @@
+# 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: The extensions to which these descriptions refer
+# now live in toolkit/content/filepicker.properties
+allTitle=Όλα τα αρχεία
+htmlTitle=Αρχεία HTML
+textTitle=Αρχεία κειμένου
+imageTitle=Αρχεία εικόνας
+xmlTitle=Αρχεία XML
+xulTitle=Αρχεία XUL
+appsTitle=Εφαρμογές
+audioTitle=Αρχεία ήχου
+videoTitle=Αρχεία βίντεο
+
+formatLabel=Μορφή:
diff --git a/l10n-el/toolkit/chrome/global/findbar.properties b/l10n-el/toolkit/chrome/global/findbar.properties
new file mode 100644
index 0000000000..cc15ef2aab
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/findbar.properties
@@ -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/.
+
+# strings used by the Find bar, split from browser.properties
+NotFound=Η φράση δεν βρέθηκε
+WrappedToTop=Τέλος της σελίδας, συνέχεια από την αρχή
+WrappedToBottom=Αρχή της σελίδας, συνέχεια από το τέλος
+NormalFind=Εύρεση στη σελίδα
+FastFind=Γρήγορη εύρεση
+FastFindLinks=Γρήγορη εύρεση (μόνο δεσμοί)
+CaseSensitive=(Ταίριασμα πεζών/κεφαλαίων)
+MatchDiacritics=(Αντιστοίχιση διακριτικών)
+EntireWord=(Μόνο ολόκληρες λέξεις)
+# LOCALIZATION NOTE (FoundMatches): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is currently selected match and #2 the total amount of matches.
+FoundMatches=#1 από #2 ταίριασμα;#1 από #2 ταιριάσματα
+# LOCALIZATION NOTE (FoundMatchesCountLimit): Semicolon-separated list of plural
+# forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the total amount of matches allowed before counting stops.
+FoundMatchesCountLimit=Περισσότερα από #1 ταίριασμα;Περισσότερα από #1 ταιριάσματα
diff --git a/l10n-el/toolkit/chrome/global/global-extension-fields.properties b/l10n-el/toolkit/chrome/global/global-extension-fields.properties
new file mode 100644
index 0000000000..f78f8e986f
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/global-extension-fields.properties
@@ -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/.
+
+# LOCALIZATION NOTE (extension.default-theme@mozilla.org.name, extension.default-theme@mozilla.org.description): This is displayed in about:addons -> Appearance
+extension.default-theme@mozilla.org.name=Προεπιλογή
+extension.default-theme@mozilla.org.description=Ένα θέμα με το συνδυασμό χρωμάτων του λειτουργικού συστήματος.
+
diff --git a/l10n-el/toolkit/chrome/global/globalKeys.dtd b/l10n-el/toolkit/chrome/global/globalKeys.dtd
new file mode 100644
index 0000000000..76b9235713
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/globalKeys.dtd
@@ -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/. -->
+
+<!ENTITY openHelp.commandkey "VK_F1">
+<!ENTITY openHelpMac.commandkey "?">
diff --git a/l10n-el/toolkit/chrome/global/intl.css b/l10n-el/toolkit/chrome/global/intl.css
new file mode 100644
index 0000000000..4383d82a12
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/intl.css
@@ -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/. */
+
+/*
+ * This file contains all localizable skin settings such as
+ * font, layout, and geometry
+ */
+window {
+ font: 3.2mm tahoma,arial,helvetica,verdana,sans-serif;
+}
diff --git a/l10n-el/toolkit/chrome/global/intl.properties b/l10n-el/toolkit/chrome/global/intl.properties
new file mode 100644
index 0000000000..d0d0f30609
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/intl.properties
@@ -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/.
+
+# LOCALIZATION NOTE (intl.accept_languages):
+# This is a comma-separated list of valid BCP 47 language tags.
+#
+# Begin with the value of 'general.useragent.locale'. Next, include language
+# tags for other languages that you expect most users of your locale to be
+# able to speak, so that their browsing experience degrades gracefully if
+# content is not available in their primary language.
+#
+# It is recommended that you include "en-US, en" at the end of the list as a
+# last resort. However, if you know that users of your locale would prefer a
+# different variety of English, or if they are not likely to understand
+# English at all, you may opt to include a different English language tag, or
+# to exclude English altogether.
+#
+# For example, the Breton [br] locale might consider including French and
+# British English in their list, since those languages are commonly spoken in
+# the same area as Breton:
+# intl.accept_languages=br, fr-FR, fr, en-GB, en
+intl.accept_languages=el-GR, el, en-US, en
+
+# LOCALIZATION NOTE (font.language.group):
+# This preference controls the initial setting of the language drop-down menu
+# in the Content > Fonts & Colors > Advanced preference panel.
+#
+# Set it to the value of one of the menuitems in the "selectLangs" menulist in
+# http://mxr.mozilla.org/mozilla/source/browser/components/preferences/fonts.xul
+font.language.group=el
+
+# LOCALIZATION NOTE (intl.charset.detector):
+# This preference controls the initial setting for the character encoding
+# detector. Valid values are ja_parallel_state_machine for Japanese, ruprob
+# for Russian and ukprob for Ukrainian and the empty string to turn detection
+# off. The value must be empty for locales other than Japanese, Russian and
+# Ukrainian.
+intl.charset.detector=
+
+# LOCALIZATION NOTE (pluralRule): Pick the appropriate plural rule for your
+# language. This will determine how many plural forms of a word you will need
+# to provide and in what order.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+pluralRule=1
+
+# LOCALIZATION NOTE (intl.menuitems.alwaysappendaccesskeys, intl.menuitems.insertseparatorbeforeaccesskeys):
+# Valid values are: true, false, <empty string>
+# Missing preference or empty value equals false.
+intl.menuitems.alwaysappendaccesskeys=
+intl.menuitems.insertseparatorbeforeaccesskeys=true
diff --git a/l10n-el/toolkit/chrome/global/keys.properties b/l10n-el/toolkit/chrome/global/keys.properties
new file mode 100644
index 0000000000..b45b14fb6f
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/keys.properties
@@ -0,0 +1,70 @@
+# 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 : FILE This file contains the application's labels for keys on the keyboard.
+# If you decide to translate this file, you should translate it based on
+# the prevalent kind of keyboard for your target user.
+# LOCALIZATION NOTE : There are two types of keys, those w/ text on their labels
+# and those w/ glyphs.
+# LOCALIZATION NOTE : VK_<…> represents a key on the keyboard.
+#
+# For more information please see bugzilla bug 90888.
+
+# F1..F10 should probably not be translated unless there are keyboards that actually have other labels
+# F11..F20 might be something else, but are really keyboard specific and not region/language specific
+# there are actually two different F11/F12 keys, I don't know which one these labels represent.
+# eg, F13..F20 on a sparc keyboard are labeled Props, Again .. Find, Cut
+# sparc also has Stop, Again and F11/F12. VK_F11/VK_F12 probably map to Stop/Again
+# LOCALIZATION NOTE : BLOCK Do not translate the next block
+VK_F1=F1
+VK_F2=F2
+VK_F3=F3
+VK_F4=F4
+VK_F5=F5
+VK_F6=F6
+VK_F7=F7
+VK_F8=F8
+VK_F9=F9
+VK_F10=F10
+
+VK_F11=F11
+VK_F12=F12
+VK_F13=F13
+VK_F14=F14
+VK_F15=F15
+VK_F16=F16
+VK_F17=F17
+VK_F18=F18
+VK_F19=F19
+VK_F20=F20
+# LOCALIZATION NOTE : BLOCK end do not translate block
+
+# LOCALIZATION NOTE : BLOCK GLYPHS, DO translate this block
+VK_UP=Επάνω βέλος
+VK_DOWN=Κάτω βέλος
+VK_LEFT=Αριστερό βέλος
+VK_RIGHT=Δεξί βέλος
+VK_PAGE_UP=Page Up
+VK_PAGE_DOWN=Page Down
+# LOCALIZATION NOTE : BLOCK end GLYPHS
+
+# Enter, backspace, and Tab might have both glyphs and text
+# if the keyboards usually have a glyph,
+# if there is a meaningful translation,
+# or if keyboards are localized
+# then translate them or insert the appropriate glyph
+# otherwise you should probably just translate the glyph regions
+
+# LOCALIZATION NOTE : BLOCK maybe GLYPHS
+VK_TAB=Tab
+VK_BACK=Backspace
+VK_DELETE=Del
+# LOCALIZATION NOTE : BLOCK end maybe GLYPHS
+# LOCALIZATION NOTE : BLOCK typing state keys
+VK_HOME=Home
+VK_END=End
+
+VK_ESCAPE=Esc
+VK_INSERT=Ins
+# LOCALIZATION NOTE : BLOCK end
diff --git a/l10n-el/toolkit/chrome/global/mozilla.dtd b/l10n-el/toolkit/chrome/global/mozilla.dtd
new file mode 100644
index 0000000000..a049be7d52
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/mozilla.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 mozilla.title.11.14
+'Το Βιβλίο του Mozilla, 11:14'>
+
+<!ENTITY mozilla.quote.11.14
+'Το Θηρίο υιοθέτησε <em>νέα ενδυμασία</em> και μελέτησε τις έννοιες του <em>Χρόνου</em> και του <em>Χώρου</em> και του <em>Φωτός</em> και της <em>Ροής</em> της ενέργειας μέσα στο σύμπαν. Από τις μελέτες του, το Θηρίο διαμόρφωσε νέες δομές από <em>οξειδωμένο μέταλλο</em> και ανακήρυξε τις δόξες τους. Και οι οπαδοί του Θηρίου πανηγύρισαν, καθώς βρήκαν νέο σκοπό σε αυτές τις <em>διδασκαλίες</em>.'>
+
+<!ENTITY mozilla.from.11.14
+'από τη <strong>Βίβλο της Mozilla,</strong> 11:14'>
diff --git a/l10n-el/toolkit/chrome/global/narrate.properties b/l10n-el/toolkit/chrome/global/narrate.properties
new file mode 100644
index 0000000000..7b133432b3
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/narrate.properties
@@ -0,0 +1,20 @@
+# 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/.
+
+# "Listen, which allows users to listen to Firefox reading the text,
+# instead of having to read it themselves." This is the name
+# of the feature and it is the label for the popup button.
+listen = Ακρόαση
+back = Πίσω
+start = Έναρξη
+stop = Διακοπή
+forward = Προώθηση
+speed = Ταχύτητα
+selectvoicelabel = Φωνή:
+# Default voice is determined by the language of the document.
+defaultvoice = Προεπιλογή
+
+# Voice name and language.
+# eg. David (English)
+voiceLabel = %S (%S)
diff --git a/l10n-el/toolkit/chrome/global/notification.dtd b/l10n-el/toolkit/chrome/global/notification.dtd
new file mode 100644
index 0000000000..f90f73165d
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/notification.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/. -->
+
+<!ENTITY closeNotification.tooltip "Κλείσιμο μηνύματος">
+
+<!ENTITY checkForUpdates "Έλεγχος για ενημερώσεις…">
+
+<!ENTITY learnMoreNoEllipsis "Μάθετε περισσότερα">
+
+<!ENTITY defaultButton.label "Εντάξει!">
+<!ENTITY defaultButton.accesskey "Ε">
+
+<!ENTITY moreActionsButton.accessibleLabel "Περισσότερες ενέργειες">
diff --git a/l10n-el/toolkit/chrome/global/printdialog.properties b/l10n-el/toolkit/chrome/global/printdialog.properties
new file mode 100644
index 0000000000..491f8e0cf7
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/printdialog.properties
@@ -0,0 +1,53 @@
+# 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/.
+
+# These strings are used in the native GTK, Mac and Windows print dialogs.
+
+# GTK titles:
+printTitleGTK=Εκτύπωση
+optionsTabLabelGTK=Επιλογές
+
+# Mac titles:
+optionsTitleMac=Επιλογές:
+appearanceTitleMac=Εμφάνιση:
+pageHeadersTitleMac=Κεφαλίδες σελίδας:
+pageFootersTitleMac=Υποσέλιδα σελίδας:
+
+# Windows titles:
+optionsTitleWindows=Επιλογές
+
+# TRANSLATOR NOTE: For radio button labels and check button labels, an underscore _
+# before a character will turn that character into an accesskey in the GTK dialog.
+# e.g. "_As laid out" will make A the accesskey.
+# In the Windows labels, use an ampersand (&).
+# On Mac, underscores will be stripped.
+
+shrinkToFit=Να αγνοείται η κλίμακα και το ταίριασμα στο πλάτος της σελίδας
+selectionOnly=Εκτύπωση _μόνο της επιλογής
+printBGOptions=Εκτύπωση παρασκηνίου
+printBGColors=Εκτύπωση _χρωμάτων παρασκηνίου
+printBGImages=Εκτύπωση ε_ικόνων παρασκηνίου
+headerFooter=Κεφαλίδα και υποσέλιδο
+left=Αριστερά
+center=Κέντρο
+right=Δεξιά
+headerFooterBlank=--κενή--
+headerFooterTitle=Τίτλος
+headerFooterURL=URL
+headerFooterDate=Ημερομηνία/Ώρα
+headerFooterPage=Σελίδα #
+headerFooterPageTotal=Σελίδα # από #
+headerFooterCustom=Προσαρμογή…
+customHeaderFooterPrompt=Παρακαλώ εισάγετε το προσαρμοσμένο κείμενο κεφαλίδας/υποσέλιδου
+
+# These are for the summary view in the Mac dialog:
+summarySelectionOnlyTitle=Εκτύπωση επιλογής
+summaryShrinkToFitTitle=Προσαρμογή στη σελίδα
+summaryPrintBGColorsTitle=Εκτύπωση χρωμάτων BG
+summaryPrintBGImagesTitle=Εκτύπωση εικόνων BG
+summaryHeaderTitle=Κεφαλίδες σελίδας
+summaryFooterTitle=Υποσέλιδα σελίδας:
+summaryNAValue=Μ/Δ
+summaryOnValue=Ενεργό
+summaryOffValue=Ανενεργό
diff --git a/l10n-el/toolkit/chrome/global/resetProfile.dtd b/l10n-el/toolkit/chrome/global/resetProfile.dtd
new file mode 100644
index 0000000000..5c816f3e34
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/resetProfile.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 refreshProfile.dialog.title "Ανανέωση του &brandShortName;">
+
+<!ENTITY refreshProfile.cleaning.description "Σχεδόν τελειώσαμε…">
diff --git a/l10n-el/toolkit/chrome/global/resetProfile.properties b/l10n-el/toolkit/chrome/global/resetProfile.properties
new file mode 100644
index 0000000000..d7d21d8140
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/resetProfile.properties
@@ -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/.
+
+# LOCALIZATION NOTE: These strings are used for profile reset.
+
+# LOCALIZATION NOTE (resetUnusedProfile.message): %S is brandShortName.
+resetUnusedProfile.message=Φαίνεται ότι δεν έχετε χρησιμοποιήσει το %S για αρκετό καιρό. Θέλετε γίνει εκκαθάριση για μια νέα εμπειρία; Παρεμπιπτόντως, καλώς ορίσατε και πάλι!
+# LOCALIZATION NOTE (resetUninstalled.message): %S is brandShortName.
+resetUninstalled.message=Φαίνεται ότι έχετε εγκαταστήσει εκ νέου το %S. Θέλετε να το καθαρίσετε για μια "φρέσκια" εμπειρία;
+
+# LOCALIZATION NOTE (refreshProfile.resetButton.label): %S is brandShortName.
+refreshProfile.resetButton.label=Ανανέωση του %S…
+refreshProfile.resetButton.accesskey=ω
diff --git a/l10n-el/toolkit/chrome/global/textcontext.dtd b/l10n-el/toolkit/chrome/global/textcontext.dtd
new file mode 100644
index 0000000000..42a95e48a6
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/textcontext.dtd
@@ -0,0 +1,24 @@
+<!-- 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 spellAddToDictionary.label "Προσθήκη στο λεξικό">
+<!ENTITY spellAddToDictionary.accesskey "θ">
+<!ENTITY spellUndoAddToDictionary.label "Αναίρεση προσθήκης στο λεξικό">
+<!ENTITY spellUndoAddToDictionary.accesskey "ν">
+<!ENTITY spellCheckToggle.label "Ορθογραφικός έλεγχος">
+<!ENTITY spellCheckToggle.accesskey "θ">
+<!ENTITY spellNoSuggestions.label "(Δεν υπάρχουν προτάσεις)">
+<!ENTITY spellDictionaries.label "Γλώσσες">
+<!ENTITY spellDictionaries.accesskey "λ">
+
+<!ENTITY searchTextBox.clear.label "Εκκαθάριση">
+
+<!ENTITY fillLoginMenu.label "Συμπλήρωση λογαριασμού">
+<!ENTITY fillLoginMenu.accesskey "ι">
+<!ENTITY fillPasswordMenu.label "Συμπλήρωση κωδικού">
+<!ENTITY fillPasswordMenu.accesskey "υ">
+<!ENTITY fillUsernameMenu.label "Συμπλήρωση ονόματος χρήστη">
+<!ENTITY fillUsernameMenu.accesskey "ο">
+<!ENTITY noLoginSuggestions.label "(δεν υπάρχουν προτεινόμενοι λογαριασμοί)">
+<!ENTITY viewSavedLogins.label "Προβολή αποθηκευμένων συνδέσεων">
diff --git a/l10n-el/toolkit/chrome/global/tree.dtd b/l10n-el/toolkit/chrome/global/tree.dtd
new file mode 100644
index 0000000000..9dc2c199d4
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/tree.dtd
@@ -0,0 +1,5 @@
+<!-- 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 restoreColumnOrder.label "Αποκατάσταση της σειράς των στηλών">
diff --git a/l10n-el/toolkit/chrome/global/videocontrols.dtd b/l10n-el/toolkit/chrome/global/videocontrols.dtd
new file mode 100644
index 0000000000..ecd136edf6
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/videocontrols.dtd
@@ -0,0 +1,52 @@
+<!-- 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 % brandDTD
+ SYSTEM "chrome://branding/locale/brand.dtd">
+ %brandDTD;
+
+<!ENTITY playButton.playLabel "Αναπαραγωγή">
+<!ENTITY playButton.pauseLabel "Παύση">
+<!ENTITY muteButton.muteLabel "Σίγαση">
+<!ENTITY muteButton.unmuteLabel "Άρση σίγασης">
+<!ENTITY fullscreenButton.enterfullscreenlabel "Πλήρης οθόνη">
+<!ENTITY fullscreenButton.exitfullscreenlabel "Έξοδος από την πλήρη οθόνη">
+<!ENTITY castingButton.castingLabel "Μετάδοση σε οθόνη">
+<!ENTITY closedCaption.off "Ανενεργό">
+<!-- LOCALIZATION NOTE (volumeScrubber.label): This label is exposed to
+ accessibility software to clarify what the slider is for. -->
+<!ENTITY volumeScrubber.label "Ρυθμιστικό έντασης">
+
+<!-- LOCALIZATION NOTE (pictureInPicture.label): This string is used as part of
+the Picture-in-Picture video toggle button when the mouse is hovering it. -->
+<!ENTITY pictureInPicture.label "Εικόνα εντός εικόνας">
+
+<!-- LOCALIZATION NOTE (pictureInPictureToggle.label): This string is used as the
+label for a variation of the Picture-in-Picture video toggle button when the mouse is
+hovering over the video. -->
+<!ENTITY pictureInPictureToggle.label "Προβολή σε Εικόνα εντός εικόνας">
+<!-- LOCALIZATION NOTE (pictureInPictureExplainer): This string is used as part of
+a variation of the Picture-in-Picture video toggle button. When using this variation,
+this string appears below the toggle when the mouse hovers the toggle. -->
+<!ENTITY pictureInPictureExplainer "Κάντε αναπαραγωγή βίντεο στο προσκήνιο ενώ κάνετε άλλα πράγματα στο &brandShortName;">
+
+<!ENTITY error.aborted "Η φόρτωση του βίντεο διακόπηκε.">
+<!ENTITY error.network "Η αναπαραγωγή του βίντεο εγκαταλείφθηκε λόγω σφάλματος δικτύου.">
+<!ENTITY error.decode "Αδυναμία αναπαραγωγής βίντεο επειδή το αρχείο είναι κατεστραμμένο.">
+<!ENTITY error.srcNotSupported "Η μορφή του βίντεο ή ο τύπος MIME δεν υποστηρίζονται.">
+<!ENTITY error.noSource2 "Δεν βρέθηκε βίντεο με υποστηριζόμενη μορφή και τύπο MIME.">
+<!ENTITY error.generic "Η αναπαραγωγή του βίντεο εγκαταλείφθηκε λόγω άγνωστου σφάλματος.">
+
+<!ENTITY status.pictureInPicture 'Αυτό το βίντεο αναπαράγεται σε λειτουργία "εικόνα εντός εικόνας".'>
+
+<!-- LOCALIZATION NOTE (positionAndDuration.nameFormat): the #1 string is the current
+media position, and the #2 string is the total duration. For example, when at
+the 5 minute mark in a 6 hour long video, #1 would be "5:00" and #2 would be
+"6:00:00", result string would be "5:00 / 6:00:00".
+Note that #2 is not always available. For example, when at the 5 minute mark in an
+unknown duration video, #1 would be "5:00" and the string which is surrounded by
+<span> would be deleted, result string would be "5:00".
+-->
+<!ENTITY positionAndDuration.nameFormat "#1<span> / #2</span>">
+
diff --git a/l10n-el/toolkit/chrome/global/viewSource.properties b/l10n-el/toolkit/chrome/global/viewSource.properties
new file mode 100644
index 0000000000..dcaaf4c3e7
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/viewSource.properties
@@ -0,0 +1,16 @@
+# 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/.
+
+goToLineTitle = Μετάβαση σε γραμμή
+goToLineText = Εισάγετε αριθμό γραμμής
+invalidInputTitle = Μη έγκυρα δεδομένα
+invalidInputText = Ο αριθμός γραμμής που εισάγατε δεν είναι έγκυρος.
+outOfRangeTitle = Η γραμμή δεν βρέθηκε
+outOfRangeText = Η καθορισμένη γραμμή δεν βρέθηκε.
+viewSelectionSourceTitle = Πηγαίος κώδικας DOM επιλογής
+
+context_goToLine_label = Μετάβαση στη γραμμή…
+context_goToLine_accesskey = γ
+context_wrapLongLines_label = Αναδίπλωση μακροσκελών γραμμών
+context_highlightSyntax_label = Επισήμανση σύνταξης
diff --git a/l10n-el/toolkit/chrome/global/wizard.properties b/l10n-el/toolkit/chrome/global/wizard.properties
new file mode 100644
index 0000000000..bc8a720f24
--- /dev/null
+++ b/l10n-el/toolkit/chrome/global/wizard.properties
@@ -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/.
+
+default-first-title=Καλώς ήλθατε στο %S
+default-last-title=Ολοκλήρωση του %S
+default-first-title-mac=Εισαγωγή
+default-last-title-mac=Επίλογος
diff --git a/l10n-el/toolkit/chrome/mozapps/downloads/downloads.properties b/l10n-el/toolkit/chrome/mozapps/downloads/downloads.properties
new file mode 100644
index 0000000000..3e7e0edb32
--- /dev/null
+++ b/l10n-el/toolkit/chrome/mozapps/downloads/downloads.properties
@@ -0,0 +1,115 @@
+# 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 (shortSeconds): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# s is the short form for seconds
+shortSeconds=δ;δ
+
+# LOCALIZATION NOTE (shortMinutes): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# m is the short form for minutes
+shortMinutes=λ;λ
+
+# LOCALIZATION NOTE (shortHours): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# h is the short form for hours
+shortHours=ώ;ώ
+
+# LOCALIZATION NOTE (shortDays): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# d is the short form for days
+shortDays=η;η
+
+downloadErrorAlertTitle=Σφάλμα λήψης
+# LOCALIZATION NOTE (downloadErrorBlockedBy): %S is the name of the blocking
+# extension.
+downloadErrorBlockedBy=Δεν είναι δυνατή η αποθήκευση της λήψης, επειδή αποκλείστηκε από το %S.
+# LOCALIZATION NOTE (downloadErrorExtension): used when the blocking extension
+# name is unavailable.
+downloadErrorExtension=Δεν είναι δυνατή η αποθήκευση της λήψης, επειδή αποκλείστηκε από μια επέκταση.
+downloadErrorGeneric=Δεν είναι δυνατή η αποθήκευση του ληφθέντος αρχείου λόγω ενός άγνωστου σφάλματος.\n\nΠαρακαλώ προσπαθήστε ξανά.
+
+# LOCALIZATION NOTE: we don't have proper plural support in the CPP code; bug 463102
+quitCancelDownloadsAlertTitle=Ακύρωση όλων των λήψεων;
+quitCancelDownloadsAlertMsg=Αν αποχωρήσετε τώρα, θα ακυρωθεί 1 λήψη. Θέλετε σίγουρα να αποχωρήσετε;
+quitCancelDownloadsAlertMsgMultiple=Αν αποχωρήσετε τώρα, θα ακυρωθούν %S λήψεις. Θέλετε σίγουρα να αποχωρήσετε;
+quitCancelDownloadsAlertMsgMac=Αν αποχωρήσετε τώρα, θα ακυρωθεί 1 λήψη. Θέλετε σίγουρα να αποχωρήσετε;
+quitCancelDownloadsAlertMsgMacMultiple=Αν αποχωρήσετε τώρα, θα ακυρωθούν %S λήψεις. Θέλετε σίγουρα να αποχωρήσετε;
+offlineCancelDownloadsAlertTitle=Ακύρωση όλων των λήψεων;
+offlineCancelDownloadsAlertMsg=Αν αποσυνδεθείτε τώρα, θα ακυρωθεί 1 λήψη. Θέλετε σίγουρα να αποσυνδεθείτε;
+offlineCancelDownloadsAlertMsgMultiple=Αν αποσυνδεθείτε τώρα, θα ακυρωθούν %S λήψεις. Θέλετε σίγουρα να αποσυνδεθείτε;
+leavePrivateBrowsingCancelDownloadsAlertTitle=Ακύρωση όλων των λήψεων;
+leavePrivateBrowsingWindowsCancelDownloadsAlertMsg2=Αν κλείσετε τώρα όλα τα παράθυρα ιδιωτικής περιήγησης, θα ακυρωθεί 1 λήψη. Θέλετε σίγουρα να αποχωρήσετε από την ιδιωτική περιήγηση;
+leavePrivateBrowsingWindowsCancelDownloadsAlertMsgMultiple2=Αν κλείσετε τώρα όλα τα παράθυρα ιδιωτικής περιήγησης, θα ακυρωθούν %S λήψεις. Θέλετε σίγουρα να αποχωρήσετε από την ιδιωτική περιήγηση;
+cancelDownloadsOKText=Ακύρωση 1 λήψης
+cancelDownloadsOKTextMultiple=Ακύρωση %S λήψεων
+dontQuitButtonWin=Να μη γίνει έξοδος
+dontQuitButtonMac=Να μη γίνει έξοδος
+dontGoOfflineButton=Διατήρηση σύνδεσης
+dontLeavePrivateBrowsingButton2=Παραμονή σε ιδιωτική περιήγηση
+
+# LOCALIZATION NOTE (infiniteRate):
+# If download speed is a JavaScript Infinity value, this phrase is used
+infiniteRate=Εξαιρετικά γρήγορα
+
+# LOCALIZATION NOTE (statusFormat3): — is the "em dash" (long dash)
+# %1$S transfer progress; %2$S rate number; %3$S rate unit; %4$S time left
+# example: 4 minutes left — 1.1 of 11.1 GB (2.2 MB/sec)
+statusFormat3=%4$S — %1$S (%2$S %3$S/δευτ)
+
+# LOCALIZATION NOTE (statusFormatInfiniteRate): — is the "em dash" (long dash)
+# %1$S transfer progress; %2$S substitute phrase for Infinity speed; %3$S time left
+# example: 4 minutes left — 1.1 of 11.1 GB (Really fast)
+statusFormatInfiniteRate=%3$S — %1$S (%2$S)
+
+# LOCALIZATION NOTE (statusFormatNoRate): — is the "em dash" (long dash)
+# %1$S transfer progress; %2$S time left
+# example: 4 minutes left — 1.1 of 11.1 GB
+statusFormatNoRate=%2$S — %1$S
+
+bytes=bytes
+kilobyte=KB
+megabyte=MB
+gigabyte=GB
+
+# LOCALIZATION NOTE (transferSameUnits2):
+# %1$S progress number; %2$S total number; %3$S total unit
+# example: 1.1 of 333 MB
+transferSameUnits2=%1$S από %2$S %3$S
+# LOCALIZATION NOTE (transferDiffUnits2):
+# %1$S progress number; %2$S progress unit; %3$S total number; %4$S total unit
+# example: 11.1 MB of 3.3 GB
+transferDiffUnits2=%1$S %2$S από %3$S %4$S
+# LOCALIZATION NOTE (transferNoTotal2):
+# %1$S progress number; %2$S unit
+# example: 111 KB
+transferNoTotal2=%1$S %2$S
+
+# LOCALIZATION NOTE (timePair3): %1$S time number; %2$S time unit
+# example: 1m; 11h
+timePair3=%1$S%2$S
+# LOCALIZATION NOTE (timeLeftSingle3): %1$S time left
+# example: 1m left; 11h left
+timeLeftSingle3=Απομένουν %1$S
+# LOCALIZATION NOTE (timeLeftDouble3): %1$S time left; %2$S time left sub units
+# example: 11h 2m left; 1d 22h left
+timeLeftDouble3=Απομένουν %1$S %2$S
+timeFewSeconds2=Απομένουν λίγα δευτερόλεπτα
+timeUnknown2=Άγνωστος υπολειπόμενος χρόνος
+
+# LOCALIZATION NOTE (doneScheme2): #1 URI scheme like data: jar: about:
+doneScheme2=%1$S πηγή
+# LOCALIZATION NOTE (doneFileScheme): Special case of doneScheme for file:
+# This is used as an eTLD replacement for local files, so make it lower case
+doneFileScheme=τοπικό αρχείο
+
+# LOCALIZATION NOTE (yesterday): Displayed time for files finished yesterday
+yesterday=Χθες
+
+fileExecutableSecurityWarning=Το “%S” είναι ένα εκτελέσιμο αρχείο. Τα εκτελέσιμα αρχεία ενδέχεται να περιέχουν ιούς ή άλλο κακόβουλο κώδικα που μπορεί να βλάψει τον υπολογιστή σας. Ανοίξτε με προσοχή αυτό το αρχείο. Θέλετε σίγουρα να εκκινήσετε το “%S”;
+fileExecutableSecurityWarningTitle=Άνοιγμα εκτελέσιμου αρχείου;
+
+# Desktop folder name for downloaded files
+downloadsFolder=Λήψεις
diff --git a/l10n-el/toolkit/chrome/mozapps/downloads/settingsChange.dtd b/l10n-el/toolkit/chrome/mozapps/downloads/settingsChange.dtd
new file mode 100644
index 0000000000..3ba90b6775
--- /dev/null
+++ b/l10n-el/toolkit/chrome/mozapps/downloads/settingsChange.dtd
@@ -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/. -->
+
+<!ENTITY settingsChangePreferences.label "Μπορείτε να αλλάξετε τις ρυθμίσεις στις προτιμήσεις του &brandShortName;.">
+<!ENTITY settingsChangeOptions.label "Μπορείτε να αλλάξετε τις ρυθμίσεις στις επιλογές του &brandShortName;.">
diff --git a/l10n-el/toolkit/chrome/mozapps/downloads/unknownContentType.dtd b/l10n-el/toolkit/chrome/mozapps/downloads/unknownContentType.dtd
new file mode 100644
index 0000000000..372bfb247c
--- /dev/null
+++ b/l10n-el/toolkit/chrome/mozapps/downloads/unknownContentType.dtd
@@ -0,0 +1,26 @@
+<!-- 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 intro2.label "Έχετε επιλέξει να ανοίξετε το:">
+<!ENTITY from.label "από:">
+<!ENTITY actionQuestion.label "Τι να κάνει το &brandShortName; με αυτό το αρχείο;">
+
+<!ENTITY openWith.label "Άνοιγμα με">
+<!ENTITY openWith.accesskey "ν">
+<!ENTITY other.label "Άλλο...">
+
+<!ENTITY saveFile.label "Αποθήκευση αρχείου">
+<!ENTITY saveFile.accesskey "σ">
+
+<!ENTITY rememberChoice.label "Να γίνεται αυτόματα από εδώ και πέρα για αρχεία αυτού του είδους.">
+<!ENTITY rememberChoice.accesskey "π">
+
+<!ENTITY whichIs.label "που είναι:">
+
+<!ENTITY chooseHandlerMac.label "Επιλογή…">
+<!ENTITY chooseHandlerMac.accesskey "λ">
+<!ENTITY chooseHandler.label "Περιήγηση…">
+<!ENTITY chooseHandler.accesskey "ε">
+
+<!ENTITY unknownPromptText.label "Θέλετε να αποθηκεύσετε αυτό το αρχείο;">
diff --git a/l10n-el/toolkit/chrome/mozapps/downloads/unknownContentType.properties b/l10n-el/toolkit/chrome/mozapps/downloads/unknownContentType.properties
new file mode 100644
index 0000000000..a05bf92925
--- /dev/null
+++ b/l10n-el/toolkit/chrome/mozapps/downloads/unknownContentType.properties
@@ -0,0 +1,24 @@
+# -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
+# 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/.
+
+title=Άνοιγμα %S
+saveDialogTitle=Εισάγετε το όνομα αρχείου για αποθήκευση…
+defaultApp=%S (προεπιλογή)
+chooseAppFilePickerTitle=Επιλογή βοηθητικής εφαρμογής
+badApp=Η εφαρμογή που επιλέξατε ("%S") δεν μπορεί να βρεθεί. Ελέγξτε το όνομα αρχείου ή επιλέξτε μια άλλη εφαρμογή.
+badApp.title=Η εφαρμογή δεν βρέθηκε
+badPermissions=Δεν είναι δυνατή η αποθήκευση του αρχείου διότι δεν έχετε τα απαραίτητα δικαιώματα. Επιλέξτε έναν άλλο φάκελο.
+badPermissions.title=Μη έγκυρα δικαιώματα αποθήκευσης
+unknownAccept.label=Αποθήκευση αρχείου
+unknownCancel.label=Ακύρωση
+fileType=Αρχείο %S
+# LOCALIZATION NOTE (orderedFileSizeWithType): first %S is type, second %S is size, and third %S is unit
+orderedFileSizeWithType=%1$S (%2$S %3$S)
+pdfHandlerDescription=Portable Document Format
+avifExtHandlerDescription=AV1 Image File (AVIF)
+pdfExtHandlerDescription=Portable Document Format (PDF)
+svgExtHandlerDescription=Scalable Vector Graphics (SVG)
+webpExtHandlerDescription=Εικόνα WebP
+xmlExtHandlerDescription=Extensible Markup Language (XML)
diff --git a/l10n-el/toolkit/chrome/mozapps/extensions/extensions.dtd b/l10n-el/toolkit/chrome/mozapps/extensions/extensions.dtd
new file mode 100644
index 0000000000..30283ffa45
--- /dev/null
+++ b/l10n-el/toolkit/chrome/mozapps/extensions/extensions.dtd
@@ -0,0 +1,5 @@
+<!-- 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 setting.learnmore "Μάθετε περισσότερα…">
diff --git a/l10n-el/toolkit/chrome/mozapps/extensions/extensions.properties b/l10n-el/toolkit/chrome/mozapps/extensions/extensions.properties
new file mode 100644
index 0000000000..da76516240
--- /dev/null
+++ b/l10n-el/toolkit/chrome/mozapps/extensions/extensions.properties
@@ -0,0 +1,84 @@
+# 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 (notification.incompatible) %1$S is the add-on name, %2$S is brand name, %3$S is application version
+notification.incompatible=Το %1$S είναι ασύμβατο με τον %2$S %3$S.
+#LOCALIZATION NOTE (notification.unsigned, notification.unsignedAndDisabled) %1$S is the add-on name, %2$S is brand name
+notification.unsignedAndDisabled=Το %1$S δεν ήταν δυνατό να επαληθευτεί για χρήση από το %2$S και έχει απενεργοποιηθεί.
+notification.unsigned=Το %1$S δεν ήταν δυνατό να επαληθευτεί για χρήση από το %2$S. Συνεχίστε με προσοχή.
+notification.unsigned.link=Περισσότερες πληροφορίες
+#LOCALIZATION NOTE (notification.blocked) %1$S is the add-on name
+notification.blocked=Το %1$S έχει απενεργοποιηθεί για λόγους ασφαλείας ή σταθερότητας.
+notification.blocked.link=Περισσότερες πληροφορίες
+#LOCALIZATION NOTE (notification.softblocked) %1$S is the add-on name
+notification.softblocked=Το %1$S είναι γνωστό ότι προκαλεί προβλήματα ασφαλείας ή σταθερότητας.
+notification.softblocked.link=Περισσότερες πληροφορίες
+#LOCALIZATION NOTE (notification.outdated) %1$S is the add-on name
+notification.outdated=Υπάρχει διαθέσιμη μια σημαντική ενημέρωση για το %1$S.
+notification.outdated.link=Ενημέρωση τώρα
+#LOCALIZATION NOTE (notification.vulnerableUpdatable) %1$S is the add-on name
+notification.vulnerableUpdatable=Το %1$S είναι ευάλωτο σε θέματα ασφαλείας και πρέπει να ενημερωθεί.
+notification.vulnerableUpdatable.link=Ενημέρωση τώρα
+#LOCALIZATION NOTE (notification.vulnerableNoUpdate) %1$S is the add-on name
+notification.vulnerableNoUpdate=Το %1$S είναι ευάλωτο σε θέματα ασφαλείας. Χρησιμοποιήστε το με προσοχή.
+notification.vulnerableNoUpdate.link=Περισσότερες πληροφορίες
+#LOCALIZATION NOTE (notification.restartless-uninstall) %1$S is the add-on name
+notification.restartless-uninstall=Το %1$S θα απεγκατασταθεί αφού κλείσετε αυτή την καρτέλα.
+#LOCALIZATION NOTE (notification.downloadError) %1$S is the add-on name.
+notification.downloadError=Υπήρξε σφάλμα κατά τη λήψη του %1$S.
+notification.downloadError.retry=Δοκιμή ξανά
+notification.downloadError.retry.tooltip=Προσπαθήστε ξανά την λήψη αυτού του προσθέτου
+#LOCALIZATION NOTE (notification.installError) %1$S is the add-on name.
+notification.installError=Υπήρξε σφάλμα κατά την εγκατάσταση του %1$S.
+notification.installError.retry=Δοκιμή ξανά
+notification.installError.retry.tooltip=Προσπαθήστε να ξανακάνετε λήψη και εγκατάσταση αυτού του προσθέτου
+#LOCALIZATION NOTE (notification.gmpPending) %1$S is the add-on name.
+notification.gmpPending=Το πρόσθετο %1$S θα εγκατασταθεί σύντομα.
+
+#LOCALIZATION NOTE (details.notification.incompatible) %1$S is the add-on name, %2$S is brand name, %3$S is application version
+details.notification.incompatible=Το %1$S είναι ασύμβατο με τον %2$S %3$S.
+#LOCALIZATION NOTE (details.notification.unsigned, details.notification.unsignedAndDisabled) %1$S is the add-on name, %2$S is brand name
+details.notification.unsignedAndDisabled=Το %1$S δεν ήταν δυνατό να επαληθευτεί για χρήση από το %2$S και έχει απενεργοποιηθεί.
+details.notification.unsigned=Το %1$S δεν ήταν δυνατό να επαληθευτεί για χρήση από το %2$S. Συνεχίστε με προσοχή.
+details.notification.unsigned.link=Περισσότερες πληροφορίες
+#LOCALIZATION NOTE (details.notification.blocked) %1$S is the add-on name
+details.notification.blocked=Το %1$S έχει απενεργοποιηθεί για λόγους ασφαλείας ή σταθερότητας.
+details.notification.blocked.link=Περισσότερες πληροφορίες
+#LOCALIZATION NOTE (details.notification.softblocked) %1$S is the add-on name
+details.notification.softblocked=Το %1$S είναι γνωστό ότι προκαλεί προβλήματα ασφαλείας ή σταθερότητας.
+details.notification.softblocked.link=Περισσότερες πληροφορίες
+#LOCALIZATION NOTE (details.notification.outdated) %1$S is the add-on name
+details.notification.outdated=Υπάρχει διαθέσιμη μια σημαντική ενημέρωση για το %1$S.
+details.notification.outdated.link=Ενημέρωση τώρα
+#LOCALIZATION NOTE (details.notification.vulnerableUpdatable) %1$S is the add-on name
+details.notification.vulnerableUpdatable=Το %1$S είναι ευάλωτο σε θέματα ασφαλείας και πρέπει να ενημερωθεί.
+details.notification.vulnerableUpdatable.link=Ενημέρωση τώρα
+#LOCALIZATION NOTE (details.notification.vulnerableNoUpdate) %1$S is the add-on name
+details.notification.vulnerableNoUpdate=Το %1$S είναι ευάλωτο σε θέματα ασφαλείας. Χρησιμοποιήστε το με προσοχή.
+details.notification.vulnerableNoUpdate.link=Περισσότερες πληροφορίες
+#LOCALIZATION NOTE (details.notification.restartless-uninstall) %1$S is the add-on name.
+details.notification.restartless-uninstall=Το %1$S θα απεγκατασταθεί αφού κλείσετε αυτή την καρτέλα.
+#LOCALIZATION NOTE (details.notification.gmpPending) %1$S is the add-on name
+details.notification.gmpPending=Το πρόσθετο %1$S θα εγκατασταθεί σύντομα.
+
+type.extension.name=Επεκτάσεις
+type.themes.name=Θέματα
+type.locale.name=Γλώσσες
+type.plugin.name=Αρθρώματα
+type.dictionary.name=Λεξικά
+type.service.name=Υπηρεσίες
+type.legacy.name=Επεκτάσεις παλαιού τύπου
+type.unsupported.name=Μη υποστηριζόμενα
+
+#LOCALIZATION NOTE(listHeading.discover) %S is the brandShortName
+listHeading.discover=Εξατομίκευση του %S
+listHeading.extension=Διαχείριση των επεκτάσεών σας
+listHeading.shortcuts=Διαχείριση συντομεύσεων επεκτάσεων
+listHeading.theme=Διαχείριση των θεμάτων σας
+listHeading.plugin=Διαχείριση των αρθρωμάτων σας
+listHeading.locale=Διαχείριση των γλωσσών σας
+listHeading.dictionary=Διαχείριση των λεξικών σας
+
+searchLabel.extension=Βρείτε περισσότερες επεκτάσεις
+searchLabel.theme=Βρείτε περισσότερα θέματα
diff --git a/l10n-el/toolkit/chrome/mozapps/handling/handling.dtd b/l10n-el/toolkit/chrome/mozapps/handling/handling.dtd
new file mode 100644
index 0000000000..c77aaf43be
--- /dev/null
+++ b/l10n-el/toolkit/chrome/mozapps/handling/handling.dtd
@@ -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/. -->
+
+<!ENTITY window.emWidth "32em">
+<!ENTITY window.emHeight "32em">
+<!ENTITY ChooseOtherApp.description "Επιλέξτε άλλη εφαρμογή">
+<!ENTITY ChooseApp.label "Επιλογή…">
+<!ENTITY ChooseApp.accessKey "λ">
+<!ENTITY accept "Άνοιγμα συνδέσμου">
diff --git a/l10n-el/toolkit/chrome/mozapps/handling/handling.properties b/l10n-el/toolkit/chrome/mozapps/handling/handling.properties
new file mode 100644
index 0000000000..87d56c68a1
--- /dev/null
+++ b/l10n-el/toolkit/chrome/mozapps/handling/handling.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/.
+
+protocol.title=Εκκίνηση εφαρμογής
+protocol.description=Αυτός ο σύνδεσμος πρέπει να ανοιχθεί με μια εφαρμογή.
+protocol.choices.label=Αποστολή σε:
+protocol.checkbox.label=Απομνημόνευση επιλογής για συνδέσμους %S.
+protocol.checkbox.accesskey=μ
+protocol.checkbox.extra=Αυτό μπορεί να αλλάξει στις προτιμήσεις του %S.
+
+# Displayed under the name of a protocol handler in the Launch Application dialog.
+privatebrowsing.disabled.label=Ανενεργό σε ιδιωτικά παράθυρα
+
+choose.application.title=Άλλη εφαρμογή…
diff --git a/l10n-el/toolkit/chrome/mozapps/profile/profileSelection.properties b/l10n-el/toolkit/chrome/mozapps/profile/profileSelection.properties
new file mode 100644
index 0000000000..ab3b9d5acd
--- /dev/null
+++ b/l10n-el/toolkit/chrome/mozapps/profile/profileSelection.properties
@@ -0,0 +1,57 @@
+# 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: These strings are used for startup/profile problems and the profile manager.
+
+# Application not responding
+# LOCALIZATION NOTE (restartTitle, restartMessageNoUnlocker2, restartMessageUnlocker, restartMessageNoUnlockerMac, restartMessageUnlockerMac): Messages displayed when the application is running but is not responding to commands. %S is the application name.
+restartTitle=Κλείσιμο του %S
+restartMessageNoUnlocker2=Το %S εκτελείται ήδη, αλλά δεν ανταποκρίνεται. Για να χρησιμοποιήσετε το %S, πρέπει πρώτα να κλείσετε την υπάρχουσα διεργασία του %S, να επανεκκινήσετε τη συσκευή σας ή να χρησιμοποιήσετε να διαφορετικό προφίλ.
+restartMessageUnlocker=Το %S εκτελείται ήδη, αλλά δεν ανταποκρίνεται. Για να ανοίξετε ένα νέο παράθυρο, θα πρέπει να κλείσετε την παλιά διεργασία του %S.
+restartMessageNoUnlockerMac=Ένα αντίγραφο του %S είναι ήδη ανοικτό. Μόνο ένα αντίγραφο του %S μπορεί να είναι ανοικτό κάθε φορά.
+restartMessageUnlockerMac=Ένα αντίγραφο του %S είναι ήδη ανοικτό. Το εκτελούμενο αντίγραφο του %S θα τερματιστεί, ώστε να ανοίξει αυτό.
+
+# Profile manager
+# LOCALIZATION NOTE (profileTooltip): First %S is the profile name, second %S is the path to the profile folder.
+profileTooltip=Προφίλ: ‘%S’ - Διαδρομή: ‘%S’
+
+pleaseSelectTitle=Επιλογή προφίλ
+pleaseSelect=Παρακαλώ επιλέξτε ένα προφίλ για εκκίνηση του %S, ή δημιουργήστε ένα νέο.
+
+renameProfileTitle=Μετονομασία προφίλ
+renameProfilePrompt=Μετονομασία του προφίλ “%S” σε:
+
+profileNameInvalidTitle=Μη έγκυρο όνομα προφίλ
+profileNameInvalid=Το όνομα προφίλ “%S” δεν επιτρέπεται.
+
+chooseFolder=Επιλογή φακέλου προφίλ
+profileNameEmpty=Δεν επιτρέπεται ένα κενό όνομα προφίλ.
+invalidChar=Ο χαρακτήρας “%S” δεν επιτρέπεται σε ονόματα προφίλ. Παρακαλώ επιλέξτε ένα διαφορετικό όνομα.
+
+deleteTitle=Διαγραφή προφίλ
+deleteProfileConfirm=Η διαγραφή ενός προφίλ θα το αφαιρέσει από τη λίστα των διαθέσιμων προφίλ και δεν αναιρείται.\nΑν θέλετε, μπορείτε να διαγράψετε και τα αρχεία δεδομένων του προφίλ, όπως οι ρυθμίσεις, τα πιστοποιητικά και άλλα δεδομένα χρήστη. Αυτή η επιλογή θα διαγράψει το φάκελο “%S” και δεν αναιρείται.\nΘα θέλατε να διαγράψετε τα αρχεία δεδομένων του προφίλ;
+deleteFiles=Διαγραφή αρχείων
+dontDeleteFiles=Διατήρηση αρχείων
+
+profileCreationFailed=Δεν ήταν δυνατή η δημιουργία του προφίλ. Ίσως να μην είναι εγγράψιμος ο επιλεγμένος φάκελος.
+profileCreationFailedTitle=Αποτυχία δημιουργίας προφίλ
+profileExists=Ένα προφίλ με αυτό το όνομα υπάρχει ήδη. Παρακαλώ επιλέξτε κάποιο άλλο όνομα.
+profileFinishText=Κάντε κλικ στο Τέλος για να δημιουργήσετε το νέο προφίλ.
+profileFinishTextMac=Κάντε κλικ στο Τέλος για να δημιουργήσετε το νέο προφίλ.
+profileMissing=Δεν είναι δυνατή η φόρτωση του προφίλ %S. Ενδέχεται να λείπει ή να μην είναι προσβάσιμο.
+profileMissingTitle=Το προφίλ λείπει
+profileDeletionFailed=Δεν ήταν δυνατή η διαγραφή του προφίλ, ίσως να είναι σε χρήση.
+profileDeletionFailedTitle=Αποτυχία διαγραφής
+
+# Profile reset
+# LOCALIZATION NOTE (resetBackupDirectory): Directory name for the profile directory backup created during reset. This directory is placed in a location users will see it (ie. their desktop). %S is the application name.
+resetBackupDirectory=Παλιά δεδομένα %S
+
+flushFailTitle=Μη αποθηκευμένες αλλαγές
+# LOCALIZATION NOTE (conflictMessage): %1$S is brandProductName, %2$S is brandShortName.
+conflictMessage=Ένα άλλο αντίγραφο του %1$S έχει κάνει αλλαγές στα προφίλ. Πρέπει να επανεκκινήσετε το %2$S πριν κάνετε περισσότερες αλλαγές.
+flushFailMessage=Ένα μη αναμενόμενο σφάλμα εμπόδισε την αποθήκευση των αλλαγών σας.
+# LOCALIZATION NOTE (flushFailRestartButton): $S is brandShortName.
+flushFailRestartButton=Επανεκκίνηση του %S
+flushFailExitButton=Έξοδος
diff --git a/l10n-el/toolkit/chrome/mozapps/update/updates.properties b/l10n-el/toolkit/chrome/mozapps/update/updates.properties
new file mode 100644
index 0000000000..888958ea94
--- /dev/null
+++ b/l10n-el/toolkit/chrome/mozapps/update/updates.properties
@@ -0,0 +1,45 @@
+# 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: The 1st %S is brandShortName and 2nd %S is update version
+# where update version from the update xml
+# example: MyApplication 10.0.5
+updateName=%S %S
+
+noThanksButton=Όχι ευχαριστώ
+noThanksButton.accesskey=χ
+# NOTE: The restartLaterButton string is also used in
+# mozapps/extensions/content/blocklist.js
+restartLaterButton=Επανεκκίνηση αργότερα
+restartLaterButton.accesskey=γ
+restartNowButton=Επανεκκίνηση %S
+restartNowButton.accesskey=ν
+
+statusFailed=Η εγκατάσταση απέτυχε
+
+installSuccess=Η ενημέρωση εγκαταστάθηκε με επιτυχία
+installPending=Εγκατάσταση σε αναμονή
+patchApplyFailure=Δεν είναι δυνατή η εγκατάσταση της ενημέρωσης (Αποτυχία εφαρμογής patch)
+elevationFailure=Δεν έχετε τα απαραίτητα δικαιώματα για την εγκατάσταση της ενημέρωσης. Επικοινωνήστε με το διαχειριστή σας.
+
+check_error-200=Κακοδιατυπωμένο αρχείο ενημέρωσης XML (200)
+check_error-403=Άρνηση πρόσβασης (403)
+check_error-404=Δεν βρέθηκε αρχείο ενημέρωσης XML (404)
+check_error-500=Εσωτερικό σφάλμα εξυπηρετητή (500)
+check_error-2152398849=Απέτυχε (άγνωστος λόγος)
+check_error-2152398861=Άρνηση σύνδεσης
+check_error-2152398862=Υπέρβαση ορίου χρόνου σύνδεσης
+# NS_ERROR_OFFLINE
+check_error-2152398864=Δίκτυο εκτός σύνδεσης (συνδεθείτε)
+check_error-2152398867=Φραγμένη θύρα
+check_error-2152398868=Δεν έγινε λήψη δεδομένων (παρακαλώ προσπαθήστε ξανά)
+check_error-2152398878=Δεν βρέθηκε εξυπηρετητής ενημερώσεων (ελέγξτε την σύνδεση σας στο διαδίκτυο)
+check_error-2152398890=Δεν βρέθηκε διαμεσολαβητής Proxy (ελέγξτε την σύνδεση σας στο διαδίκτυο)
+# NS_ERROR_DOCUMENT_NOT_CACHED
+check_error-2152398918=Δίκτυο εκτός σύνδεσης (συνδεθείτε)
+check_error-2152398919=Διακοπή μεταφοράς δεδομένων (προσπαθήστε ξανά)
+check_error-2152398920=Άρνηση σύνδεσης στον διαμεσολαβητή proxy
+check_error-2153390069=Το πιστοποιητικό του εξυπηρετητή έχει λήξει (παρακαλώ ρυθμίστε το ρολόι του υπολογιστή σας αν δεν είναι σωστά ρυθμισμένο)
+check_error-verification_failed=Αδυναμία επικύρωσης της ακεραιότητας της ενημέρωσης
+check_error-move_failed=Αποτυχία προετοιμασίας ενημέρωσης για εγκατάσταση
diff --git a/l10n-el/toolkit/chrome/passwordmgr/passwordmgr.properties b/l10n-el/toolkit/chrome/passwordmgr/passwordmgr.properties
new file mode 100644
index 0000000000..1c8bb9ad8e
--- /dev/null
+++ b/l10n-el/toolkit/chrome/passwordmgr/passwordmgr.properties
@@ -0,0 +1,74 @@
+# 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/.
+
+rememberPassword = Χρήση της διαχείρισης κωδικών πρόσβασης για απομνημόνευση αυτού του κωδικού πρόσβασης.
+savePasswordTitle = Επιβεβαίωση
+# LOCALIZATION NOTE (saveLoginMsg, saveLoginMsgNoUser):
+# %1$S is brandShortName, %2$S is the login's hostname.
+saveLoginMsg = Θα θέλατε το %1$S να αποθηκεύσει τη σύνδεση για το %2$S;
+saveLoginMsgNoUser = Θα θέλατε το %1$S να αποθηκεύσει τον κωδικό πρόσβασης για το %2$S;
+saveLoginButtonAllow.label = Αποθήκευση
+saveLoginButtonAllow.accesskey = Α
+saveLoginButtonDeny.label = Να μην αποθηκευτεί
+saveLoginButtonDeny.accesskey = Ν
+saveLoginButtonNever.label = Ποτέ αποθήκευση
+saveLoginButtonNever.accesskey = η
+updateLoginMsg = Θα θέλατε να ενημερώσετε τη σύνδεση αυτή;
+updateLoginMsgNoUser = Θα θέλατε να ενημερώσετε αυτόν τον κωδικό;
+updateLoginMsgAddUsername = Θα θέλατε να προσθέσετε ένα όνομα χρήστη στον αποθηκευμένο κωδικό πρόσβασης;
+updateLoginButtonText = Ενημέρωση
+updateLoginButtonAccessKey = Ε
+updateLoginButtonDeny.label = Να μην ενημερωθεί
+updateLoginButtonDeny.accesskey = Ν
+updateLoginButtonDelete.label = Αφαίρεση αποθηκευμένης σύνδεσης
+updateLoginButtonDelete.accesskey = Α
+# LOCALIZATION NOTE (rememberPasswordMsg):
+# 1st string is the username for the login, 2nd is the login's hostname.
+# Note that long usernames may be truncated.
+rememberPasswordMsg = Θα θέλατε να γίνει απομνημόνευση κωδικού για «%1$S» στο %2$S;
+# LOCALIZATION NOTE (rememberPasswordMsgNoUsername):
+# String is the login's hostname.
+rememberPasswordMsgNoUsername = Θα θέλατε να γίνει απομνημόνευση κωδικού στο %S;
+# LOCALIZATION NOTE (noUsernamePlaceholder):
+# This is displayed in place of the username when it is missing.
+noUsernamePlaceholder=Χωρίς όνομα χρήστη
+togglePasswordLabel=Εμφάνιση κωδικού πρόσβασης
+togglePasswordAccessKey2=μ
+notNowButtonText = &Όχι τώρα
+neverForSiteButtonText = Πο&τέ για αυτή την ιστοσελίδα
+rememberButtonText = &Απομνημόνευση
+passwordChangeTitle = Επιβεβαίωση αλλαγής κωδικού
+# LOCALIZATION NOTE (updatePasswordMsg):
+# String is the username for the login.
+updatePasswordMsg = Θέλετε να ενημερωθεί ο αποθηκευμένος κωδικός για "%S";
+updatePasswordMsgNoUser = Θέλετε να ενημερωθεί ο αποθηκευμένος κωδικός;
+userSelectText2 = Επιλέξτε τα στοιχεία σύνδεσης προς ενημέρωση:
+loginsDescriptionAll2=Οι συνδέσεις των ακόλουθων ιστοσελίδων αποθηκεύονται στον υπολογιστή σας
+
+# LOCALIZATION NOTE (useASecurelyGeneratedPassword):
+# Shown in the autocomplete popup to allow filling a generated password into a password field.
+useASecurelyGeneratedPassword=Χρήση ασφαλούς κωδικού πρόσβασης
+# LOCALIZATION NOTE (generatedPasswordWillBeSaved):
+# %S will contain the brandShorterName. This informs the user that the generated password will be automatically saved.
+generatedPasswordWillBeSaved=Το %S θα αποθηκεύσει αυτό τον κωδικό πρόσβασης για αυτή την ιστοσελίδα.
+# LOCALIZATION NOTE (loginHostAge):
+# This is used to show the context menu login items with their age.
+# 1st string is the username for the login, 2nd is the login's age.
+loginHostAge=%1$S (%2$S)
+# LOCALIZATION NOTE (noUsername):
+# String is used on the context menu when a login doesn't have a username.
+noUsername=Χωρίς όνομα χρήστη
+
+# LOCALIZATION NOTE (displaySameOrigin):
+# String is used on the autocomplete row when the login origin is a domain match with the document origin
+displaySameOrigin=Από αυτή την ιστοσελίδα
+
+# LOCALIZATION NOTE (insecureFieldWarningDescription2):
+# %1$S will contain insecureFieldWarningLearnMore and look like a link to indicate that clicking will open a tab with support information.
+insecureFieldWarningDescription2 = Αυτή η σύνδεση δεν είναι ασφαλής. Οι συνδέσεις που γίνονται εδώ ενδέχεται να υποκλαπούν. %1$S
+insecureFieldWarningLearnMore = Μάθετε περισσότερα
+
+# LOCALIZATION NOTE (viewSavedLogins.label):
+# This label is used in the footer of login autocomplete menus.
+viewSavedLogins.label= Προβολή αποθηκευμένων συνδέσεων
diff --git a/l10n-el/toolkit/chrome/places/places.properties b/l10n-el/toolkit/chrome/places/places.properties
new file mode 100644
index 0000000000..2440da9ac2
--- /dev/null
+++ b/l10n-el/toolkit/chrome/places/places.properties
@@ -0,0 +1,33 @@
+# 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/.
+
+BookmarksMenuFolderTitle=Μενού σελιδοδεικτών
+BookmarksToolbarFolderTitle=Γραμμή σελιδοδεικτών
+OtherBookmarksFolderTitle=Άλλοι σελιδοδείκτες
+TagsFolderTitle=Ετικέτες
+MobileBookmarksFolderTitle=Σελιδοδείκτες κινητού
+
+OrganizerQueryHistory=Ιστορικό
+OrganizerQueryDownloads=Λήψεις
+OrganizerQueryAllBookmarks=Όλοι οι σελιδοδείκτες
+
+# LOCALIZATION NOTE (dateName):
+# These are used to generate history containers when history is grouped by date
+finduri-AgeInDays-is-0=Σήμερα
+finduri-AgeInDays-is-1=Χθες
+finduri-AgeInDays-is=%S ημέρες πριν
+finduri-AgeInDays-last-is=Τελευταίες %S ημέρες
+finduri-AgeInDays-isgreater=Περισσότερο από %S ημέρες
+finduri-AgeInMonths-is-0=Αυτό τον μήνα
+finduri-AgeInMonths-isgreater=Περισσότερο από %S μήνες
+
+# LOCALIZATION NOTE (localFiles):
+# This is used to generate local files container when history is grouped by site
+localhost=(τοπικά αρχεία)
+
+# LOCALIZATION NOTE
+# The string is used for showing file size of each backup in the "fileRestorePopup" popup
+# %1$S is the file size
+# %2$S is the file size unit
+backupFileSizeText=%1$S %2$S
diff --git a/l10n-el/toolkit/chrome/pluginproblem/pluginproblem.dtd b/l10n-el/toolkit/chrome/pluginproblem/pluginproblem.dtd
new file mode 100644
index 0000000000..008b2d1bc9
--- /dev/null
+++ b/l10n-el/toolkit/chrome/pluginproblem/pluginproblem.dtd
@@ -0,0 +1,32 @@
+<!-- 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 (tapToPlayPlugin): Mobile (used for touch interfaces) only has one type of plugin possible. -->
+<!ENTITY tapToPlayPlugin "Πατήστε εδώ για ενεργοποίηση του αρθρώματος.">
+<!ENTITY clickToActivatePlugin "Ενεργοποίηση αρθρώματος.">
+<!ENTITY checkForUpdates "Έλεγχος για ενημερώσεις…">
+<!ENTITY blockedPlugin.label "Αυτό το άρθρωμα έχει αποκλειστεί για την ασφάλειά σας.">
+<!ENTITY hidePluginBtn.label "Απόκρυψη αρθρώματος">
+<!ENTITY managePlugins "Διαχείριση αρθρωμάτων…">
+
+<!-- LOCALIZATION NOTE (reloadPlugin.pre): include a trailing space as needed -->
+<!-- LOCALIZATION NOTE (reloadPlugin.middle): avoid leading/trailing spaces, this text is a link -->
+<!-- LOCALIZATION NOTE (reloadPlugin.post): include a starting space as needed -->
+<!ENTITY reloadPlugin.pre "">
+<!ENTITY reloadPlugin.middle "Ανανεώστε τη σελίδα">
+<!ENTITY reloadPlugin.post " για να δοκιμάσετε ξανά.">
+<!-- LOCALIZATION NOTE (report.please): This and the other report.* strings should be as short as possible, ideally 2-3 words. -->
+<!ENTITY report.please "Αποστολή αναφοράς κατάρρευσης">
+<!ENTITY report.submitting "Αποστολή αναφοράς…">
+<!ENTITY report.submitted "Η αναφορά κατάρρευσης στάλθηκε.">
+<!ENTITY report.disabled "Οι αναφορές κατάρρευσης απενεργοποιήθηκαν.">
+<!ENTITY report.failed "Η υποβολή απέτυχε.">
+<!ENTITY report.unavailable "Δεν υπάρχει διαθέσιμη αναφορά.">
+<!ENTITY report.comment "Προσθέστε ένα σχόλιο (τα σχόλια είναι δημόσια)">
+<!ENTITY report.pageURL "Να συμπεριληφθεί το URL της σελίδας">
+
+<!ENTITY plugin.file "Αρχείο">
+<!ENTITY plugin.mimeTypes "Τύποι MIME">
+<!ENTITY plugin.flashProtectedMode.label "Ενεργοποίηση ασφαλούς λειτουργίας του Adobe Flash">
+<!ENTITY plugin.enableBlocklists.label "Φραγή επικίνδυνου και παρεμβατικού περιεχομένου Flash">
diff --git a/l10n-el/toolkit/chrome/search/search.properties b/l10n-el/toolkit/chrome/search/search.properties
new file mode 100644
index 0000000000..0bd1284b3c
--- /dev/null
+++ b/l10n-el/toolkit/chrome/search/search.properties
@@ -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/.
+
+addEngineConfirmTitle=Προσθήκη μηχανής αναζήτησης
+addEngineConfirmation=Να προστεθεί η "%S" στην διαθέσιμη λίστα μηχανών στην μπάρα αναζήτησης;\n\nΑπό: %S
+addEngineAsCurrentText=Χρήση αυτής της μηχανής ως την τρέ&χουσα μηχανή αναζήτησης
+addEngineAddButtonLabel=Προσθήκη
+
+error_loading_engine_title=Σφάλμα λήψης
+# LOCALIZATION NOTE (error_loading_engine_msg2): %1$S = brandShortName, %2$S = location
+error_loading_engine_msg2=Το %S δεν μπόρεσε να κάνει λήψη του αρθρώματος αναζήτησης από:\n%S
+error_duplicate_engine_msg=Το %S δεν μπόρεσε να εγκαταστήσει το άρθρωμα αναζήτησης από το "%S", επειδή υπάρχει ήδη μια μηχανή με το ίδιο όνομα.
+
+error_invalid_engine_title=Σφάλμα εγκατάστασης
+error_invalid_format_title=Μη έγκυρη μορφή
+# LOCALIZATION NOTE (error_invalid_engine_msg2): %1$S = brandShortName, %2$S = location (url)
+error_invalid_engine_msg2=Το %1$S δεν μπόρεσε να εγκαταστήσει τη μηχανή αναζήτησης από το: %2$S
+
diff --git a/l10n-el/toolkit/crashreporter/aboutcrashes.ftl b/l10n-el/toolkit/crashreporter/aboutcrashes.ftl
new file mode 100644
index 0000000000..c447e9afc7
--- /dev/null
+++ b/l10n-el/toolkit/crashreporter/aboutcrashes.ftl
@@ -0,0 +1,22 @@
+# 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/.
+
+crash-reports-title = Αναφορές κατάρρευσης
+submit-all-button-label = Υποβολή όλων
+delete-button-label = Εκκαθάριση όλων
+delete-confirm-title = Σίγουρα;
+delete-unsubmitted-description = Αυτή η ενέργεια θα διαγράψει όλες τις μη υποβληθείσες αναφορές καταρρεύσεων και δεν είναι αναστρέψιμη.
+delete-submitted-description = Αυτή η ενέργεια θα διαγράψει τη λίστα των υποβληθέντων αναφορών κατάρρευσης, αλλά όχι τα υποβληθέντα δεδομένα. Δεν είναι δυνατή η αναίρεση.
+crashes-unsubmitted-label = Μη υποβληθείσες αναφορές κατάρρευσης
+id-heading = ID Αναφοράς
+date-crashed-heading = Ημερομηνία κατάρρευσης
+submit-crash-button-label = Υποβολή
+# This text is used to replace the label of the crash submit button
+# if the crash submission fails.
+submit-crash-button-failure-label = Αποτυχία
+crashes-submitted-label = Υποβληθείσες αναφορές κατάρρευσης
+date-submitted-heading = Ημερομηνία υποβολής
+view-crash-button-label = Προβολή
+no-reports-label = Δεν έχουν υποβληθεί αναφορές προβλημάτων.
+no-config-label = Αυτή η εφαρμογή δεν έχει ρυθμιστεί για να εμφανίζει αναφορές προβλημάτων. Θα πρέπει να ρυθμιστούν οι προτιμήσεις στο <code>breakpad.reportURL</code>.
diff --git a/l10n-el/toolkit/crashreporter/crashreporter.ini b/l10n-el/toolkit/crashreporter/crashreporter.ini
new file mode 100644
index 0000000000..35a912f75c
--- /dev/null
+++ b/l10n-el/toolkit/crashreporter/crashreporter.ini
@@ -0,0 +1,60 @@
+# 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 file is in the UTF-8 encoding
+[Strings]
+# LOCALIZATION NOTE (isRTL):
+# Leave this entry empty unless your language requires right-to-left layout,
+# for example like Arabic, Hebrew, Persian. If your language needs RTL, please
+# use the untranslated English word "yes" as value
+isRTL=
+CrashReporterTitle=Αναφορά καταρρεύσεων
+# LOCALIZATION NOTE (CrashReporterVendorTitle): %s is replaced with the vendor name. (i.e. "Mozilla")
+CrashReporterVendorTitle=Αναφορά καταρρεύσεων %s
+# LOCALIZATION NOTE (CrashReporterErrorText): %s is replaced with another string containing detailed information.
+CrashReporterErrorText=Η εφαρμογή αντιμετώπισε ένα πρόβλημα και κατέρρευσε.\n\nΔυστυχώς, η εφαρμογή αναφοράς καταρρεύσεων δεν μπορεί να υποβάλλει μια αναφορά για αυτή την κατάρρευση.\n\nΛεπτομέρειες: %s
+# LOCALIZATION NOTE (CrashReporterProductErrorText2): The first %s is replaced with the product name (i.e. "Firefox"), the second is replaced with another string containing detailed information. These two substitutions can not be reordered!
+CrashReporterProductErrorText2=%s αντιμετώπισε ένα απρόσμενο σφάλμα και κόλλησε.\n\nΔυστυχώς η αναφορά προβλημάτων δεν μπορεί να υποβάλλει αναφορά για αυτό το κόλλημα.\n\nΛεπτομέρειες: %s
+CrashReporterSorry=Λυπούμαστε
+# LOCALIZATION NOTE (CrashReporterDescriptionText2): The %s is replaced with the product name.
+CrashReporterDescriptionText2=Ο %s αντιμετώπισε ένα απρόσμενο σφάλμα και κόλλησε.\n\nΓια να βοηθήσετε στη διάγνωση και την επιδιόρθωση του προβλήματος, στείλτε μας την αναφορά προβλήματος.
+CrashReporterDefault=Αυτή η εφαρμογή εκτελείται μετά από ένα κόλλημα της εφαρμογής για αποστείλει το πρόβλημα στον δημιουργό της εφαρμογής. Δεν πρέπει να τρέχει μόνη της.
+Details=Λεπτομέρειες…
+ViewReportTitle=Περιεχόμενα αναφοράς
+CommentGrayText=Προσθέστε ένα σχόλιο. Σημείωση: Τα σχόλια είναι ορατά σε όλους
+ExtraReportInfo=Αυτή η αναφορά περιέχει ακόμα πληροφορίες για την κατάσταση της εφαρμογής την στιγμή που κόλλησε.
+# LOCALIZATION NOTE (CheckSendReport): The %s is replaced with the vendor name.
+CheckSendReport=Ειδοποιήστε τον %s για το πρόβλημα ώστε να διορθωθεί
+CheckIncludeURL=Να συμπεριληφθεί και η διεύθυνση της τελευταίας σελίδας
+CheckAllowEmail=Να επιτρέπεται στον %s να έρθει σε επαφή μαζί μου για αυτή την αναφορά
+EmailGrayText=Εισάγετε εδώ την διεύθυνση email σας
+ReportPreSubmit2=Η αναφορά προβλήματος θα υποβληθεί πριν την επανεκκίνηση ή το κλείσιμο της της εφαρμογής.
+ReportDuringSubmit2=Υποβολή της αναφοράς σας…
+ReportSubmitSuccess=Η αναφορά υποβλήθηκε επιτυχώς!
+ReportSubmitFailed=Υπήρξε ένα πρόβλημα κατά την υποβολή της αναφοράς σας.
+ReportResubmit=Αποστολή ξανά προηγούμενων μη απεσταλμένων αναφορών…
+# LOCALIZATION NOTE (Quit2): The %s is replaced with the product name.
+Quit2=Έξοδος %s
+# LOCALIZATION NOTE (Restart): The %s is replaced with the product name.
+Restart=Επανεκκίνηση %s
+Ok=OK
+Close=Κλείσιμο
+
+# LOCALIZATION NOTE (CrashID): The %s is replaced with the Crash ID from the server, which is a string like abc12345-6789-0abc-def1-23456abcdef1
+CrashID=Αναγνωριστικό προβλήματος: %s
+# LOCALIZATION NOTE (CrashDetailsURL): The %s is replaced with a URL that the user can visit to view the crash details.
+CrashDetailsURL=Μπορείτε να δείτε λεπτομέρειες αυτού του προβλήματος στο %s
+ErrorBadArguments=Η εφαρμογή έστειλε μια μη έγκυρη παράμετρο.
+ErrorExtraFileExists=Η εφαρμογή δεν άφησε αρχείο δεδομένων εφαρμογής.
+ErrorExtraFileRead=Αδυναμία ανάγνωσης αρχείου δεδομένων εφαρμογής.
+ErrorExtraFileMove=Αδυναμία μετακίνησης αρχείου δεδομένων εφαρμογής.
+ErrorDumpFileExists=Η εφαρμογή δεν δημιούργησε αρχείο πληροφοριών προβλήματος.
+ErrorDumpFileMove=Αδυναμία μετακίνησης αρχείου πληροφοριών προβλήματος.
+ErrorNoProductName=Η εφαρμογή δεν δήλωσε τον εαυτό της.
+ErrorNoServerURL=Η εφαρμογή δεν καθόρισε ένα διακομιστή αναφοράς σφάλματος.
+ErrorNoSettingsPath=Αδυναμία εύρεσης ρυθμίσεων αναφοράς προβλημάτων.
+ErrorCreateDumpDir=Δεν ήταν δυνατή η δημιουργία εκκρεμούς καταλόγου dump.
+# LOCALIZATION NOTE (ErrorEndOfLife): The %s is replaced with the product name.
+ErrorEndOfLife=Η έκδοση του %s σας δεν υποστηρίζεται. Οι αναφορές καταρρεύσεων δεν γίνονται πλέον δεκτές για αυτή την έκδοση. Παρακαλώ κάντε αναβάθμιση σε μια υποστηριζόμενη έκδοση.
+
diff --git a/l10n-el/toolkit/defines.inc b/l10n-el/toolkit/defines.inc
new file mode 100644
index 0000000000..e6befdc677
--- /dev/null
+++ b/l10n-el/toolkit/defines.inc
@@ -0,0 +1 @@
+#define MOZ_LANG_TITLE Ελληνικά
diff --git a/l10n-el/toolkit/toolkit/about/aboutAbout.ftl b/l10n-el/toolkit/toolkit/about/aboutAbout.ftl
new file mode 100644
index 0000000000..6ed25a8637
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutAbout.ftl
@@ -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/.
+
+about-about-title = Πληροφορίες για το About
+about-about-note =
+ Αυτή είναι μια λίστα των σελίδων “about” για να τις έχετε εύκαιρες.<br/>
+ Μερικές από αυτές μπορεί να σας μπερδέψουν. Μερικές υπάρχουν μόνο για διαγνωστικούς λόγους.<br/>
+ Και μερικές άλλες δεν αναφέρονται, επειδή απαιτούν επιπρόσθετα αλφαριθμητικά αναζήτησης.
diff --git a/l10n-el/toolkit/toolkit/about/aboutAddons.ftl b/l10n-el/toolkit/toolkit/about/aboutAddons.ftl
new file mode 100644
index 0000000000..636b6e7de9
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutAddons.ftl
@@ -0,0 +1,427 @@
+# 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/.
+
+addons-window =
+ .title = Διαχείριση προσθέτων
+addons-page-title = Διαχείριση προσθέτων
+search-header =
+ .placeholder = Αναζήτηση στο addons.mozilla.org
+ .searchbuttonlabel = Αναζήτηση
+search-header-shortcut =
+ .key = f
+list-empty-installed =
+ .value = Δεν έχετε εγκατεστημένα πρόσθετα αυτού του τύπου
+list-empty-available-updates =
+ .value = Δεν βρέθηκαν ενημερώσεις
+list-empty-recent-updates =
+ .value = Δεν έχετε ενημερώσει πρόσφατα κάποιο από τα πρόσθετα σας
+list-empty-find-updates =
+ .label = Έλεγχος για ενημερώσεις
+list-empty-button =
+ .label = Μάθετε περισσότερα για τα πρόσθετα
+help-button = Υποστήριξη προσθέτων
+sidebar-help-button-title =
+ .title = Υποστήριξη προσθέτων
+preferences =
+ { PLATFORM() ->
+ [windows] Επιλογές { -brand-short-name }
+ *[other] Προτιμήσεις { -brand-short-name }
+ }
+sidebar-preferences-button-title =
+ .title =
+ { PLATFORM() ->
+ [windows] Επιλογές { -brand-short-name }
+ *[other] Προτιμήσεις { -brand-short-name }
+ }
+show-unsigned-extensions-button =
+ .label = Δεν ήταν δυνατή η επαλήθευση ορισμένων πρόσθετων
+show-all-extensions-button =
+ .label = Προβολή όλων των επεκτάσεων
+cmd-show-details =
+ .label = Προβολή περισσότερων πληροφοριών
+ .accesskey = β
+cmd-find-updates =
+ .label = Εύρεση ενημερώσεων
+ .accesskey = ρ
+cmd-preferences =
+ .label =
+ { PLATFORM() ->
+ [windows] Επιλογές
+ *[other] Προτιμήσεις
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] λ
+ *[other] Π
+ }
+cmd-enable-theme =
+ .label = Ενεργοποίηση θέματος
+ .accesskey = ν
+cmd-disable-theme =
+ .label = Απενεργοποίηση θέματος
+ .accesskey = π
+cmd-install-addon =
+ .label = Εγκατάσταση
+ .accesskey = γ
+cmd-contribute =
+ .label = Συνεισφορά
+ .accesskey = φ
+ .tooltiptext = Βοηθήστε στην ανάπτυξη αυτού του προσθέτου
+detail-version =
+ .label = Έκδοση
+detail-last-updated =
+ .label = Τελευταία ενημέρωση
+detail-contributions-description = Ο προγραμματιστής αυτού του προσθέτου σας ζητάει να βοηθήσετε να συνεχίζει την ανάπτυξη του με μια μικρή συνεισφορά.
+detail-contributions-button = Συνεισφορά
+ .title = Συνεισφορά στην ανάπτυξη αυτού του προσθέτου
+ .accesskey = Σ
+detail-update-type =
+ .value = Αυτόματες ενημερώσεις
+detail-update-default =
+ .label = Προεπιλογή
+ .tooltiptext = Αυτόματη εγκατάσταση ενημερώσεων μόνο αν αυτό έχει ορισθεί ως προεπιλογή
+detail-update-automatic =
+ .label = Ναι
+ .tooltiptext = Αυτόματη εγκατάσταση ενημερώσεων
+detail-update-manual =
+ .label = Όχι
+ .tooltiptext = Να μην γίνεται αυτόματη εγκατάσταση ενημερώσεων
+# Used as a description for the option to allow or block an add-on in private windows.
+detail-private-browsing-label = Εκτέλεση σε ιδιωτικά παράθυρα
+# Some add-ons may elect to not run in private windows by setting incognito: not_allowed in the manifest. This
+# cannot be overridden by the user.
+detail-private-disallowed-label = Δεν επιτρέπεται στα ιδιωτικά παράθυρα
+detail-private-disallowed-description2 = Αυτή η επέκταση δεν εκτελείται κατά την ιδιωτική περιήγηση. <a data-l10n-name="learn-more">Μάθετε περισσότερα</a>
+# Some special add-ons are privileged, run in private windows automatically, and this permission can't be revoked
+detail-private-required-label = Απαιτεί πρόσβαση στα ιδιωτικά παράθυρα
+detail-private-required-description2 = Αυτή η επέκταση έχει πρόσβαση στις διαδικτυακές σας δραστηριότητες κατά την ιδιωτική περιήγηση. <a data-l10n-name="learn-more">Μάθετε περισσότερα</a>
+detail-private-browsing-on =
+ .label = Αποδοχή
+ .tooltiptext = Ενεργοποίηση στην ιδιωτική περιήγηση
+detail-private-browsing-off =
+ .label = Απόρριψη
+ .tooltiptext = Απενεργοποίηση στην ιδιωτική περιήγηση
+detail-home =
+ .label = Αρχική σελίδα
+detail-home-value =
+ .value = { detail-home.label }
+detail-repository =
+ .label = Προφίλ πρόσθετου
+detail-repository-value =
+ .value = { detail-repository.label }
+detail-check-for-updates =
+ .label = Έλεγχος για ενημερώσεις
+ .accesskey = χ
+ .tooltiptext = Έλεγχος για ενημερώσεις αυτού του προσθέτου
+detail-show-preferences =
+ .label =
+ { PLATFORM() ->
+ [windows] Επιλογές
+ *[other] Προτιμήσεις
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] λ
+ *[other] Π
+ }
+ .tooltiptext =
+ { PLATFORM() ->
+ [windows] Αλλαγή των επιλογών αυτού του προσθέτου
+ *[other] Αλλαγή των προτιμήσεων
+ }
+detail-rating =
+ .value = Αξιολόγηση
+addon-restart-now =
+ .label = Επανεκκίνηση τώρα
+disabled-unsigned-heading =
+ .value = Κάποια πρόσθετα έχουν απενεργοποιηθεί
+disabled-unsigned-description = Τα ακόλουθα πρόσθετα δεν έχουν επαληθευτεί για χρήση στο { -brand-short-name }. Μπορείτε να <label data-l10n-name="find-addons">βρείτε υποκατάστατα</label> ή ζητήστε από τους προγραμματιστές να επαληθεύσουν την εφαρμογή.
+disabled-unsigned-learn-more = Μάθετε περισσότερα σχετικά με τις προσπάθειές μας να είστε ασφαλείς στο διαδίκτυο.
+disabled-unsigned-devinfo = Οι προγραμματιστές που ενδιαφέρονται να επαληθεύσουν τα πρόσθετά τους, μπορούν να απευθυνθούν στο <label data-l10n-name="learn-more">εγχειρίδιο</label>.
+plugin-deprecation-description = Λείπει τίποτα; Ορισμένα αρθρώματα δεν υποστηρίζονται πλέον από το { -brand-short-name }. <label data-l10n-name="learn-more">Μάθετε περισσότερα.</label>
+legacy-warning-show-legacy = Εμφάνιση επεκτάσεων παλαιού τύπου
+legacy-extensions =
+ .value = Επεκτάσεις παλαιού τύπου
+legacy-extensions-description = Αυτές οι επεκτάσεις δεν πληρούν τα τρέχοντα κριτήρια του { -brand-short-name }, επομένως έχουν απενεργοποιηθεί. <label data-l10n-name="legacy-learn-more">Μάθετε σχετικά με τις αλλαγές στα πρόσθετα</label>
+private-browsing-description2 =
+ Το { -brand-short-name } αλλάζει τον τρόπο λειτουργίας των επεκτάσεων στην ιδιωτική περιήγηση. Τυχόν νέες επεκτάσεις που προσθέτετε στο
+ { -brand-short-name } δεν θα εκτελούνται από προεπιλογή στα ιδιωτικά παράθυρα. Αν δεν το επιτρέψετε στις ρυθμίσεις, η
+ επέκταση δεν θα λειτουργεί κατά την ιδιωτική περιήγηση και δεν θα έχει πρόσβαση στις διαδικτυακές σας δραστηριότητες εκεί. Έχουμε κάνει αυτή την αλλαγή για να παραμείνει η ιδιωτική σας περιήγηση ιδιωτική.
+ <label data-l10n-name="private-browsing-learn-more">Μάθετε πώς να διαχειριστείτε τις ρυθμίσεις επεκτάσεων</label>
+addon-category-discover = Προτάσεις
+addon-category-discover-title =
+ .title = Προτάσεις
+addon-category-extension = Επεκτάσεις
+addon-category-extension-title =
+ .title = Επεκτάσεις
+addon-category-theme = Θέματα
+addon-category-theme-title =
+ .title = Θέματα
+addon-category-plugin = Αρθρώματα
+addon-category-plugin-title =
+ .title = Αρθρώματα
+addon-category-dictionary = Λεξικά
+addon-category-dictionary-title =
+ .title = Λεξικά
+addon-category-locale = Γλώσσες
+addon-category-locale-title =
+ .title = Γλώσσες
+addon-category-available-updates = Διαθέσιμες ενημερώσεις
+addon-category-available-updates-title =
+ .title = Διαθέσιμες ενημερώσεις
+addon-category-recent-updates = Πρόσφατες ενημερώσεις
+addon-category-recent-updates-title =
+ .title = Πρόσφατες ενημερώσεις
+
+## These are global warnings
+
+extensions-warning-safe-mode = Όλα τα πρόσθετα έχουν απενεργοποιηθεί στην ασφαλή λειτουργία.
+extensions-warning-check-compatibility = Ο έλεγχος συμβατότητας προσθέτων είναι ανενεργός. Μπορεί να έχετε ασύμβατα πρόσθετα.
+extensions-warning-check-compatibility-button = Ενεργοποίηση
+ .title = Ενεργοποίηση ελέγχου συμβατότητας προσθέτων
+extensions-warning-update-security = Ο έλεγχος ασφαλείας ενημερώσεων προσθέτων είναι ανενεργός. Μπορεί να κινδυνέψετε.
+extensions-warning-update-security-button = Ενεργοποίηση
+ .title = Ενεργοποίηση ελέγχου ασφαλείας ενημερώσεων προσθέτων
+
+## Strings connected to add-on updates
+
+addon-updates-check-for-updates = Έλεγχος για ενημερώσεις
+ .accesskey = χ
+addon-updates-view-updates = Εμφάνιση πρόσφατων ενημερώσεων
+ .accesskey = φ
+
+# This menu item is a checkbox that toggles the default global behavior for
+# add-on update checking.
+
+addon-updates-update-addons-automatically = Αυτόματη ενημέρωση προσθέτων
+ .accesskey = Α
+
+## Specific add-ons can have custom update checking behaviors ("Manually",
+## "Automatically", "Use default global behavior"). These menu items reset the
+## update checking behavior for all add-ons to the default global behavior
+## (which itself is either "Automatically" or "Manually", controlled by the
+## extensions-updates-update-addons-automatically.label menu item).
+
+addon-updates-reset-updates-to-automatic = Ρύθμιση όλων των προσθέτων σε αυτόματη ενημέρωση
+ .accesskey = Ρ
+addon-updates-reset-updates-to-manual = Ρύθμιση όλων των προσθέτων σε χειροκίνητη ενημέρωση
+ .accesskey = χ
+
+## Status messages displayed when updating add-ons
+
+addon-updates-updating = Γίνεται ενημέρωση προσθέτων
+addon-updates-installed = Τα πρόσθετα σας ενημερώθηκαν.
+addon-updates-none-found = Δεν βρέθηκαν ενημερώσεις
+addon-updates-manual-updates-found = Εμφάνιση διαθέσιμων ενημερώσεων
+
+## Add-on install/debug strings for page options menu
+
+addon-install-from-file = Εγκατάσταση πρόσθετου από αρχείο…
+ .accesskey = γ
+addon-install-from-file-dialog-title = Επιλέξτε πρόσθετο για εγκατάσταση
+addon-install-from-file-filter-name = Πρόσθετα
+addon-open-about-debugging = Εντοπισμός σφαλμάτων προσθέτων
+ .accesskey = π
+
+## Extension shortcut management
+
+# This is displayed in the page options menu
+addon-manage-extensions-shortcuts = Διαχείριση συντομεύσεων επεκτάσεων
+ .accesskey = σ
+shortcuts-no-addons = Δεν έχετε ενεργοποιήσει καμία επέκταση.
+shortcuts-no-commands = Οι εξής επεκτάσεις δεν έχουν συντομεύσεις:
+shortcuts-input =
+ .placeholder = Πληκτρολογήστε μια συντόμευση
+shortcuts-browserAction2 = Κουμπί ενεργοποίησης γραμμής εργαλείων
+shortcuts-pageAction = Ενεργοποίηση ενέργειας σελίδας
+shortcuts-sidebarAction = (Απ)ενεργοποίηση πλευρικής γραμμής
+shortcuts-modifier-mac = Συμπεριλάβετε Ctrl, Alt, ή ⌘
+shortcuts-modifier-other = Συμπεριλάβετε Ctrl ή Alt
+shortcuts-invalid = Άκυρος συνδυασμός
+shortcuts-letter = Πληκτρολογήστε ένα γράμμα
+shortcuts-system = Αδυναμία αντικατάστασης συντόμευσης του { -brand-short-name }
+# String displayed in warning label when there is a duplicate shortcut
+shortcuts-duplicate = Διπλή συντόμευση
+# String displayed when a keyboard shortcut is already assigned to more than one add-on
+# Variables:
+# $shortcut (string) - Shortcut string for the add-on
+shortcuts-duplicate-warning-message = Το { $shortcut } χρησιμοποιείται ως συντόμευση σε περισσότερες από μία περιπτώσεις. Οι διπλές συντομεύσεις ίσως προκαλέσουν απροσδόκητη συμπεριφορά.
+# String displayed when a keyboard shortcut is already used by another add-on
+# Variables:
+# $addon (string) - Name of the add-on
+shortcuts-exists = Χρησιμοποιείται ήδη από το { $addon }
+shortcuts-card-expand-button =
+ { $numberToShow ->
+ [one] Εμφάνιση { $numberToShow } περισσότερου
+ *[other] Εμφάνιση { $numberToShow } περισσότερων
+ }
+shortcuts-card-collapse-button = Εμφάνιση λιγότερων
+header-back-button =
+ .title = Επιστροφή
+
+## Recommended add-ons page
+
+# Explanatory introduction to the list of recommended add-ons. The action word
+# ("recommends") in the final sentence is a link to external documentation.
+discopane-intro =
+ Οι επεκτάσεις και τα θέματα είναι σαν εφαρμογές για το πρόγραμμα περιήγησής σας και σας επιτρέπουν
+ να προστατεύετε τους κωδικούς πρόσβασής σας, να κάνετε λήψη βίντεο, να βρίσκετε προσφορές, να αποκλείσετε ενοχλητικές διαφημίσεις, να αλλάξετε
+ την εμφάνιση του προγράμματος περιήγησής σας και πολλά άλλα. Αυτά τα μικρά προγράμματα
+ αναπτύσσονται συνήθως από τρίτους. Ορίστε μια συλλογή που το { -brand-product-name }
+ <a data-l10n-name="learn-more-trigger">προτείνει</a> για εξαιρετική
+ ασφάλεια, επιδόσεις και λειτουργικότητα.
+# Notice to make user aware that the recommendations are personalized.
+discopane-notice-recommendations =
+ Μερικές από αυτές τις προτάσεις είναι εξατομικευμένες. Βασίζονται σε άλλες
+ επεκτάσεις που έχετε εγκαταστήσει, σε προτιμήσεις προφίλ και σε στατιστικά χρήσης.
+discopane-notice-learn-more = Μάθετε περισσότερα
+privacy-policy = Πολιτική απορρήτου
+# Refers to the author of an add-on, shown below the name of the add-on.
+# Variables:
+# $author (string) - The name of the add-on developer.
+created-by-author = από <a data-l10n-name="author">{ $author }</a>
+# Shows the number of daily users of the add-on.
+# Variables:
+# $dailyUsers (number) - The number of daily users.
+user-count = Χρήστες: { $dailyUsers }
+install-extension-button = Προσθήκη στο { -brand-product-name }
+install-theme-button = Εγκατάσταση θέματος
+# The label of the button that appears after installing an add-on. Upon click,
+# the detailed add-on view is opened, from where the add-on can be managed.
+manage-addon-button = Διαχείριση
+find-more-addons = Εύρεση περισσότερων προσθέτων
+# This is a label for the button to open the "more options" menu, it is only
+# used for screen readers.
+addon-options-button =
+ .aria-label = Περισσότερες επιλογές
+
+## Add-on actions
+
+report-addon-button = Αναφορά
+remove-addon-button = Αφαίρεση
+# The link will always be shown after the other text.
+remove-addon-disabled-button = Δεν μπορεί να αφαιρεθεί <a data-l10n-name="link">Γιατί;</a>
+disable-addon-button = Απενεργοποίηση
+enable-addon-button = Ενεργοποίηση
+# This is used for the toggle on the extension card, it's a checkbox and this
+# is always its label.
+extension-enable-addon-button-label =
+ .aria-label = Ενεργοποίηση
+preferences-addon-button =
+ { PLATFORM() ->
+ [windows] Επιλογές
+ *[other] Προτιμήσεις
+ }
+details-addon-button = Λεπτομέρειες
+release-notes-addon-button = Σημειώσεις έκδοσης
+permissions-addon-button = Δικαιώματα
+extension-enabled-heading = Ενεργό
+extension-disabled-heading = Ανενεργό
+theme-enabled-heading = Ενεργό
+theme-disabled-heading = Ανενεργό
+plugin-enabled-heading = Ενεργό
+plugin-disabled-heading = Ανενεργό
+dictionary-enabled-heading = Ενεργό
+dictionary-disabled-heading = Ανενεργό
+locale-enabled-heading = Ενεργό
+locale-disabled-heading = Ανενεργό
+ask-to-activate-button = Ερώτηση για ενεργοποίηση
+always-activate-button = Πάντα ενεργοποιημένο
+never-activate-button = Ποτέ ενεργοποιημένο
+addon-detail-author-label = Δημιουργός
+addon-detail-version-label = Έκδοση
+addon-detail-last-updated-label = Τελευταία ενημέρωση
+addon-detail-homepage-label = Αρχική σελίδα
+addon-detail-rating-label = Βαθμολογία
+# Message for add-ons with a staged pending update.
+install-postponed-message = Αυτή η επέκταση θα ενημερωθεί όταν επανεκκινηθεί το { -brand-short-name }.
+install-postponed-button = Ενημέρωση τώρα
+# The average rating that the add-on has received.
+# Variables:
+# $rating (number) - A number between 0 and 5. The translation should show at most one digit after the comma.
+five-star-rating =
+ .title = Με βαθμό { NUMBER($rating, maximumFractionDigits: 1) } από 5
+# This string is used to show that an add-on is disabled.
+# Variables:
+# $name (string) - The name of the add-on
+addon-name-disabled = { $name } (ανενεργό)
+# The number of reviews that an add-on has received on AMO.
+# Variables:
+# $numberOfReviews (number) - The number of reviews received
+addon-detail-reviews-link =
+ { $numberOfReviews ->
+ [one] { $numberOfReviews } κριτική
+ *[other] { $numberOfReviews } κριτικές
+ }
+
+## Pending uninstall message bar
+
+# Variables:
+# $addon (string) - Name of the add-on
+pending-uninstall-description = Το <span data-l10n-name="addon-name">{ $addon }</span> έχει αφαιρεθεί.
+pending-uninstall-undo-button = Αναίρεση
+addon-detail-updates-label = Να επιτρέπονται αυτόματες ενημερώσεις
+addon-detail-updates-radio-default = Προεπιλογή
+addon-detail-updates-radio-on = Ενεργό
+addon-detail-updates-radio-off = Ανενεργό
+addon-detail-update-check-label = Έλεγχος για ενημερώσεις
+install-update-button = Ενημέρωση
+# This is the tooltip text for the private browsing badge in about:addons. The
+# badge is the private browsing icon included next to the extension's name.
+addon-badge-private-browsing-allowed2 =
+ .title = Επιτρέπεται σε ιδιωτικά παράθυρα
+ .aria-label = { addon-badge-private-browsing-allowed2.title }
+addon-detail-private-browsing-help = Όταν επιτρέπεται, η επέκταση θα έχει πρόσβαση στις δραστηριότητές σας στο διαδίκτυο κατά την ιδιωτική περιήγηση. <a data-l10n-name="learn-more">Μάθετε περισσότερα</a>
+addon-detail-private-browsing-allow = Αποδοχή
+addon-detail-private-browsing-disallow = Απόρριψη
+
+## This is the tooltip text for the recommended badges for an extension in about:addons. The
+## badge is a small icon displayed next to an extension when it is recommended on AMO.
+
+addon-badge-recommended2 =
+ .title = Το { -brand-product-name } προτείνει μόνο επεκτάσεις που πληρούν τα πρότυπα ασφαλείας και επιδόσεών μας
+ .aria-label = { addon-badge-recommended2.title }
+addon-badge-line2 =
+ .title = Αυτή είναι μια επίσημη επέκταση που αναπτύχθηκε από τους δημιουργούς του { -brand-product-name }
+ .aria-label = { addon-badge-line2.title }
+# We hard code "Mozilla" in the string below because the extensions are built
+# by Mozilla and we don't want forks to display "by Fork".
+addon-badge-line3 =
+ .title = Επίσημη επέκταση από τη Mozilla. Πληροί τα πρότυπα ασφαλείας και επιδόσεων
+ .aria-label = { addon-badge-line3.title }
+addon-badge-verified2 =
+ .title = Αυτή η επέκταση έχει ελεγχθεί και πληροί τα πρότυπα ασφαλείας και επιδόσεών μας
+ .aria-label = { addon-badge-verified2.title }
+
+##
+
+available-updates-heading = Διαθέσιμες ενημερώσεις
+recent-updates-heading = Πρόσφατες ενημερώσεις
+release-notes-loading = Φόρτωση…
+release-notes-error = Λυπούμαστε, αλλά προέκυψε σφάλμα φόρτωσης των σημειώσεων έκδοσης.
+addon-permissions-empty = Αυτή η επέκταση δεν απαιτεί δικαιώματα
+addon-permissions-required = Απαιτούμενα δικαιώματα για βασική λειτουργικότητα:
+addon-permissions-optional = Προαιρετικά δικαιώματα για επιπρόσθετη λειτουργικότητα:
+addon-permissions-learnmore = Μάθετε περισσότερα σχετικά με τα δικαιώματα
+recommended-extensions-heading = Προτεινόμενες επεκτάσεις
+recommended-themes-heading = Προτεινόμενα θέματα
+# A recommendation for the Firefox Color theme shown at the bottom of the theme
+# list view. The "Firefox Color" name itself should not be translated.
+recommended-theme-1 = Αισθάνεστε δημιουργικοί; <a data-l10n-name="link">Δημιουργήστε το δικό σας θέμα με το Firefox Color.</a>
+
+## Page headings
+
+extension-heading = Διαχείριση των επεκτάσεών σας
+theme-heading = Διαχείριση των θεμάτων σας
+plugin-heading = Διαχείριση των αρθρωμάτων σας
+dictionary-heading = Διαχείριση των λεξικών σας
+locale-heading = Διαχείριση των γλωσσών σας
+updates-heading = Διαχείριση των ενημερώσεών σας
+discover-heading = Εξατομίκευση του { -brand-short-name }
+shortcuts-heading = Διαχείριση συντομεύσεων επεκτάσεων
+default-heading-search-label = Εύρεση περισσότερων προσθέτων
+addons-heading-search-input =
+ .placeholder = Αναζήτηση στο addons.mozilla.org
+addon-page-options-button =
+ .title = Εργαλεία για όλα τα πρόσθετα
diff --git a/l10n-el/toolkit/toolkit/about/aboutCompat.ftl b/l10n-el/toolkit/toolkit/about/aboutCompat.ftl
new file mode 100644
index 0000000000..14062a557f
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutCompat.ftl
@@ -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/.
+
+label-disable = Απενεργοποίηση
+label-enable = Ενεργοποίηση
+label-interventions = Παρεμβάσεις
+label-more-information = Περισσότερες πληροφορίες: Σφάλμα { $bug }
+label-overrides = Αντικαταστάσεις λειτουργίας χρήσης
+text-disabled-in-about-config = Αυτή η λειτουργία έχει απενεργοποιηθεί στο about:config
+text-no-interventions = Δεν χρησιμοποιούνται παρεμβάσεις
+text-no-overrides = Δεν χρησιμοποιούνται αντικαταστάσεις ΛΧ
+text-title = about:compat
diff --git a/l10n-el/toolkit/toolkit/about/aboutConfig.ftl b/l10n-el/toolkit/toolkit/about/aboutConfig.ftl
new file mode 100644
index 0000000000..18939c35f4
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutConfig.ftl
@@ -0,0 +1,91 @@
+# 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/.
+
+config-window =
+ .title = about:config
+
+## Strings used to display a warning in about:config
+
+# This text should be attention grabbing and playful
+config-about-warning-title =
+ .value = Προσοχή! Μπορεί να ακυρώσετε την εγγύηση του προϊόντος! ;-)
+config-about-warning-text = Η αλλαγή των προεπιλεγμένων τιμών πιθανόν να προκαλέσει ανεπιθύμητες παρενέργειες στην σταθερότητα, ασφάλεια και συμπεριφορά αυτής της εφαρμογής. Θα πρέπει να συνεχίσετε με τις αλλαγές μόνο αν γνωρίζετε καλά τι κάνετε.
+config-about-warning-button =
+ .label = Δέχομαι το ρίσκο!
+config-about-warning-checkbox =
+ .label = Εμφάνιση της προειδοποίησης και την επόμενη φορά
+config-search-prefs =
+ .value = Αναζήτηση:
+ .accesskey = ζ
+config-focus-search =
+ .key = r
+config-focus-search-2 =
+ .key = f
+
+## These strings are used for column headers
+
+config-pref-column =
+ .label = Όνομα προτίμησης
+config-lock-column =
+ .label = Κατάσταση
+config-type-column =
+ .label = Τύπος
+config-value-column =
+ .label = Τιμή
+
+## These strings are used for tooltips
+
+config-pref-column-header =
+ .tooltip = Κάντε κλικ για ταξινόμηση
+config-column-chooser =
+ .tooltip = Πατήστε να επιλέξετε τις προς εμφάνιση στήλες
+
+## These strings are used for the context menu
+
+config-copy-pref =
+ .key = C
+ .label = Αντιγραφή
+ .accesskey = γ
+config-copy-name =
+ .label = Αντιγραφή ονόματος
+ .accesskey = ν
+config-copy-value =
+ .label = Αντιγραφή τιμής
+ .accesskey = τ
+config-modify =
+ .label = Τροποποίηση
+ .accesskey = ρ
+config-toggle =
+ .label = (Απ)ενεργοποίηση
+ .accesskey = Ε
+config-reset =
+ .label = Επαναφορά
+ .accesskey = π
+config-new =
+ .label = Νέο
+ .accesskey = Ν
+config-string =
+ .label = Αλφαριθμητικό
+ .accesskey = λ
+config-integer =
+ .label = Ακέραιος
+ .accesskey = ρ
+config-boolean =
+ .label = Δυαδικός
+ .accesskey = κ
+config-default = προεπιλογή
+config-modified = τροποποιημένο
+config-locked = κλειδωμένο
+config-property-string = αλφαριθμητικό
+config-property-int = ακέραιος
+config-property-bool = δυαδικός
+config-new-prompt = Εισαγωγή του ονόματος προτίμησης
+config-nan-title = Μη έγκυρη τιμή
+config-nan-text = Το κείμενο που εισάγατε δεν είναι αριθμός.
+# Variables:
+# $type (String): type of value (boolean, integer or string)
+config-new-title = Νέα { $type } τιμή
+# Variables:
+# $type (String): type of value (boolean, integer or string)
+config-modify-title = Εισαγωγή { $type } τιμής
diff --git a/l10n-el/toolkit/toolkit/about/aboutGlean.ftl b/l10n-el/toolkit/toolkit/about/aboutGlean.ftl
new file mode 100644
index 0000000000..e760af5ecc
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutGlean.ftl
@@ -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/.
+
+
+### "Glean" and "Glean SDK" should remain in English.
+
+about-glean-page-title = Σχετικά με το Glean
+about-glean-description = Το <a data-l10n-name="glean-sdk-doc-link">Glean SDK</a> είναι μια βιβλιοθήκη συλλογής δεδομένων, η οποία χρησιμοποιείται στα προϊόντα της Mozilla. Αυτή η σελίδα απευθύνεται σε προγραμματιστές και δοκιμαστές που πρέπει να <a data-l10n-name="fog-debug-doc-link">ρυθμίσουν τον εντοπισμό σφαλμάτων και την καταγραφή κατάστασης στο Glean SDK</a>.
+about-glean-warning = Η κατάχρηση αυτού του περιβάλλοντος ενδέχεται να προκαλέσει κατάρρευση του { -brand-short-name }.
+tag-pings-label = Προσθήκη ετικέτας σε όλα τα απεσταλμένα pings
+log-pings-label = Καταγραφή φόρτου ping σε αρχείο πριν την αποστολή;
+send-pings-label = Αποστολή ping με όνομα
+controls-button-label = Υποβολή ρυθμίσεων
diff --git a/l10n-el/toolkit/toolkit/about/aboutHttpsOnlyError.ftl b/l10n-el/toolkit/toolkit/about/aboutHttpsOnlyError.ftl
new file mode 100644
index 0000000000..299159ca26
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutHttpsOnlyError.ftl
@@ -0,0 +1,28 @@
+# 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/.
+
+about-httpsonly-insecure-title = Μη διαθέσιμη ασφαλής σύνδεση
+# Variables:
+# $websiteUrl (String) - Url of the website that failed to load. Example: www.example.com
+about-httpsonly-insecure-explanation-unavailable = Περιηγείστε σε λειτουργία Μόνο-HTTPS και δεν διατίθεται ασφαλής έκδοση HTTPS του <em>{ $websiteUrl }</em>.
+about-httpsonly-insecure-explanation-reasons = Πιθανότατα, η ιστοσελίδα δεν υποστηρίζει HTTPS, αλλά είναι επίσης πιθανό ότι ένας εισβολέας αποκλείει την έκδοση HTTPS.
+about-httpsonly-insecure-explanation-exception = Ενώ ο κίνδυνος ασφαλείας είναι μικρός, αν αποφασίσετε να επισκεφθείτε την έκδοση HTTP της ιστοσελίδας, δεν θα πρέπει να καταχωρήσετε ευαίσθητες πληροφορίες, όπως κωδικούς πρόσβασης, emails ή στοιχεία πιστωτικών καρτών.
+about-httpsonly-button-make-exception = Αποδοχή κινδύνου και συνέχεια στην ιστοσελίδα
+about-httpsonly-title = Το { -brand-short-name } εντόπισε πιθανό ζήτημα ασφαλείας
+# Variables:
+# $websiteUrl (String) - Url of the website that failed to load. Example: www.example.com
+about-httpsonly-explanation-unavailable = Περιηγείστε σε λειτουργία Μόνο-HTTPS και δεν διατίθεται ασφαλής έκδοση HTTPS του <em>{ $websiteUrl }</em>.
+about-httpsonly-title-alert = Ειδοποίηση λειτουργίας Μόνο-HTTPS
+about-httpsonly-title-connection-not-available = Μη διαθέσιμη ασφαλής σύνδεση
+# Variables:
+# $websiteUrl (String) - Url of the website that failed to load. Example: www.example.com
+about-httpsonly-explanation-unavailable2 = Έχετε ενεργοποιήσει τη λειτουργία Μόνο-HTTPS για ενισχυμένη ασφάλεια, αλλά δεν διατίθεται ασφαλής έκδοση HTTPS του <em>{ $websiteUrl }</em>.
+about-httpsonly-explanation-question = Τι μπορεί να το προκαλεί αυτό;
+about-httpsonly-explanation-nosupport = Πιθανότατα, η ιστοσελίδα απλά δεν υποστηρίζει HTTPS.
+about-httpsonly-explanation-risk = Είναι επίσης πιθανό να έχει εμπλακεί ένας εισβολέας. Εάν αποφασίσετε να επισκεφθείτε την ιστοσελίδα, δεν πρέπει να εισαγάγετε ευαίσθητες πληροφορίες, όπως κωδικούς πρόσβασης, email, ή στοιχεία πιστωτικής κάρτας.
+about-httpsonly-button-accept-and-continue = Αποδοχή κινδύνου και συνέχεια
+about-httpsonly-explanation-continue = Αν συνεχίσετε, η λειτουργία Μόνο-HTTPS θα απενεργοποιηθεί προσωρινά για αυτή την ιστοσελίδα.
+about-httpsonly-button-continue-to-site = Συνέχεια σε ιστοσελίδα HTTP
+about-httpsonly-button-go-back = Επιστροφή
+about-httpsonly-link-learn-more = Μάθετε περισσότερα…
diff --git a/l10n-el/toolkit/toolkit/about/aboutMozilla.ftl b/l10n-el/toolkit/toolkit/about/aboutMozilla.ftl
new file mode 100644
index 0000000000..3479342d02
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutMozilla.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/.
+
+about-mozilla-title-6-27 = Βίβλος της Mozilla, 6:27
+about-mozilla-quote-6-27 =
+ The Beast continued its studies with renewed <em>Focus</em>, building great <em>Reference</em>
+ works and contemplating new <em>Realities</em>. The Beast brought forth its followers and
+ acolytes to create a renewed smaller form of itself and, through <em>Mischievous</em> means,
+ sent it out across the world.
+about-mozilla-from-6-27 = από τη <strong>Βίβλο της Mozilla,</strong> 6:27
diff --git a/l10n-el/toolkit/toolkit/about/aboutNetworking.ftl b/l10n-el/toolkit/toolkit/about/aboutNetworking.ftl
new file mode 100644
index 0000000000..a81dd0d11c
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutNetworking.ftl
@@ -0,0 +1,71 @@
+# 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/.
+
+about-networking-title = Σχετικά με τη δικτύωση
+about-networking-http = HTTP
+about-networking-sockets = Υποδοχές
+about-networking-dns = DNS
+about-networking-dns-clear-cache-button = Εκκαθάριση προσωρινής μνήμης DNS
+about-networking-dns-trr-url = DoH URL
+about-networking-dns-suffix = Κατάληξη DNS
+about-networking-websockets = WebSockets
+about-networking-refresh = Ανανέωση
+about-networking-auto-refresh = Αυτόματη ανανέωση κάθε 3 δευτερόλεπτα
+about-networking-hostname = Όνομα κεντρικού υπολογιστή
+about-networking-port = Θύρα
+about-networking-http-version = Έκδοση HTTP
+about-networking-ssl = SSL
+about-networking-active = Ενεργό
+about-networking-idle = Αδρανές
+about-networking-host = Διακομιστής
+about-networking-tcp = TCP
+about-networking-sent = Απεσταλμένα
+about-networking-received = Ληφθέντα
+about-networking-family = Οικογένεια
+about-networking-trr = TRR
+about-networking-addresses = Διευθύνσεις
+about-networking-expires = Λήγει (δευτερόλεπτα)
+about-networking-originAttributesSuffix = Κλειδί απομόνωσης
+about-networking-messages-sent = Απεσταλμένα μηνύματα
+about-networking-messages-received = Ληφθέντα μηνύματα
+about-networking-bytes-sent = Απεσταλμένα byte
+about-networking-bytes-received = Ληφθέντα byte
+about-networking-logging = Καταγραφή
+about-networking-log-tutorial = Δείτε την <a data-l10n-name="logging">Καταγραφή HTTP</a> για οδηγίες σχετικά με τη χρήση αυτού του εργαλείου.
+about-networking-current-log-file = Τρέχον αρχείο καταγραφής:
+about-networking-current-log-modules = Τρέχοντες μονάδες καταγραφής:
+about-networking-set-log-file = Ορισμός αρχείου καταγραφής
+about-networking-set-log-modules = Ορισμός μονάδων καταγραφής
+about-networking-start-logging = Έναρξη καταγραφής
+about-networking-stop-logging = Τερματισμός καταγραφής
+about-networking-dns-lookup = Αναζήτηση DNS
+about-networking-dns-lookup-button = Επίλυση
+about-networking-dns-domain = Τομέας:
+about-networking-dns-lookup-table-column = IPs
+about-networking-dns-https-rr-lookup-table-column = HTTP RR
+about-networking-rcwn = Στατιστικά RCWN
+about-networking-rcwn-status = Κατάσταση RCWN
+about-networking-rcwn-cache-won-count = Αριθμός νικών cache
+about-networking-rcwn-net-won-count = Αριθμός νικών δικτύου
+about-networking-total-network-requests = Αριθμός συνολικών αιτημάτων δικτύου
+about-networking-rcwn-operation = Λειτουργία μνήμης cache
+about-networking-rcwn-perf-open = Άνοιγμα
+about-networking-rcwn-perf-read = Ανάγνωση
+about-networking-rcwn-perf-write = Εγγραφή
+about-networking-rcwn-perf-entry-open = Ανοικτή είσοδος
+about-networking-rcwn-avg-short = Μικρός μέσος όρος
+about-networking-rcwn-avg-long = Μεγάλος μέσος όρος
+about-networking-rcwn-std-dev-long = Μακρά τυπική απόκλιση
+about-networking-rcwn-cache-slow = Αργή μέτρηση cache
+about-networking-rcwn-cache-not-slow = Η cache δεν μετρά αργά
+about-networking-networkid = ID δικτύου
+about-networking-networkid-id = ID δικτύου
+
+## Link is intended as "network link"
+
+about-networking-networkid-is-up = Η σύνδεση είναι ενεργή
+about-networking-networkid-status-known = Η κατάσταση σύνδεσης είναι γνωστή
+
+##
+
diff --git a/l10n-el/toolkit/toolkit/about/aboutPerformance.ftl b/l10n-el/toolkit/toolkit/about/aboutPerformance.ftl
new file mode 100644
index 0000000000..f71336a35b
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutPerformance.ftl
@@ -0,0 +1,67 @@
+# 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/.
+
+# Page title
+about-performance-title = Διαχείριση εργασιών
+
+## Column headers
+
+column-name = Όνομα
+column-type = Τύπος
+column-energy-impact = Αντίκτυπο ενέργειας
+column-memory = Μνήμη
+
+## Special values for the Name column
+
+ghost-windows = Πρόσφατα κλεισμένες καρτέλες
+# Variables:
+# $title (String) - the title of the preloaded page, typically 'New Tab'
+preloaded-tab = Προφορτωμένη: { $title }
+
+## Values for the Type column
+
+type-tab = Καρτέλα
+type-subframe = Υποπλαίσιο
+type-tracker = Ιχνηλάτης
+type-addon = Πρόσθετο
+type-browser = Πρόγραμμα περιήγησης
+type-worker = Worker
+type-other = Άλλο
+
+## Values for the Energy Impact column
+##
+## Variables:
+## $value (Number) - Value of the energy impact, eg. 0.25 (low),
+## 5.38 (medium), 105.38 (high)
+
+energy-impact-high = Υψηλό ({ $value })
+energy-impact-medium = Μέτριο ({ $value })
+energy-impact-low = Χαμηλό ({ $value })
+
+## Values for the Memory column
+##
+## Variables:
+## $value (Number) - How much memory is used
+
+size-KB = { $value } KB
+size-MB = { $value } MB
+size-GB = { $value } GB
+
+## Tooltips for the action buttons
+
+close-tab =
+ .title = Κλείσιμο καρτέλας
+show-addon =
+ .title = Εμφάνιση στη Διαχείριση προσθέτων
+
+# Tooltip when hovering an item of the about:performance table
+# Variables:
+# $totalDispatches (Number) - how many dispatches occured for this page since it loaded
+# $totalDuration (Number) - how much CPU time was used by this page since it loaded
+# $dispatchesSincePrevious (Number) - how many dispatches occured in the last 2 seconds
+# $durationSincePrevious (Number) - how much CPU time was used in the last 2 seconds
+item =
+ .title =
+ Αποστολές από τη φόρτωση: { $totalDispatches } ({ $totalDuration }ms)
+ Αποστολές τα τελευταία δευτερόλεπτα: { $dispatchesSincePrevious } ({ $durationSincePrevious }ms)
diff --git a/l10n-el/toolkit/toolkit/about/aboutPlugins.ftl b/l10n-el/toolkit/toolkit/about/aboutPlugins.ftl
new file mode 100644
index 0000000000..9ab362bea2
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutPlugins.ftl
@@ -0,0 +1,35 @@
+# 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/.
+
+title-label = Σχετικά με τα αρθρώματα
+
+installed-plugins-label = Εγκατεστημένα αρθρώματα
+no-plugins-are-installed-label = Δεν βρέθηκαν εγκατεστημένα αρθρώματα
+
+deprecation-description = Λείπει κάτι; Μερικά αρθρώματα δεν υποστηρίζονται πλέον. <a data-l10n-name="deprecation-link">Μάθετε περισσότερα.</a>
+
+## The information of plugins
+##
+## Variables:
+## $pluginLibraries: the plugin library
+## $pluginFullPath: path of the plugin
+## $version: version of the plugin
+
+file-dd = <span data-l10n-name="file">Αρχείο:</span> { $pluginLibraries }
+path-dd = <span data-l10n-name="path">Διαδρομή:</span> { $pluginFullPath }
+version-dd = <span data-l10n-name="version">Έκδοση:</span> { $version }
+
+## These strings describe the state of plugins
+##
+## Variables:
+## $blockListState: show some special state of the plugin, such as blocked, outdated
+
+state-dd-enabled = <span data-l10n-name="state">Κατάσταση:</span> Ενεργό
+state-dd-enabled-block-list-state = <span data-l10n-name="state">Κατάσταση:</span> Ενεργό ({ $blockListState })
+state-dd-Disabled = <span data-l10n-name="state">Κατάσταση:</span> Ανενεργό
+state-dd-Disabled-block-list-state = <span data-l10n-name="state">Κατάσταση:</span> Ανενεργό ({ $blockListState })
+
+mime-type-label = Τύπος MIME
+description-label = Περιγραφή
+suffixes-label = Επιθέματα
diff --git a/l10n-el/toolkit/toolkit/about/aboutProcesses.ftl b/l10n-el/toolkit/toolkit/about/aboutProcesses.ftl
new file mode 100644
index 0000000000..9eff4c8b9c
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutProcesses.ftl
@@ -0,0 +1,133 @@
+# 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/.
+
+# Page title
+about-processes-title = Διαχείριση διεργασιών
+# The Actions column
+about-processes-column-action =
+ .title = Ενέργειες
+
+## Tooltips
+
+about-processes-shutdown-process =
+ .title = "Ξεφόρτωμα" καρτελών και τερματισμός διεργασίας
+about-processes-shutdown-tab =
+ .title = Κλείσιμο καρτέλας
+
+## Column headers
+
+about-processes-column-name = Όνομα
+about-processes-column-memory-resident = Μνήμη
+about-processes-column-cpu-total = CPU
+
+## Process names
+## Variables:
+## $pid (String) The process id of this process, assigned by the OS.
+## $origin (String) The domain name for this process.
+## $type (String) The raw type for this process. Used for unknown processes.
+
+about-processes-browser-process-name = { -brand-short-name } (διεργασία { $pid })
+about-processes-web-process-name = Διαδίκτυο (διεργασία { $pid }, κοινό)
+about-processes-web-isolated-process-name = Διαδίκτυο (διεργασία { $pid }) για { $origin }
+about-processes-web-large-allocation = Διαδίκτυο (διεργασία { $pid }, μεγάλο) για { $origin }
+about-processes-with-coop-coep-process-name = Διαδίκτυο (διεργασία { $pid }, απομονωμένο από προελεύσεις) για { $origin }
+about-processes-file-process-name = Αρχεία (διεργασία { $pid })
+about-processes-extension-process-name = Επεκτάσεις (διεργασία { $pid })
+about-processes-privilegedabout-process-name = Πληροφορίες (διεργασία { $pid })
+about-processes-plugin-process-name = Αρθρώματα (διεργασία { $pid })
+about-processes-privilegedmozilla-process-name = Διαδίκτυο (διεργασία { $pid }) για ιστοσελίδες { -vendor-short-name }
+about-processes-gmp-plugin-process-name = Αρθρώματα πολυμέσων Gecko (διεργασία { $pid })
+about-processes-gpu-process-name = GPU (διεργασία { $pid })
+about-processes-vr-process-name = VR (διεργασία { $pid })
+about-processes-rdd-process-name = Αποκωδικοποιητής δεδομένων (διεργασία { $pid })
+about-processes-socket-process-name = Δίκτυο (διεργασία { $pid })
+about-processes-remote-sandbox-broker-process-name = Απομακρυσμένο Sandbox Broker (διεργασία { $pid })
+about-processes-fork-server-process-name = Διακομιστής Fork (διεργασία { $pid })
+about-processes-preallocated-process-name = Προκατανεμημένο (διεργασία { $pid })
+about-processes-unknown-process-name = Άλλο ({ $type }, διεργασία { $pid })
+# Process
+# Variables:
+# $name (String) The name assigned to the process.
+# $pid (String) The process id of this process, assigned by the OS.
+about-processes-process-name = Διεργασία { $pid }: { $name }
+
+## Details within processes
+
+# Single-line summary of threads
+# Variables:
+# $number (Number) The number of threads in the process. Typically larger
+# than 30. We don't expect to ever have processes with less
+# than 5 threads.
+about-processes-thread-summary = Νήματα ({ $number })
+# Thread details
+# Variables:
+# $name (String) The name assigned to the thread.
+# $tid (String) The thread id of this thread, assigned by the OS.
+about-processes-thread-name = Νήμα { $tid }: { $name }
+# Tab
+# Variables:
+# $name (String) The name of the tab (typically the title of the page, might be the url while the page is loading).
+about-processes-tab-name = Καρτέλα: { $name }
+about-processes-preloaded-tab = Προφορτωμένη νέα καρτέλα
+# Single subframe
+# Variables:
+# $url (String) The full url of this subframe.
+about-processes-frame-name-one = Υποπλαίσιο: { $url }
+# Group of subframes
+# Variables:
+# $number (Number) The number of subframes in this group. Always ≥ 1.
+# $shortUrl (String) The shared prefix for the subframes in the group.
+about-processes-frame-name-many = Υποπλαίσια ({ $number }): { $shortUrl }
+
+## Displaying CPU (percentage and total)
+## Variables:
+## $percent (Number) The percentage of CPU used by the process or thread.
+## Always > 0, generally <= 200.
+## $total (Number) The amount of time used by the process or thread since
+## its start.
+## $unit (String) The unit in which to display $total. See the definitions
+## of `duration-unit-*`.
+
+# Common case.
+about-processes-cpu-user-and-kernel = { NUMBER($percent, maximumSignificantDigits: 2, style: "percent") } ({ NUMBER($total, maximumFractionDigits: 0) }{ $unit })
+# Special case: data is not available yet.
+about-processes-cpu-user-and-kernel-not-ready = (μέτρηση)
+# Special case: process or thread is currently idle.
+about-processes-cpu-user-and-kernel-idle = Αδρανές ({ NUMBER($total, maximumFractionDigits: 2) }{ $unit })
+
+## Displaying Memory (total and delta)
+## Variables:
+## $total (Number) The amount of memory currently used by the process.
+## $totalUnit (String) The unit in which to display $total. See the definitions
+## of `memory-unit-*`.
+## $delta (Number) The absolute value of the amount of memory added recently.
+## $deltaSign (String) Either "+" if the amount of memory has increased
+## or "-" if it has decreased.
+## $deltaUnit (String) The unit in which to display $delta. See the definitions
+## of `memory-unit-*`.
+
+# Common case.
+about-processes-total-memory-size = { NUMBER($total, maximumFractionDigits: 0) }{ $totalUnit } ({ $deltaSign }{ NUMBER($delta, maximumFractionDigits: 0) }{ $deltaUnit })
+# Special case: no change.
+about-processes-total-memory-size-no-change = { NUMBER($total, maximumFractionDigits: 0) }{ $totalUnit }
+
+## Duration units
+
+duration-unit-ns = ns
+duration-unit-us = µs
+duration-unit-ms = ms
+duration-unit-s = δ
+duration-unit-m = λ
+duration-unit-h = ώ
+duration-unit-d = η
+
+## Memory units
+
+memory-unit-B = B
+memory-unit-KB = KB
+memory-unit-MB = MB
+memory-unit-GB = GB
+memory-unit-TB = TB
+memory-unit-PB = PB
+memory-unit-EB = EB
diff --git a/l10n-el/toolkit/toolkit/about/aboutProfiles.ftl b/l10n-el/toolkit/toolkit/about/aboutProfiles.ftl
new file mode 100644
index 0000000000..e93e752a86
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutProfiles.ftl
@@ -0,0 +1,74 @@
+# 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/.
+
+
+profiles-title = Σχετικά με τα προφίλ
+profiles-subtitle = Η σελίδα αυτή σας βοηθά να διαχειρίζεστε τα προφίλ σας. Κάθε προφίλ αποτελεί ένα ξεχωριστό κόσμο που περιέχει ξεχωριστό ιστορικό, σελιδοδείκτες, ρυθμίσεις και πρόσθετα.
+profiles-create = Δημιουργία νέου προφίλ
+profiles-restart-title = Επανεκκίνηση
+profiles-restart-in-safe-mode = Επανεκκίνηση με ανενεργά πρόσθετα…
+profiles-restart-normal = Κανονική επανεκκίνηση…
+profiles-conflict = Ένα άλλο αντίγραφο του { -brand-product-name } έχει κάνει αλλαγές στα προφίλ. Πρέπει να επανεκκινήσετε το { -brand-short-name } πριν κάνετε περισσότερες αλλαγές.
+profiles-flush-fail-title = Μη αποθηκευμένες αλλαγές
+profiles-flush-conflict = { profiles-conflict }
+profiles-flush-failed = Ένα μη αναμενόμενο σφάλμα εμπόδισε την αποθήκευση των αλλαγών σας.
+profiles-flush-restart-button = Επανεκκίνηση του { -brand-short-name }
+
+# Variables:
+# $name (String) - Name of the profile
+profiles-name = Προφίλ: { $name }
+profiles-is-default = Προεπιλεγμένο προφίλ
+profiles-rootdir = Ριζικός κατάλογος
+
+# localDir is used to show the directory corresponding to
+# the main profile directory that exists for the purpose of storing data on the
+# local filesystem, including cache files or other data files that may not
+# represent critical user data. (e.g., this directory may not be included as
+# part of a backup scheme.)
+# In case localDir and rootDir are equal, localDir is not shown.
+profiles-localdir = Τοπικός κατάλογος
+profiles-current-profile = Αυτό το προφίλ είναι σε λειτουργία και δεν μπορεί να διαγραφεί.
+profiles-in-use-profile = Αυτό το προφίλ χρησιμοποιείται σε άλλη εφαρμογή και δεν μπορεί να διαγραφεί.
+
+profiles-rename = Μετονομασία
+profiles-remove = Αφαίρεση
+profiles-set-as-default = Ορισμός ως προεπιλεγμένο προφίλ
+profiles-launch-profile = Εκκίνηση προφίλ σε νέο πρόγραμμα περιήγησης
+
+profiles-cannot-set-as-default-title = Αδυναμία ορισμού προεπιλογής
+profiles-cannot-set-as-default-message = Το προεπιλεγμένο προφίλ δεν μπορεί να αλλάξει για το { -brand-short-name }.
+
+profiles-yes = ναι
+profiles-no = όχι
+
+profiles-rename-profile-title = Μετονομασία προφίλ
+# Variables:
+# $name (String) - Name of the profile
+profiles-rename-profile = Μετονομασία προφίλ { $name }
+
+profiles-invalid-profile-name-title = Άκυρο όνομα προφίλ
+# Variables:
+# $name (String) - Name of the profile
+profiles-invalid-profile-name = Το όνομα προφίλ “{ $name }” δεν επιτρέπεται.
+
+profiles-delete-profile-title = Διαγραφή προφίλ
+# Variables:
+# $dir (String) - Path to be displayed
+profiles-delete-profile-confirm =
+ Η διαγραφή ενός προφίλ θα το αφαιρέσει από τη λίστα των διαθέσιμων προφίλ και δεν αναιρείται.
+ Μπορείτε επίσης να διαγράψετε τα αρχεία δεδομένων του προφίλ, όπως οι ρυθμίσεις, τα πιστοποιητικά και άλλα δεδομένα χρήστη. Αυτή η επιλογή θα διαγράψει το φάκελο “{ $dir }” και δεν αναιρείται.
+ Θέλετε να διαγράψετε τα αρχεία δεδομένων του προφίλ;
+profiles-delete-files = Διαγραφή αρχείων
+profiles-dont-delete-files = Διατήρηση αρχείων
+
+profiles-delete-profile-failed-title = Σφάλμα
+profiles-delete-profile-failed-message = Παρουσιάστηκε σφάλμα κατά την προσπάθεια διαγραφής αυτού του προφίλ.
+
+
+profiles-opendir =
+ { PLATFORM() ->
+ [macos] Προβολή στο Finder
+ [windows] Άνοιγμα φακέλου
+ *[other] Άνοιγμα καταλόγου
+ }
diff --git a/l10n-el/toolkit/toolkit/about/aboutRights.ftl b/l10n-el/toolkit/toolkit/about/aboutRights.ftl
new file mode 100644
index 0000000000..ec32db71db
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutRights.ftl
@@ -0,0 +1,36 @@
+# 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/.
+
+rights-title = Σχετικά με τα δικαιώματά σας
+rights-intro = Το { -brand-full-name } είναι ελεύθερο λογισμικό ανοικτού κώδικα που δημιουργείται από μια κοινότητα χιλιάδων ατόμων από όλο τον κόσμο. Υπάρχουν μερικά πράγματα που πρέπει να γνωρίζετε:
+rights-intro-point-1 = Το { -brand-short-name } είναι διαθέσιμο σε εσάς υπό τους όρους της <a data-l10n-name="mozilla-public-license-link">Δημόσιας Άδειας της Mozilla</a>. Αυτό σημαίνει ότι μπορείτε να κάνετε χρήση, αντιγραφή και διανομή του { -brand-short-name } σε τρίτους. Είστε ακόμα ελεύθεροι να τροποποιήσετε τον πηγαίο κώδικα του { -brand-short-name } όπως επιθυμείτε, ώστε να καλύπτει τις ανάγκες σας. Η Δημόσια Άδεια της Mozilla σάς δίνει το δικαίωμα να διανέμετε τις τροποποιημένες εκδόσεις σας.
+rights-intro-point-2 = Ωστόσο, δεν σάς παραχωρούνται δικαιώματα ή άδειες για τα εμπορικά σήματα του Ιδρύματος Mozilla ή οποιουδήποτε τρίτου, συμπεριλαμβανομένων, χωρίς περιορισμούς, των ονομάτων ή των λογότυπων του Firefox. Μπορείτε να βρείτε περισσότερες πληροφορίες για τα εμπορικά σήματα <a data-l10n-name="mozilla-trademarks-link">εδώ</a>.
+rights-intro-point-3 = Μερικές λειτουργίες του { -brand-short-name }, όπως ο Crash Reporter, σας προσφέρουν την επιλογή υποβολής σχολίων στον { -vendor-short-name }. Επιλέγοντας να υποβάλετε σχόλια , δίνετε την άδεια στον { -vendor-short-name } να χρησιμοποιήσει τα σχόλια για να βελτιώσει τα προϊόντα του , να δημοσιεύσει και να μοιράσει τα σχόλια.
+rights-intro-point-4 = Ο τρόπος χρήσης των προσωπικών σας πληροφοριών και των σχολίων που υποβάλετε στον { -vendor-short-name } μέσω του { -brand-short-name } περιγράφεται στην <a data-l10n-name="mozilla-privacy-policy-link">Πολιτική απορρήτου του { -brand-short-name }</a>.
+rights-intro-point-4-unbranded = Όποιεσδήποτε σχετικές πολιτικές προστασίας απορρήτου μπορούν να αναφερθούν εδώ.
+rights-intro-point-5 = Μερικές από τις λειτουργίες του { -brand-short-name } χρησιμοποιούν διαδικτυακές πληροφοριακές υπηρεσίες, για τις οποίες όμως δεν μπορούμε να εγγυηθούμε ότι είναι 100% χωρίς σφάλματα. Περισσότερες πληροφορίες, μαζί με πληροφορίες για την απενεργοποίηση αυτών των υπηρεσιών μπορείτε να βρείτε στους <a data-l10n-name="mozilla-service-terms-link">όρους υπηρεσίας</a>.
+rights-intro-point-5-unbranded = Αν αυτό το προϊόν περιέχει ενσωματωμένες υπηρεσίες, όλοι οι όροι αυτών των υπηρεσιών θα πρέπει να οδηγούν στην ενότητα<a data-l10n-name="mozilla-website-services-link">Υπηρεσίες ιστοσελίδων</a> .
+rights-intro-point-6 = Για την αναπαραγωγή ορισμένων τύπων περιεχομένου βίντεο, το { -brand-short-name } κάνει λήψη ορισμένων αρθρωμάτων αποκρυπτογράφησης περιεχομένου από τρίτους.
+rights-webservices-header = Διαδικτυακές υπηρεσίες πληροφοριών του { -brand-full-name }
+rights-webservices = Το { -brand-full-name } χρησιμοποιεί διαδικτυακές υπηρεσίες πληροφοριών ("Υπηρεσίες") για την παροχή μερικών λειτουργιών, που έρχονται με αυτή την έκδοση του { -brand-short-name } υπό τους παρακάτω όρους. Αν δεν θέλετε να χρησιμοποιήσετε μία ή περισσότερες υπηρεσίες, ή δεν συμφωνείτε με τους παρακάτω όρους, μπορείτε να απενεργοποιήσετε τη λειτουργία ή την υπηρεσία(ες). Οδηγίες σχετικά με τον τρόπο απενεργοποίησης μιας συγκεκριμένης λειτουργίας ή υπηρεσίας, μπορείτε να βρείτε <a data-l10n-name="mozilla-disable-service-link">εδώ</a>. Άλλες λειτουργίες και υπηρεσίες μπορούν να απενεργοποιηθούν μέσω των προτιμήσεων της εφαρμογής.
+rights-safebrowsing = <strong>Ασφαλής περιήγηση: </strong>Η απενεργοποίηση της ασφαλούς περιήγησης δεν προτείνεται μιας και μπορεί να σας οδηγήσει σε επικίνδυνες ιστοσελίδες. Αν επιθυμείτε να απενεργοποιήσετε πλήρως αυτή τη λειτουργία, ακολουθήστε τα παρακάτω βήματα:
+rights-safebrowsing-term-1 = Ανοίξτε τις προτιμήσεις της εφαρμογής
+rights-safebrowsing-term-2 = Επιλέξτε την καρτέλα Ασφάλεια
+rights-safebrowsing-term-3 = Αποεπιλέξτε την επιλογή για "{ enableSafeBrowsing-label }"
+enableSafeBrowsing-label = Φραγή επικίνδυνου και παραπλανητικού περιεχομένου
+rights-safebrowsing-term-4 = Η ασφαλής περιήγηση είναι πλέον ανενεργή
+rights-locationawarebrowsing = <strong>Η Περιήγηση με δήλωση τοποθεσίας: </strong>γίνεται πάντα με ερώτηση για τη σύμφωνη γνώμη σας. Δεν παρέχονται πληροφορίες τοποθεσίας χωρίς την άδεια σας. Αν επιθυμείτε να απενεργοποιήσετε πλήρως αυτή τη λειτουργία, ακολουθήστε τα παρακάτω βήματα:
+rights-locationawarebrowsing-term-1 = Στη γραμμή διευθύνσεων, πληκτρολογήστε <code>about:config</code>
+rights-locationawarebrowsing-term-2 = Πληκτρολογήστε geo.enabled
+rights-locationawarebrowsing-term-3 = Κάντε διπλό κλικ στην προτίμηση geo.enabled
+rights-locationawarebrowsing-term-4 = Η Περιήγηση με δήλωση τοποθεσίας θα απενεργοποιηθεί
+rights-webservices-unbranded = Εδώ, θα πρέπει να συμπεριληφθεί μια επισκόπηση των υπηρεσιών ιστοσελίδας που ενσωματώνει το προϊόν, μαζί με οδηγίες σχετικά με την απενεργοποίηση, αν υπάρχει.
+rights-webservices-term-unbranded = Οποιοιδήποτε όροι υπηρεσίας έχουν ισχύ για αυτό το προϊόν θα πρέπει να αναγραφούν εδώ.
+rights-webservices-term-1 = Ο { -vendor-short-name } οι συντελεστές και οι συνεργάτες του εργάζονται για να παρέχουν τις πιο ακριβείς και ενημερωμένες υπηρεσίες. Παρ'όλα αυτά δεν είναι δυνατό να σας εγγυηθούμε ότι αυτές οι πληροφορίες είναι κατανοητές και χωρίς σφάλματα. Για παράδειγμα μπορεί να μην εντοπισθούν κάποιες από τις ύποπτες σελίδες και μπορεί μερικές από τις ασφαλείς σελίδες να αναγνωρισθούν ως ύποπτες, ενώ η υπηρεσία περιήγησης με δήλωση τοποθεσίας μπορεί να μην είναι ακριβής.
+rights-webservices-term-2 = Ο { -vendor-short-name } διατηρεί το δικαίωμα να διακόψει ή να αλλάξει τις Υπηρεσίες κατά βούληση.
+rights-webservices-term-3 = Είστε ευπρόσδεκτοι να χρησιμοποιείτε αυτές τις Υπηρεσίες μαζί με την συνοδευόμενη έκδοση του { -brand-short-name } και του { -vendor-short-name } , και έχετε όλα τα απαραίτητα δικαιώματα να το κάνετε. Ο { -vendor-short-name } και οι συνεργάτες του διατηρούν όλα τα άλλα δικαιώματα στις Υπηρεσίες. Αυτοί οι όροι δεν σκοπεύουν να περιορίσουν οποιαδήποτε δικαιώματα που προέρχονται από τις άδειες ανοικτού λογισμικού που συνοδεύουν τον { -brand-short-name } και τις αντίστοιχες εκδόσεις πηγαίου κώδικα του { -brand-short-name }.
+rights-webservices-term-4 = <strong>Οι Υπηρεσίες παρέχονται "ως έχει." Ο { -vendor-short-name }, οι συντελεστές, οι συνεργάτες και οι διανομείς του, παρέχουν τις υπηρεσίες χωρίς οποιουδήποτε είδους εγγύηση, είτε ρητή είτε σιωπηρή, συμπεριλαμβανομένης ενδεικτικά και όχι περιοριστικά της σιωπηρής εγγύησης εμπορευσιμότητας και καταλληλότητας των Υπηρεσιών για συγκεκριμένη χρήση. Ο κίνδυνος ως προς την ποιότητα και επίδοση των Υπηρεσιών βαρύνει εξ ολοκλήρου εσάς. Μερικές νομοθεσίες δεν επιτρέπουν την εξαίρεση ή τον περιορισμό των σιωπηλών εγγυήσεων και έτσι αυτή η παράγραφος αποποίησης μπορεί να μην ισχύει για εσάς.</strong>
+rights-webservices-term-5 = <strong>Σε καμία περίπτωση, εκτός εάν απαιτείται από την κείμενη νομοθεσία, Ο { -vendor-short-name }, οι συντελεστές, οι συνεργάτες του και οι διανομείς του δεν είναι υπεύθυνοι απέναντί σας για ζημίες, συμπεριλαμβανομένων όλων των γενικών, ειδικών, τυχαίων ή συνεπακόλουθων ζημιών που μπορεί να προκύψουν από τη χρήση ή την αδυναμία χρήσης του { -brand-short-name } και των Υπηρεσιών. Η συλλογική υπαιτιότητα κάτω από αυτούς τους όρους δεν μπορεί να υπερβαίνει τα $500 (πεντακόσια δολάρια). Μερικές νομοθεσίες δεν επιτρέπουν την εξαίρεση ή τον περιορισμό κάποιων ζημιών και έτσι αυτή η εξαίρεση η ο περιορισμός μπορεί να μην ισχύει για εσάς.</strong>
+rights-webservices-term-6 = Ο { -vendor-short-name } μπορεί να ενημερώνει περιοδικά αυτούς τους όρους αν κριθεί απαραίτητο. Δεν είναι δυνατή η τροποποίηση ή η ακύρωση αυτών των όρων χωρίς την έγγραφη συναίνεση του { -vendor-short-name }.
+rights-webservices-term-7 = Αυτοί οι όροι υπόκεινται στους νομους της πολιτείας της California, U.S.A., εξαιρουμένων των συγκρούσεων στους παρεχόμενους νόμους. Αν οπoιοδήποτε μέρος αυτών των όρων αποδειχθεί μη έγκυρο ή μη εφαρμόσιμο, τα υπόλοιπα μέρη εξακολουθούν να είναι σε πλήρη ισχύ και χρήση. Σε περίπτωση σύγκρουσης μεταξύ μιας μεταφρασμένης έκδοσης αυτών των όρων με την Αγγλική έκδοση των όρων, ισχύει η Αγγλική έκδοση.
diff --git a/l10n-el/toolkit/toolkit/about/aboutServiceWorkers.ftl b/l10n-el/toolkit/toolkit/about/aboutServiceWorkers.ftl
new file mode 100644
index 0000000000..981528bb67
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutServiceWorkers.ftl
@@ -0,0 +1,35 @@
+# 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/.
+
+
+### The term "Service Workers" and "Workers" should not be translated
+
+about-service-workers-title = Σχετικά με τα Service Workers
+about-service-workers-main-title = Εγγεγραμμένα service worker
+about-service-workers-warning-not-enabled = Τα Service Workers δεν είναι ενεργοποιημένα.
+about-service-workers-warning-no-service-workers = Κανένα εγγεγραμμένο Service Worker.
+# The original title of service workers' information
+#
+# Variables:
+# $originTitle: original title
+origin-title = Προέλευση: { $originTitle }
+
+## These strings are for showing the information of workers.
+##
+## Variables:
+## $name: the name of scope, active cache, waiting cache and the push end point.
+## $url: the url of script specification and current worker.
+
+scope = <strong>Εμβέλεια:</strong> { $name }
+script-spec = <strong>Προδιαγραφές σεναρίου:</strong> <a data-l10n-name="link">{ $url }</a>
+current-worker-url = <strong>URL τρέχοντος Worker:</strong> <a data-l10n-name="link">{ $url }</a>
+active-cache-name = <strong>Όνομα ενεργής προσωρινής μνήμη:</strong> { $name }
+waiting-cache-name = <strong>Όνομα προσωρινής μνήμης σε αναμονή:</strong> { $name }
+push-end-point-waiting = <strong>Σημείο τερματισμού:</strong> { waiting }
+push-end-point-result = <strong>Σημείο τερματισμού:</strong> { $name }
+# This term is used as a button label (verb, not noun).
+update-button = Ενημέρωση
+unregister-button = Διαγραφή
+unregister-error = Απέτυχε η κατάργηση αυτού του Service Worker.
+waiting = Σε αναμονή…
diff --git a/l10n-el/toolkit/toolkit/about/aboutSupport.ftl b/l10n-el/toolkit/toolkit/about/aboutSupport.ftl
new file mode 100644
index 0000000000..444ea68222
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutSupport.ftl
@@ -0,0 +1,408 @@
+# 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/.
+
+page-title = Πληροφορίες επίλυσης προβλημάτων
+page-subtitle =
+ Αυτή η σελίδα περιέχει τεχνικές πληροφορίες που ενδέχεται να φανούν χρήσιμες κατά
+ την επίλυση προβλημάτων. Αν ψάχνετε για απαντήσεις σε συχνές ερωτήσεις σχετικά με το
+ { -brand-short-name }, δείτε τη <a data-l10n-name="support-link">σελίδα υποστήριξής</a> μας.
+crashes-title = Αναφορές κατάρρευσης
+crashes-id = ID αναφοράς
+crashes-send-date = Υποβεβλημένα
+crashes-all-reports = Όλες οι αναφορές κατάρρευσης
+crashes-no-config = Αυτή η εφαρμογή δεν έχει ρυθμιστεί για εμφάνιση αναφορών κατάρρευσης.
+extensions-title = Επεκτάσεις
+extensions-name = Όνομα
+extensions-enabled = Ενεργές
+extensions-version = Έκδοση
+extensions-id = ID
+support-addons-title = Πρόσθετα
+support-addons-name = Όνομα
+support-addons-type = Τύπος
+support-addons-enabled = Ενεργό
+support-addons-version = Έκδοση
+support-addons-id = ID
+security-software-title = Λογισμικό ασφαλείας
+security-software-type = Τύπος
+security-software-name = Όνομα
+security-software-antivirus = Antivirus
+security-software-antispyware = Antispyware
+security-software-firewall = Τείχος προστασίας
+features-title = Χαρακτηριστικά { -brand-short-name }
+features-name = Όνομα
+features-version = Έκδοση
+features-id = ID
+processes-title = Απομακρυσμένες διεργασίες
+processes-type = Τύπος
+processes-count = Πλήθος
+app-basics-title = Βασικά εφαρμογής
+app-basics-name = Όνομα
+app-basics-version = Έκδοση
+app-basics-build-id = ID έκδοσης
+app-basics-distribution-id = ID διανομής
+app-basics-update-channel = Κανάλι ενημερώσεων
+# This message refers to the folder used to store updates on the device,
+# as in "Folder for updates". "Update" is a noun, not a verb.
+app-basics-update-dir =
+ { PLATFORM() ->
+ [linux] Κατάλογος ενημερώσεων
+ *[other] Φάκελος ενημερώσεων
+ }
+app-basics-update-history = Ιστορικό ενημερώσεων
+app-basics-show-update-history = Εμφάνιση ιστορικού ενημερώσεων
+# Represents the path to the binary used to start the application.
+app-basics-binary = Αρχείο εφαρμογής
+app-basics-profile-dir =
+ { PLATFORM() ->
+ [linux] Κατάλογος προφίλ
+ *[other] Φάκελος προφίλ
+ }
+app-basics-enabled-plugins = Ενεργά αρθρώματα
+app-basics-build-config = Ρύθμιση δομής
+app-basics-user-agent = Πλατφόρμα χρήστη
+app-basics-os = ΛΣ
+# Rosetta is Apple's translation process to run apps containing x86_64
+# instructions on Apple Silicon. This should remain in English.
+app-basics-rosetta = Μεταφρασμένο με Rosetta
+app-basics-memory-use = Χρήση μνήμης
+app-basics-performance = Επιδόσεις
+app-basics-service-workers = Εγγεγραμμένα service worker
+app-basics-profiles = Προφίλ
+app-basics-launcher-process-status = Διεργασία εκκίνησης
+app-basics-multi-process-support = Παράθυρα πολυδιεργασιών
+app-basics-fission-support = Παράθυρα Fission
+app-basics-remote-processes-count = Απομακρυσμένες διεργασίες
+app-basics-enterprise-policies = Πολιτικές επιχειρήσεων
+app-basics-location-service-key-google = Κλειδί υπηρεσίας τοποθεσίας Google
+app-basics-safebrowsing-key-google = Κλειδί ασφαλούς περιήγησης Google
+app-basics-key-mozilla = Κλειδί υπηρεσίας τοποθεσίας Mozilla
+app-basics-safe-mode = Ασφαλής λειτουργία
+show-dir-label =
+ { PLATFORM() ->
+ [macos] Προβολή στο Finder
+ [windows] Άνοιγμα φακέλου
+ *[other] Άνοιγμα καταλόγου
+ }
+environment-variables-title = Μεταβλητές περιβάλλοντος
+environment-variables-name = Όνομα
+environment-variables-value = Τιμή
+experimental-features-title = Πειραματικές λειτουργίες
+experimental-features-name = Όνομα
+experimental-features-value = Τιμή
+modified-key-prefs-title = Σημαντικές τροποποιημένες προτιμήσεις
+modified-prefs-name = Όνομα
+modified-prefs-value = Τιμή
+user-js-title = Προτιμήσεις user.js
+user-js-description = Ο φάκελος του προφίλ σας περιέχει το <a data-l10n-name="user-js-link">αρχείο user.js</a>, το οποίο περιέχει προτιμήσεις που δεν δημιουργήθηκαν από το { -brand-short-name }.
+locked-key-prefs-title = Σημαντικές κλειδωμένες προτιμήσεις
+locked-prefs-name = Όνομα
+locked-prefs-value = Τιμή
+graphics-title = Γραφικά
+graphics-features-title = Λειτουργίες
+graphics-diagnostics-title = Διαγνωστικά
+graphics-failure-log-title = Αρχείο καταγραφής αποτυχιών
+graphics-gpu1-title = GPU #1
+graphics-gpu2-title = GPU #2
+graphics-decision-log-title = Αρχείο καταγραφής αποφάσεων
+graphics-crash-guards-title = Ανενεργές λειτουργίες φύλαξης καταρρεύσεων
+graphics-workarounds-title = Λύσεις
+# Windowing system in use on Linux (e.g. X11, Wayland).
+graphics-window-protocol = Πρωτόκολλο παραθύρου
+# Desktop environment in use on Linux (e.g. GNOME, KDE, XFCE, etc).
+graphics-desktop-environment = Περιβάλλον επιφάνειας εργασίας
+place-database-title = Βάση δεδομένων τοποθεσιών
+place-database-integrity = Ακεραιότητα
+place-database-verify-integrity = Επαλήθευση ακεραιότητας
+a11y-title = Προσβασιμότητα
+a11y-activated = Ενεργό
+a11y-force-disabled = Αποτροπή προσβασιμότητας
+a11y-handler-used = Προσβάσιμο handler σε χρήση
+a11y-instantiator = Ενεργοποιητής προσβασιμότητας
+library-version-title = Εκδόσεις βιβλιοθήκης
+copy-text-to-clipboard-label = Αντιγραφή κειμένου στο πρόχειρο
+copy-raw-data-to-clipboard-label = Αντιγραφή ακατέργαστων δεδομένων στο πρόχειρο
+sandbox-title = Sandbox
+sandbox-sys-call-log-title = Απορριφθείσες κλήσεις συστήματος
+sandbox-sys-call-index = #
+sandbox-sys-call-age = δευτερόλεπτα πριν
+sandbox-sys-call-pid = PID
+sandbox-sys-call-tid = TID
+sandbox-sys-call-proc-type = Τύπος διεργασίας
+sandbox-sys-call-number = Syscall
+sandbox-sys-call-args = Ορίσματα
+safe-mode-title = Δοκιμή ασφαλούς λειτουργίας
+restart-in-safe-mode-label = Επανεκκίνηση με ανενεργά πρόσθετα…
+clear-startup-cache-title = Απαλοιφή προσωρινής μνήμης εκκίνησης
+clear-startup-cache-label = Εκκαθάριση προσωρινής μνήμης εκκίνησης…
+startup-cache-dialog-title = Εκκαθάριση προσωρινής μνήμης εκκίνησης
+startup-cache-dialog-body = Επανεκκινήστε το { -brand-short-name } για να εκκαθαρίσετε την προσωρινή μνήμη εκκίνησης. Αυτό δεν θα αλλάξει τις ρυθμίσεις σας, ούτε θα καταργήσει τις επεκτάσεις που έχετε προσθέσει στο { -brand-short-name }.
+restart-button-label = Επανεκκίνηση
+
+## Media titles
+
+audio-backend = Υποσύστημα ήχου
+max-audio-channels = Μέγιστος αριθμός καναλιών
+sample-rate = Επιθυμητός ρυθμός δειγματοληψίας
+roundtrip-latency = Καθυστέρηση μετ' επιστροφής (τυπική απόκλιση)
+media-title = Πολυμέσα
+media-output-devices-title = Συσκευές εξόδου
+media-input-devices-title = Συσκευές εισόδου
+media-device-name = Όνομα
+media-device-group = Ομάδα
+media-device-vendor = Κατασκευαστής
+media-device-state = Κατάσταση
+media-device-preferred = Προτίμηση
+media-device-format = Μορφή
+media-device-channels = Κανάλια
+media-device-rate = Ρυθμός
+media-device-latency = Καθυστέρηση
+media-capabilities-title = Δυνατότητες μέσων
+# List all the entries of the database.
+media-capabilities-enumerate = Απαρίθμηση βάσης δεδομένων
+
+##
+
+intl-title = Διεθνοποίηση & μετάφραση
+intl-app-title = Ρυθμίσεις εφαρμογής
+intl-locales-requested = Ζητούμενες γλώσσες
+intl-locales-available = Διαθέσιμες γλώσσες
+intl-locales-supported = Γλώσσες εφαρμογής
+intl-locales-default = Προεπιλεγμένη γλώσσα
+intl-os-title = Λειτουργικό σύστημα
+intl-os-prefs-system-locales = Γλώσσες συστήματος
+intl-regional-prefs = Προτιμήσεις περιοχής
+
+## Remote Debugging
+##
+## The Firefox remote protocol provides low-level debugging interfaces
+## used to inspect state and control execution of documents,
+## browser instrumentation, user interaction simulation,
+## and for subscribing to browser-internal events.
+##
+## See also https://firefox-source-docs.mozilla.org/remote/
+
+remote-debugging-title = Απομακρυσμένος εντοπισμός σφαλμάτων (Πρωτόκολλο Chromium)
+remote-debugging-accepting-connections = Αποδεκτές συνδέσεις
+remote-debugging-url = URL
+
+##
+
+support-third-party-modules-title = Πρόσθετα module τρίτων
+support-third-party-modules-module = Αρχείο module
+support-third-party-modules-version = Έκδοση αρχείου
+support-third-party-modules-vendor = Πληροφορίες κατασκευαστή
+support-third-party-modules-occurrence = Εμφάνιση
+support-third-party-modules-process = Τύπος & ID διεργασίας
+support-third-party-modules-thread = Νήμα
+support-third-party-modules-base = Διεύθυνση Imagebase
+support-third-party-modules-uptime = Χρόνος διεργασίας (ms)
+support-third-party-modules-duration = Διάρκεια φόρτωσης (ms)
+support-third-party-modules-status = Κατάσταση
+support-third-party-modules-status-loaded = Φορτώθηκε
+support-third-party-modules-status-blocked = Αποκλείστηκε
+support-third-party-modules-status-redirected = Ανακατευθύνθηκε
+support-third-party-modules-empty = Δεν φορτώθηκαν πρόσθετα module τρίτων.
+support-third-party-modules-no-value = (Καμία τιμή)
+support-third-party-modules-button-open =
+ .title = Άνοιγμα τοποθεσίας αρχείου…
+support-third-party-modules-expand =
+ .title = Εμφάνιση λεπτομερών πληροφοριών
+support-third-party-modules-collapse =
+ .title = Σύμπτυξη λεπτομερών πληροφοριών
+support-third-party-modules-unsigned-icon =
+ .title = Αυτό το module δεν έχει υπογραφεί
+support-third-party-modules-folder-icon =
+ .title = Άνοιγμα τοποθεσίας αρχείου…
+support-third-party-modules-down-icon =
+ .title = Εμφάνιση λεπτομερών πληροφοριών
+support-third-party-modules-up-icon =
+ .title = Σύμπτυξη λεπτομερών πληροφοριών
+# Variables
+# $days (Integer) - Number of days of crashes to log
+report-crash-for-days =
+ { $days ->
+ [one] Αναφορές κατάρρευσης της τελευταίας { $days } ημέρας
+ *[other] Αναφορές κατάρρευσης των τελευταίων { $days } ημερών
+ }
+# Variables
+# $minutes (integer) - Number of minutes since crash
+crashes-time-minutes =
+ { $minutes ->
+ [one] { $minutes } λεπτό πριν
+ *[other] { $minutes } λεπτά πριν
+ }
+# Variables
+# $hours (integer) - Number of hours since crash
+crashes-time-hours =
+ { $hours ->
+ [one] { $hours } ώρα πριν
+ *[other] { $hours } ώρες πριν
+ }
+# Variables
+# $days (integer) - Number of days since crash
+crashes-time-days =
+ { $days ->
+ [one] { $days } μέρα πριν
+ *[other] { $days } ημέρες πριν
+ }
+# Variables
+# $reports (integer) - Number of pending reports
+pending-reports =
+ { $reports ->
+ [one] Όλες οι αναφορές κατάρρευσης (συμπεριλαμβανομένης { $reports } κατάρρευσης σε αναμονή στο δεδομένο χρονικό διάστημα)
+ *[other] Όλες οι αναφορές κατάρρευσης (συμπεριλαμβανομένων { $reports } καταρρεύσεων σε αναμονή στο δεδομένο χρονικό διάστημα)
+ }
+raw-data-copied = Τα ακατέργαστα δεδομένα αντιγράφτηκαν στο πρόχειρο
+text-copied = Το κείμενο αντιγράφτηκε στο πρόχειρο
+
+## The verb "blocked" here refers to a graphics feature such as "Direct2D" or "OpenGL layers".
+
+blocked-driver = Αποκλείστηκε για την έκδοση του προγράμματος οδήγησης γραφικών σας.
+blocked-gfx-card = Αποκλείστηκε για την κάρτα γραφικών σας, λόγω ανεπίλυτων προβλημάτων προγράμματος οδήγησης.
+blocked-os-version = Αποκλείστηκε για την έκδοση του λειτουργικού σας συστήματος.
+blocked-mismatched-version = Αποκλείστηκε λόγω ασυμφωνίας της έκδοσης του προγράμματος οδήγησης γραφικών μεταξύ μητρώου και DLL.
+# Variables
+# $driverVersion - The graphics driver version string
+try-newer-driver = Αποκλείστηκε για το πρόγραμμα οδήγησης της κάρτας γραφικών σας. Δοκιμάστε να το αναβαθμίστε στην έκδοση { $driverVersion } ή νεότερη.
+# "ClearType" is a proper noun and should not be translated. Feel free to leave English strings if
+# there are no good translations, these are only used in about:support
+clear-type-parameters = Παράμετροι ClearType
+compositing = Σύνθεση
+hardware-h264 = Αποκωδικοποίηση υλικού H264
+main-thread-no-omtc = κύριο νήμα, όχι OMTC
+yes = Ναι
+no = Όχι
+unknown = Άγνωστο
+virtual-monitor-disp = Οθόνη εικονικής εποπτείας
+
+## The following strings indicate if an API key has been found.
+## In some development versions, it's expected for some API keys that they are
+## not found.
+
+found = Βρέθηκε
+missing = Λείπει
+gpu-process-pid = GPUProcessPid
+gpu-process = GPUProcess
+gpu-description = Περιγραφή
+gpu-vendor-id = ID κατασκευαστή
+gpu-device-id = ID συσκευής
+gpu-subsys-id = ID υποσυστήματος
+gpu-drivers = Προγράμματα οδήγησης
+gpu-ram = RAM
+gpu-driver-vendor = Εκδότης προγράμματος οδήγησης
+gpu-driver-version = Έκδοση προγράμματος οδήγησης
+gpu-driver-date = Ημερομηνία προγράμματος οδήγησης
+gpu-active = Ενεργό
+webgl1-wsiinfo = Πληροφορίες WSI προγράμματος οδήγησης WebGL 1
+webgl1-renderer = Πρόγραμμα οδήγησης απεικόνισης WebGL 1
+webgl1-version = Έκδοση προγράμματος οδήγησης WebGL 1
+webgl1-driver-extensions = Επεκτάσεις προγράμματος οδήγησης WebGL 1
+webgl1-extensions = Επεκτάσεις WebGL 1
+webgl2-wsiinfo = Πληροφορίες WSI προγράμματος οδήγησης WebGL 2
+webgl2-renderer = Πρόγραμμα οδήγησης απεικόνισης WebGL 2
+webgl2-version = Έκδοση προγράμματος οδήγησης WebGL 2
+webgl2-driver-extensions = Επεκτάσεις προγράμματος οδήγησης WebGL 2
+webgl2-extensions = Επεκτάσεις WebGL 2
+blocklisted-bug = Αποκλείστηκε λόγω γνωστών ζητημάτων
+# Variables
+# $bugNumber (string) - String of bug number from Bugzilla
+bug-link = σφάλμα { $bugNumber }
+# Variables
+# $bugNumber (string) - Bug number on Bugzilla
+support-blocklisted-bug = Αποκλείστηκε λόγω γνωστών ζητημάτων: <a data-l10n-name="bug-link">σφάλμα { $bugNumber }</a>
+# Variables
+# $failureCode (string) - String that can be searched in the source tree.
+unknown-failure = Αποκλείστηκε· κωδικός αποτυχίας { $failureCode }
+d3d11layers-crash-guard = Συνθέτης D3D11
+d3d11video-crash-guard = Αποκωδικοποιητής βίντεο D3D11
+d3d9video-crash-guard = Αποκωδικοποιητής βίντεο D3D9
+glcontext-crash-guard = OpenGL
+wmfvpxvideo-crash-guard = Αποκωδικοποιητής βίντεο WMF VPX
+reset-on-next-restart = Επαναφορά στην επόμενη επανεκκίνηση
+gpu-process-kill-button = Τερματισμός διεργασίας GPU
+gpu-device-reset = Επαναφορά συσκευής
+gpu-device-reset-button = Έναυσμα επαναφοράς συσκευής
+uses-tiling = Χρησιμοποιεί παράθεση
+content-uses-tiling = Χρησιμοποιεί παράθεση (περιεχόμενο)
+off-main-thread-paint-enabled = Ενεργό off main thread painting
+off-main-thread-paint-worker-count = Πλήθος workers για off main thread painting
+target-frame-rate = Ρυθμός καρέ στόχου
+min-lib-versions = Αναμενόμενη ελάχιστη έκδοση
+loaded-lib-versions = Έκδοση σε χρήση
+has-seccomp-bpf = Seccomp-BPF (Φιλτράρισμα κλήσεων συστήματος)
+has-seccomp-tsync = Συγχρονισμός νήματος Seccomp
+has-user-namespaces = Χώροι ονομάτων χρήστη
+has-privileged-user-namespaces = Χώροι ονομάτων χρήστη για προνομιακές διεργασίες
+can-sandbox-content = Sandboxing διεργασίας περιεχομένου
+can-sandbox-media = Sandboxing αρθρώματος πολυμέσων
+content-sandbox-level = Επίπεδο sandbox διεργασίας περιεχομένου
+effective-content-sandbox-level = Αποτελεσματικό επίπεδο επεξεργασίας περιεχομένου sandbox
+sandbox-proc-type-content = περιεχόμενο
+sandbox-proc-type-file = περιεχόμενο αρχείου
+sandbox-proc-type-media-plugin = άρθρωμα πολυμέσων
+sandbox-proc-type-data-decoder = αποκωδικοποιητής δεδομένων
+startup-cache-title = Προσωρινή μνήμη εκκίνησης
+startup-cache-disk-cache-path = Διαδρομή προσωρινής μνήμης δίσκου
+startup-cache-ignore-disk-cache = Παράβλεψη προσωρινής μνήμης δίσκου
+startup-cache-found-disk-cache-on-init = Εύρεση προσωρινής μνήμης δίσκου στο Init
+startup-cache-wrote-to-disk-cache = Εγγράφηκε στην προσωρινή μνήμη δίσκου
+launcher-process-status-0 = Ενεργό
+launcher-process-status-1 = Ανενεργό λόγω αποτυχίας
+launcher-process-status-2 = Ανενεργό εξαναγκαστικά
+launcher-process-status-unknown = Άγνωστη κατάσταση
+# Variables
+# $remoteWindows (integer) - Number of remote windows
+# $totalWindows (integer) - Number of total windows
+multi-process-windows = { $remoteWindows }/{ $totalWindows }
+multi-process-status-0 = Ενεργοποιήθηκε από το χρήστη
+multi-process-status-1 = ενεργό από προεπιλογή
+multi-process-status-2 = Ανενεργό
+multi-process-status-4 = Ανενεργό λόγω εργαλείων προσβασιμότητας
+multi-process-status-6 = Ανενεργό λόγω μη υποστηριζόμενης εισόδου κειμένου
+multi-process-status-7 = Ανενεργό λόγω προσθέτων
+multi-process-status-8 = Ανενεργό εξαναγκαστικά
+multi-process-status-unknown = Άγνωστη κατάσταση
+# Variables
+# $fissionWindows (integer) - Number of remote windows
+# $totalWindows (integer) - Number of total windows
+fission-windows = { $fissionWindows }/{ $totalWindows }
+fission-status-experiment-control = Απενεργοποιήθηκε από πείραμα
+fission-status-experiment-treatment = Ενεργοποιήθηκε από πείραμα
+fission-status-disabled-by-e10s-env = Απενεργοποιήθηκε από το περιβάλλον
+fission-status-enabled-by-env = Ενεργοποιήθηκε από το περιβάλλον
+fission-status-disabled-by-safe-mode = Απενεργοποιήθηκε από την ασφαλή λειτουργία
+fission-status-enabled-by-default = Ενεργό από προεπιλογή
+fission-status-disabled-by-default = Απενεργοποιήθηκε από προεπιλογή
+fission-status-enabled-by-user-pref = Ενεργοποιήθηκε από το χρήστη
+fission-status-disabled-by-user-pref = Απενεργοποιήθηκε από το χρήστη
+fission-status-disabled-by-e10s-other = Ανενεργό E10s
+async-pan-zoom = Ασύγχρονο pan/zoom
+apz-none = κανένα
+wheel-enabled = είσοδος ρόδας ενεργή
+touch-enabled = είσοδος αφής ενεργή
+drag-enabled = ολίσθηση γραμμής κύλισης ενεργή
+keyboard-enabled = πληκτρολόγιο ενεργό
+autoscroll-enabled = αυτόματη κύλιση ενεργή
+zooming-enabled = ομαλό ζουμ ενεργό
+
+## Variables
+## $preferenceKey (string) - String ID of preference
+
+wheel-warning = ανενεργή ασύγχρονη είσοδος ρόδας λόγω μη υποστηριζόμενης προτίμησης: { $preferenceKey }
+touch-warning = ανενεργή ασύγχρονη είσοδος αφής λόγω μη υποστηριζόμενης προτίμησης: { $preferenceKey }
+
+## Strings representing the status of the Enterprise Policies engine.
+
+policies-inactive = Ανενεργό
+policies-active = Ενεργό
+policies-error = Σφάλμα
+
+## Printing section
+
+support-printing-title = Εκτύπωση
+support-printing-troubleshoot = Επίλυση προβλημάτων
+support-printing-clear-settings-button = Διαγραφή αποθηκευμένων ρυθμίσεων εκτύπωσης
+support-printing-modified-settings = Τροποποιημένες ρυθμίσεις εκτύπωσης
+support-printing-prefs-name = Όνομα
+support-printing-prefs-value = Τιμή
diff --git a/l10n-el/toolkit/toolkit/about/aboutTelemetry.ftl b/l10n-el/toolkit/toolkit/about/aboutTelemetry.ftl
new file mode 100644
index 0000000000..7cb4b7ef36
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutTelemetry.ftl
@@ -0,0 +1,147 @@
+# 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/.
+
+about-telemetry-ping-data-source = Πηγή δεδομένων ping:
+about-telemetry-show-current-data = Τρέχοντα δεδομένα
+about-telemetry-show-archived-ping-data = Αρχειοθετημένα δεδομένα ping
+about-telemetry-show-subsession-data = Εμφάνιση δεδομένων υποσυνεδρίας
+about-telemetry-choose-ping = Επιλογή ping:
+about-telemetry-archive-ping-type = Τύπος ping
+about-telemetry-archive-ping-header = Ping
+about-telemetry-option-group-today = Σήμερα
+about-telemetry-option-group-yesterday = Χθες
+about-telemetry-option-group-older = Παλαιότερα
+about-telemetry-previous-ping = <<
+about-telemetry-next-ping = >>
+about-telemetry-page-title = Δεδομένα τηλεμετρίας
+about-telemetry-current-store = Τρέχον αποθετήριο:
+about-telemetry-more-information = Ψάχνετε περισσότερες πληροφορίες;
+about-telemetry-firefox-data-doc = Η <a data-l10n-name="data-doc-link">τεκμηρίωση δεδομένων του Firefox</a> περιέχει οδηγίες σχετικά με το πώς να εργαστείτε με τα εργαλεία δεδομένων μας.
+about-telemetry-telemetry-client-doc = Η <a data-l10n-name="client-doc-link">τεκμηρίωση πελάτη τηλεμετρίας του Firefox</a> περιλαμβάνει ορισμούς για ιδέες, τεκμηρίωση API και αναφορές δεδομένων.
+about-telemetry-telemetry-dashboard = Οι <a data-l10n-name="dashboard-link">πίνακες τηλεμετρίας</a> σάς επιτρέπουν να βλέπετε τα δεδομένα που λαμβάνει η Mozilla μέσω της τηλεμετρίας.
+about-telemetry-telemetry-probe-dictionary = Το <a data-l10n-name="probe-dictionary-link">λεξικό ερευνών</a> παρέχει λεπτομέρειες και περιγραφές για τις έρευνες που συλλέχθηκαν από την Τηλεμετρία.
+about-telemetry-show-in-Firefox-json-viewer = Άνοιγμα στην προβολή JSON
+about-telemetry-home-section = Αρχική
+about-telemetry-general-data-section = Γενικά δεδομένα
+about-telemetry-environment-data-section = Δεδομένα περιβάλλοντος
+about-telemetry-session-info-section = Πληροφορίες συνεδρίας
+about-telemetry-scalar-section = Μονόμετρα μεγέθη
+about-telemetry-keyed-scalar-section = Μονόμετρα μεγέθη με κλειδί
+about-telemetry-histograms-section = Ιστογράμματα
+about-telemetry-keyed-histogram-section = Ιστογράμματα με κλειδί
+about-telemetry-events-section = Γεγονότα
+about-telemetry-simple-measurements-section = Απλές μετρήσεις
+about-telemetry-slow-sql-section = Αργές εντολές SQL
+about-telemetry-addon-details-section = Λεπτομέρειες προσθέτου
+about-telemetry-captured-stacks-section = Κατειλημμένες Στοίβες
+about-telemetry-late-writes-section = Καθυστερημένες εγγραφές
+about-telemetry-raw-payload-section = Ακατέργαστο ωφέλιμο φορτίο
+about-telemetry-raw = Ακατέργαστη JSON
+about-telemetry-full-sql-warning = ΣΗΜΕΙΩΣΗ: Η αργή αποσφαλμάτωση SQL είναι ενεργή. Τα πλήρη νήματα SQL ενδέχεται να εμφανίζονται παρακάτω, αλλά δεν θα υποβάλλονται στην Τηλεμετρία.
+about-telemetry-fetch-stack-symbols = Λήψη ονομάτων συναρτήσεων για στοίβες
+about-telemetry-hide-stack-symbols = Εμφάνιση ακατέργαστων δεδομένων στοίβας
+# Selects the correct release version
+# Variables:
+# $channel (String): represents the corresponding release data string
+about-telemetry-data-type =
+ { $channel ->
+ [release] δεδομένα έκδοσης
+ *[prerelease] δεδομένα προ-έκδοσης
+ }
+# Selects the correct upload string
+# Variables:
+# $uploadcase (String): represents a corresponding upload string
+about-telemetry-upload-type =
+ { $uploadcase ->
+ [enabled] ενεργή
+ *[disabled] ανενεργή
+ }
+# Example Output: 1 sample, average = 0, sum = 0
+# Variables:
+# $sampleCount (Integer): amount of histogram samples
+# $prettyAverage (Integer): average of histogram samples
+# $sum (Integer): sum of histogram samples
+about-telemetry-histogram-stats =
+ { $sampleCount ->
+ [one] { $sampleCount } δείγμα, μέσος όρος = { $prettyAverage }, σύνολο = { $sum }
+ *[other] { $sampleCount } δείγματα, μέσος όρος = { $prettyAverage }, σύνολο = { $sum }
+ }
+# Variables:
+# $telemetryServerOwner (String): the value of the toolkit.telemetry.server_owner preference. Typically "Mozilla"
+about-telemetry-page-subtitle = Αυτή η σελίδα εμφανίζει τα δεδομένα συμπεριφοράς και χρήσης των λειτουργιών που συλλέγονται από την Τηλεμετρία. Αυτές οι πληροφορίες υποβάλλονται ανώνυμα στο { $telemetryServerOwner } και μας βοηθούν να βελτιώσουμε τον { -brand-full-name }.
+about-telemetry-settings-explanation = Η τηλεμετρία συλλέγει { about-telemetry-data-type } και η μεταφόρτωση είναι <a data-l10n-name="upload-link">{ about-telemetry-upload-type }</a>.
+# Variables:
+# $name (String): ping name, e.g. “saved-session”
+# $timeStamp (String): ping localized timestamp, e.g. “2017/07/08 10:40:46”
+about-telemetry-ping-details = Κάθε κομμάτι πληροφορίας αποστέλλεται πακεταρισμένο σε “<a data-l10n-name="ping-link">pings</a>”. Βλέπετε το ping { $name }, { $timestamp }.
+about-telemetry-data-details-current = Κάθε κομμάτι πληροφορίας αποστέλλεται πακεταρισμένο σε “<a data-l10n-name="ping-link">pings</a>”. Βλέπετε τα τρέχοντα δεδομένα.
+# string used as a placeholder for the search field
+# More info about it can be found here:
+# https://firefox-source-docs.mozilla.org/toolkit/components/telemetry/telemetry/data/main-ping.html
+# Variables:
+# $selectedTitle (String): the section name from the structure of the ping.
+about-telemetry-filter-placeholder =
+ .placeholder = Εύρεση στο { $selectedTitle }
+about-telemetry-filter-all-placeholder =
+ .placeholder = Εύρεση σε όλες τις ενότητες
+# Variables:
+# $searchTerms (String): the searched terms
+about-telemetry-results-for-search = Αποτελέσματα για “{ $searchTerms }”
+# More info about it can be found here: https://firefox-source-docs.mozilla.org/toolkit/components/telemetry/telemetry/data/main-ping.html
+# Variables:
+# $sectionName (String): the section name from the structure of the ping.
+# $currentSearchText (String): the current text in the search input
+about-telemetry-no-search-results = Συγγνώμη! Δεν υπάρχουν αποτελέσματα στην ενότητα “{ $sectionName }” για “{ $currentSearchText }”
+# Variables:
+# $searchTerms (String): the searched terms
+about-telemetry-no-search-results-all = Λυπούμαστε! Δεν υπάρχουν αποτελέσματα σε κανένα τμήμα για “{ $searchTerms }”
+# This message is displayed when a section is empty.
+# Variables:
+# $sectionName (String): is replaced by the section name.
+about-telemetry-no-data-to-display = Λυπούμαστε! Δεν υπάρχουν διαθέσιμα δεδομένα στο “{ $sectionName }”
+# used as a tooltip for the “current” ping title in the sidebar
+about-telemetry-current-data-sidebar = τρέχοντα δεδομένα
+# used in the “Ping Type” select
+about-telemetry-telemetry-ping-type-all = όλα
+# button label to copy the histogram
+about-telemetry-histogram-copy = Αντιγραφή
+# these strings are used in the “Slow SQL Statements” section
+about-telemetry-slow-sql-main = Εντολές αργής SQL στο κύριο νήμα
+about-telemetry-slow-sql-other = Εντολές αργής SQL στα νήματα βοήθειας
+about-telemetry-slow-sql-hits = Συμβάντα
+about-telemetry-slow-sql-average = Μέσος χρόνος (ms)
+about-telemetry-slow-sql-statement = Εντολή
+# these strings are used in the “Add-on Details” section
+about-telemetry-addon-table-id = ID προσθέτου
+about-telemetry-addon-table-details = Λεπτομέρειες
+# Variables:
+# $addonProvider (String): the name of an Add-on Provider (e.g. “XPI”, “Plugin”)
+about-telemetry-addon-provider = Πάροχος { $addonProvider }
+about-telemetry-keys-header = Ιδιότητα
+about-telemetry-names-header = Όνομα
+about-telemetry-values-header = Τιμή
+# Variables:
+# $stackKey (String): the string key for this stack
+# $capturedStacksCount (Integer): the number of times this stack was captured
+about-telemetry-captured-stacks-title = { $stackKey } (μέτρηση καταλήψεων: { $capturedStacksCount })
+# Variables:
+# $lateWriteCount (Integer): the number of the late writes
+about-telemetry-late-writes-title = Καθυστερημένη εγγραφή #{ $lateWriteCount }
+about-telemetry-stack-title = Στοίβα:
+about-telemetry-memory-map-title = Χάρτης μνήμης:
+about-telemetry-error-fetching-symbols = Προέκυψε σφάλμα κατά την λήψη συμβόλων. Βεβαιωθείτε ότι είστε συνδεδεμένοι στο διαδίκτυο και προσπαθήστε ξανά.
+about-telemetry-time-stamp-header = χρονική σήμανση
+about-telemetry-category-header = κατηγορία
+about-telemetry-method-header = μέθοδος
+about-telemetry-object-header = αντικείμενο
+about-telemetry-extra-header = επιπλέον
+about-telemetry-origin-section = Origin Telemetry
+about-telemetry-origin-origin = προέλευση
+about-telemetry-origin-count = μέτρηση
+# Variables:
+# $telemetryServerOwner (String): the value of the toolkit.telemetry.server_owner preference. Typically "Mozilla"
+about-telemetry-origins-explanation = Το <a data-l10n-name="origin-doc-link">Firefox Origin Telemetry</a> κωδικοποιεί τα δεδομένα πριν αποσταλούν έτσι, ώστε η { $telemetryServerOwner } να μπορέσει να μετρήσει πράγματα, αλλά δεν θα γνωρίζει αν συνεισέφερε το παρόν { -brand-product-name } σε αυτή τη μέτρηση. (<a data-l10n-name="prio-blog-link">Μάθετε περισσότερα</a>)
+# Variables:
+# $process (String): type of process in subsection headers ( e.g. "content", "parent" )
+about-telemetry-process = Διεργασία { $process }
diff --git a/l10n-el/toolkit/toolkit/about/aboutWebrtc.ftl b/l10n-el/toolkit/toolkit/about/aboutWebrtc.ftl
new file mode 100644
index 0000000000..f2466d6cf7
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/aboutWebrtc.ftl
@@ -0,0 +1,243 @@
+# 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 for about:webrtc, a troubleshooting and diagnostic page
+### for WebRTC calls. See https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API.
+
+# The text "WebRTC" is a proper noun and should not be translated.
+about-webrtc-document-title = Εσωτερικά του WebRTC
+# "about:webrtc" is a internal browser URL and should not be
+# translated. This string is used as a title for a file save dialog box.
+about-webrtc-save-page-dialog-title = αποθήκευση about:webrtc ως
+
+## AEC is an abbreviation for Acoustic Echo Cancellation.
+
+about-webrtc-aec-logging-msg-label = Καταγραφή AEC
+about-webrtc-aec-logging-off-state-label = Έναρξη καταγραφής AEC
+about-webrtc-aec-logging-on-state-label = Διακοπή καταγραφής AEC
+about-webrtc-aec-logging-on-state-msg = Καταγραφή AEC ενεργή (μιλήστε με τον καλών για λίγα λεπτά και μετά σταματήστε την καταγραφή)
+
+##
+
+# "PeerConnection" is a proper noun associated with the WebRTC module. "ID" is
+# an abbreviation for Identifier. This string should not normally be translated
+# and is used as a data label.
+about-webrtc-peerconnection-id-label = PeerConnection ID:
+
+## "SDP" is an abbreviation for Session Description Protocol, an IETF standard.
+## See http://wikipedia.org/wiki/Session_Description_Protocol
+
+about-webrtc-sdp-heading = SDP
+about-webrtc-local-sdp-heading = Τοπικό SDP
+about-webrtc-local-sdp-heading-offer = Τοπικό SDP (Προσφορά)
+about-webrtc-local-sdp-heading-answer = Τοπικό SDP (Απάντηση)
+about-webrtc-remote-sdp-heading = Απομακρυσμένο SDP
+about-webrtc-remote-sdp-heading-offer = Απομακρυσμένο SDP (Προσφορά)
+about-webrtc-remote-sdp-heading-answer = Απομακρυσμένο SDP (Απάντηση)
+about-webrtc-sdp-history-heading = Ιστορικό SDP
+about-webrtc-sdp-parsing-errors-heading = Σφάλματα ανάλυσης SDP
+
+##
+
+# "RTP" is an abbreviation for the Real-time Transport Protocol, an IETF
+# specification, and should not normally be translated. "Stats" is an
+# abbreviation for Statistics.
+about-webrtc-rtp-stats-heading = Στατιστικά RTP
+
+## "ICE" is an abbreviation for Interactive Connectivity Establishment, which
+## is an IETF protocol, and should not normally be translated.
+
+about-webrtc-ice-state = Κατάσταση ICE
+# "Stats" is an abbreviation for Statistics.
+about-webrtc-ice-stats-heading = Στατιστικά ICE
+about-webrtc-ice-restart-count-label = Επανεκκινήσεις ICE:
+about-webrtc-ice-rollback-count-label = Ακυρώσεις ICE:
+about-webrtc-ice-pair-bytes-sent = Απεσταλμένα bytes:
+about-webrtc-ice-pair-bytes-received = Ληφθέντα bytes:
+about-webrtc-ice-component-id = Αναγνωριστικό στοιχείου
+
+##
+
+
+## "Avg." is an abbreviation for Average. These are used as data labels.
+
+about-webrtc-avg-bitrate-label = Μέσος ρυθμός bit:
+about-webrtc-avg-framerate-label = Μέσος ρυθμός καρέ:
+
+##
+
+
+## These adjectives are used to label a line of statistics collected for a peer
+## connection. The data represents either the local or remote end of the
+## connection.
+
+about-webrtc-type-local = Τοπικά
+about-webrtc-type-remote = Απομακρυσμένα
+
+##
+
+# This adjective is used to label a table column. Cells in this column contain
+# the localized javascript string representation of "true" or are left blank.
+about-webrtc-nominated = Υποψήφια
+# This adjective is used to label a table column. Cells in this column contain
+# the localized javascript string representation of "true" or are left blank.
+# This represents an attribute of an ICE candidate.
+about-webrtc-selected = Επιλεγμένα
+about-webrtc-save-page-label = Αποθήκευση σελίδας
+about-webrtc-debug-mode-msg-label = Λειτουργία αποσφαλμάτωσης
+about-webrtc-debug-mode-off-state-label = Έναρξη λειτουργίας αποσφαλμάτωσης
+about-webrtc-debug-mode-on-state-label = Διακοπή λειτουργίας αποσφαλμάτωσης
+about-webrtc-stats-heading = Στατιστικά συνεδρίας
+about-webrtc-stats-clear = Εκκαθάριση ιστορικού
+about-webrtc-log-heading = Αρχείο καταγραφής σύνδεσης
+about-webrtc-log-clear = Εκκαθάριση αρχείου καταγραφής
+about-webrtc-log-show-msg = εμφάνιση αρχείου καταγραφής
+ .title = κάντε κλικ για επέκταση ενότητας
+about-webrtc-log-hide-msg = απόκρυψη αρχείου καταγραφής
+ .title = κάντε κλικ για σύμπτυξη ενότητας
+
+## These are used to display a header for a PeerConnection.
+## Variables:
+## $browser-id (Number) - A numeric id identifying the browser tab for the PeerConnection.
+## $id (String) - A globally unique identifier for the PeerConnection.
+## $url (String) - The url of the site which opened the PeerConnection.
+## $now (Date) - The JavaScript timestamp at the time the report was generated.
+
+about-webrtc-connection-open = [ { $browser-id } | { $id } ] { $url } { $now }
+about-webrtc-connection-closed = [ { $browser-id } | { $id } ] { $url } (έκλεισε) { $now }
+
+##
+
+about-webrtc-local-candidate = Τοπικός υποψήφιος
+about-webrtc-remote-candidate = Απομακρυσμένος υποψήφιος
+about-webrtc-raw-candidates-heading = Όλοι οι ανεπεξέργαστοι υποψήφιοι
+about-webrtc-raw-local-candidate = Ανεπεξέργαστος τοπικός υποψήφιος
+about-webrtc-raw-remote-candidate = Ανεπεξέργαστος απομακρυσμένος υποψήφιος
+about-webrtc-raw-cand-show-msg = εμφάνιση ανεπεξέργαστων υποψήφιων
+ .title = κάντε κλικ για επέκταση ενότητας
+about-webrtc-raw-cand-hide-msg = απόκρυψη ανεπεξέργαστων υποψήφιων
+ .title = κάντε κλικ για σύμπτυξη ενότητας
+about-webrtc-priority = Προτεραιότητα
+about-webrtc-fold-show-msg = εμφάνιση λεπτομερειών
+ .title = κάντε κλικ για επέκταση ενότητας
+about-webrtc-fold-hide-msg = απόκρυψη λεπτομερειών
+ .title = κάντε κλικ για σύμπτυξη ενότητας
+about-webrtc-dropped-frames-label = Απορριφθέντα καρέ:
+about-webrtc-discarded-packets-label = Απορριφθέντα πακέτα:
+about-webrtc-decoder-label = Αποκωδικοποιητής
+about-webrtc-encoder-label = Κωδικοποιητής
+about-webrtc-show-tab-label = Εμφάνιση καρτέλας
+about-webrtc-width-px = Πλάτος (px)
+about-webrtc-height-px = Ύψος (px)
+about-webrtc-consecutive-frames = Διαδοχικά καρέ
+about-webrtc-time-elapsed = Χρόνος που έχει παρέλθει (s)
+about-webrtc-estimated-framerate = Εκτιμώμενος ρυθμός καρέ
+about-webrtc-rotation-degrees = Περιστροφή (μοίρες)
+about-webrtc-first-frame-timestamp = Χρονική σήμανση λήψης πρώτου καρέ
+about-webrtc-last-frame-timestamp = Χρονική σήμανση λήψης τελευταίου καρέ
+
+## SSRCs are identifiers that represent endpoints in an RTP stream
+
+# This is an SSRC on the local side of the connection that is receiving RTP
+about-webrtc-local-receive-ssrc = Τοπική λήψη SSRC
+# This is an SSRC on the remote side of the connection that is sending RTP
+about-webrtc-remote-send-ssrc = Απομακρυσμένη αποστολή SSRC
+
+##
+
+# An option whose value will not be displayed but instead noted as having been
+# provided
+about-webrtc-configuration-element-provided = Παρέχεται
+# An option whose value will not be displayed but instead noted as having not
+# been provided
+about-webrtc-configuration-element-not-provided = Δεν παρέχεται
+# The options set by the user in about:config that could impact a WebRTC call
+about-webrtc-custom-webrtc-configuration-heading = Προτιμήσεις χρήστη για το WebRTC
+# Section header for estimated bandwidths of WebRTC media flows
+about-webrtc-bandwidth-stats-heading = Εκτιμώμενο εύρος ζώνης
+# The ID of the MediaStreamTrack
+about-webrtc-track-identifier = Αναγνωριστικό κομματιού
+# The estimated bandwidth available for sending WebRTC media in bytes per second
+about-webrtc-send-bandwidth-bytes-sec = Εύρος ζώνης αποστολής (bytes/δ)
+# The estimated bandwidth available for receiving WebRTC media in bytes per second
+about-webrtc-receive-bandwidth-bytes-sec = Εύρος ζώνης λήψης (bytes/δ)
+# Maximum number of bytes per second that will be padding zeros at the ends of packets
+about-webrtc-max-padding-bytes-sec = Μέγιστο padding (bytes/δ)
+# The amount of time inserted between packets to keep them spaced out
+about-webrtc-pacer-delay-ms = Καθυστέρηση pacer (ms)
+# The amount of time it takes for a packet to travel from the local machine to the remote machine,
+# and then have a packet return
+about-webrtc-round-trip-time-ms = RTT ms
+# This is a section heading for video frame statistics for a MediaStreamTrack.
+# see https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrack.
+# Variables:
+# $track-identifier (String) - The unique identifier for the MediaStreamTrack.
+about-webrtc-frame-stats-heading = Στατιστικά καρέ βίντεο - MediaStreamTrack ID: { $track-identifier }
+
+## These are paths used for saving the about:webrtc page or log files so
+## they can be attached to bug reports.
+## Variables:
+## $path (String) - The path to which the file is saved.
+
+about-webrtc-save-page-msg = η σελίδα αποθηκεύτηκε στην διαδρομή: { $path }
+about-webrtc-debug-mode-off-state-msg = το αρχείο πληροφοριών μπορεί να βρεθεί στο: { $path }
+about-webrtc-debug-mode-on-state-msg = κατάσταση αποσφαλμάτωσης ενεργή, το αρχείο πληροφοριών είναι στο: { $path }
+about-webrtc-aec-logging-off-state-msg = τα αρχεία καταγραφής μπορούν να βρεθούν στο: { $path }
+
+##
+
+# This is the total number of packets received on the PeerConnection.
+# Variables:
+# $packets (Number) - The number of packets received.
+about-webrtc-received-label =
+ { $packets ->
+ [one] Ελήφθη { $packets } πακέτο
+ *[other] Ελήφθησαν { $packets } πακέτα
+ }
+# This is the total number of packets lost by the PeerConnection.
+# Variables:
+# $packets (Number) - The number of packets lost.
+about-webrtc-lost-label =
+ { $packets ->
+ [one] Χάθηκε { $packets } πακέτο
+ *[other] Χάθηκαν { $packets } πακέτα
+ }
+# This is the total number of packets sent by the PeerConnection.
+# Variables:
+# $packets (Number) - The number of packets sent.
+about-webrtc-sent-label =
+ { $packets ->
+ [one] Απεστάλη { $packets } πακέτο
+ *[other] Απεστάλησαν { $packets } πακέτα
+ }
+# Jitter is the variance in the arrival time of packets.
+# See: https://w3c.github.io/webrtc-stats/#dom-rtcreceivedrtpstreamstats-jitter
+# Variables:
+# $jitter (Number) - The jitter.
+about-webrtc-jitter-label = Διακύμανση { $jitter }
+# ICE candidates arriving after the remote answer arrives are considered trickled
+# (an attribute of an ICE candidate). These are highlighted in the ICE stats
+# table with light blue background.
+about-webrtc-trickle-caption-msg = Οι αργοί υποψήφιοι (που φθάνουν μετά από απάντηση) επισημαίνονται με μπλε
+
+## "SDP" is an abbreviation for Session Description Protocol, an IETF standard.
+## See http://wikipedia.org/wiki/Session_Description_Protocol
+
+# This is used as a header for local SDP.
+# Variables:
+# $timestamp (Number) - The Unix Epoch time at which the SDP was set.
+about-webrtc-sdp-set-at-timestamp-local = Ορισμός Τοπικό SDP στη χρονική σήμανση { NUMBER($timestamp, useGrouping: "false") }
+# This is used as a header for remote SDP.
+# Variables:
+# $timestamp (Number) - The Unix Epoch time at which the SDP was set.
+about-webrtc-sdp-set-at-timestamp-remote = Ορισμός Απομακρυσμένο SDP στη χρονική σήμανση { NUMBER($timestamp, useGrouping: "false") }
+# This is used as a header for an SDP section contained in two columns allowing for side-by-side comparisons.
+# Variables:
+# $timestamp (Number) - The Unix Epoch time at which the SDP was set.
+# $relative-timestamp (Number) - The timestamp relative to the timestamp of the earliest received SDP.
+about-webrtc-sdp-set-timestamp = Χρονική σήμανση { NUMBER($timestamp, useGrouping: "false") } (+ { $relative-timestamp } ms)
+
+##
+
diff --git a/l10n-el/toolkit/toolkit/about/abuseReports.ftl b/l10n-el/toolkit/toolkit/about/abuseReports.ftl
new file mode 100644
index 0000000000..1328e2cd7d
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/abuseReports.ftl
@@ -0,0 +1,101 @@
+# 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/.
+
+# Localized string used as the dialog window title (a new behavior locked
+# behind the "extensions.abuseReport.openDialog" preference).
+# "Report" is a noun in this case, "Report for AddonName".
+#
+# Variables:
+# $addon-name (string) - Name of the add-on being reported
+abuse-report-dialog-title = Αναφορά για { $addon-name }
+
+abuse-report-title-extension = Αναφορά επέκτασης στη { -vendor-short-name }
+abuse-report-title-theme = Αναφορά θέματος στη { -vendor-short-name }
+abuse-report-subtitle = Ποιο είναι το ζήτημα;
+
+# Variables:
+# $author-name (string) - Name of the add-on author
+abuse-report-addon-authored-by = από <a data-l10n-name="author-name">{ $author-name }</a>
+
+abuse-report-learnmore =
+ Δεν ξέρετε σίγουρα ποιο ζήτημα να επιλέξετε;
+ <a data-l10n-name="learnmore-link">Μάθετε περισσότερα σχετικά με την αναφορά επεκτάσεων και θεμάτων</a>
+
+abuse-report-submit-description = Περιγραφή του προβλήματος (προαιρετικό)
+abuse-report-textarea =
+ .placeholder = Είναι πιο εύκολο να επιλύσουμε ένα πρόβλημα όταν έχουμε συγκεκριμένες λεπτομέρειες. Παρακαλούμε περιγράψτε το πρόβλημα που αντιμετωπίζετε. Ευχαριστούμε που μας βοηθάτε να διατηρήσουμε υγιές το διαδίκτυο.
+abuse-report-submit-note =
+ Σημείωση: Μην συμπεριλάβετε προσωπικές πληροφορίες (όπως όνομα, διεύθυνση email, αριθμό τηλεφώνου, πραγματική διεύθυνση).
+ Η { -vendor-short-name } διατηρεί μόνιμα αυτές τις αναφορές.
+
+## Panel buttons.
+
+abuse-report-cancel-button = Ακύρωση
+abuse-report-next-button = Επόμενο
+abuse-report-goback-button = Επιστροφή
+abuse-report-submit-button = Υποβολή
+
+## Message bars descriptions.
+
+
+## Variables:
+## $addon-name (string) - Name of the add-on
+
+abuse-report-messagebar-aborted = Η αναφορά για το <span data-l10n-name="addon-name">{ $addon-name }</span> ακυρώθηκε.
+abuse-report-messagebar-submitting = Αποστολή αναφοράς για το <span data-l10n-name="addon-name">{ $addon-name }</span>.
+abuse-report-messagebar-submitted = Ευχαριστούμε για την αναφορά σας. Θέλετε να αφαιρέσετε το <span data-l10n-name="addon-name">{ $addon-name }</span>;
+abuse-report-messagebar-submitted-noremove = Ευχαριστούμε για την αναφορά σας.
+abuse-report-messagebar-removed-extension = Ευχαριστούμε για την αναφορά σας. Έχετε αφαιρέσει την επέκταση <span data-l10n-name="addon-name">{ $addon-name }</span>.
+abuse-report-messagebar-removed-theme = Ευχαριστούμε για την αναφορά σας. Έχετε αφαιρέσει το θέμα <span data-l10n-name="addon-name">{ $addon-name }</span>.
+abuse-report-messagebar-error = Προέκυψε σφάλμα κατά την αποστολή της αναφοράς για το <span data-l10n-name="addon-name">{ $addon-name }</span>.
+abuse-report-messagebar-error-recent-submit = Η αναφορά για το <span data-l10n-name="addon-name">{ $addon-name }</span> δεν απεστάλη, επειδή μια άλλη αναφορά υπεβλήθη πρόσφατα.
+
+## Message bars actions.
+
+abuse-report-messagebar-action-remove-extension = Ναι, να αφαιρεθεί
+abuse-report-messagebar-action-keep-extension = Όχι, να παραμείνει
+abuse-report-messagebar-action-remove-theme = Ναι, να αφαιρεθεί
+abuse-report-messagebar-action-keep-theme = Όχι, να παραμείνει
+abuse-report-messagebar-action-retry = Επανάληψη
+abuse-report-messagebar-action-cancel = Ακύρωση
+
+## Abuse report reasons (optionally paired with related examples and/or suggestions)
+
+abuse-report-damage-reason-v2 = Έβλαψε τον υπολογιστή ή τα δεδομένα μου
+abuse-report-damage-example = Παράδειγμα: Εγκατέστησε κακόβουλο λογισμικό ή έκλεψε δεδομένα
+
+abuse-report-spam-reason-v2 = Περιέχει ανεπιθύμητα μηνύματα ή διαφημίσεις
+abuse-report-spam-example = Παράδειγμα: Εισάγει διαφημίσεις σε ιστοσελίδες
+
+abuse-report-settings-reason-v2 = Άλλαξε τη μηχανή αναζήτησης, την αρχική σελίδα ή τη νέα καρτέλα μου, χωρίς να με πληροφορήσει/ρωτήσει
+abuse-report-settings-suggestions = Πριν αναφέρετε την επέκταση, μπορείτε να δοκιμάσετε να αλλάξετε τις ρυθμίσεις σας:
+abuse-report-settings-suggestions-search = Αλλάξτε τις προεπιλεγμένες ρυθμίσεις αναζήτησης
+abuse-report-settings-suggestions-homepage = Αλλάξτε την αρχική σελίδα και τη νέα καρτέλα
+
+abuse-report-deceptive-reason-v2 = Προσποιείται ότι είναι κάτι που δεν είναι
+abuse-report-deceptive-example = Παράδειγμα: Παραπλανητική περιγραφή ή απεικόνιση
+
+abuse-report-broken-reason-extension-v2 = Δεν λειτουργεί, χαλάει ιστοσελίδες, ή επιβραδύνει το { -brand-product-name }
+abuse-report-broken-reason-theme-v2 = Δεν λειτουργεί ή χαλάει την προβολή του προγράμματος περιήγησης
+abuse-report-broken-example = Παράδειγμα: Οι λειτουργίες είναι αργές, δύσκολες στη χρήση ή δεν λειτουργούν· δεν φορτώνονται τμήματα ιστοσελίδων ή εμφανίζονται διαφορετικά
+abuse-report-broken-suggestions-extension =
+ Φαίνεται ότι έχετε εντοπίσει ένα σφάλμα. Εκτός από την υποβολή της παρούσας αναφοράς, ο καλύτερος τρόπος
+ να επιλυθεί ένα ζήτημα λειτουργικότητας είναι να επικοινωνήσετε με τον προγραμματιστή της επέκτασης.
+ <a data-l10n-name="support-link">Επισκεφθείτε την ιστοσελίδα της επέκτασης</a> για να λάβετε τις πληροφορίες του προγραμματιστή.
+abuse-report-broken-suggestions-theme =
+ Φαίνεται ότι έχετε εντοπίσει ένα σφάλμα. Εκτός από την υποβολή της παρούσας αναφοράς, ο καλύτερος τρόπος
+ να επιλυθεί ένα ζήτημα λειτουργικότητας είναι να επικοινωνήσετε με τον προγραμματιστή του θέματος.
+ <a data-l10n-name="support-link">Επισκεφθείτε την ιστοσελίδα του θέματος</a> για να λάβετε τις πληροφορίες του προγραμματιστή.
+
+abuse-report-policy-reason-v2 = Περιέχει περιεχόμενο μίσους, βίας ή παρανομίας
+abuse-report-policy-suggestions =
+ Σημείωση: Τα ζητήματα πνευματικών δικαιωμάτων και εμπορικών σημάτων πρέπει να αναφέρονται σε ξεχωριστή διαδικασία.
+ <a data-l10n-name="report-infringement-link">Ακολουθήστε αυτές τις οδηγίες</a> για να
+ αναφέρετε το πρόβλημα.
+
+abuse-report-unwanted-reason-v2 = Δεν το ήθελα ποτέ και δεν ξέρω πώς να το αφαιρέσω
+abuse-report-unwanted-example = Παράδειγμα: Μια εφαρμογή το εγκατέστησε χωρίς την άδειά μου
+
+abuse-report-other-reason = Κάτι άλλο
+
diff --git a/l10n-el/toolkit/toolkit/about/certviewer.ftl b/l10n-el/toolkit/toolkit/about/certviewer.ftl
new file mode 100644
index 0000000000..113b1d8023
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/certviewer.ftl
@@ -0,0 +1,120 @@
+# 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/.
+
+certificate-viewer-certificate-section-title = Πιστοποιητικό
+
+## Error messages
+
+certificate-viewer-error-message = Δεν μπορέσαμε να βρούμε τις πληροφορίες του πιστοποιητικού, ή το πιστοποιητικό έχει καταστραφεί. Παρακαλούμε δοκιμάστε ξανά.
+certificate-viewer-error-title = Κάτι πήγε στραβά.
+
+## Certificate information labels
+
+certificate-viewer-algorithm = Αλγόριθμος
+certificate-viewer-certificate-authority = Αρχή πιστοποιητικού
+certificate-viewer-cipher-suite = Σουίτα κρυπτογράφησης
+certificate-viewer-common-name = Κοινό όνομα
+certificate-viewer-email-address = Διεύθυνση email
+# Variables:
+# $firstCertName (String) - Common Name for the displayed certificate
+certificate-viewer-tab-title = Πιστοποιητικό για { $firstCertName }
+# Inc. means Incorporated, e.g GitHub is incorporated in Delaware
+certificate-viewer-inc-country = Χώρα εταιρείας
+certificate-viewer-country = Χώρα
+certificate-viewer-curve = Καμπύλη
+certificate-viewer-distribution-point = Σημείο διανομής
+certificate-viewer-dns-name = Όνομα DNS
+certificate-viewer-ip-address = Διεύθυνση IP
+certificate-viewer-other-name = Άλλο όνομα
+certificate-viewer-exponent = Εκθέτης
+certificate-viewer-id = ID
+certificate-viewer-key-exchange-group = Ομάδα ανταλλαγής κλειδιών
+certificate-viewer-key-id = ID κλειδιού
+certificate-viewer-key-size = Μέγεθος κλειδιού
+# Inc. means Incorporated, e.g GitHub is incorporated in Delaware
+certificate-viewer-inc-locality = Περιοχή εταιρείας
+certificate-viewer-locality = Περιοχή
+certificate-viewer-location = Τοποθεσία
+certificate-viewer-logid = ID καταγραφής
+certificate-viewer-method = Μέθοδος
+certificate-viewer-modulus = Μέτρο
+certificate-viewer-name = Όνομα
+certificate-viewer-not-after = Όχι μετά
+certificate-viewer-not-before = Όχι πριν
+certificate-viewer-organization = Εταιρεία
+certificate-viewer-organizational-unit = Μονάδα οργανισμού
+certificate-viewer-policy = Πολιτική
+certificate-viewer-protocol = Πρωτόκολλο
+certificate-viewer-public-value = Δημόσια τιμή
+certificate-viewer-purposes = Σκοποί
+certificate-viewer-qualifier = Προσδιοριστικό
+certificate-viewer-qualifiers = Προσδιοριστικά
+certificate-viewer-required = Απαιτείται
+certificate-viewer-unsupported = &lt;δεν υποστηρίζεται&gt;
+# Inc. means Incorporated, e.g GitHub is incorporated in Delaware
+certificate-viewer-inc-state-province = Πολιτεία/περιφέρεια εταιρείας
+certificate-viewer-state-province = Πολιτεία/περιφέρεια
+certificate-viewer-sha-1 = SHA-1
+certificate-viewer-sha-256 = SHA-256
+certificate-viewer-serial-number = Σειριακός αριθμός
+certificate-viewer-signature-algorithm = Αλγόριθμος υπογραφής
+certificate-viewer-signature-scheme = Μοτίβο υπογραφής
+certificate-viewer-timestamp = Χρονική σήμανση
+certificate-viewer-value = Τιμή
+certificate-viewer-version = Έκδοση
+certificate-viewer-business-category = Κατηγορία επιχείρησης
+certificate-viewer-subject-name = Όνομα θέματος
+certificate-viewer-issuer-name = Όνομα εκδότη
+certificate-viewer-validity = Εγκυρότητα
+certificate-viewer-subject-alt-names = Εναλλακτικά ονόματα θέματος
+certificate-viewer-public-key-info = Πληροφορίες δημόσιου κλειδιού
+certificate-viewer-miscellaneous = Διάφορα
+certificate-viewer-fingerprints = Αποτυπώματα
+certificate-viewer-basic-constraints = Βασικοί περιορισμοί
+certificate-viewer-key-usages = Χρήσεις κλειδιού
+certificate-viewer-extended-key-usages = Εκτεταμένες χρήσεις κλειδιού
+certificate-viewer-ocsp-stapling = Συρραφή OCSP
+certificate-viewer-subject-key-id = ID κλειδιού θέματος
+certificate-viewer-authority-key-id = ID κλειδιού αρχής
+certificate-viewer-authority-info-aia = Πληροφορίες αρχής (AIA)
+certificate-viewer-certificate-policies = Πολιτικές πιστοποιητικού
+certificate-viewer-embedded-scts = Ενσωματωμένα SCT
+certificate-viewer-crl-endpoints = Τελικά σημεία CRL
+# This message is used as a row header in the Miscellaneous section.
+# The associated data cell contains links to download the certificate.
+certificate-viewer-download = Λήψη
+# This message is used to replace boolean values (true/false) in several certificate fields, e.g. Certificate Authority
+# Variables:
+# $boolean (String) - true/false value for the specific field
+certificate-viewer-boolean =
+ { $boolean ->
+ [true] Ναι
+ *[false] Όχι
+ }
+
+## Variables:
+## $fileName (String) - The file name to save the PEM data in, derived from the common name from the certificate being displayed.
+
+certificate-viewer-download-pem = PEM (πιστοποιητικό)
+ .download = { $fileName }.pem
+certificate-viewer-download-pem-chain = PEM (αλυσίδα)
+ .download = { $fileName }-chain.pem
+# The title attribute for Critical Extension icon
+certificate-viewer-critical-extension =
+ .title = Αυτή η επέκταση έχει επισημανθεί ως κρίσιμη, πράγμα που σημαίνει ότι οι πελάτες πρέπει να απορρίψουν το πιστοποιητικό εάν δεν το καταλαβαίνουν.
+certificate-viewer-export = Εξαγωγή
+ .download = { $fileName }.pem
+
+##
+
+# Label for a tab where we haven't found a better label:
+certificate-viewer-unknown-group-label = (άγνωστο)
+
+## Labels for tabs displayed in stand-alone about:certificate page
+
+certificate-viewer-tab-mine = Τα πιστοποιητικά σας
+certificate-viewer-tab-people = Άτομα
+certificate-viewer-tab-servers = Διακομιστές
+certificate-viewer-tab-ca = Αρχές
+certificate-viewer-tab-unkonwn = Άγνωστο
diff --git a/l10n-el/toolkit/toolkit/about/config.ftl b/l10n-el/toolkit/toolkit/about/config.ftl
new file mode 100644
index 0000000000..37fe06602c
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/config.ftl
@@ -0,0 +1,52 @@
+# 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/.
+
+## These strings appear on the warning you see when first visiting about:config.
+
+about-config-intro-warning-title = Συνέχεια με προσοχή
+about-config-intro-warning-text = Η αλλαγή παραμέτρων των σύνθετων προτιμήσεων μπορεί να επηρεάσει την απόδοση ή την ασφάλεια του { -brand-short-name }.
+about-config-intro-warning-checkbox = Προειδοποίηση κατά την απόπειρα πρόσβασης σε αυτές τις προτιμήσεις
+about-config-intro-warning-button = Αποδοχή κινδύνου και συνέχεια
+
+##
+
+# This is shown on the page before searching but after the warning is accepted.
+about-config-caution-text = Η αλλαγή αυτών των προτιμήσεων μπορεί να επηρεάσει την απόδοση ή την ασφάλεια του { -brand-short-name }.
+
+about-config-page-title = Προηγμένες προτιμήσεις
+
+about-config-search-input1 =
+ .placeholder = Αναζήτηση ονόματος προτίμησης
+about-config-show-all = Εμφάνιση όλων
+
+about-config-pref-add-button =
+ .title = Προσθήκη
+about-config-pref-toggle-button =
+ .title = Εναλλαγή
+about-config-pref-edit-button =
+ .title = Επεξεργασία
+about-config-pref-save-button =
+ .title = Αποθήκευση
+about-config-pref-reset-button =
+ .title = Επαναφορά
+about-config-pref-delete-button =
+ .title = Διαγραφή
+
+## Labels for the type selection radio buttons shown when adding preferences.
+
+about-config-pref-add-type-boolean = Αληθείας
+about-config-pref-add-type-number = Αριθμητική
+about-config-pref-add-type-string = Αλφαριθμητική
+
+## Preferences with a non-default value are differentiated visually, and at the
+## same time the state is made accessible to screen readers using an aria-label
+## that won't be visible or copied to the clipboard.
+##
+## Variables:
+## $value (String): The full value of the preference.
+
+about-config-pref-accessible-value-default =
+ .aria-label = { $value } (προεπιλογή)
+about-config-pref-accessible-value-custom =
+ .aria-label = { $value } (προσαρμοσμένη)
diff --git a/l10n-el/toolkit/toolkit/about/url-classifier.ftl b/l10n-el/toolkit/toolkit/about/url-classifier.ftl
new file mode 100644
index 0000000000..b0ebbad5e9
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/about/url-classifier.ftl
@@ -0,0 +1,53 @@
+# 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/.
+
+url-classifier-title = Πληροφορίες URL Classifier
+url-classifier-search-title = Αναζήτηση
+url-classifier-search-result-title = Αποτελέσματα
+url-classifier-search-result-uri = URI: { $uri }
+url-classifier-search-result-list = Λίστα πινάκων: { $list }
+url-classifier-search-input = URL
+url-classifier-search-error-invalid-url = Μη έγκυρο URL
+url-classifier-search-error-no-features = Δεν επιλέχθηκαν λειτουργίες
+url-classifier-search-btn = Έναρξη αναζήτησης
+url-classifier-search-features = Λειτουργίες
+url-classifier-search-listType = Τύπος λίστας
+url-classifier-provider-title = Πάροχος
+url-classifier-provider = Πάροχος
+url-classifier-provider-last-update-time = Χρόνος τελευταίας ενημέρωσης
+url-classifier-provider-next-update-time = Χρόνος επόμενης ενημέρωσης
+url-classifier-provider-back-off-time = Χρόνος διακοπής
+url-classifier-provider-last-update-status = Τελευταία ενημέρωση κατάστασης
+url-classifier-provider-update-btn = Ενημέρωση
+url-classifier-cache-title = Cache
+url-classifier-cache-refresh-btn = Ανανέωση
+url-classifier-cache-clear-btn = Απαλοιφή
+url-classifier-cache-table-name = Όνομα πίνακα
+url-classifier-cache-ncache-entries = Αριθμός αρνητικών εκχωρήσεων cache
+url-classifier-cache-pcache-entries = Αριθμός θετικών εκχωρήσεων cache
+url-classifier-cache-show-entries = Εμφάνιση εκχωρήσεων
+url-classifier-cache-entries = Εκχωρήσεις cache
+url-classifier-cache-prefix = Πρόθεμα
+url-classifier-cache-ncache-expiry = Λήξη αρνητικής cache
+url-classifier-cache-fullhash = Πλήρες hash
+url-classifier-cache-pcache-expiry = Λήξη θετικής cache
+url-classifier-debug-title = Εντοπισμός σφαλμάτων
+url-classifier-debug-module-btn = Ορισμός μονάδων καταγραφής
+url-classifier-debug-file-btn = Ορισμός αρχείου καταγραφής
+url-classifier-debug-js-log-chk = Ορισμός καταγραφής JS
+url-classifier-debug-sb-modules = Μονάδες καταγραφής ασφαλούς περιήγησης
+url-classifier-debug-modules = Τρέχουσες μονάδες καταγραφής
+url-classifier-debug-sbjs-modules = Αρχείο καταγραφής JS ασφαλούς περιήγησης
+url-classifier-debug-file = Τρέχον αρχείο καταγραφής
+url-classifier-trigger-update = Πρόκληση ενημέρωσης
+url-classifier-not-available = Μ/Δ
+url-classifier-disable-sbjs-log = Απενεργοποίηση αρχείου καταγραφής JS ασφαλούς περιήγησης
+url-classifier-enable-sbjs-log = Ενεργοποίηση αρχείου καταγραφής JS ασφαλούς περιήγησης
+url-classifier-enabled = Ενεργό
+url-classifier-disabled = Ανενεργό
+url-classifier-updating = ενημέρωση
+url-classifier-cannot-update = αδυναμία ενημέρωσης
+url-classifier-success = επιτυχία
+url-classifier-update-error = σφάλμα ενημέρωσης ({ $error })
+url-classifier-download-error = σφάλμα λήψης ({ $error })
diff --git a/l10n-el/toolkit/toolkit/extensions/blocklist.ftl b/l10n-el/toolkit/toolkit/extensions/blocklist.ftl
new file mode 100644
index 0000000000..48a0437376
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/extensions/blocklist.ftl
@@ -0,0 +1,22 @@
+# 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
+
+blocklist-window =
+ .title = Μερικά πρόσθετα μπορεί να προκαλούν προβλήματα
+ .style = width: 52em; height: 38em
+blocklist-accept =
+ .label = Επανεκκίνηση { -brand-short-name }
+ .accesskey = π
+
+blocklist-label-summary = Το { -brand-short-name } εντόπισε ότι τα παρακάτω πρόσθετα έχουν προβλήματα σταθερότητας ή ασφάλειας:
+blocklist-soft-and-hard = Τα πρόσθετα που είναι πιθανό να προκαλούν προβλήματα σταθερότητας ή ασφάλειας έχουν ήδη φραγεί. Τα υπόλοιπα ενέχουν χαμηλότερο ρίσκο, αλλά σας συστήνουμε να επανεκκινήσετε το πρόγραμμα με τα πρόσθετα απενεργοποιημένα.
+blocklist-hard-blocked = Τα πρόσθετα που πιθανόν αν προκαλούν προβλήματα σταθερότητας ή ασφάλειας έχουν ήδη φραγεί, αλλά απαιτείται επανεκκίνηση για την πλήρη απενεργοποίηση τους.
+blocklist-soft-blocked = Για την προστασία σας, σας συστήνουμε να επανεκκινήσετε το πρόγραμμα με τα πρόσθετα αυτά απενεργοποιημένα.
+blocklist-more-information =
+ .value = Περισσότερες πληροφορίες
+
+blocklist-blocked =
+ .label = Φραγμένα
+blocklist-checkbox =
+ .label = Απενεργοποίηση
diff --git a/l10n-el/toolkit/toolkit/featuregates/features.ftl b/l10n-el/toolkit/toolkit/featuregates/features.ftl
new file mode 100644
index 0000000000..7c10c1c759
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/featuregates/features.ftl
@@ -0,0 +1,106 @@
+# 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/.
+
+# The title of the experiment should be kept in English as it may be referenced
+# by various online articles and is technical in nature.
+experimental-features-css-masonry2 =
+ .label = CSS: Masonry Layout
+experimental-features-css-masonry-description = Ενεργοποιεί την υποστήριξη για την πειραματική λειτουργία CSS Masonry Layout. Δείτε την <a data-l10n-name="explainer">επεξήγηση</a> για μια περιγραφή υψηλού επιπέδου της λειτουργίας. Για να παρέχετε σχόλια, σχολιάστε σε <a data-l10n-name="w3c-issue"> αυτό το ζήτημα GitHub</a> ή <a data-l10n-name="bug"> αυτό το σφάλμα </a>.
+# The title of the experiment should be kept in English as it may be referenced
+# by various online articles and is technical in nature.
+experimental-features-web-gpu2 =
+ .label = Web API: WebGPU
+experimental-features-web-gpu-description2 = Αυτό το νέο API παρέχει υποστήριξη χαμηλού επιπέδου για την εκτέλεση υπολογισμού και απόδοσης γραφικών, χρησιμοποιώντας τη <a data-l10n-name="wikipedia">κάρτα γραφικών (GPU)</a> της συσκευής ή του υπολογιστή του χρήστη. Η <a data-l10n-name="spec">προδιαγραφή</a> είναι υπό επεξεργασία. Δείτε το <a data-l10n-name="bugzilla">σφάλμα 1602129</a> για περισσότερες λεπτομέρειες.
+# The title of the experiment should be kept in English as it may be referenced
+# by various online articles and is technical in nature.
+experimental-features-media-avif =
+ .label = Πολυμέσα: AVIF
+experimental-features-media-avif-description = Με αυτή τη λειτουργία, το { -brand-short-name } υποστηρίζει τη μορφή εικόνας AV1 (AVIF). Πρόκειται για μια μορφή αρχείου ακίνητης εικόνας που αξιοποιεί τις δυνατότητες των αλγορίθμων συμπίεσης βίντεο AV1 για τη μείωση του μεγέθους της. Δείτε το <a data-l10n-name="bugzilla">σφάλμα 1443863 </a> για περισσότερες λεπτομέρειες.
+# The title of the experiment should be kept in English as it may be referenced
+# by various online articles and is technical in nature.
+experimental-features-web-api-inputmode =
+ .label = Web API: inputmode
+# "inputmode" and "contenteditable" are technical terms and shouldn't be translated.
+experimental-features-web-api-inputmode-description = Η δική μας υλοποίηση της καθολικής ιδιότητας <a data-l10n-name="mdn-inputmode">inputmode</a> έχει ενημερωθεί βάσει της <a data-l10n-name="whatwg">προδιαγραφής WHATWG</a>, αλλά υπάρχουν κι άλλες αλλαγές που πρέπει να κάνουμε, όπως η διάθεση σε περιεχόμενο contenteditable. Δείτε το <a data-l10n-name="bugzilla">σφάλμα 1205133</a> για περισσότερες λεπτομέρειες.
+# The title of the experiment should be kept in English as it may be referenced
+# by various online articles and is technical in nature.
+experimental-features-web-api-link-preload =
+ .label = Web API: <link rel="preload">
+# Do not translate "rel", "preload" or "link" here, as they are all HTML spec
+# values that do not get translated.
+experimental-features-web-api-link-preload-description = Η ιδιότητα <a data-l10n-name="rel">rel</a> με την τιμή <code>"preload"</code> σε στοιχείο <a data-l10n-name="link">&lt;link&gt;</a> έχει ως σκοπό να συνεισφέρει στη βελτίωση επιδόσεων, κάνοντας λήψη των πόρων νωρίτερα στον κύκλο ζωής της σελίδας, διασφαλίζοντας ότι είναι διαθέσιμοι νωρίτερα και έτσι, είναι λιγότερο πιθανό να αποκλειστεί η απεικόνιση της σελίδας. Διαβάστε το <a data-l10n-name="readmore">“Προφόρτωση περιεχομένου με <code>rel="preload"</code>”</a> ή δείτε το <a data-l10n-name="bugzilla">σφάλμα 1583604</a> για περισσότερες λεπτομέρειες.
+# The title of the experiment should be kept in English as it may be referenced
+# by various online articles and is technical in nature.
+experimental-features-css-focus-visible =
+ .label = CSS: Pseudo-class: :focus-visible
+experimental-features-css-focus-visible-description = Επιτρέπει στα στυλ εστίασης να εφαρμοστούν σε στοιχεία, όπως κουμπιά και στοιχεία ελέγχου φορμών, μόνο όταν έχει γίνει εστίαση με πληκτρολόγιο (π.χ. κατά την εναλλαγή μεταξύ στοιχείων με το πλήκτρο Tab) και όχι όταν γίνεται εστίαση με ποντίκι ή άλλη συσκευή κατάδειξης. Δείτε το <a data-l10n-name="bugzilla">σφάλμα 1617600</a> για περισσότερες λεπτομέρειες.
+# The title of the experiment should be kept in English as it may be referenced
+# by various online articles and is technical in nature.
+experimental-features-web-api-beforeinput =
+ .label = Web API: beforeinput Event
+# The terms "beforeinput", "input", "textarea", and "contenteditable" are technical terms
+# and shouldn't be translated.
+experimental-features-web-api-beforeinput-description = Το καθολικό συμβάν <a data-l10n-name="mdn-beforeinput">beforeinput</a> ενεργοποιείται σε στοιχεία <a data-l10n-name="mdn-input">&lt;input&gt;</a> και <a data-l10n-name="mdn-textarea">&lt;textarea&gt;</a>, ή όποιο στοιχείο έχει ενεργή ιδιότητα <a data-l10n-name="mdn-contenteditable">contenteditable</a>, αμέσως πριν την αλλαγή της τιμής του στοιχείου. Το συμβάν επιτρέπει σε εφαρμογές web να παρακάμπτουν την προεπιλεγμένη συμπεριφορά του προγράμματος περιήγησης για αλληλεπίδραση με το χρήστη, π.χ., οι εφαρμογές web μπορούν να ακυρώσουν την είσοδο χρήστη μόνο για συγκεκριμένους χαρακτήρες ή να τροποποιήσουν την επικόλληση του κειμένου μόνο με εγκεκριμένη μορφοποίηση.
+# The title of the experiment should be kept in English as it may be referenced
+# by various online articles and is technical in nature.
+experimental-features-css-constructable-stylesheets =
+ .label = CSS: Constructable Stylesheets
+experimental-features-css-constructable-stylesheets-description = Η προσθήκη κατασκευαστή στο περιβάλλον <a data-l10n-name="mdn-cssstylesheet">CSSStyleSheet</a> καθώς και μια ποικιλία σχετικών αλλαγών καθιστούν δυνατή την απευθείας δημιουργία νέων φύλλων στυλ χωρίς να πρέπει να προσθέσετε το φύλλο στο HTML. Έτσι, γίνεται πολύ πιο εύκολη η δημιουργία επαναχρησιμοποιήσιμων φύλλων στυλ για το <a data-l10n-name="mdn-shadowdom">Shadow DOM</a>. Δείτε το <a data-l10n-name="bugzilla">σφάλμα 1520690</a> για περισσότερες λεπτομέρειες.
+experimental-features-devtools-color-scheme-simulation =
+ .label = Εργαλεία προγραμματιστή: Προσομοίωση συνόλου χρωμάτων
+experimental-features-devtools-color-scheme-simulation-description = Προσθέτει μια επιλογή για προσομοίωση διαφορετικών μοτίβων χρωμάτων που σας επιτρέπουν να δοκιμάσετε τα media queries <a data-l10n-name="mdn-preferscolorscheme">@prefers-color-scheme</a>. Με αυτό το media query, το φύλλο στυλ σας μπορεί να αποκριθεί στην προτίμηση του χρήστη για φωτεινό ή σκούρο περιβάλλον χρήστη. Αυτή η λειτουργία σας επιτρέπει να δοκιμάσετε τον κώδικά σας χωρίς να πρέπει να αλλάξετε τις ρυθμίσεις στο πρόγραμμα περιήγησης (ή το λειτουργικό σύστημα, αν χρησιμοποιείται καθολικά η ρύθμιση των μοτίβων χρωμάτων του). Δείτε το <a data-l10n-name="bugzilla1">σφάλμα 1550804</a> και το <a data-l10n-name="bugzilla2">σφάλμα 1137699</a> για περισσότερες λεπτομέρειες.
+experimental-features-devtools-execution-context-selector =
+ .label = Εργαλεία προγραμματιστή: Επιλογή περιβάλλοντος εκτέλεσης
+experimental-features-devtools-execution-context-selector-description = Αυτή η λειτουργία εμφανίζει ένα κουμπί στη γραμμή εντολών της κονσόλας που σας επιτρέπει να αλλάξετε το πλαίσιο στο οποίο θα εκτελεστεί η έκφραση που εισάγετε. Δείτε το <a data-l10n-name="bugzilla1">σφάλμα 1605154</a> και το <a data-l10n-name="bugzilla2">σφάλμα 1605153</a> για περισσότερες λεπτομέρειες.
+experimental-features-devtools-compatibility-panel =
+ .label = Εργαλεία προγραμματιστή: Πίνακας συμβατότητας
+experimental-features-devtools-compatibility-panel-description = Ένας πλευρικός πίνακας για την Επιθεώρηση σελίδας που εμφανίζει πληροφορίες που περιγράφουν την κατάσταση συμβατότητας μεταξύ προγραμμάτων περιήγησης της εφαρμογής σας. Δείτε το <a data-l10n-name="bugzilla">σφάλμα 1584464 </a> για περισσότερες λεπτομέρειες.
+# Do not translate 'SameSite', 'Lax' and 'None'.
+experimental-features-cookie-samesite-lax-by-default2 =
+ .label = Cookies: SameSite=Lax από προεπιλογή
+experimental-features-cookie-samesite-lax-by-default2-description = Αντιμετώπιση των cookies ως “SameSite=Lax” από προεπιλογή αν δεν καθορίζεται ιδιότητα “SameSite”. Οι προγραμματιστές πρέπει να επιλέξουν στο τρέχον status quo της απεριόριστης χρήσης, δηλώνοντας ρητά ότι “SameSite=None”.
+# Do not translate 'SameSite', 'Lax' and 'None'.
+experimental-features-cookie-samesite-none-requires-secure2 =
+ .label = Cookies: Το SameSite=None απαιτεί την ιδιότητα "secure"
+experimental-features-cookie-samesite-none-requires-secure2-description = Τα cookies με την ιδιότητα “SameSite=None” απαιτούν την ιδιότητα "secure". Αυτή η λειτουργία απαιτεί το “Cookies: SameSite=Lax από προεπιλογή”.
+# about:home should be kept in English, as it refers to the the URI for
+# the internal default home page.
+experimental-features-abouthome-startup-cache =
+ .label = Προσωρινή μνήμη εκκίνησης του about:home
+experimental-features-abouthome-startup-cache-description = Μια προσωρινή μνήμη για το έγγραφο about:home που φορτώνεται από προεπιλογή κατά την εκκίνηση. Ο σκοπός της προσωρινής μνήμης είναι η βελτίωση της απόδοσης εκκίνησης.
+experimental-features-print-preview-tab-modal =
+ .label = Ανασχεδιασμός προεπισκόπησης εκτύπωσης
+experimental-features-print-preview-tab-modal-description = Παρουσιάζει την ανασχεδιασμένη προεπισκόπηση εκτύπωσης και καθιστά διαθέσιμη την προεπισκόπηση εκτύπωσης στο macOS. Αυτό ίσως προκαλέσει προβλήματα και δεν περιέχει όλες τις ρυθμίσεις εκτύπωσης. Για πρόσβαση σε όλες τις ρυθμίσεις εκτύπωσης, επιλέξτε “Εκτύπωση μέσω διαλόγου συστήματος…” από το παράθυρο εκτύπωσης.
+# The title of the experiment should be kept in English as it may be referenced
+# by various online articles and is technical in nature.
+experimental-features-cookie-samesite-schemeful =
+ .label = Cookies: Schemeful SameSite
+experimental-features-cookie-samesite-schemeful-description = Διαχείριση των cookies ίδιου τομέα αλλά διαφορετικού μοτίβου (π.χ. http://example.com και https://example.com) ως cookies πολλαπλών ιστοσελίδων αντί cookies ίδιας ιστοσελίδας. Βελτιώνει την ασφάλεια, αλλά ενδέχεται να προκαλέσει προβλήματα.
+# "Service Worker" is an API name and is usually not translated.
+experimental-features-devtools-serviceworker-debugger-support =
+ .label = Εργαλεία προγραμματιστή: Εντοπισμός σφαλμάτων service worker
+# "Service Worker" is an API name and is usually not translated.
+experimental-features-devtools-serviceworker-debugger-support-description = Ενεργοποιεί την πειραματική υποστήριξη για Service Workers στον πίνακα εντοπισμού σφαλμάτων. Αυτή η δυνατότητα ενδέχεται να επιβραδύνει τα εργαλεία προγραμματιστή και να αυξήσει την κατανάλωση μνήμης.
+# WebRTC global mute toggle controls
+experimental-features-webrtc-global-mute-toggles =
+ .label = Καθολικοί διακόπτες σίγασης WebRTC
+experimental-features-webrtc-global-mute-toggles-description = Προσθήκη στοιχείων ελέγχου στον καθολικό δείκτη κοινής χρήσης WebRTC που επιτρέπει στους χρήστες να κάνουν καθολική σίγαση του μικροφώνου και της κάμεράς τους.
+# JS JIT Warp project
+experimental-features-js-warp =
+ .label = JavaScript JIT: Warp
+experimental-features-js-warp-description = Ενεργοποίηση του Warp - ένα έργο για τη βελτίωση των επιδόσεων JavaScript και της χρήσης μνήμης.
+# Fission is the name of the feature and should not be translated.
+experimental-features-fission =
+ .label = Fission (Απομόνωση ιστοσελίδας)
+experimental-features-fission-description = Το Fission (απομόνωση ιστοσελίδας) είναι μια πειραματική λειτουργία στο { -brand-short-name }, ώστε να παρέχει ένα επιπλέον επίπεδο προστασίας από σφάλματα ασφαλείας. Απομονώνοντας την κάθε σελίδα σε ξεχωριστή διεργασία, το Fission καθιστά δυσκολότερη την πρόσβαση κακόβουλων ιστοσελίδων σε πληροφορίες άλλων ιστότοπων που επισκέπτεστε. Πρόκειται για μια μεγάλη αρχιτεκτονική αλλαγή στο { -brand-short-name } και θα το εκτιμούσαμε ιδιαίτερα αν δοκιμάζατε τη λειτουργία και αναφέρατε τυχόν ζητήματα. Για περισσότερες λεπτομέρειες, δείτε <a data-l10n-name="wiki">το wiki</a>.
+# Support for having multiple Picture-in-Picture windows open simultaneously
+experimental-features-multi-pip =
+ .label = Υποστήριξη πολλαπλών παραθύρων εικόνας-εντός-εικόνας
+experimental-features-multi-pip-description = Πειραματική υποστήριξη για άνοιγμα πολλαπλών παραθύρων εικόνας-εντός-εικόνας ταυτόχρονα.
+experimental-features-http3 =
+ .label = Πρωτόκολλο HTTP/3
+experimental-features-http3-description = Πειραματική υποστήριξη για το πρωτόκολλο HTTP/3.
+# Search during IME
+experimental-features-ime-search =
+ .label = Γραμμή διευθύνσεων: εμφάνιση αποτελεσμάτων κατά τη σύνταξη IME
diff --git a/l10n-el/toolkit/toolkit/global/createProfileWizard.ftl b/l10n-el/toolkit/toolkit/global/createProfileWizard.ftl
new file mode 100644
index 0000000000..62b33f4662
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/global/createProfileWizard.ftl
@@ -0,0 +1,53 @@
+# 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/.
+
+create-profile-window =
+ .title = Οδηγός δημιουργίας προφίλ
+ .style = width: 52em; height: 35em;
+
+## First wizard page
+
+create-profile-first-page-header =
+ { PLATFORM() ->
+ [macos] Εισαγωγή
+ *[other] Καλώς ήλθατε στο { create-profile-window.title }
+ }
+
+profile-creation-explanation-1 = Το { -brand-short-name } αποθηκεύει πληροφορίες σχετικά με τις ρυθμίσεις και τις προτιμήσεις σας στο προσωπικό σας προφίλ.
+
+profile-creation-explanation-2 = Αν μοιράζεστε αυτό το αντίγραφο του { -brand-short-name } με άλλους χρήστες, μπορείτε να χρησιμοποιήσετε τα προφίλ για να έχει ο κάθε χρήστης ξεχωριστές πληροφορίες. Για να το κάνετε αυτό, ο κάθε χρήστης θα πρέπει να δημιουργήσει το δικό του προφίλ.
+
+profile-creation-explanation-3 = Αν είστε ο μόνος χρήστης αυτού του αντιγράφου του { -brand-short-name }, θα πρέπει να δημιουργήσετε τουλάχιστον ένα προφίλ. Αν θέλετε, μπορείτε να δημιουργήσετε πολλαπλά προφίλ για τον εαυτό σας, ώστε να αποθηκεύετε διαφορετικά σύνολα ρυθμίσεων και προτιμήσεων. Για παράδειγμα, ίσως να θέλετε να έχετε ξεχωριστά προφίλ για προσωπική και επαγγελματική χρήση.
+
+profile-creation-explanation-4 =
+ { PLATFORM() ->
+ [macos] Για να ξεκινήσετε τη δημιουργία του προφίλ σας, κάντε κλικ στο Συνέχεια.
+ *[other] Για να ξεκινήσετε τη δημιουργία του προφίλ σας, κάντε κλικ στο Επόμενο.
+ }
+
+## Second wizard page
+
+create-profile-last-page-header =
+ { PLATFORM() ->
+ [macos] Επίλογος
+ *[other] Ολοκλήρωση του { create-profile-window.title }
+ }
+
+profile-creation-intro = Αν δημιουργήσετε πολλά προφίλ, μπορείτε να τα ξεχωρίζετε από το όνομά τους. Μπορείτε να επιλέξτε το προεπιλεγμένο όνομα ή να δημιουργήσετε το δικό σας.
+
+profile-prompt = Εισάγετε το όνομα του νέου προφίλ:
+ .accesskey = Ε
+
+profile-default-name =
+ .value = Προεπιλεγμένος χρήστης
+
+profile-directory-explanation = Οι ρυθμίσεις, οι προτιμήσεις, οι σελιδοδείκτες και άλλα σχετικά δεδομένα χρήστη θα αποθηκευτούν εδώ:
+
+create-profile-choose-folder =
+ .label = Επιλογή φακέλου…
+ .accesskey = λ
+
+create-profile-use-default =
+ .label = Χρήση προεπιλεγμένου φακέλου
+ .accesskey = ρ
diff --git a/l10n-el/toolkit/toolkit/global/handlerDialog.ftl b/l10n-el/toolkit/toolkit/global/handlerDialog.ftl
new file mode 100644
index 0000000000..3c5ef4ffed
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/global/handlerDialog.ftl
@@ -0,0 +1,69 @@
+# 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/.
+
+# Please keep the emphasis around the hostname and scheme (ie the
+# `<strong>` HTML tags). Please also keep the hostname as close to the start
+# of the sentence as your language's grammar allows.
+#
+# Variables:
+# $host - the hostname that is initiating the request
+# $scheme - the type of link that's being opened.
+handler-dialog-host = Το <strong>{ $host }</strong> θέλει να ανοίξει ένα σύνδεσμο <strong>{ $scheme }</strong>.
+
+## Permission Dialog
+## Variables:
+## $host - the hostname that is initiating the request
+## $scheme - the type of link that's being opened.
+## $appName - Name of the application that will be opened.
+
+permission-dialog-description = Να επιτραπεί σε αυτή την ιστοσελίδα το άνοιγμα του συνδέσμου { $scheme };
+permission-dialog-description-file = Να επιτραπεί σε αυτό το αρχείο το άνοιγμα του συνδέσμου { $scheme };
+permission-dialog-description-host = Να επιτραπεί στο { $host } το άνοιγμα του συνδέσμου { $scheme };
+permission-dialog-description-app = Να επιτραπεί σε αυτή την ιστοσελίδα το άνοιγμα του συνδέσμου { $scheme } με το { $appName };
+permission-dialog-description-host-app = Να επιτραπεί στο { $host } το άνοιγμα του συνδέσμου { $scheme } με το { $appName };
+permission-dialog-description-file-app = Να επιτραπεί σε αυτό το αρχείο το άνοιγμα του συνδέσμου { $scheme } με το { $appName };
+
+## Please keep the emphasis around the hostname and scheme (ie the
+## `<strong>` HTML tags). Please also keep the hostname as close to the start
+## of the sentence as your language's grammar allows.
+
+permission-dialog-remember = Να επιτρέπεται πάντα στο <strong>{ $host }</strong> το άνοιγμα συνδέσμων <strong>{ $scheme }</strong>
+permission-dialog-remember-file = Να χρησιμοποιείται πάντα αυτό το αρχείο για άνοιγμα συνδέσμων <strong>{ $scheme }</strong>
+
+##
+
+permission-dialog-btn-open-link =
+ .label = Άνοιγμα συνδέσμου
+ .accessKey = Ά
+permission-dialog-btn-choose-app =
+ .label = Επιλογή εφαρμογής
+ .accessKey = ε
+permission-dialog-unset-description = Θα πρέπει να επιλέξετε μια εφαρμογή.
+permission-dialog-set-change-app-link = Επιλέξτε μια διαφορετική εφαρμογή.
+
+## Chooser dialog
+## Variables:
+## $scheme - the type of link that's being opened.
+
+chooser-window =
+ .title = Επιλογή εφαρμογής
+ .style = min-width: 26em; min-height: 26em;
+chooser-dialog =
+ .buttonlabelaccept = Άνοιγμα συνδέσμου
+ .buttonaccesskeyaccept = Ά
+chooser-dialog-description = Επιλέξτε μια εφαρμογή για άνοιγμα του συνδέσμου { $scheme }.
+# Please keep the emphasis around the scheme (ie the `<strong>` HTML tags).
+chooser-dialog-remember = Να χρησιμοποιείται πάντα αυτή η εφαρμογή για άνοιγμα συνδέσμων <strong>{ $scheme }</strong>
+chooser-dialog-remember-extra =
+ { PLATFORM() ->
+ [windows] Αυτό μπορεί να αλλάξει στις επιλογές του { -brand-short-name }.
+ *[other] Αυτό μπορεί να αλλάξει στις προτιμήσεις του { -brand-short-name }.
+ }
+choose-other-app-description = Επιλέξτε άλλη εφαρμογή
+choose-app-btn =
+ .label = Επιλογή…
+ .accessKey = Ε
+choose-other-app-window-title = Άλλη εφαρμογή…
+# Displayed under the name of a protocol handler in the Launch Application dialog.
+choose-dialog-privatebrowsing-disabled = Ανενεργό σε ιδιωτικά παράθυρα
diff --git a/l10n-el/toolkit/toolkit/global/processTypes.ftl b/l10n-el/toolkit/toolkit/global/processTypes.ftl
new file mode 100644
index 0000000000..a6fe9fa9a5
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/global/processTypes.ftl
@@ -0,0 +1,36 @@
+# 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/.
+
+process-type-web = Διαδικτυακό περιεχόμενο
+
+# process used to run privileged about pages,
+# such as about:home
+process-type-privilegedabout = Προνομιακή σελίδα About
+
+# process used to run privileged mozilla pages,
+# such as accounts.firefox.com
+process-type-privilegedmozilla = Προνομιακό περιεχόμενο Mozilla
+
+process-type-extension = Επέκταση
+
+# process used to open file:// URLs
+process-type-file = Τοπικό αρχείο
+
+# process used to isolate webpages that requested special
+# permission to allocate large amounts of memory
+process-type-weblargeallocation = Μεγάλη κατανομή
+
+# process used to isolate a webpage from other web pages
+# to improve security
+process-type-webisolated = Απομονωμένο διαδικτυακό περιεχόμενο
+
+# process used to communicate with the GPU for
+# graphics acceleration
+process-type-gpu = GPU
+
+# process used to perform network operations
+process-type-socket = Υποδοχή
+
+# process preallocated; may change to other types
+process-type-prealloc = Προκατανεμημένο
diff --git a/l10n-el/toolkit/toolkit/global/profileDowngrade.ftl b/l10n-el/toolkit/toolkit/global/profileDowngrade.ftl
new file mode 100644
index 0000000000..39eb04187c
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/global/profileDowngrade.ftl
@@ -0,0 +1,20 @@
+# 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/.
+
+profiledowngrade-window =
+ .title = Έχετε εκκινήσει μια παλαιότερη έκδοση του { -brand-product-name }
+ .style = width: 490px;
+
+profiledowngrade-window-create =
+ .label = Δημιουργία νέου προφίλ
+
+profiledowngrade-sync = Η χρήση μιας παλαιότερης έκδοσης του { -brand-product-name } μπορεί να καταστρέψει τους σελιδοδείκτες και το ιστορικό περιήγησης που έχουν ήδη αποθηκευτεί σε ένα υπάρχον προφίλ του { -brand-product-name }. Για να προστατέψετε τις πληροφορίες σας, δημιουργήστε ένα νέο προφίλ για αυτή την εγκατάσταση του { -brand-short-name }. Μπορείτε πάντα να συνδεθείτε με ένα { -fxaccount-brand-name } για να συγχρονίσετε τους σελιδοδείκτες και το ιστορικό περιήγησης μεταξύ των προφίλ.
+profiledowngrade-nosync = Η χρήση μιας παλαιότερης έκδοσης του { -brand-product-name } μπορεί να καταστρέψει τους σελιδοδείκτες και το ιστορικό περιήγησης που έχουν ήδη αποθηκευτεί σε ένα υπάρχον προφίλ του { -brand-product-name }. Για να προστατέψετε τις πληροφορίες σας, δημιουργήστε ένα νέο προφίλ για αυτή την εγκατάσταση του { -brand-short-name }.
+
+profiledowngrade-quit =
+ .label =
+ { PLATFORM() ->
+ [windows] Έξοδος
+ *[other] Έξοδος
+ }
diff --git a/l10n-el/toolkit/toolkit/global/profileSelection.ftl b/l10n-el/toolkit/toolkit/global/profileSelection.ftl
new file mode 100644
index 0000000000..7c26dd3d5a
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/global/profileSelection.ftl
@@ -0,0 +1,36 @@
+# 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/.
+
+profile-selection-window =
+ .title = { -brand-short-name } - Επιλογή προφίλ χρήστη
+
+profile-selection-button-accept =
+ .label = Εκκίνηση του { -brand-short-name }
+
+profile-selection-button-cancel =
+ .label = Έξοδος
+
+profile-selection-new-button =
+ .label = Δημιουργία προφίλ…
+ .accesskey = Δ
+
+profile-selection-rename-button =
+ .label = Μετονομασία προφίλ…
+ .accesskey = Μ
+
+profile-selection-delete-button =
+ .label = Διαγραφή προφίλ…
+ .accesskey = Δ
+
+## Messages used in the profile manager
+
+profile-manager-description = Το { -brand-short-name } αποθηκεύει πληροφορίες για τις ρυθμίσεις, τις προτιμήσεις και άλλα στοιχεία χρήστη στο προφίλ χρήστη σας.
+
+profile-manager-work-offline =
+ .label = Εργασία εκτός σύνδεσης
+ .accesskey = σ
+
+profile-manager-use-selected =
+ .label = Χρήση επιλεγμένου προφίλ χωρίς ερώτηση στην εκκίνηση
+ .accesskey = ρ
diff --git a/l10n-el/toolkit/toolkit/global/resetProfile.ftl b/l10n-el/toolkit/toolkit/global/resetProfile.ftl
new file mode 100644
index 0000000000..910ae0638b
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/global/resetProfile.ftl
@@ -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/.
+
+refresh-profile-dialog =
+ .title = Ανανέωση του { -brand-short-name }
+refresh-profile-dialog-button =
+ .label = Ανανέωση του { -brand-short-name }
+refresh-profile-description = Ξεκινήστε από την αρχή για να διορθώσετε προβλήματα και να επαναφέρετε την επίδοση.
+refresh-profile-description-details = Αυτό θα:
+refresh-profile-remove = Αφαιρέσει τα πρόσθετα και τις προσαρμογές που έχετε κάνει
+refresh-profile-restore = Επαναφέρει τις ρυθμίσεις του περιηγητή σας στις προκαθορισμένες
+refresh-profile = Διόρθωση του { -brand-short-name }
+refresh-profile-button = Ανανέωση του { -brand-short-name }…
diff --git a/l10n-el/toolkit/toolkit/global/textActions.ftl b/l10n-el/toolkit/toolkit/global/textActions.ftl
new file mode 100644
index 0000000000..7a19eb5780
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/global/textActions.ftl
@@ -0,0 +1,37 @@
+# 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/.
+
+text-action-undo =
+ .label = Αναίρεση
+ .accesskey = Α
+text-action-undo-shortcut =
+ .key = Z
+text-action-redo =
+ .label = Επανάληψη
+ .accesskey = Ε
+text-action-redo-shortcut =
+ .key = Y
+text-action-cut =
+ .label = Αποκοπή
+ .accesskey = π
+text-action-cut-shortcut =
+ .key = X
+text-action-copy =
+ .label = Αντιγραφή
+ .accesskey = Α
+text-action-copy-shortcut =
+ .key = C
+text-action-paste =
+ .label = Επικόλληση
+ .accesskey = π
+text-action-paste-shortcut =
+ .key = V
+text-action-delete =
+ .label = Διαγραφή
+ .accesskey = Δ
+text-action-select-all =
+ .label = Επιλογή όλων
+ .accesskey = λ
+text-action-select-all-shortcut =
+ .key = A
diff --git a/l10n-el/toolkit/toolkit/global/unknownContentType.ftl b/l10n-el/toolkit/toolkit/global/unknownContentType.ftl
new file mode 100644
index 0000000000..178fabf5e0
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/global/unknownContentType.ftl
@@ -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/.
+
+unknowncontenttype-handleinternally =
+ .label = Άνοιγμα με { -brand-short-name }
+ .accesskey = ι
+unknowncontenttype-settingschange =
+ .value =
+ { PLATFORM() ->
+ [windows] Μπορείτε να αλλάξετε τις ρυθμίσεις στις επιλογές του { -brand-short-name }.
+ *[other] Μπορείτε να αλλάξετε τις ρυθμίσεις στις προτιμήσεις του { -brand-short-name }.
+ }
diff --git a/l10n-el/toolkit/toolkit/global/videocontrols.ftl b/l10n-el/toolkit/toolkit/global/videocontrols.ftl
new file mode 100644
index 0000000000..ece8fab0c4
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/global/videocontrols.ftl
@@ -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/.
+
+videocontrols-scrubber =
+ .aria-label = Θέση
+# This label is used by screenreaders and other assistive technology to indicate
+# to users how much of the video has been loaded from the network. It will be
+# followed by the percentage of the video that has loaded (e.g. "Loading: 13%").
+videocontrols-buffer-bar-label = Φόρτωση:
+videocontrols-volume-control =
+ .aria-label = Ένταση
+videocontrols-closed-caption-button =
+ .aria-label = Υπότιτλοι
diff --git a/l10n-el/toolkit/toolkit/global/wizard.ftl b/l10n-el/toolkit/toolkit/global/wizard.ftl
new file mode 100644
index 0000000000..526f7ec994
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/global/wizard.ftl
@@ -0,0 +1,37 @@
+# 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/.
+
+wizard-macos-button-back =
+ .label = Επιστροφή
+ .accesskey = Π
+wizard-linux-button-back =
+ .label = Πίσω
+ .accesskey = Π
+wizard-win-button-back =
+ .label = < Πίσω
+ .accesskey = Π
+
+wizard-macos-button-next =
+ .label = Συνέχεια
+ .accesskey = Σ
+wizard-linux-button-next =
+ .label = Επόμενο
+ .accesskey = Ε
+wizard-win-button-next =
+ .label = Επόμενο >
+ .accesskey = Ε
+
+wizard-macos-button-finish =
+ .label = Τέλος
+wizard-linux-button-finish =
+ .label = Τέλος
+wizard-win-button-finish =
+ .label = Τέλος
+
+wizard-macos-button-cancel =
+ .label = Ακύρωση
+wizard-linux-button-cancel =
+ .label = Ακύρωση
+wizard-win-button-cancel =
+ .label = Ακύρωση
diff --git a/l10n-el/toolkit/toolkit/intl/languageNames.ftl b/l10n-el/toolkit/toolkit/intl/languageNames.ftl
new file mode 100644
index 0000000000..40fbdb55ff
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/intl/languageNames.ftl
@@ -0,0 +1,213 @@
+# 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/.
+
+language-name-aa = Αφαρική
+language-name-ab = Αμπχαζική
+language-name-ach = Ακολί
+language-name-ae = Αβεστική
+language-name-af = Αφρικάανς
+language-name-ak = Άκαν
+language-name-am = Αμχαρική
+language-name-an = Αραγκονική
+language-name-ar = Αραβική
+language-name-as = Ασσαμεζική
+language-name-ast = Αστουριανή
+language-name-av = Αβαρική
+language-name-ay = Αϊμαρα
+language-name-az = Αζεριανή
+language-name-ba = Μπασκίρ
+language-name-be = Λευκορωσική
+language-name-bg = Βουλγαρική
+language-name-bh = Μπιχάρι
+language-name-bi = Μπισλάμα
+language-name-bm = Μπαμπάρα
+language-name-bn = Βεγγαλική
+language-name-bo = Θιβετιανή
+language-name-br = Βρετονική
+language-name-bs = Βοσνιακή
+language-name-ca = Καταλανική
+language-name-cak = Κακτσικέλ
+language-name-ce = Τσετσενική
+language-name-ch = Τσαμόρο
+language-name-co = Κορσική
+language-name-cr = Κρι
+language-name-crh = Ταταρικά Κριμαίας
+language-name-cs = Τσεχική
+language-name-csb = Κασουβική
+language-name-cu = Σλαβικής Εκκλησίας
+language-name-cv = Τσουβασική
+language-name-cy = Ουαλική
+language-name-da = Δανική
+language-name-de = Γερμανική
+language-name-dsb = Κάτω Σορβική
+language-name-dv = Ντιβέχι
+language-name-dz = Τζόνκα
+language-name-ee = Ίουε
+language-name-el = Ελληνική
+language-name-en = Αγγλική
+language-name-eo = Εσπεράντο
+language-name-es = Ισπανική
+language-name-et = Εσθονική
+language-name-eu = Βασκική
+language-name-fa = Περσική
+language-name-ff = Φουλά
+language-name-fi = Φιλανδική
+language-name-fj = Φίτζι
+language-name-fo = Φεροϊκή
+language-name-fr = Γαλλική
+language-name-fur = Φρουλανική
+language-name-fy = Φριζική
+language-name-ga = Ιρλανδική
+language-name-gd = Σκωτική Γαελική
+language-name-gl = Γαλικιανή
+language-name-gn = Γκουαρανί
+language-name-gu = Γκουτζαράτι
+language-name-gv = Μανξ
+language-name-ha = Χάουσα
+language-name-haw = Χαβαϊκή
+language-name-he = Εβραϊκή
+language-name-hi = Χίντι
+language-name-hil = Χιλιγκάινον
+language-name-ho = Χίρι Μότου
+language-name-hr = Κροατική
+language-name-hsb = Άνω Σορβική
+language-name-ht = Αϊτινή
+language-name-hu = Ουγγρική
+language-name-hy = Αρμενική
+language-name-hz = Χερέρο
+language-name-ia = Ιντερλίνγκουα
+language-name-id = Ινδονησιακή
+language-name-ie = Οξιντένταλ
+language-name-ig = Ίμπου
+language-name-ii = Σιτσουάν Γι
+language-name-ik = Ινουπιάκ
+language-name-io = Ίντο
+language-name-is = Ισλανδική
+language-name-it = Ιταλική
+language-name-iu = Ινουκτιτούτ
+language-name-ja = Ιαπωνική
+language-name-jv = Ιαβαϊκή
+language-name-ka = Γεωργιανή
+language-name-kab = Καβυλικά
+language-name-kg = Κονγκό
+language-name-ki = Κικούγιου
+language-name-kj = Κουανγιάμα
+language-name-kk = Καζακική
+language-name-kl = Γροιλανδική
+language-name-km = Χμερ
+language-name-kn = Κανάντα
+language-name-ko = Κορεατική
+language-name-kok = Κονκάνι
+language-name-kr = Κανούρι
+language-name-ks = Κασμίρι
+language-name-ku = Κουρδική
+language-name-kv = Κόμι
+language-name-kw = Κορνουαλική
+language-name-ky = Κιργιζική
+language-name-la = Λατινική
+language-name-lb = Λουξεμβουργιανή
+language-name-lg = Γκάντα
+language-name-li = Λιμβουργιανή
+language-name-lij = Λιγουριανά
+language-name-ln = Λινγκάλα
+language-name-lo = Λαοτινή
+language-name-lt = Λιθουανική
+language-name-ltg = Λατγαλικά
+language-name-lu = Λούμπα-Κατάνγκα
+language-name-lv = Λετονική
+language-name-mai = Μαϊτίλι
+language-name-meh = Μιξτέκ νοτιοδυτικού Τλαξιάκο
+language-name-mg = Μαλαγασική
+language-name-mh = Μαρσαλεζική
+language-name-mi = Μαορί
+language-name-mix = Μιξτέκ (Μιξτεπέκ)
+language-name-mk = Σλαβομακεδονική
+language-name-ml = Μαλαγιαλαμική
+language-name-mn = Μογγολική
+language-name-mr = Μαράτι
+language-name-ms = Malaysian
+language-name-mt = Μαλτεζική
+language-name-my = Βιρμανική
+language-name-na = Ναουρού
+language-name-nb = Νορβηγικά Βοκμάλ
+language-name-nd = Ντεμπέλε, Βόρεια
+language-name-ne = Νεπαλική
+language-name-ng = Ντόνγκα
+language-name-nl = Ολλανδική
+language-name-nn = Νορβηγικά Nynorsk
+language-name-no = Νορβηγική
+language-name-nr = Ντεμπέλε, Νότια
+language-name-nso = Σόθο, Βόρεια
+language-name-nv = Ναβάχο
+language-name-ny = Τσιτσέουα
+language-name-oc = Οξιτανική
+language-name-oj = Οτζίμπουε
+language-name-om = Ορόμο
+language-name-or = Οντία
+language-name-os = Οσετιανή
+language-name-pa = Πουντζάμπι
+language-name-pi = Πάλι
+language-name-pl = Πολωνική
+language-name-ps = Παστού
+language-name-pt = Πορτογαλική
+language-name-qu = Κέτσουα
+language-name-rm = Ρέτο-Ρομανική
+language-name-rn = Κιρούντι
+language-name-ro = Ρουμανική
+language-name-ru = Ρωσική
+language-name-rw = Κινιαρουάντα
+language-name-sa = Σανσκριτική
+language-name-sc = Σαρδηνιανή
+language-name-sd = Σινδική
+language-name-se = Βόρεια Σαάμι
+language-name-sg = Σάνγκο
+language-name-si = Σιναλεζική
+language-name-sk = Σλοβάκικη
+language-name-sl = Σλοβενική
+language-name-sm = Σαμόα
+language-name-sn = Σόνα
+language-name-so = Σομαλική
+language-name-son = Σονγκάι
+language-name-sq = Αλβανική
+language-name-sr = Σερβική
+language-name-ss = Σουάτι
+language-name-st = Σόθο, Νότια
+language-name-su = Σουνδανική
+language-name-sv = Σουηδική
+language-name-sw = Σουαχίλι
+language-name-szl = Σιλεσιανά
+language-name-ta = Ταμίλ
+language-name-te = Τελούγκου
+language-name-tg = Τατζίκ
+language-name-th = Ταϊλανδική
+language-name-ti = Τιγκρινιακή
+language-name-tig = Τίγκρε
+language-name-tk = Τουρκμενική
+language-name-tl = Ταγκάλογκ
+language-name-tlh = Κλίνγκον
+language-name-tn = Τσουάνα
+language-name-to = Τόνγκα
+language-name-tr = Τουρκικά
+language-name-trs = Τρίκι
+language-name-ts = Τσόνγκα
+language-name-tt = Τατάρ
+language-name-tw = Τουί
+language-name-ty = Ταϊτινή
+language-name-ug = Ουιγούρ
+language-name-uk = Ουκρανική
+language-name-ur = Ούρντου
+language-name-uz = Ουζμπεκική
+language-name-ve = Βέντα
+language-name-vi = Βιεταμέζικη
+language-name-vo = Βολαπιούκ
+language-name-wa = Βαλλωνική
+language-name-wen = Σορβική
+language-name-wo = Ουολοφική
+language-name-xh = Κόζα
+language-name-yi = Εβραϊκά (Yiddish)
+language-name-yo = Γιορούμπα
+language-name-za = Ζουάνγκ
+language-name-zam = Ζαποτέκ της Μιαουατλάν
+language-name-zh = Κινέζικη
+language-name-zu = Ζουλού
diff --git a/l10n-el/toolkit/toolkit/intl/regionNames.ftl b/l10n-el/toolkit/toolkit/intl/regionNames.ftl
new file mode 100644
index 0000000000..5c93bec6b3
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/intl/regionNames.ftl
@@ -0,0 +1,280 @@
+# 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/.
+
+
+### Notice: If you're updating this list, you should also
+### update the list in mozIntl.js.
+
+region-name-ad = Ανδόρα
+region-name-ae = Ηνωμένα Αραβικά Εμιράτα
+region-name-af = Αφγανιστάν
+region-name-ag = Αντίγκουα και Μπαρμπούντα
+region-name-ai = Ανγκουίλα
+region-name-al = Αλβανία
+region-name-am = Αρμενία
+region-name-ao = Ανγκόλα
+region-name-aq = Ανταρκτική
+region-name-ar = Αργεντινή
+region-name-as = Αμερικανική Σαμόα
+region-name-at = Αυστρία
+region-name-au = Αυστραλία
+region-name-aw = Αρούμπα
+region-name-az = Αζερμπαϊτζάν
+region-name-ba = Βοσνία Ερζεγοβίνη
+region-name-bb = Μπαρμπάντος
+region-name-bd = Μπανγκλαντές
+region-name-be = Βέλγιο
+region-name-bf = Μπουρκίνα Φάσο
+region-name-bg = Βουλγαρία
+region-name-bh = Μπαχρέιν
+region-name-bi = Μπουρούντι
+region-name-bj = Μπενίν
+region-name-bl = Saint Barthélemy
+region-name-bm = Βερμούδες
+region-name-bn = Brunei Darussalam
+region-name-bo = Βολιβία
+region-name-bq = Μποναίρ, Άγιος Ευστάθιος και Σάμπα
+region-name-br = Βραζιλία
+region-name-bs = Bahamas
+region-name-bt = Μπουτάν
+region-name-bv = Νήσοι Μπουβέ
+region-name-bw = Μποτσουάνα
+region-name-by = Λευκορωσία
+region-name-bz = Μπελίζ
+region-name-ca = Καναδάς
+region-name-cc = Νήσοι Κόκος (Κήλινγκ)
+region-name-cd = Congo-Kinshasa
+region-name-cf = Κεντροαφρικανική Δημοκρατία
+region-name-cg = Congo-Brazzaville
+region-name-ch = Ελβετία
+region-name-ci = Ivory Coast
+region-name-ck = Νήσοι Κουκ
+region-name-cl = Χιλή
+region-name-cm = Καμερούν
+region-name-cn = Κίνα
+region-name-co = Κολομβία
+region-name-cp = Νήσος Κλίπερτον
+region-name-cr = Κόστα Ρίκα
+region-name-cu = Κούβα
+region-name-cv = Cape Verde
+region-name-cw = Κουρασάο
+region-name-cx = Νήσος των Χριστουγέννων
+region-name-cy = Κύπρος
+region-name-cz = Τσεχία
+region-name-de = Γερμανία
+region-name-dg = Ντιέγκο Γκαρσία
+region-name-dj = Τζιμπουτί
+region-name-dk = Δανία
+region-name-dm = Δομίνικα
+region-name-do = Δομινικανή δημοκρατία
+region-name-dz = Αλγερία
+region-name-ec = Εκουαδόρ
+region-name-ee = Εσθονία
+region-name-eg = Αίγυπτος
+region-name-eh = Δυτική Σαχάρα
+region-name-er = Ερυθραία
+region-name-es = Ισπανία
+region-name-et = Αιθιοπία
+region-name-fi = Φιλανδία
+region-name-fj = Φίτζι
+region-name-fk = Falkland Islands (Malvinas)
+region-name-fm = Micronesia
+region-name-fo = Νήσοι Φαρόε
+region-name-fr = Γαλλία
+region-name-ga = Γκαμπόν
+region-name-gb = Ηνωμένο Βασίλειο
+region-name-gd = Γρανάδα
+region-name-ge = Γεωργία
+region-name-gf = Γαλλική Γουινέα
+region-name-gg = Γκουέρνσεϊ
+region-name-gh = Γκάνα
+region-name-gi = Γιβραλτάρ
+region-name-gl = Γροιλανδία
+region-name-gm = Gambia
+region-name-gn = Γουινέα
+region-name-gp = Γουαδελούπη
+region-name-gq = Ισημερινή Γουινέα
+region-name-gr = Ελλάδα
+region-name-gs = South Georgia and the South Sandwich Islands
+region-name-gt = Γουατεμάλα
+region-name-gu = Γκουάμ
+region-name-gw = Γουινέα-Μπισάου
+region-name-gy = Γουιάνα
+region-name-hk = Χονγκ Κογκ
+region-name-hm = Νήσοι Χερντ και Μακντόναλντ
+region-name-hn = Ονδούρα
+region-name-hr = Κροατία
+region-name-ht = Αϊτή
+region-name-hu = Ουγγαρία
+region-name-id = Ινδονησία
+region-name-ie = Ιρλανδία
+region-name-il = Ισραήλ
+region-name-im = Νήσος του Μαν
+region-name-in = Ινδία
+region-name-io = Βρετανικό Έδαφος Ινδικού Ωκεανού
+region-name-iq = Ιράκ
+region-name-ir = Ιράν
+region-name-is = Ισλανδία
+region-name-it = Ιταλία
+region-name-je = Τζέρσεϊ
+region-name-jm = Τζαμάικα
+region-name-jo = Ιορδανία
+region-name-jp = Ιαπωνία
+region-name-ke = Κένυα
+region-name-kg = Κιργιστάν
+region-name-kh = Καμπότζη
+region-name-ki = Κιριμπάτι
+region-name-km = Κομόρος
+region-name-kn = Άγιος Χριστόφορος και Νέβις
+region-name-kp = North Korea
+region-name-kr = South Korea
+region-name-kw = Κουβέϊτ
+region-name-ky = Νήσοι Κάιμαν
+region-name-kz = Καζακστάν
+region-name-la = Λάος
+region-name-lb = Λίβανος
+region-name-lc = Αγία Λουκία
+region-name-li = Λίχτενσταϊν
+region-name-lk = Σρι Λάνκα
+region-name-lr = Λιβερία
+region-name-ls = Λεσότο
+region-name-lt = Λιθουανία
+region-name-lu = Λουξεμβούργο
+region-name-lv = Λετονία
+region-name-ly = Λιβύη
+region-name-ma = Μαρόκο
+region-name-mc = Μονακό
+region-name-md = Μολδαβία
+region-name-me = Μαυροβούνιο
+region-name-mf = Άγιος Μαρτίνος
+region-name-mg = Μαδαγασκάρη
+region-name-mh = Νήσοι Μάρσαλ
+region-name-mk = Macedonia, F.Y.R. of
+region-name-ml = Μαλί
+region-name-mm = Myanmar
+region-name-mn = Μογγολία
+region-name-mo = Macao
+region-name-mp = Βόρειες Μαριάνες Νήσοι
+region-name-mq = Μαρτινίκα
+region-name-mr = Μαυριτανία
+region-name-ms = Μονσερά
+region-name-mt = Μάλτα
+region-name-mu = Μαυρίκιος
+region-name-mv = Μαλδίβες
+region-name-mw = Μαλάουι
+region-name-mx = Μεξικό
+region-name-my = Μαλαισία
+region-name-mz = Μοζαμβίκη
+region-name-na = Ναμίμπια
+region-name-nc = Νέα Καληδονία
+region-name-ne = Νίγηρας
+region-name-nf = Νήσος Νόρφολκ
+region-name-ng = Νιγηρία
+region-name-ni = Νικαράγουα
+region-name-nl = Ολλανδία
+region-name-no = Νορβηγία
+region-name-np = Νεπάλ
+region-name-nr = Ναούρου
+region-name-nu = Νιου
+region-name-nz = Νέα Ζηλανδία
+region-name-om = Ομάν
+region-name-pa = Παναμάς
+region-name-pe = Περού
+region-name-pf = Γαλλική Πολυνησία
+region-name-pg = Παπούα Νέα Γουινέα
+region-name-ph = Φιλιππίνες
+region-name-pk = Πακιστάν
+region-name-pl = Πολωνία
+region-name-pm = Νήσοι Αγίου Πέτρου και Μιχαήλ
+region-name-pn = Νήσοι Πίτκαιρν
+region-name-pr = Πόρτο Ρίκο
+region-name-pt = Πορτογαλία
+region-name-pw = Παλάου
+region-name-py = Παραγουάη
+region-name-qa = Κατάρ
+region-name-qm = Νήσοι Μίντγουαιη
+region-name-qs = Ύφαλος Ινδίας
+region-name-qu = Νήσος Χουάν ντε Νόβα
+region-name-qw = Νήσος Ουέηκ
+region-name-qx = Ένδοξες Νήσοι
+region-name-qz = Ακρωτήρι
+region-name-re = Ρεουνιόν
+region-name-ro = Ρουμανία
+region-name-rs = Σερβία
+region-name-ru = Russian Federation
+region-name-rw = Ρουάντα
+region-name-sa = Σαουδική Αραβία
+region-name-sb = Νήσοι Σολομώντος
+region-name-sc = Σεϊχέλλες
+region-name-sd = Σουδάν
+region-name-se = Σουηδία
+region-name-sg = Σιγκαπούρη
+region-name-sh = Αγία Ελένη
+region-name-si = Σλοβενία
+region-name-sk = Σλοβακία
+region-name-sl = Σιέρα Λεόνε
+region-name-sm = Άγ. Μαρίνος
+region-name-sn = Σενεγάλη
+region-name-so = Σομαλία
+region-name-sr = Σουρινάμ
+region-name-ss = Νότιο Σουδάν
+region-name-st = Σάο Τομέ και Πρίνσιπε
+region-name-sv = Ελ Σαλβαδόρ
+region-name-sx = Άγιος Μαρτίνος
+region-name-sy = Συρία
+region-name-sz = Σουαζιλάνδη
+region-name-tc = Νήσοι Τερκς και Κέικος
+region-name-td = Τσαντ
+region-name-tf = French Southern Territories
+region-name-tg = Τόγκο
+region-name-th = Ταϊλάνδη
+region-name-tj = Τατζικιστάν
+region-name-tk = Τοκελάου
+region-name-tl = Τιμόρ-Λέστε
+region-name-tm = Τουρκμενιστάν
+region-name-tn = Τυνησία
+region-name-to = Τόνγκα
+region-name-tr = Τουρκία
+region-name-tt = Τρινιντάτ και Τομπάκο
+region-name-tv = Τουβάλου
+region-name-tw = Ταϊβάν
+region-name-tz = Τανζανία
+region-name-ua = Ουκρανία
+region-name-ug = Ουγκάντα
+region-name-us = Ηνωμένες Πολιτείες
+region-name-uy = Ουρουγουάη
+region-name-uz = Ουζμπεκιστάν
+region-name-va = Βατικανό
+region-name-vc = Άγιος Βικέντιος και Γρεναδίνες
+region-name-ve = Βενεζουέλα
+region-name-vg = British Virgin Islands
+region-name-vi = U.S. Virgin Islands
+region-name-vn = Βιετνάμ
+region-name-vu = Βανουάτου
+region-name-wf = Ουάλις και Φουτούνα
+region-name-ws = Σαμόα
+region-name-xa = Νήσοι Άσμορ και Καρτιέρ
+region-name-xb = Νήσος Μπέικερ
+region-name-xc = Νήσοι Κοραλλένιας Θάλασσας
+region-name-xd = Δεκέλεια
+region-name-xe = Νήσος Ευρώπη
+region-name-xg = Λωρίδα της Γάζας
+region-name-xh = Νήσος Χάουλαντ
+region-name-xj = Γιαν Μαγιέν
+region-name-xk = Κόσοβο
+region-name-xl = Ατόλλη Παλμύρα
+region-name-xm = Ύφαλος Κίνγκμαν
+region-name-xp = Νήσοι Παρασέλ
+region-name-xq = Νήσος Τζάρβις
+region-name-xr = Σβάλμπαρντ
+region-name-xs = Νήσοι Σπράτλυ
+region-name-xt = Νήσος Τρομελέν
+region-name-xu = Ατόλλη Τζόνστον
+region-name-xv = Νήσος Ναβάσσα
+region-name-xw = Δυτική Όχθη
+region-name-ye = Υεμένη
+region-name-yt = Μαγιότ
+region-name-za = Νότιος Αφρική
+region-name-zm = Ζάμπια
+region-name-zw = Ζιμπάμπουε
diff --git a/l10n-el/toolkit/toolkit/main-window/autocomplete.ftl b/l10n-el/toolkit/toolkit/main-window/autocomplete.ftl
new file mode 100644
index 0000000000..9af9a5f82e
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/main-window/autocomplete.ftl
@@ -0,0 +1,32 @@
+# 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/.
+
+
+## Import Logins Autocomplete
+
+# Variables:
+# $browser (String) - Browser name to import logins from.
+# $host (String) - Host name of the current site.
+autocomplete-import-logins =
+ <div data-l10n-name="line1">Εισάγετε τη σύνδεσή σας από το { $browser }</div>
+ <div data-l10n-name="line2">για το { $host } και άλλες ιστοσελίδες</div>
+autocomplete-import-logins-info =
+ .tooltiptext = Μάθετε περισσότερα
+
+## Variables:
+## $host (String) - Host name of the current site.
+
+autocomplete-import-logins-chrome =
+ <div data-l10n-name="line1">Εισαγωγή συνδέσεων από το Google Chrome</div>
+ <div data-l10n-name="line2">για το { $host } και άλλες ιστοσελίδες</div>
+autocomplete-import-logins-chromium =
+ <div data-l10n-name="line1">Εισαγωγή συνδέσεων από το Chromium</div>
+ <div data-l10n-name="line2">για το { $host } και άλλες ιστοσελίδες</div>
+autocomplete-import-logins-chromium-edge =
+ <div data-l10n-name="line1">Εισαγωγή συνδέσεων από το Microsoft Edge</div>
+ <div data-l10n-name="line2">για το { $host } και άλλες ιστοσελίδες</div>
+
+##
+
+autocomplete-import-learn-more = Μάθετε περισσότερα
diff --git a/l10n-el/toolkit/toolkit/main-window/findbar.ftl b/l10n-el/toolkit/toolkit/main-window/findbar.ftl
new file mode 100644
index 0000000000..fc9d8c04fa
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/main-window/findbar.ftl
@@ -0,0 +1,38 @@
+# 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 file contains the entities needed to use the Find Bar.
+
+findbar-next =
+ .tooltiptext = Εύρεση της επόμενης εμφάνισης της φράσης
+findbar-previous =
+ .tooltiptext = Εύρεση της προηγούμενης εμφάνισης της φράσης
+
+findbar-find-button-close =
+ .tooltiptext = Κλείσιμο μπάρας εύρεσης
+
+findbar-highlight-all2 =
+ .label = Επισήμανση όλων
+ .accesskey =
+ { PLATFORM() ->
+ [macos] λ
+ *[other] ω
+ }
+ .tooltiptext = Επισήμανση όλων των εμφανίσεων της φράσης
+
+findbar-case-sensitive =
+ .label = Συμφωνία πεζών-κεφαλαίων
+ .accesskey = φ
+ .tooltiptext = Εύρεση με συμφωνία πεζών-κεφαλαίων
+
+findbar-match-diacritics =
+ .label = Αντιστοίχιση διακριτικών
+ .accesskey = ι
+ .tooltiptext = Διαχωρισμός ανάμεσα σε τονισμένα και μη γράμματα (για παράδειγμα, όταν κάνετε αναζήτηση για τον όρο “resume”, το “résumé” δεν θα εμφανιστεί)
+
+findbar-entire-word =
+ .label = Ολόκληρες λέξεις
+ .accesskey = ξ
+ .tooltiptext = Αναζήτηση μόνο ολόκληρων λέξεων
diff --git a/l10n-el/toolkit/toolkit/payments/payments.ftl b/l10n-el/toolkit/toolkit/payments/payments.ftl
new file mode 100644
index 0000000000..ff85b71bda
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/payments/payments.ftl
@@ -0,0 +1,69 @@
+# 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 value isn't used directly, but is defined to avoid duplication
+# in the "credit-card-label-*" strings.
+#
+# Variables:
+# $month (String): Numeric month the credit card expires
+# $year (String): Four-digit year the credit card expires
+credit-card-expiration = Λήγει { $month }/{ $year }
+
+## These labels serve as a description of a credit card.
+## The description must include a credit card number, and may optionally
+## include a cardholder name, an expiration date, or both, so we have
+## four variations.
+
+# Label for a credit card with a number only
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+credit-card-label-number = { $number }
+# Label for a credit card with a number and name
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+# $name (String): Cardholder name
+credit-card-label-number-name = { $number }, { $name }
+# Label for a credit card with a number and expiration date
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+credit-card-label-number-expiration = { $number }, { credit-card-expiration }
+# Label for a credit card with a number, name, and expiration date
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+# $name (String): Cardholder name
+credit-card-label-number-name-expiration = { $number }, { $name }, { credit-card-expiration }
+# Label for a credit card with a number only
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+# $type (String): Credit card type
+credit-card-label-number-2 = { $number }
+ .aria-label = { $type } { credit-card-label-number-2 }
+# Label for a credit card with a number and name
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+# $name (String): Cardholder name
+# $type (String): Credit card type
+credit-card-label-number-name-2 = { $number }, { $name }
+ .aria-label = { $type } { credit-card-label-number-name-2 }
+# Label for a credit card with a number and expiration date
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+# $type (String): Credit card type
+credit-card-label-number-expiration-2 = { $number }, { credit-card-expiration }
+ .aria-label = { $type } { credit-card-label-number-expiration-2 }
+# Label for a credit card with a number, name, and expiration date
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+# $name (String): Cardholder name
+# $type (String): Credit card type
+credit-card-label-number-name-expiration-2 = { $number }, { $name }, { credit-card-expiration }
+ .aria-label = { $type } { credit-card-label-number-name-expiration-2 }
diff --git a/l10n-el/toolkit/toolkit/pictureinpicture/pictureinpicture.ftl b/l10n-el/toolkit/toolkit/pictureinpicture/pictureinpicture.ftl
new file mode 100644
index 0000000000..a0919de3a3
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/pictureinpicture/pictureinpicture.ftl
@@ -0,0 +1,22 @@
+# 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/.
+
+pictureinpicture-player-title = Εικόνα εντός εικόνας
+
+pictureinpicture-pause =
+ .aria-label = Παύση
+pictureinpicture-play =
+ .aria-label = Αναπαραγωγή
+
+pictureinpicture-mute =
+ .aria-label = Σίγαση
+pictureinpicture-unmute =
+ .aria-label = Άρση σίγασης
+
+pictureinpicture-unpip =
+ .aria-label = Αποστολή πίσω στην καρτέλα
+
+pictureinpicture-close =
+ .aria-label = Κλείσιμο
+
diff --git a/l10n-el/toolkit/toolkit/preferences/preferences.ftl b/l10n-el/toolkit/toolkit/preferences/preferences.ftl
new file mode 100644
index 0000000000..6d71e639b9
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/preferences/preferences.ftl
@@ -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/.
+
+password-not-set =
+ .value = (δεν ορίσθηκε)
+failed-pw-change = Αδυναμία αλλαγής Κύριου Κωδικού.
+incorrect-pw = Δεν εισάγατε το σωστό Κύριο κωδικό. Προσπαθήστε ξανά.
+pw-change-ok = Επιτυχής αλλαγή του κύριου κωδικού πρόσβασης.
+pw-empty-warning = Οι αποθηκευμένοι κωδικοί email και web από δεδομένα και ιδιωτικά κλειδιά δεν θα προστατευτούν.
+pw-erased-ok = Διαγράψατε τον Κύριο κωδικό σας. { pw-empty-warning }
+pw-not-wanted = Προειδοποίηση! Αποφασίσατε να μη χρησιμοποιήσετε ένα Κύριο κωδικό. { pw-empty-warning }
+pw-change2empty-in-fips-mode = Αυτή τη στιγμή είστε σε λειτουργία FIPS. Το FIPS απαιτεί ένα μη-κενό κύριο κωδικό.
+failed-pp-change = Δεν ήταν δυνατή η αλλαγή του κύριου κωδικού πρόσβασης.
+incorrect-pp = Δεν πληκτρολογήσατε το σωστό κύριο κωδικό πρόσβασης. Παρακαλούμε δοκιμάστε ξανά.
+pp-change-ok = Επιτυχής αλλαγή κύριου κωδικού πρόσβασης.
+pp-empty-warning = Οι αποθηκευμένοι κωδικοί πρόσβασης και τα ιδιωτικά σας κλειδιά δεν θα προστατεύονται.
+pp-erased-ok = Έχετε διαγράψει τον κύριο κωδικό πρόσβασής σας. { pp-empty-warning }
+pp-not-wanted = Προσοχή! Αποφασίσατε να μην κάνετε χρήση ενός κύριου κωδικού πρόσβασης. { pp-empty-warning }
+pp-change2empty-in-fips-mode = Είστε σε λειτουργία FIPS. Το FIPS απαιτεί μη κενό κύριο κωδικό πρόσβασης.
+pw-change-success-title = Επιτυχής αλλαγή κωδικού
+pw-change-failed-title = Αποτυχία αλλαγής κωδικού
+pw-remove-button =
+ .label = Αφαίρεση
+set-password =
+ .title = Αλλαγή κύριου κωδικού πρόσβασης
+primary-password-dialog =
+ .title = Κύριος κωδικός πρόσβασης
+set-password-old-password = Τρέχων κωδικός πρόσβασης:
+set-password-new-password = Εισάγετε ένα νέο κωδικό:
+set-password-reenter-password = Επαναλάβετε τον κωδικό
+set-password-meter = Μέτρηση ποιότητας κωδικού
+set-password-meter-loading = Φόρτωση
+master-password-admin = Ο διαχειριστής σας απαιτεί να ορίσετε κύριο κωδικό πρόσβασης ώστε να αποθηκεύσετε κωδικούς πρόσβασης.
+master-password-description = Ο κύριος κωδικός χρησιμοποιείται για την προστασία ευαίσθητων πληροφοριών όπως κωδικοί σελίδας. Αν δημιουργήσετε ένα κύριο κωδικό θα γίνεται προτροπή να τον εισάγετε μια φορά σε κάθε συνεδρία όταν ο { -brand-short-name } ανακτά αποθηκευμένες πληροφορίες που προστατεύονται από τον κωδικό.
+master-password-warning = Βεβαιωθείτε ότι θυμάστε τον κύριο κωδικό που έχετε ορίσει. Αν ξεχάσετε τον κύριο κωδικό, δεν θα έχετε πρόσβαση στις πληροφορίες που προστατεύει.
+remove-password =
+ .title = Αφαίρεση κύριου κωδικού πρόσβασης
+primary-password-admin = Ο διαχειριστής σας απαιτεί να έχετε ορίσει έναν κύριο κωδικό πρόσβασης για την αποθήκευση συνδέσεων και κωδικών πρόσβασης.
+primary-password-description = Ένας κύριος κωδικός πρόσβασης χρησιμοποιείται για την προστασία ορισμένων ευαίσθητων πληροφοριών, όπως συνδέσεις και κωδικοί πρόσβασης, σε αυτή τη συσκευή. Εάν δημιουργήσετε έναν κύριο κωδικό πρόσβασης, θα σας ζητηθεί να τον εισαγάγετε μία φορά ανά συνεδρία, όταν το { -brand-short-name } ανακτά αποθηκευμένες πληροφορίες που προστατεύονται από αυτό τον κωδικό πρόσβασης.
+primary-password-warning = Παρακαλούμε βεβαιωθείτε ότι θα θυμάστε τον κύριο κωδικό πρόσβασης που έχετε ορίσει. Αν τον ξεχάσετε, δεν θα μπορείτε να αποκτήσετε πρόσβαση σε καμία από τις πληροφορίες που προστατεύονται σε αυτή τη συσκευή.
+remove-primary-password =
+ .title = Αφαίρεση κύριου κωδικού πρόσβασης
+remove-info =
+ .value = Θα πρέπει να εισάγετε τον κύριο κωδικό σας για να συνεχίσετε:
+remove-warning1 = Ο Κύριος κωδικός χρησιμοποιείται για την προστασία ευαίσθητων δεδομένων όπως οι κωδικοί σελίδων.
+remove-warning2 = Αν απομακρύνετε τον Κύριο κωδικό, δεν θα υπάρχει προστασία των προσωπικών σας πληροφοριών.
+remove-primary-password-warning1 = Ο κύριος κωδικός πρόσβασής σας χρησιμοποιείται για την προστασία ευαίσθητων πληροφοριών, όπως συνδέσεις και κωδικοί πρόσβασης.
+remove-primary-password-warning2 = Εάν καταργήσετε τον κύριο κωδικό πρόσβασης, οι πληροφορίες σας δεν θα προστατευτούν εάν ο υπολογιστής σας παραβιαστεί.
+remove-password-old-password =
+ .value = Τρέχων κωδικός πρόσβασης:
diff --git a/l10n-el/toolkit/toolkit/printing/printDialogs.ftl b/l10n-el/toolkit/toolkit/printing/printDialogs.ftl
new file mode 100644
index 0000000000..93791026ce
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/printing/printDialogs.ftl
@@ -0,0 +1,111 @@
+# 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/.
+
+print-setup =
+ .title = Διαμόρφωση σελίδας
+custom-prompt-title = Προσαρμογή…
+custom-prompt-prompt = Εισάγετε το προσαρμοσμένο κείμενο επικεφαλίδας/υποσέλιδου
+basic-tab =
+ .label = Μορφή & επιλογές
+advanced-tab =
+ .label = Περιθώρια & επικεφαλίδα/υποσέλιδο
+format-group-label =
+ .value = Μορφή
+orientation-label =
+ .value = Προσανατολισμός:
+portrait =
+ .label = Κατακόρυφος
+ .accesskey = Κ
+landscape =
+ .label = Οριζόντιος
+ .accesskey = Ο
+scale =
+ .label = Κλίμακα:
+ .accesskey = Κ
+scale-percent =
+ .value = %
+shrink-to-fit =
+ .label = Σμίκρυνση στο πλάτος της σελίδας
+ .accesskey = Π
+options-group-label =
+ .value = Επιλογές
+print-bg =
+ .label = Εκτύπωση παρασκηνίου (χρώματα & εικόνες)
+ .accesskey = Π
+margin-group-label-inches =
+ .value = Περιθώρια (ίντσες)
+margin-group-label-metric =
+ .value = Περιθώρια (χιλιοστά)
+margin-top =
+ .value = Πάνω:
+ .accesskey = Π
+margin-top-invisible =
+ .value = Πάνω:
+margin-bottom =
+ .value = Κάτω:
+ .accesskey = Κ
+margin-bottom-invisible =
+ .value = Κάτω:
+margin-left =
+ .value = Αριστερά:
+ .accesskey = Α
+margin-left-invisible =
+ .value = Αριστερά:
+margin-right =
+ .value = Δεξιά:
+ .accesskey = Δ
+margin-right-invisible =
+ .value = Δεξιά:
+header-footer-label =
+ .value = Επικεφαλίδες & υποσέλιδα
+hf-left-label =
+ .value = Αριστερά:
+hf-center-label =
+ .value = Κέντρο:
+hf-right-label =
+ .value = Δεξιά:
+header-left-tip =
+ .tooltiptext = Αριστερή επικεφαλίδα
+header-center-tip =
+ .tooltiptext = Κεντρική επικεφαλίδα
+header-right-tip =
+ .tooltiptext = Δεξιά επικεφαλίδα
+footer-left-tip =
+ .tooltiptext = Αριστερό υποσέλιδο
+footer-center-tip =
+ .tooltiptext = Κεντρικό υποσέλιδο
+footer-right-tip =
+ .tooltiptext = Δεξί υποσέλιδο
+hf-blank =
+ .label = --κενή--
+hf-title =
+ .label = Τίτλος
+hf-url =
+ .label = URL
+hf-date-and-time =
+ .label = Ημερομηνία/ώρα
+hf-page =
+ .label = Σελίδα #
+hf-page-and-total =
+ .label = Σελίδα # από #
+hf-custom =
+ .label = Προσαρμογή…
+print-preview-window =
+ .title = Προεπισκόπηση εκτύπωσης
+print-title =
+ .value = Τίτλος:
+print-preparing =
+ .value = Προετοιμασία…
+print-progress =
+ .value = Πρόοδος:
+print-window =
+ .title = Εκτύπωση
+print-complete =
+ .value = Η εκτύπωση ολοκληρώθηκε
+# Variables
+# $percent (integer) - Number of printed percentage
+print-percent =
+ .value = { $percent }%
+dialog-cancel-label = Ακύρωση
+dialog-close-label = Κλείσιμο
diff --git a/l10n-el/toolkit/toolkit/printing/printPreview.ftl b/l10n-el/toolkit/toolkit/printing/printPreview.ftl
new file mode 100644
index 0000000000..0091060479
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/printing/printPreview.ftl
@@ -0,0 +1,71 @@
+# 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/.
+
+printpreview-simplify-page-checkbox =
+ .label = Απλοποίηση σελίδας
+ .accesskey = π
+ .tooltiptext = Δεν είναι δυνατή η αυτόματη απλοποίηση της σελίδας
+printpreview-simplify-page-checkbox-enabled =
+ .label = { printpreview-simplify-page-checkbox.label }
+ .accesskey = { printpreview-simplify-page-checkbox.accesskey }
+ .tooltiptext = Αλλαγή διάταξης για ευκολότερη ανάγνωση
+printpreview-close =
+ .label = Κλείσιμο
+ .accesskey = Κ
+printpreview-portrait =
+ .label = Κατακόρυφα
+ .accesskey = α
+printpreview-landscape =
+ .label = Οριζόντια
+ .accesskey = Ο
+printpreview-scale =
+ .value = Κλίμακα:
+ .accesskey = Κ
+printpreview-shrink-to-fit =
+ .label = Αυτόματη προσαρμογή
+printpreview-custom =
+ .label = Προσαρμογή…
+printpreview-print =
+ .label = Εκτύπωση…
+ .accesskey = Ε
+printpreview-of =
+ .value = από
+printpreview-custom-scale-prompt-title = Προσαρμοσμένη κλίμακα
+printpreview-page-setup =
+ .label = Διαμόρφωση σελίδας…
+ .accesskey = δ
+printpreview-page =
+ .value = Σελίδα:
+ .accesskey = ε
+# Variables
+# $sheetNum (integer) - The current sheet number
+# $sheetCount (integer) - The total number of sheets to print
+printpreview-sheet-of-sheets = { $sheetNum } από { $sheetCount }
+
+## Variables
+## $percent (integer) - menuitem percent label
+## $arrow (String) - UTF-8 arrow character for navigation buttons
+
+printpreview-percentage-value =
+ .label = { $percent }%
+printpreview-homearrow =
+ .label = { $arrow }
+ .tooltiptext = Πρώτη σελίδα
+printpreview-previousarrow =
+ .label = { $arrow }
+ .tooltiptext = Προηγούμενη σελίδα
+printpreview-nextarrow =
+ .label = { $arrow }
+ .tooltiptext = Επόμενη σελίδα
+printpreview-endarrow =
+ .label = { $arrow }
+ .tooltiptext = Τελευταία σελίδα
+printpreview-homearrow-button =
+ .title = Πρώτη σελίδα
+printpreview-previousarrow-button =
+ .title = Προηγούμενη σελίδα
+printpreview-nextarrow-button =
+ .title = Επόμενη σελίδα
+printpreview-endarrow-button =
+ .title = Τελευταία σελίδα
diff --git a/l10n-el/toolkit/toolkit/printing/printUI.ftl b/l10n-el/toolkit/toolkit/printing/printUI.ftl
new file mode 100644
index 0000000000..c77de563b7
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/printing/printUI.ftl
@@ -0,0 +1,102 @@
+# 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/.
+
+printui-title = Εκτύπωση
+# Dialog title to prompt the user for a filename to save print to PDF.
+printui-save-to-pdf-title = Αποθήκευση ως
+# Variables
+# $sheetCount (integer) - Number of paper sheets
+printui-sheets-count =
+ { $sheetCount ->
+ [one] { $sheetCount } φύλλο χαρτιού
+ *[other] { $sheetCount } φύλλα χαρτιού
+ }
+printui-page-range-all = Όλες
+printui-page-range-custom = Προσαρμογή
+printui-page-range-label = Σελίδες
+printui-page-range-picker =
+ .aria-label = Επιλογή εύρους σελίδων
+printui-page-custom-range-input =
+ .aria-label = Εισάγετε προσαρμοσμένο εύρος σελίδων
+ .placeholder = π.χ. 2-6, 9, 12-16
+# Section title for the number of copies to print
+printui-copies-label = Αντίγραφα
+printui-orientation = Προσανατολισμός
+printui-landscape = Οριζόντιος
+printui-portrait = Κατακόρυφος
+# Section title for the printer or destination device to target
+printui-destination-label = Προορισμός
+printui-destination-pdf-label = Αποθήκευση σε PDF
+printui-more-settings = Περισσότερες ρυθμίσεις
+printui-less-settings = Λιγότερες ρυθμίσεις
+printui-paper-size-label = Μέγεθος χαρτιού
+# Section title (noun) for the print scaling options
+printui-scale = Κλίμακα
+printui-scale-fit-to-page-width = Προσαρμογή στο πλάτος σελίδας
+# Label for input control where user can set the scale percentage
+printui-scale-pcent = Κλίμακα
+# Section title (noun) for the two-sided print options
+printui-two-sided-printing = Εκτύπωση δύο όψεων
+printui-duplex-checkbox = Εκτύπωση και στις δυο πλευρές
+# Section title for miscellaneous print options
+printui-options = Επιλογές
+printui-headers-footers-checkbox = Εκτύπωση κεφαλίδων και υποσέλιδων
+printui-backgrounds-checkbox = Εκτύπωση παρασκηνίου
+printui-selection-checkbox = Εκτύπωση επιλογής μόνο
+printui-color-mode-label = Λειτουργία χρώματος
+printui-color-mode-color = Έγχρωμο
+printui-color-mode-bw = Ασπρόμαυρο
+printui-margins = Περιθώρια
+printui-margins-default = Προεπιλογή
+printui-margins-min = Ελάχιστα
+printui-margins-none = Χωρίς
+printui-margins-custom-inches = Προσαρμογή (ίντσες)
+printui-margins-custom-top = Πάνω
+printui-margins-custom-top-inches = Πάνω (ίντσες)
+printui-margins-custom-bottom = Κάτω
+printui-margins-custom-bottom-inches = Κάτω (ίντσες)
+printui-margins-custom-left = Αριστερά
+printui-margins-custom-left-inches = Αριστερά (ίντσες)
+printui-margins-custom-right = Δεξιά
+printui-margins-custom-right-inches = Δεξιά (ίντσες)
+printui-system-dialog-link = Εκτύπωση μέσω διαλόγου συστήματος…
+printui-primary-button = Εκτύπωση
+printui-primary-button-save = Αποθήκευση
+printui-cancel-button = Ακύρωση
+printui-close-button = Κλείσιμο
+printui-loading = Προετοιμασία προεπισκόπησης
+# Reported by screen readers and other accessibility tools to indicate that
+# the print preview has focus.
+printui-preview-label =
+ .aria-label = Προεπισκόπηση εκτύπωσης
+printui-pages-per-sheet = Σελίδες ανά φύλλο
+# This is shown next to the Print button with an indefinite loading spinner
+# when the user prints a page and it is being sent to the printer.
+printui-print-progress-indicator = Εκτύπωση…
+printui-print-progress-indicator-saving = Αποθήκευση…
+
+## Paper sizes that may be supported by the Save to PDF destination:
+
+printui-paper-a5 = A5
+printui-paper-a4 = A4
+printui-paper-a3 = A3
+printui-paper-a2 = A2
+printui-paper-a1 = A1
+printui-paper-a0 = A0
+printui-paper-b5 = B5
+printui-paper-b4 = B4
+printui-paper-jis-b5 = JIS-B5
+printui-paper-jis-b4 = JIS-B4
+printui-paper-letter = US Letter
+printui-paper-legal = US Legal
+printui-paper-tabloid = Tabloid
+
+## Error messages shown when a user has an invalid input
+
+printui-error-invalid-scale = Η κλίμακα πρέπει να είναι μεταξύ 10 και 200.
+printui-error-invalid-margin = Εισάγετε ένα έγκυρο περιθώριο για το επιλεγμένο μέγεθος χαρτιού.
+# Variables
+# $numPages (integer) - Number of pages
+printui-error-invalid-range = Το εύρος πρέπει να είναι αριθμός μεταξύ 1 και { $numPages }.
+printui-error-invalid-start-overflow = Ο αριθμός σελίδας “από” πρέπει να είναι μικρότερος από τον αριθμό σελίδας “έως”.
diff --git a/l10n-el/toolkit/toolkit/updates/elevation.ftl b/l10n-el/toolkit/toolkit/updates/elevation.ftl
new file mode 100644
index 0000000000..984e88359c
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/updates/elevation.ftl
@@ -0,0 +1,22 @@
+# 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 temporary until bug 1521632 is fixed
+
+elevation-update-wizard =
+ .title = Ενημέρωση λογισμικού
+elevation-details-link-label =
+ .value = Λεπτομέρειες
+elevation-error-manual =
+ Μπορείτε να ενημερώσετε τον { -brand-short-name } χειροκίνητα . Επισκεφτείτε αυτόν το δεσμό
+ για να λάβετε την τελευταία έκδοση:
+elevation-finished-page = Η ενημέρωση είναι έτοιμη για εγκατάσταση
+elevation-finished-background-page =
+ Έγινε λήψη μιας ενημέρωσης ασφαλείας και σταθερότητας για το { -brand-short-name }
+ και είναι έτοιμη για εγκατάσταση.
+elevation-finished-background = Ενημέρωση:
+elevation-more-elevated =
+ Η ενημέρωση απαιτεί δικαιώματα διαχειριστή. Η ενημέρωση
+ θα εγκατασταθεί την επόμενη φορά που το { -brand-short-name } θα ξεκινήσει. Μπορείτε είτε να επανεκκινήσετε το
+ { -brand-short-name } τώρα, είτε να συνεχίσετε τη δουλειά σας και να επανεκκινήσετε αργότερα, είτε να αρνηθείτε
+ την ενημέρωση.
diff --git a/l10n-el/toolkit/toolkit/updates/history.ftl b/l10n-el/toolkit/toolkit/updates/history.ftl
new file mode 100644
index 0000000000..7f388c69ef
--- /dev/null
+++ b/l10n-el/toolkit/toolkit/updates/history.ftl
@@ -0,0 +1,27 @@
+# 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/.
+
+history-title = Ιστορικό ενημερώσεων
+history-intro = Οι ακόλουθες ενημερώσεις εγκαταστάθηκαν
+
+close-button-label =
+ .buttonlabelcancel = Κλείσιμο
+ .title = Ιστορικό ενημερώσεων
+
+no-updates-label = Δεν έχουν εγκατασταθεί ενημερώσεις
+name-header = Όνομα ενημέρωσης
+date-header = Ημερομηνία εγκατάστασης
+type-header = Τύπος
+state-header = Κατάσταση
+
+# Used to display update history
+#
+# Variables:
+# $name (String): name of the update
+# $buildID (String): build identifier from the local updates.xml
+update-full-build-name = { $name } ({ $buildID })
+
+update-details = Λεπτομέρειες
+update-installed-on = Εγκαταστάθηκε στις: { $date }
+update-status = Κατάσταση: { $status }