###############################################################################
# Copyright (c) 2000, 2019 IBM Corporation and others.
#
# This program and the accompanying materials
# are made available under the terms of the Eclipse Public License 2.0
# which accompanies this distribution, and is available at
# https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
#     IBM Corporation - initial API and implementation
#     Jesper Steen Moller - Enhancement 254677 - filter getters/setters
###############################################################################



ExceptionHandler_seeErrorLogMessage= See error log for more details.

ImageDescriptorRegistry_Allocating_image_for_wrong_display_1=Allocating image for wrong display

JavaDebugPreferencePage_description=General settings for Java Debugging.
JavaDebugPreferencePage_Enable_hot_code_replace_1=Enable hot co&de replace
JavaDebugPreferencePage_Alert_me_when_hot_code_replace_fails_1=Show error when hot code replace &fails
JavaDebugPreferencePage_Alert_me_when_hot_code_replace_is_not_supported_1=Show error when hot code replace is not &supported
JavaDebugPreferencePage_Alert_me_when_obsolete_methods_remain_1=Show error when &obsolete methods remain after hot code replace
JavaDebugPreferencePage_Display__hexadecimal_values__byte__short__char__int__long__3=Display &hexadecimal values (byte, short, char, int, long)
JavaDebugPreferencePage_Display__unsigned_values__byte__5=Display &unsigned values (byte)
JavaDebugPreferencePage_Display_ASCII__character_values__byte__short__int__long__4=Display ASCII &character values (byte, short, int, long)
JavaDebugPreferencePage_Hot_Code_Replace_2=Hot Code Replace
JavaDebugPreferencePage_Suspend__execution_on_uncaught_exceptions_1=Suspend &execution on uncaught exceptions
JavaDebugPreferencePage_Suspend_Execution_1=Suspend Execution
JavaDebugPreferencePage_Suspend_execution_on_co_mpilation_errors_1=Suspend execution on co&mpilation errors
JavaDebugPreferencePage_Value_must_be_a_valid_integer_greater_than__0__ms_1=Value must be a valid integer greater than or equal to {0} ms
JavaDebugPreferencePage_Replace_classfiles_containing_compilation_errors_1=Replace &classfiles containing compilation errors
JavaDebugPreferencePage_ShowStepResult_1=S&how method result after a step operation (if supported by the VM; may be slow)
JavaDebugPreferencePage_ShowStepTimeout_ms_1=Don't show &if step operation takes longer than (ms):
JavaDebugPreferencePage_Communication_1=Communication
JavaDebugPreferencePage_Debugger__timeout__2=Debugger &timeout (ms):
JavaDebugPreferencePage__Launch_timeout__ms___1=&Launch timeout (ms):
JavaDebugPreferencePage_14=Suspend for &breakpoints during evaluations
JavaDetailFormattersManager_7=<details unavailable - not supported by VM>
JavaDetailFormattersManager_6=This thread has been manually suspended and therefore object details are unavailable.
JavaHotCodeReplaceListener_0=<unknown>
JavaPrimitivesPreferencePage_0=Primitive Display Options
JavaPrimitivesPreferencePage_1=Display options for primitive values

