# Translations template for monasca-ui. # Copyright (C) 2019 ORGANIZATION # This file is distributed under the same license as the monasca-ui project. # FIRST AUTHOR , 2019. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: monasca-ui VERSION\n" "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n" "POT-Creation-Date: 2019-09-23 11:27+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.6.0\n" #: monitoring/alarmdefs/templates/alarmdefs/alarm.html:14 #: monitoring/alarmdefs/templates/alarmdefs/detail.html:7 #: monitoring/alarms/templates/alarms/alarm.html:17 monitoring/dashboard.py:22 #: monitoring/notifications/templates/notifications/index.html:3 #: monitoring/notifications/templates/notifications/index.html:11 #: monitoring/overview/templates/overview/index.html:3 #: monitoring/overview/templates/overview/index.html:7 #: monitoring/overview/templates/overview/index.html:13 msgid "Monitoring" msgstr "" #: monitoring/alarmdefs/forms.py:59 monitoring/alarms/forms.py:56 msgid "min" msgstr "" #: monitoring/alarmdefs/forms.py:59 monitoring/alarms/forms.py:56 msgid "max" msgstr "" #: monitoring/alarmdefs/forms.py:59 monitoring/alarms/forms.py:56 msgid "sum" msgstr "" #: monitoring/alarmdefs/forms.py:60 monitoring/alarms/forms.py:57 msgid "count" msgstr "" #: monitoring/alarmdefs/forms.py:60 monitoring/alarms/forms.py:57 msgid "avg" msgstr "" #: monitoring/alarmdefs/forms.py:60 msgid "last" msgstr "" #: monitoring/alarmdefs/forms.py:62 msgid "AND" msgstr "" #: monitoring/alarmdefs/forms.py:62 msgid "OR" msgstr "" #: monitoring/alarmdefs/forms.py:189 monitoring/alarmdefs/tables.py:88 #: monitoring/alarmdefs/templates/alarmdefs/_detail.html:7 #: monitoring/alarmdefs/templates/alarmdefs/_detail.html:27 #: monitoring/alarmdefs/templates/alarmdefs/notification_field.html:11 #: monitoring/alarmdefs/workflows.py:77 monitoring/alarms/forms.py:120 #: monitoring/alarms/forms.py:183 monitoring/alarms/tables.py:242 #: monitoring/alarms/templates/alarms/alarm_history.html:13 #: monitoring/notifications/forms.py:49 monitoring/notifications/tables.py:97 msgid "Name" msgstr "" #: monitoring/alarmdefs/forms.py:193 monitoring/alarmdefs/workflows.py:80 msgid "An unique name of the alarm." msgstr "" #: monitoring/alarmdefs/forms.py:194 #: monitoring/alarmdefs/templates/alarmdefs/_detail.html:11 #: monitoring/alarmdefs/workflows.py:129 monitoring/alarmdefs/workflows.py:142 #: monitoring/alarms/forms.py:187 msgid "Expression" msgstr "" #: monitoring/alarmdefs/forms.py:197 monitoring/alarmdefs/workflows.py:132 msgid "An alarm expression." msgstr "" #: monitoring/alarmdefs/forms.py:198 monitoring/alarmdefs/workflows.py:135 msgid "Match by" msgstr "" #: monitoring/alarmdefs/forms.py:201 monitoring/alarmdefs/workflows.py:138 msgid "The metric dimensions used to create unique alarms." msgstr "" #: monitoring/alarmdefs/forms.py:203 monitoring/alarmdefs/tables.py:91 #: monitoring/alarmdefs/templates/alarmdefs/_detail.html:9 #: monitoring/alarmdefs/templates/alarmdefs/_edit.html:10 #: monitoring/alarmdefs/workflows.py:82 monitoring/alarms/forms.py:190 #: monitoring/notifications/templates/notifications/_create.html:16 #: monitoring/notifications/templates/notifications/_edit.html:10 msgid "Description" msgstr "" #: monitoring/alarmdefs/forms.py:206 monitoring/alarmdefs/workflows.py:84 msgid "A description of an alarm." msgstr "" #: monitoring/alarmdefs/forms.py:207 monitoring/alarmdefs/workflows.py:70 #: monitoring/alarms/forms.py:193 msgid "Low" msgstr "" #: monitoring/alarmdefs/forms.py:208 monitoring/alarmdefs/workflows.py:71 #: monitoring/alarms/forms.py:194 msgid "Medium" msgstr "" #: monitoring/alarmdefs/forms.py:209 monitoring/alarmdefs/workflows.py:72 #: monitoring/alarms/forms.py:195 msgid "High" msgstr "" #: monitoring/alarmdefs/forms.py:210 monitoring/alarmdefs/workflows.py:73 #: monitoring/alarms/forms.py:196 msgid "Critical" msgstr "" #: monitoring/alarmdefs/forms.py:211 #: monitoring/alarmdefs/templates/alarmdefs/_detail.html:15 #: monitoring/alarmdefs/workflows.py:86 monitoring/alarms/forms.py:197 msgid "Severity" msgstr "" #: monitoring/alarmdefs/forms.py:216 monitoring/alarmdefs/workflows.py:91 msgid "" "Severity of an alarm. Must be either LOW, MEDIUM, HIGH or CRITICAL. " "Default is LOW." msgstr "" #: monitoring/alarmdefs/forms.py:221 monitoring/alarmdefs/tables.py:93 #: monitoring/alarmdefs/templates/alarmdefs/_detail.html:17 #: monitoring/alarms/forms.py:205 msgid "Notifications Enabled" msgstr "" #: monitoring/alarmdefs/forms.py:225 #: monitoring/alarmdefs/templates/alarmdefs/_detail.html:22 #: monitoring/alarmdefs/workflows.py:30 monitoring/alarmdefs/workflows.py:54 #: monitoring/alarms/forms.py:209 monitoring/notifications/panel.py:22 #: monitoring/notifications/tables.py:110 #: monitoring/notifications/templates/notifications/index.html:6 #: monitoring/notifications/templates/notifications/index.html:12 msgid "Notifications" msgstr "" #: monitoring/alarmdefs/forms.py:228 monitoring/alarmdefs/workflows.py:33 msgid "" "Notification methods. Notifications can be sent when an alarm state " "transition occurs." msgstr "" #: monitoring/alarmdefs/forms.py:231 monitoring/alarmdefs/workflows.py:38 msgid "Alarm Actions" msgstr "" #: monitoring/alarmdefs/forms.py:234 monitoring/alarmdefs/workflows.py:43 msgid "OK Actions" msgstr "" #: monitoring/alarmdefs/forms.py:237 monitoring/alarmdefs/workflows.py:48 msgid "Undetermined Actions" msgstr "" #: monitoring/alarmdefs/forms.py:246 monitoring/alarmdefs/workflows.py:67 #: monitoring/alarms/forms.py:219 #, python-format msgid "Unable to retrieve notifications: %s" msgstr "" #: monitoring/alarmdefs/forms.py:269 msgid "Alarm definition has been updated." msgstr "" #: monitoring/alarmdefs/forms.py:271 #, python-format msgid "%s" msgstr "" #: monitoring/alarmdefs/panel.py:23 monitoring/alarmdefs/tables.py:103 #: monitoring/alarmdefs/templates/alarmdefs/alarm.html:6 #: monitoring/alarmdefs/templates/alarmdefs/alarm.html:15 #: monitoring/alarmdefs/templates/alarmdefs/alarm.html:20 #: monitoring/alarmdefs/templates/alarmdefs/detail.html:8 msgid "Alarm Definitions" msgstr "" #: monitoring/alarmdefs/tables.py:27 monitoring/alarmdefs/workflows.py:192 #: monitoring/alarmdefs/workflows.py:193 msgid "Create Alarm Definition" msgstr "" #: monitoring/alarmdefs/tables.py:42 #: monitoring/alarmdefs/templates/alarmdefs/_edit.html:7 msgid "Edit Alarm Definition" msgstr "" #: monitoring/alarmdefs/tables.py:54 monitoring/alarmdefs/tables.py:58 msgid "Delete Alarm Definition" msgid_plural "Delete Alarm Definitions" msgstr[0] "" msgstr[1] "" #: monitoring/alarmdefs/tables.py:66 msgid "Deleted Alarm Definition" msgid_plural "Deleted Alarm Definitions" msgstr[0] "" msgstr[1] "" #: monitoring/alarmdefs/views.py:64 monitoring/alarmdefs/views.py:97 msgid "Could not retrieve alarm definitions" msgstr "" #: monitoring/alarmdefs/views.py:158 monitoring/alarmdefs/views.py:225 #, python-format msgid "Notification %s has already been deleted." msgstr "" #: monitoring/alarmdefs/views.py:177 monitoring/alarmdefs/views.py:245 msgid "Unable to retrieve alarm details." msgstr "" #: monitoring/alarmdefs/workflows.py:96 msgid "Details" msgstr "" #: monitoring/alarmdefs/workflows.py:110 #, python-format msgid "Alarm definition with %s name already exists" msgstr "" #: monitoring/alarmdefs/workflows.py:119 msgid "Failed to validate name" msgstr "" #: monitoring/alarmdefs/workflows.py:155 msgid "Unable to retrieve metrics" msgstr "" #: monitoring/alarmdefs/workflows.py:194 #, python-format msgid "Alarm definition %s has been created" msgstr "" #: monitoring/alarmdefs/workflows.py:195 #, python-format msgid "Unable to create alarm definition %s" msgstr "" #: monitoring/alarmdefs/workflows.py:205 msgid "Unknown name" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_create_ad_details_help.html:8 msgid "" "\n" " The Name field is used to identify the alarm definition.\n" " " msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_create_ad_details_help.html:14 msgid "" "\n" " The Description field can be used to describe alarm definition's\n" " purpose.\n" " " msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_create_ad_details_help.html:20 msgid "" "\n" " The Severity field allows to specify the importance of alarm\n" " definition.\n" " " msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_create_ad_expression_help.html:13 msgid "" "\n" " Each alarm definition is defined by its expression composed out " "of:\n" " mathematical function, metric, threshold and comparator for " "metric's\n" " value and the threshold. Additionally it is possible to narrow\n" " evaluation of the alarm to certain entities by choosing their\n" " dimensions. The deterministic alarms never enter UNDETERMINED " "state.\n" " Use them for metrics that are received sporadically.\n" " " msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_create_ad_notification_help.html:9 msgid "" "\n" " The Notifications field contains the list of Notifications that " "should\n" " be sent when transitioning to another state.\n" " " msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_create_ad_notification_help.html:15 msgid "" "\n" " If for some transitions notifications should not be sent they can" " be\n" " disabled.\n" " " msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_detail.html:4 msgid "Info" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_detail.html:8 #: monitoring/alarmdefs/templates/alarmdefs/detail.html:9 #: monitoring/alarms/templates/alarms/alarm_history.html:14 msgid "None" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_detail.html:13 msgid "Deterministic" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_detail.html:28 #: monitoring/alarmdefs/templates/alarmdefs/notification_field.html:12 #: monitoring/notifications/forms.py:56 monitoring/notifications/tables.py:98 msgid "Type" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_detail.html:29 #: monitoring/alarmdefs/templates/alarmdefs/notification_field.html:13 #: monitoring/notifications/forms.py:62 monitoring/notifications/tables.py:99 msgid "Address" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_detail.html:30 #: monitoring/alarmdefs/templates/alarmdefs/notification_field.html:14 msgid "Alarm" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_detail.html:31 #: monitoring/alarmdefs/templates/alarmdefs/notification_field.html:15 msgid "OK" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_detail.html:32 #: monitoring/alarmdefs/templates/alarmdefs/notification_field.html:16 msgid "Undetermined" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_edit.html:13 msgid "" "\n" " The Name field is used to identify the alarm definition.\n" " " msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_edit.html:17 msgid "" "\n" " The Expression field which if true, triggers a notification to be " "sent.\n" " See Alarm Expressions for how to write an expression.\n" " " msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_edit.html:20 msgid "" "\n" " The Notifications field contains the list of Notifications that " "should be sent when transitioning to another ALARM state.\n" " " msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_edit.html:27 #: monitoring/notifications/templates/notifications/_create.html:36 #: monitoring/notifications/templates/notifications/_edit.html:21 msgid "Cancel" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/_edit.html:28 msgid "Save" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/alarm.html:28 #: monitoring/alarms/templates/alarms/alarm.html:27 #: monitoring/alarms/templates/alarms/alarm_history.html:64 #: monitoring/notifications/templates/notifications/index.html:21 msgid "Previous Page" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/alarm.html:31 #: monitoring/alarms/templates/alarms/alarm.html:30 #: monitoring/alarms/templates/alarms/alarm_history.html:68 #: monitoring/notifications/templates/notifications/index.html:24 msgid "Next Page" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/detail.html:3 #: monitoring/alarmdefs/templates/alarmdefs/detail.html:14 msgid "Alarm Definition Details" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/edit.html:3 msgid "Edit Alarm Definitions" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/match_by_field.html:6 msgid "Add a match by" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/notification_field.html:5 #: monitoring/alarms/forms.py:228 msgid "No notifications available." msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/notification_field.html:5 #: monitoring/alarmdefs/templates/alarmdefs/notification_field.html:48 msgid "Add" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/notification_field.html:38 msgid "Remove" msgstr "" #: monitoring/alarmdefs/templates/alarmdefs/notification_field.html:46 #: monitoring/alarms/forms.py:225 msgid "Select Notification" msgstr "" #: monitoring/alarms/forms.py:147 msgid "+ Add more" msgstr "" #: monitoring/alarms/forms.py:201 msgid "State" msgstr "" #: monitoring/alarms/forms.py:266 msgid "Alarm has been created successfully." msgstr "" #: monitoring/alarms/forms.py:268 #, python-format msgid "Unable to create the alarm: %s" msgstr "" #: monitoring/alarms/forms.py:300 msgid "Alarm has been edited successfully." msgstr "" #: monitoring/alarms/forms.py:302 #, python-format msgid "Unable to edit the alarm: %s" msgstr "" #: monitoring/alarms/panel.py:23 monitoring/alarms/tables.py:257 #: monitoring/alarms/templates/alarms/alarm.html:4 #: monitoring/alarms/templates/alarms/alarm.html:18 msgid "Alarms" msgstr "" #: monitoring/alarms/tables.py:107 msgid "Show History" msgstr "" #: monitoring/alarms/tables.py:120 msgid "Create Alarm" msgstr "" #: monitoring/alarms/tables.py:136 msgid "Edit Alarm" msgstr "" #: monitoring/alarms/tables.py:149 msgid "Graph Metric" msgstr "" #: monitoring/alarms/tables.py:188 msgid "Show Alarm Definition" msgstr "" #: monitoring/alarms/tables.py:198 monitoring/alarms/tables.py:202 msgid "Delete Alarm" msgid_plural "Delete Alarms" msgstr[0] "" msgstr[1] "" #: monitoring/alarms/tables.py:210 msgid "Deleted Alarm" msgid_plural "Deleted Alarms" msgstr[0] "" msgstr[1] "" #: monitoring/alarms/tables.py:225 #: monitoring/alarms/templates/alarms/_filter.html:4 msgid "Filter Alarms" msgstr "" #: monitoring/alarms/tables.py:239 msgid "Status" msgstr "" #: monitoring/alarms/tables.py:243 msgid "Alarm Id" msgstr "" #: monitoring/alarms/tables.py:245 msgid "Metric Names" msgstr "" #: monitoring/alarms/tables.py:247 msgid "Metric Dimensions" msgstr "" #: monitoring/alarms/tables.py:274 msgid "Timestamp" msgstr "" #: monitoring/alarms/tables.py:276 msgid "Old State" msgstr "" #: monitoring/alarms/tables.py:277 msgid "New State" msgstr "" #: monitoring/alarms/tables.py:279 msgid "Alarm Metric Dimensions" msgstr "" #: monitoring/alarms/tables.py:280 msgid "Reason" msgstr "" #: monitoring/alarms/tables.py:288 #: monitoring/alarms/templates/alarms/alarm_history.html:4 #: monitoring/alarms/templates/alarms/alarm_history.html:8 msgid "Alarm History" msgstr "" #: monitoring/alarms/views.py:75 msgid "UTC" msgstr "" #: monitoring/alarms/views.py:76 msgid "Browser local" msgstr "" #: monitoring/alarms/views.py:98 monitoring/overview/views.py:194 #, python-format msgid "Unable to list alarms: %s" msgstr "" #: monitoring/alarms/views.py:151 monitoring/alarms/views.py:159 #: monitoring/alarms/views.py:172 monitoring/alarms/views.py:205 #: monitoring/alarms/views.py:212 monitoring/alarms/views.py:227 msgid "Could not retrieve alarms" msgstr "" #: monitoring/alarms/views.py:309 monitoring/alarms/views.py:358 #, python-format msgid "Could not retrieve alarm history for %s" msgstr "" #: monitoring/alarms/views.py:316 msgid "Failed to present alarm history" msgstr "" #: monitoring/alarms/views.py:333 #, python-format msgid "Could not retrieve alarm for %s" msgstr "" #: monitoring/alarms/templates/alarms/_filter.html:48 msgid "Alarm ID" msgstr "" #: monitoring/alarms/templates/alarms/_filter.html:49 #: monitoring/alarms/templates/alarms/_filter.html:56 msgid "Value" msgstr "" #: monitoring/alarms/templates/alarms/_filter.html:50 #: monitoring/alarms/templates/alarms/_filter.html:60 msgid "Submit" msgstr "" #: monitoring/alarms/templates/alarms/_filter.html:55 msgid "Dimension(s)" msgstr "" #: monitoring/alarms/templates/alarms/_filter.html:56 msgid "Key" msgstr "" #: monitoring/alarms/templates/alarms/_filter.html:59 msgid "Metric Name" msgstr "" #: monitoring/alarms/templates/alarms/alarm.html:8 msgid "Alarms for " msgstr "" #: monitoring/alarms/templates/alarms/alarm.html:11 msgid "All Alarms" msgstr "" #: monitoring/alarms/templates/alarms/alarm_history.html:10 msgid "Alarm Details" msgstr "" #: monitoring/alarms/templates/alarms/alarm_history.html:15 msgid "Associated Metrics" msgstr "" #: monitoring/alarms/templates/alarms/alarm_history.html:48 msgid "---Please select---" msgstr "" #: monitoring/alarms/templates/alarms/alarm_meter.html:4 msgid "Measurements for Alarms" msgstr "" #: monitoring/alarms/templates/alarms/alarm_meter.html:16 msgid "Service Health" msgstr "" #: monitoring/alarms/templates/alarms/alarm_meter.html:17 msgid "Service :" msgstr "" #: monitoring/config/local_settings.py:18 msgid "OpenStack Services" msgstr "" #: monitoring/config/local_settings.py:19 msgid "Servers" msgstr "" #: monitoring/notifications/constants.py:25 msgid "Address must contain a valid email address." msgstr "" #: monitoring/notifications/constants.py:27 msgid "Address must contain a valid URL address." msgstr "" #: monitoring/notifications/forms.py:53 msgid "A descriptive name of the notification method." msgstr "" #: monitoring/notifications/forms.py:61 msgid "The type of notification method (i.e. email)." msgstr "" #: monitoring/notifications/forms.py:66 msgid "The email/url address to notify." msgstr "" #: monitoring/notifications/forms.py:67 monitoring/notifications/tables.py:100 msgid "Period" msgstr "" #: monitoring/notifications/forms.py:72 msgid "The notification period." msgstr "" #: monitoring/notifications/forms.py:82 msgid "Period must be zero except for type webhook." msgstr "" #: monitoring/notifications/forms.py:119 msgid "Notification method has been created successfully." msgstr "" #: monitoring/notifications/forms.py:123 #, python-format msgid "Unable to create the notification method: %s" msgstr "" #: monitoring/notifications/forms.py:156 msgid "Notification has been edited successfully." msgstr "" #: monitoring/notifications/forms.py:159 #, python-format msgid "Unable to edit the notification: %s" msgstr "" #: monitoring/notifications/tables.py:28 monitoring/notifications/tables.py:32 msgid "Delete Notification" msgid_plural "Delete Notifications" msgstr[0] "" msgstr[1] "" #: monitoring/notifications/tables.py:40 msgid "Deleted Notification" msgid_plural "Deleted Notifications" msgstr[0] "" msgstr[1] "" #: monitoring/notifications/tables.py:55 #, python-format msgid "Unable to delete notification: %s" msgstr "" #: monitoring/notifications/tables.py:61 #: monitoring/notifications/templates/notifications/edit.html:3 msgid "Create Notification" msgstr "" #: monitoring/notifications/tables.py:77 #: monitoring/notifications/templates/notifications/_edit.html:7 msgid "Edit Notification" msgstr "" #: monitoring/notifications/views.py:57 monitoring/notifications/views.py:90 msgid "Could not retrieve notifications" msgstr "" #: monitoring/notifications/views.py:150 msgid "Unable to retrieve notification details." msgstr "" #: monitoring/notifications/templates/notifications/_create.html:7 #: monitoring/notifications/templates/notifications/_create.html:37 #: monitoring/notifications/templates/notifications/create.html:3 msgid "Create Notification Method" msgstr "" #: monitoring/notifications/templates/notifications/_create.html:19 #: monitoring/notifications/templates/notifications/_edit.html:13 msgid "" "\n" " The Name field is used to identify the notification method.\n" " " msgstr "" #: monitoring/notifications/templates/notifications/_create.html:22 msgid "" "\n" " The Type field indicates how the notification is sent when an alarm" " is triggered.\n" " " msgstr "" #: monitoring/notifications/templates/notifications/_create.html:26 msgid "" "\n" " The Address field indicates the email address, URL, or PagerDuty " "service\n" " key to be notified.\n" " " msgstr "" #: monitoring/notifications/templates/notifications/_create.html:30 msgid "" "\n" " A non-zero value in the period field indicates how frequently a " "notification\n" " should be resent (only valid for webhook urls).\n" " " msgstr "" #: monitoring/notifications/templates/notifications/_detail.html:7 #: monitoring/notifications/templates/notifications/detail.html:3 msgid "Notification Method Details" msgstr "" #: monitoring/notifications/templates/notifications/_detail.html:16 msgid "Close" msgstr "" #: monitoring/notifications/templates/notifications/_edit.html:22 msgid "Save Notification" msgstr "" #: monitoring/overview/panel.py:23 #: monitoring/overview/templates/overview/index.html:8 msgid "Overview" msgstr "" #: monitoring/overview/views.py:410 #, python-format msgid "User %s does not have sufficient privileges to access Kibana" msgstr "" #: monitoring/test/settings.py:76 msgid "Password must be between 8 and 18 characters." msgstr ""