// I18N constants
//
// LANG: "en", ENCODING: UTF-8
// Author: Translator-Name, <email@example.com>
//
// Last revision: 2018-04-12
// Please don´t remove this information
// If you modify any source, please insert a comment with your name and e-mail
//
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
//
// (Please, remove information below)
// FOR TRANSLATORS:
//
//   1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE
//      (at least a valid email address)
//
//   2. PLEASE TRY TO USE UTF-8 FOR ENCODING;
//      (if this is not possible, please include a comment
//       that states what encoding is necessary.)

{
    "'onClick'=": "",
    "Access Key:": "",
    "Action URL:": "",
    "Button Script": "",
    "Cancel": "",
    "Checked": "",
    "Columns:": "",
    "Default text (optional)": "",
    "Dimensions": "",
    "Disabled": "",
    "Encoding:": "",
    "For Control:": "",
    "Form": "",
    "Form Element: FIELDSET": "",
    "Form Element: INPUT": "",
    "Form Element: LABEL": "",
    "Form Element: SELECT": "",
    "Form Element: TEXTAREA": "",
    "Form Name:": "",
    "Form handler script": "",
    "Get": "",
    "HTML-Form to CGI (default)": "",
    "Hard": "",
    "Height in number of rows": "",
    "Image URL:": "",
    "Image source": "",
    "Initial Text:": "",
    "Insert/Edit Form": "",
    "Insert/Edit Form Element FIELDSET": "",
    "Insert/Edit Form Element INPUT": "",
    "Insert/Edit Form Element LABEL": "",
    "Insert/Edit Form Element SELECT": "",
    "Insert/Edit Form Element TEXTAREA": "",
    "Javascript for button click": "",
    "Label:": "",
    "Legend:": "",
    "Max length:": "",
    "Maximum number of characters accepted": "",
    "Method:": "",
    "Name": "",
    "Name of the form input": "",
    "Name of the form select": "",
    "Name/ID:": "",
    "OK": "",
    "Off": "",
    "Options": "",
    "Physical": "",
    "Please enter a Label": "",
    "Post": "",
    "Read Only": "",
    "Rows:": "",
    "Size of text box in characters": "",
    "Size:": "",
    "Soft": "",
    "Tab Index:": "",
    "Target Frame:": "",
    "Text:": "",
    "URL of image": "",
    "Value of the form input": "",
    "Value:": "",
    "Virtual": "",
    "Width in number of characters": "",
    "Wrap Mode:": "",
    "You must enter a Name": "",
    "multipart Form Data (File-Upload)": "",
    "name of the textarea": "",
    "normal": "",
    "nowrap": "",
    "pre": ""
}