JavaStepFilterPreferencePage_Filter_co_nstructors_19=Filter co&nstructors
JavaStepFilterPreferencePage_Filter_s_ynthetic_methods__requires_VM_support__17=Filter s&ynthetic methods (requires VM support)
JavaStepFilterPreferencePage_Filter_static__initializers_18=Filter static &initializers
JavaStepFilterPreferencePage_Filter_getters=Filter simple &getters
JavaStepFilterPreferencePage_Filter_setters=Filter simple se&tters
JavaStepFilterPreferencePage_title=Step Filtering
JavaStepFilterPreferencePage_0=Step t&hrough filters
JavaStepFilterPreferencePage_description=Step filters are applied when the 'Use Step Filters' toggle is activated.
JavaStepFilterPreferencePage_Remove_all_selected_step_filters_16=Remove All Selected Step Filters
JavaStepFilterPreferencePage_Select_a_package_to_filter_when_stepping_27=&Select a package to filter when stepping:
JavaStepFilterPreferencePage_Select_a_type_to_filter_when_stepping_23=&Select a class to filter when stepping:
JavaStepFilterPreferencePage__Remove_15=&Remove
JavaStepFilterPreferencePage_Add__Filter_9=Add &Filter...
JavaStepFilterPreferencePage_Add__Package____13=Add &Packages...
JavaStepFilterPreferencePage__Use_step_filters=&Use Step Filters
JavaStepFilterPreferencePage_Add__Type____11=Add &Class...
JavaStepFilterPreferencePage_Add_package_to_step_filters_24=Add Packages to Step Filters
JavaStepFilterPreferencePage_Add_type_to_step_filters_20=Add Class to Step Filters
JavaStepFilterPreferencePage_Choose_a_Java_type_and_add_it_to_step_filters_12=Choose a Java Type and Add It to Step Filters
JavaStepFilterPreferencePage_Choose_a_package_and_add_it_to_step_filters_14=Choose Package(s) to Add to Step Filters
JavaStepFilterPreferencePage_Could_not_open_package_selection_dialog_for_step_filters_25=Could not open package selection dialog for step filters
JavaStepFilterPreferencePage_Could_not_open_type_selection_dialog_for_step_filters_21=Could not open type selection dialog for step filters
JavaStepFilterPreferencePage_Defined_step_fi_lters__8=Defined step fi&lters:
JavaStepFilterPreferencePage_Key_in_the_name_of_a_new_step_filter_10=Key in the Name of a New Step Filter
JavaStepFilterPreferencePage__Select_All_1=&Select All
JavaStepFilterPreferencePage_Selects_all_step_filters_2=Selects all step filters
JavaStepFilterPreferencePage_Deselect_All_3=D&eselect All
JavaStepFilterPreferencePage_Deselects_all_step_filters_4=Deselects all step filters

JDIDebugUIPlugin__0__contains_obsolete_methods_1={0} contains obsolete methods.
JDIDebugUIPlugin__0__was_unable_to_replace_the_running_code_with_the_code_in_the_workspace__2=Some code changes cannot be hot swapped into a running virtual machine, such as changing method names or introducing errors into running code.\n\nThe current target virtual machine [{0}] from launch [{1}] was unable to replace the running code with the code in the workspace.\n\nIt is safe to continue running the application, but you may notice discrepancies when debugging this application.
JDIDebugUIPlugin_1=Do not show error &when hot code replace fails
JDIDebugUIPlugin_4=Information
JDIDebugUIPlugin_2=Do not show error &when obsolete methods remain
JDIDebugUIPlugin_Error_1=Error
JDIDebugUIPlugin_Hot_code_replace_failed_1=Hot Code Replace Failed
JDIDebugUIPlugin_Obsolete_methods_remain_1=Obsolete Methods on the Stack
JDIDebugUIPlugin_Stepping_may_be_hazardous_1=The virtual machine was unable to remove all stack frames running old code from the call stack. The virtual machine is not supplying the debugger with valid data for those frames. Stepping into these obsolete frames may be hazardous to the target virtual machine.
JDIDebugUIPlugin_The_target_VM_does_not_support_hot_code_replace_1=The target VM does not support hot code replace
JDIDebugUIPlugin_3=Do not show error &when hot code replace is not supported
JDIDebugUIPlugin_0=Warning

JDIModelPresentation__No_explicit_return_value__30=(No explicit return value)
JDIModelPresentation__conditional__2=[conditional]
JDIModelPresentation___may_be_out_of_synch__2=\ (may be out of synch)
JDIModelPresentation___out_of_synch__1=\ (out of synch)
JDIModelPresentation___scoped__1=\ [scoped]
JDIModelPresentation__1____0__63={1}: {0}
JDIModelPresentation__disconnected__4=<disconnected>
JDIModelPresentation__not_responding__6=<not responding>
JDIModelPresentation__garbage_collected_object__6=<garbage collected object>
JDIModelPresentation__obsolete_method_in__1=<obsolete method in
JDIModelPresentation__terminated__2=<terminated>
JDIModelPresentation_access_71=\ [access]
JDIModelPresentation_access_and_modification_70=\ [access and modification]
JDIModelPresentation_caught_61=caught
JDIModelPresentation_caught_and_uncaught_60=caught and uncaught
JDIModelPresentation_Compilation_error_1=Compilation error
JDIModelPresentation_entry_and_exit=\ [entry and exit]
JDIModelPresentation_entry=\ [entry]
JDIModelPresentation_exit=\ [exit]
JDIModelPresentation_hit_count__67=hit count:
JDIModelPresentation_line__65=line:
JDIModelPresentation_line__76=line:
JDIModelPresentation_local_variables_unavailable=[local variables unavailable]
JDIModelPresentation_modification_72=\ [modification]
JDIModelPresentation_native_method=[native method]
JDIModelPresentation_not_available=not available
JDIModelPresentation_Suspend_VM=[Suspend VM]

###############################################################################
# Thread label keys are built programmatically

thread_terminated=Thread [{0}] (Terminated)
thread_evaluating=Thread [{0}] (Evaluating)
thread_running=Thread [{0}] (Running)
thread_stepping=Thread [{0}] (Stepping)
thread_suspended=Thread [{0}] (Suspended)
thread_suspended_problem=Thread [{0}] (Suspended ({1}))
thread_suspended_fieldaccess=Thread [{0}] (Suspended (access of field {1} in {2}))
thread_suspended_linebreakpoint=Thread [{0}] (Suspended (breakpoint at line {1} in {2}))
thread_suspended_methodentry=Thread [{0}] (Suspended (entry into method {1} in {2}))
thread_suspended_exception=Thread [{0}] (Suspended (exception {1}))
thread_suspended_exception_uncaught=Thread [{0}] (Suspended (uncaught exception {1}))
thread_suspended_methodexit=Thread [{0}] (Suspended (exit of method {1} in {2}))
thread_suspended_fieldmodification=Thread [{0}] (Suspended (modification of field {1} in {2}))
thread_suspended_runtoline=Thread [{0}] (Suspended (run to line {1} in {2}))
thread_suspended_classprepare=Thread [{0}] (Class load: {1})

thread_daemon_terminated=Daemon Thread [{0}] (Terminated)
thread_daemon_evaluating=Daemon Thread [{0}] (Evaluating)
thread_daemon_running=Daemon Thread [{0}] (Running)
thread_daemon_stepping=Daemon Thread [{0}] (Stepping)
thread_daemon_suspended=Daemon Thread [{0}] (Suspended)
thread_daemon_suspended_problem=Daemon Thread [{0}] (Suspended ({1}))
thread_daemon_suspended_fieldaccess=Daemon Thread [{0}] (Suspended (access of field {1} in {2}))
thread_daemon_suspended_linebreakpoint=Daemon Thread [{0}] (Suspended (breakpoint at line {1} in {2}))
thread_daemon_suspended_methodentry=Daemon Thread [{0}] (Suspended (entry into method {1} in {2}))
thread_daemon_suspended_exception=Daemon Thread [{0}] (Suspended (exception {1}))
thread_daemon_suspended_methodexit=Daemon Thread [{0}] (Suspended (exit of method {1} in {2}))
thread_daemon_suspended_fieldmodification=Daemon Thread [{0}] (Suspended (modification of field {1} in {2}))
thread_daemon_suspended_runtoline=Daemon Thread [{0}] (Suspended (run to line {1} in {2}))
thread_daemon_suspended_classprepare=Daemon Thread [{0}] (Class load: {1})

thread_system_terminated=System Thread [{0}] (Terminated)
thread_system_evaluating=System Thread [{0}] (Evaluating)
thread_system_running=System Thread [{0}] (Running)
thread_system_stepping=System Thread [{0}] (Stepping)
thread_system_suspended=System Thread [{0}] (Suspended)
thread_system_suspended_problem=System Thread [{0}] (Suspended ({1}))
thread_system_suspended_fieldaccess=System Thread [{0}] (Suspended (access of field {1} in {2}))
thread_system_suspended_linebreakpoint=System Thread [{0}] (Suspended (breakpoint at line {1} in {2}))
thread_system_suspended_methodentry=System Thread [{0}] (Suspended (entry into method {1} in {2}))
thread_system_suspended_exception=System Thread [{0}] (Suspended (exception {1}))
thread_system_suspended_methodexit=System Thread [{0}] (Suspended (exit of method {1} in {2}))
thread_system_suspended_fieldmodification=System Thread [{0}] (Suspended (modification of field {1} in {2}))
thread_system_suspended_runtoline=System Thread [{0}] (Suspended (run to line {1} in {2}))
thread_system_suspended_classprepare=System Thread [{0}] (Class load: {1})

thread_daemon_system_terminated=Daemon System Thread [{0}] (Terminated)
thread_daemon_system_evaluating=Daemon System Thread [{0}] (Evaluating)
thread_daemon_system_running=Daemon System Thread [{0}] (Running)
thread_daemon_system_stepping=Daemon System Thread [{0}] (Stepping)
thread_daemon_system_suspended=Daemon System Thread [{0}] (Suspended)
thread_daemon_system_suspended_problem=Daemon System Thread [{0}] (Suspended ({1}))
thread_daemon_system_suspended_fieldaccess=Daemon System Thread [{0}] (Suspended (access of field {1} in {2}))
thread_daemon_system_suspended_linebreakpoint=Daemon System Thread [{0}] (Suspended (breakpoint at line {1} in {2}))
thread_daemon_system_suspended_methodentry=Daemon System Thread [{0}] (Suspended (entry into method {1} in {2}))
thread_daemon_system_suspended_exception=Daemon System Thread [{0}] (Suspended (exception {1}))
thread_daemon_system_suspended_methodexit=Daemon System Thread [{0}] (Suspended (exit of method {1} in {2}))
thread_daemon_system_suspended_fieldmodification=Daemon System Thread [{0}] (Suspended (modification of field {1} in {2}))
thread_daemon_system_suspended_runtoline=Daemon System Thread [{0}] (Suspended (run to line {1} in {2}))
thread_daemon_system_suspended_classprepare=Daemon System Thread [{0}] (Class load: {1})

###############################################################################

JDIModelPresentation_target_suspended=\ (Suspended)

JDIModelPresentation_thread_filtered=[thread filtered]
JDIModelPresentation_uncaught_62=uncaught
SuspendTimeoutHandler_suspend=Suspend
SuspendTimeoutHandler_timeout_occurred=A timeout occurred while retrieving stack frames for thread: {0}.
JDIDebugUIPlugin_Searching_1=Searching
JDIModelPresentation_unknown_name__1=<unknown name>
JDIModelPresentation_unknown_type__2=<unknown type>
JDIModelPresentation_unknown_value__3=<unknown value>
JDIModelPresentation_unknown_declaring_type__4=<unknown declaring type>
JDIModelPresentation_unknown_receiving_type__5=<unknown receiving type>
JDIModelPresentation_unknown_method_name__6=<unknown method name>
JDIModelPresentation__unknown_arguements___7=(<unknown arguments>)
JDIModelPresentation__unknown_line_number__8=\ <unknown line number>
JDIModelPresentation_instance_1=[instance={0}]
NoLineNumberAttributesStatusHandler_Java_Breakpoint_1=Java Breakpoint
NoLineNumberAttributesStatusHandler_2=Unable to install breakpoint in {0} due to missing line number attributes. Modify compiler options to generate line number attributes.

JavaDetailFormattersPreferencePage_Add__Formatter____5=Ad&d...
JavaDetailFormattersPreferencePage_Allow_you_to_create_a_new_detail_formatter_6=Allow you to create a new detail formatter
JavaDetailFormattersPreferencePage__Remove_7=&Remove
JavaDetailFormattersPreferencePage_0=Detail Formatters
JavaDetailFormattersPreferencePage_1=Show variable details ('toString()' value):
JavaDetailFormattersPreferencePage_2=As the label for variables with detail &formatters
JavaDetailFormattersPreferencePage_3=As the label for &all variables
JavaDetailFormattersPreferencePage_4=In &detail pane only
JavaDetailFormattersPreferencePage_Remove_all_selected_detail_formatters_8=Remove all selected detail formatters
JavaDetailFormattersPreferencePage__Edit____9=&Edit...
JavaDetailFormattersPreferencePage_Edit_the_selected_detail_formatter_10=Edit the selected detail formatter
JavaDetailFormattersPreferencePage_Override_default___toString_____for_Variables_and_Expressions_view_details__1=Override default \'toString()\' for object details.
JavaDetailFormattersPreferencePage__Types_with_detail_formatters__2=&Types with detail formatters:
JavaDetailFormattersPreferencePage_Detail_formatter_code_snippet_defined_for_selected_type__3=Detail &formatter code snippet defined for selected type:

DetailFormatterDialog_Qualified_type__name__2=Qualified type &name:
DetailFormatterDialog_Qualified_type_name_must_not_be_empty__3=Qualified type name must not be empty.
DetailFormatterDialog_Select__type_4=Select &Type...
DetailFormatterDialog_Select_type_6=Select Type
DetailFormatterDialog_Could_not_open_type_selection_dialog_for_detail_formatters_7=Could not open type selection dialog for detail formatters
DetailFormatterDialog_Select_type_8=Select Type
DetailFormatterDialog_Select_type_9=Browse Type
DetailFormatterDialog_Select_type_10=In order to  browse a type, a project needs to be present and accessible.
DetailFormatterDialog_Select_a_type_to_format_when_displaying_its_detail_9=&Select a type to format when displaying its detail:
DetailFormatterDialog_Edit_Detail_Formatter_1=Edit Detail Formatter
DetailFormatterDialog_Add_Detail_Formatter_2=Add Detail Formatter
DetailFormatterDialog_Associated_code_must_not_be_empty_3=Detail formatter code snippet must not be empty
DetailFormatterDialog_Detail_formatter__code_snippet__1=Detail formatter &code snippet:
DetailFormatterDialog_17=Detail formatter &code snippet ({0} for code assist):

No_type_with_the_given_name_found_in_the_workspace__1=No type with the given name found in the workspace.
JavaDetailFormattersManager_Detail_formatter_error___1=Detail formatter error:
JavaDetailFormattersManager_An_exception_occurred___0__3=An exception occurred: {0}
DetailFormatterDialog__Enable_1=&Enable this detail formatter
DetailFormatterDialog_A_detail_formatter_is_already_defined_for_this_type_2=A detail formatter is already defined for this type

JavaUISourceLocator_Select_Source_1=Duplicate Source Files Found
JavaUISourceLocator__Select_the_source_that_corresponds_to__0__2=&Select the source that corresponds to {0}
JavaUISourceLocator__Matching_files__3=&Matching files:
JavaUISourceLocator__Location__4=&Location:

ConditionalBreakpointErrorDialog_Conditional_Breakpoint_Error_1=Conditional Breakpoint Error
ConditionalBreakpointErrorDialog__Edit_Condition_2=&Edit Condition

JavaDebugOptionsManager_Conditional_breakpoint_encountered_runtime_exception__1=Conditional breakpoint encountered runtime exception.
JavaDebugOptionsManager_Conditional_breakpoint_has_compilation_error_s___2=Conditional breakpoint has compilation error(s).
JavaDetailFormattersManager_null=null
JavaDetailFormattersManager_no_suspended_threads=[toString() unavailable - no suspended threads]
JavaDetailFormattersManager__unknown_=<unknown>
JavaLogicalStructuresPreferencePage_0=Java Logical Structures
JavaLogicalStructuresPreferencePage_1=&Logical Structures:
JavaLogicalStructuresPreferencePage_10=Show As
JavaLogicalStructuresPreferencePage_11=Define 'logical structures' used when browsing variables.
JavaLogicalStructuresPreferencePage_12=Previe&w:
JavaLogicalStructuresPreferencePage_2=&Add...
JavaLogicalStructuresPreferencePage_3=Add a new logical structure
JavaLogicalStructuresPreferencePage_4=&Edit...
JavaLogicalStructuresPreferencePage_5=Edit the selected logical structure
JavaLogicalStructuresPreferencePage_6=&Remove
JavaLogicalStructuresPreferencePage_7=Remove the selected logical structure(s)
JavaLogicalStructuresPreferencePage_8=\ [contributed by {0}]
JavaLogicalStructuresPreferencePage_9=Type
JDIModelPresentation_no_suspended_threads=[toString() unavailable - no suspended threads]

JavaDebugOptionsManager_Breakpoint___1=Breakpoint:
JavaDebugOptionsManager_Method_breakpoint___2=Method breakpoint:
JavaDebugOptionsManager_Watchpoint___3=Watchpoint:
JavaDebugOptionsManager_0=Initialize Java Debug Options
JavaDebugOptionsManager_exceptionRecurrence_dialogTitle=Repeated exception occurrence
JavaDebugOptionsManager_exceptionRecurrence_dialogMessage=The debugger is about to suspend on the exception breakpoint for {0}, \
but the current exception instance has already caused suspending before.\n\
\n\
Please choose how this breakpoint should react to repeated occurrences of the same exception instance:\n\
 \u2022 Skip:\t\t fire only once per exception instance\n\
 \u2022 Suspend:\t fire always\n\
 \u2022 Cancel:\t suspend now, but don't remember this decision\n\n\
This choice does not affect the global preference regarding uncaught exceptions. 
JavaDebugOptionsManager_Line_breakpoint___4=Line breakpoint:
JavaDebugOptionsManager_skip_buttonLabel=Skip
JavaDebugOptionsManager_suspend_buttonLabel=Suspend
JavaDebugOptionsManager_cancel_buttonLabel=Cancel

JavaBreakpointWorkbenchAdapterFactory_1=\ [line:

HotCodeReplaceErrorDialog_0=&Continue
HotCodeReplaceErrorDialog_1=&Terminate
HotCodeReplaceErrorDialog_2={0} Failed
HotCodeReplaceErrorDialog_3=Di&sconnect
HotCodeReplaceErrorDialog_5=Terminate
HotCodeReplaceErrorDialog_6=Disconnect
HotCodeReplaceErrorDialog_7=&Restart
HotCodeReplaceErrorDialog_8=Restart

CreateStepFilterDialog_2=Add Step Filter
CreateStepFilterDialog_3=&Pattern to filter:
CreateStepFilterDialog_4=Step Filter must be a valid Java identifier.
CreateStepFilterDialog_5=Step Filter already exists.
TypeNameResolver_0=The selected resource does not resolve to a Java element
JDIModelPresentation_116=\ (disabled)
JDIModelPresentation_117=\ [Include Subclasses]
JDIModelPresentation_118=(id={0})
JDIModelPresentation_0=owned by: {0}
JDIModelPresentation_1=waited by: {0}
JDIModelPresentation_2=waiting for: {0}
JDIModelPresentation_3=owns: {0}
JDIModelPresentation_4=An exception occurred. See log for details.
JDIModelPresentation_5=<VM does not provide monitor information>
JDIModelPresentation_6=<deleted breakpoint>
NoLineNumberAttributesStatusHandler_3=Don't &tell me again
JavaDebugPreferencePage_19=Wa&rn when unable to install breakpoint due to missing line number attributes
JavaDebugPreferencePage_20=Open popup when suspended on e&xception
JavaDebugPreferencePage_21=Default suspend policy for new brea&kpoints:
JavaDebugPreferencePage_22=Suspend Thread
JavaDebugPreferencePage_23=Suspend VM
JavaDebugPreferencePage_24=Default suspend policy for new &watchpoints:
JavaDebugPreferencePage_25=Access & Modification
JavaDebugPreferencePage_26=Access
JavaDebugPreferencePage_27=Modification
JavaDebugPreferencePage_promptWhenDeletingCondidtionalBreakpoint=&Prompt for confirmation when deleting a conditional breakpoint from editor
JavaDebugPreferencePage_0=See <a>''{0}''</a> for general debug settings.
JavaDebugPreferencePage_advancedSourcelookup=Use &advanced source lookup (JRE 1.5 and higher)  
JavaDebugPreferencePage_listenToThreadNameChanges=L&isten to thread name changes
JavaDebugPreferencePage_only_include_exported_entries=Onl&y include exported classpath entries when launching
JavaDebugPreferencePage_filterUnrelatedBreakpoints=Do &not install breakpoints from unrelated projects
JavaVariableLabelProvider_0=unavailable
EditLogicalStructureDialog_0=Qualified type &name:
EditLogicalStructureDialog_1=&Browse...
EditLogicalStructureDialog_2=D&escription:
EditLogicalStructureDialog_3=Applies to &subtypes
EditLogicalStructureDialog_4=Single val&ue
EditLogicalStructureDialog_5=List of va&riables
EditLogicalStructureDialog_7=Variable
EditLogicalStructureDialog_8=N&ame:
EditLogicalStructureDialog_9=&Code:
EditLogicalStructureDialog_10=A&dd
EditLogicalStructureDialog_11=Re&move
EditLogicalStructureDialog_12=U&p
EditLogicalStructureDialog_13=Do&wn
EditLogicalStructureDialog_14=name
EditLogicalStructureDialog_15=// code
EditLogicalStructureDialog_16=Qualified type name must not be empty.
EditLogicalStructureDialog_17=Description must not be empty.
EditLogicalStructureDialog_18=Associated code must not be empty.
EditLogicalStructureDialog_19=The logical structure must have at least one variable.
EditLogicalStructureDialog_20=Attribute name must not be empty.
EditLogicalStructureDialog_21=Associated code must not be empty.
EditLogicalStructureDialog_22=One variable has an empty name
EditLogicalStructureDialog_23=The code associated to the variable ''{0}'' must not be empty
EditLogicalStructureDialog_24=No type with the given name found in the workspace
EditLogicalStructureDialog_25=Browse the list of types defined in the workspace
EditLogicalStructureDialog_26=Indicates if this logical structure should be used for subtypes of this type too
EditLogicalStructureDialog_27=Add a new variable
EditLogicalStructureDialog_28=Remove the selected variables
EditLogicalStructureDialog_29=Move the selected variables up
EditLogicalStructureDialog_30=Move the selected variables down
EditLogicalStructureDialog_31=Edit Java Logical Structure
EditLogicalStructureDialog_32=Add Java Logical Structure
EditLogicalStructureDialog_33=Structure type
HeapWalkingPreferencePage_0=Specify default heap walking settings for VMs that support instance and reference information retrieval.
HeapWalkingPreferencePage_1=Maximum &instances to display:
HeapWalkingPreferencePage_2=Maximum &references to display:
HeapWalkingPreferencePage_3=Instance and Reference Display Settings
HeapWalkingPreferencePage_4=Setting a count to zero indicates all instances or references should be shown.
HeapWalkingPreferencePage_5=Display references as &variables
HeapWalkingPreferencePage_6=Value must be a positive Integer
JavaVariableContentAssistDescription_Keystroke=Content Assist Available ({0})