# ProGuard -- shrinking, optimization, and obfuscation of Java class files.
# Copyright (c) 2002-2007 Eric Lafortune (eric@graphics.cornell.edu)

#
# Tab names.
#
proGuardTab     = ProGuard
inputOutputTab  = Input/Output
shrinkingTab    = Shrinking
obfuscationTab  = Obfuscation
optimizationTab = Optimization
informationTab  = Information
processTab      = Process
reTraceTab      = ReTrace

#
# Splash text.
#
developed       = Developed by Eric Lafortune
shrinking       = Shrinking
optimization    = Optimization
obfuscation     = Obfuscation
preverification = Preverification

#
# Panel titles.
#
welcome                       = Welcome to ProGuard, version 4.0.1
options                       = Options
keepAdditional                = Keep additional classes and class members
keepNamesAdditional           = Keep additional class names and class member names
assumeNoSideEffectsAdditional = Assume no side effects for additional methods
whyAreYouKeeping              = Why are you keeping
preverificationAndTargeting   = Preverification and targeting
consistencyAndCorrectness     = Consistency and correctness
processingConsole             = Processing console
reTraceSettings               = ReTrace settings
deobfuscatedStackTrace        = De-obfuscated stack trace

keepAdditionalTip = \
  If required, keep additional classes, fields, and methods as entry points.
keepNamesAdditionalTip = \
  If required, keep the names of additional classes, fields, and methods.
assumeNoSideEffectsAdditionalTip = \
  <html>Optionally specify additional methods that don't have any side effects.<br>\
  <i>Only add entries if you know what you're doing!</i></html>
whyAreYouKeepingTip = \
  Ask ProGuard why it is keeping certain classes, fields, or methods.

#
# Info texts.
#
proGuardInfo = \
  ProGuard is a free class file shrinker, optimizer, obfuscator, and preverifier.\
  \n\n\
  With this GUI, you can create, load, modify, and save ProGuard configurations. \
  \n\
  You can then process your code right away, or you can run ProGuard from the \
  command line using your saved configuration. \
  \n\n\
  With the ReTrace part of this GUI you can de-obfuscate your stack traces.\
  \n\n\
  ProGuard and ReTrace are written and maintained by Eric Lafortune.\
  \n\n\
  Distributed under the GNU General Public License.\
  \n\
  Copyright (c) 2002-2007.

processingInfo = \
  You can now start processing your code, \
  or you can run ProGuard from the command line using your saved configuration.

reTraceInfo = \
  If you had ProGuard write out a mapping file, \
  you can de-obfuscate your obfuscated stack traces with ReTrace!\
  \n\n\
  You can load an obfuscated stack trace from a file, \
  or you can paste it straight into the text area above.

#
# Titles and labels corresponding to common ProGuard options.
#
programJars = Program jars, wars, ears, zips, and directories
libraryJars = Library jars, wars, ears, zips, and directories

shrink                           = Shrink
printUsage                       = Print usage

optimize                         = Optimize
allowAccessModification          = Allow access modification
optimizationPasses               = Optimization passes

obfuscate                        = Obfuscate
printMapping                     = Print mapping
applyMapping                     = Apply mapping
obfuscationDictionary            = Obfuscation dictionary
overloadAggressively             = Overload aggressively
useUniqueClassMemberNames        = Use unique class member names
flattenPackageHierarchy          = Flatten package hierarchy
repackageClasses                 = Repackage classes
useMixedCaseClassNames           = Use mixed-case class names
keepAttributes                   = Keep attributes
renameSourceFileAttribute        = Rename SourceFile attribute
adaptResourceFileNames           = Adapt resource file names
adaptResourceFileContents        = Adapt resource file contents

preverify                        = Preverify
microEdition                     = Micro Edition

verbose                          = Verbose
note                             = Note special or unusual input
warn                             = Warn about possibly erronous input
ignoreWarnings                   = Ignore warnings about possibly erronous input
skipNonPublicLibraryClasses      = Skip non-public library classes
skipNonPublicLibraryClassMembers = Skip non-public library class members
forceProcessing                  = Force processing
target                           = Target
targets                          = 1.0,1.1,1.2,1.3,1.4,1.5,1.6
printSeeds                       = Print seeds
printConfiguration               = Print configuration
dump                             = Print class files

mappingFile                      = Mapping file
obfuscatedStackTrace             = Obfuscated stack trace

programJarsTip = \
  <html>The input jars (wars, ears, zips, directories), followed by<br>\
  their corresponding output jars (wars, ears, zips, directories).</html>
libraryJarsTip = \
  <html>The library jars (wars, ears, zips, directories), on which the program jars depend.<br>\
  The library jars are required for processing, but they are not copied to the output.</html>

shrinkTip = \
  Remove unused classes, fields, and methods from the output.
printUsageTip = \
  Print out the list of unused classes, fields, and methods.

optimizeTip = \
  Optimize the bytecode of the processed classes.
allowAccessModificationTip = \
  Allow the optimization step to modify the access modifiers of classes, fields, and methods.
optimizationPassesTip = \
  The number of optimization passes to be performed.

obfuscateTip = \
  Obfuscate the names of the processed classes, fields, and methods.
printMappingTip = \
  Print out the obfuscation mapping of original names to obfuscated names.
applyMappingTip = \
  Apply the given mapping of original names to obfuscated names.
obfuscationDictionaryTip = \
  Use the words in the given file for obfuscating field names and method names.
overloadAggressivelyTip = \
  <html>Allow fields and methods to get the same obfuscated names, even if only their types or<br>\
  return types differ. This is not allowed in the Java language, but it is allowed in bytecode.</html>
useUniqueClassMemberNamesTip = \
  <html>Make sure fields and methods get the same obfuscation mapping across classes, even<br>\
  if they are unrelated. This is advisable if the output is to be obfuscated incrementally.</html>
flattenPackageHierarchyTip = \
  Move all packages that are renamed into the given parent package.
repackageClassesTip = \
  Move all classes that are renamed into the given package.
packageTip = \
  The package name (optionally nothing, for the root package).
useMixedCaseClassNamesTip = \
  <html>Generate mixed-case obfucated class names. This will complicate unpacking<br>\
  the resulting jars on case-insensitive file systems, should that be necessary.</html>
keepAttributesTip = \
  Keep the specified optional class file attributes.
attributesTip = \
  <html>A comma-separated list of class file attributes.\
  <ul>\
  <li>"Exceptions,Innerclasses, Signature" are necessary if the output is to be used as a library.\
  <li>"Deprecated" is optional if the output is to be used as a library.\
  <li>"LocalVariable*Table" can be useful for debugging.\
  <li>"Sourcefile,LineNumberTable" are necessary for generating stack traces.\
  <li>"*Annotations*" is necessary for preserving annotations.\
  </ul>\
  The wildcard <code>*</code> and the negator <code>!</code> are allowed.</html>
renameSourceFileAttributeTip = \
  <html>Put the given string in the "SourceFile" attribute of the processed class files.<br>\
  It will appear as the file name of the classes in stack traces.</html>
sourceFileAttributeTip = \
  The replacement "SourceFile" string.
adaptResourceFileNamesTip = \
  <html>Rename the specified resource files, based on the<br>\
  obfuscated names of the corresponding class files.</html>
adaptResourceFileContentsTip = \
  <html>Adapt the contents of the given resource files, based<br>\
  on the obfuscated names of the processed classes.</html>
fileNameFilterTip = \
  <html>A filter on file names,<br>\
  e.g. <code>mydirectory1/**,mydirectory2/**</code><br>\
  Possible wildcards:\
  <ul>\
  <li><code>?</code> for any single character, except the directory separator.\
  <li><code>*</code> for any number of any characters, except the directory separator.\
  <li><code>**</code> for any number of any characters.\
  </ul></html>

preverifyTip = \
  Preverify the processed classes, for Java Micro Edition or for Java 6.
microEditionTip = \
  Target Java Micro Edition.

verboseTip = \
  Print out verbose messages while processing.
noteTip = \
  Print out notes about special or unusual input.
warnTip = \
  <html>Print out warnings about possibly erronous input.<br>\
  <i>Only unset this option if you know what you're doing!</i></html>
ignoreWarningsTip = \
  <html>Ignore any warnings about possibly erronous input.<br>\
  <i>Only set this option if you know what you're doing!</i></html>
skipNonPublicLibraryClassesTip = \
  <html>Skip reading non-public library classes, for efficiency.<br>\
  You may have to unset this option if ProGuard complains about missing classes.</html>
skipNonPublicLibraryClassMembersTip = \
  <html>Skip reading non-public library fields and methods, for efficiency.<br>\
  You may have to unset this option if ProGuard complains about missing class members.</html>
forceProcessingTip = \
  Always process the input, even if the output seems up to date.
targetTip = \
  Target the specified version of Java.
printSeedsTip = \
  Print out the list of kept classes, fields, and methods.
printConfigurationTip = \
  Print out the configuration.
dumpTip = \
  Print out the internal structure of the processed class files.

mappingFileTip = \
  The file containing the mapping of original names to obfuscated names.
obfuscatedStackTraceTip = \
  A stack trace produced by previously obfuscated code.

#
# Titles and labels corresponding to ProGuard keep options.
#
keepTitle = Keep

keep                   = Keep classes and class members
keepClassMembers       = Keep class members only
keepClassesWithMembers = Keep classes and class members, if members are present

allowTitle = Allow

allowShrinking    = Allow shrinking
allowOptimization = Allow optimization
allowObfuscation  = Allow obfuscation

keepTitleTip = Keep the specified classes and/or their fields and methods.

keepTip = \
  <html>Keep the specified classes, fields, and methods as entry points.<br>\
  This is the most common option.</html>
keepClassMembersTip = \
  Only keep the specified fields and methods as entry points.
keepClassesWithMembersTip = \
  <html>Keep the specified classes, fields, and methods,<br>\
  on the condition that the fields and methods are present.</html>

allowTitleTip = \
  <html>Optionally relax keeping the specified classes, fields, and methods.<br>\
  <i>These are advanced options.</i></html>

allowShrinkingTip = \
  Remove the specified classes, fields, and methods anyway, if they are not used.
allowOptimizationTip = \
  <html>Optimize the specified classes, fields, and methods as entry points anyway.<br>\
  <i>Only set this option if you know what you're doing!</i></html>
allowObfuscationTip = \
  <html>Obfuscate the names of the specified classes, fields, and methods anyway.<br>\
  <i>Only set this option if you know what you're doing!</i></html>

#
# Further keep titles and labels.
#
comments                    = Comments
access                      = Access
required                    = Required
not                         = Not
dontCare                    = Don't care
annotation                  = Annotation
class                       = Class
extendsImplementsAnnotation = Extends/implements class with annotation
extendsImplementsClass      = Extends/implements class
classMembers                = Class members

extensionsOf = Extensions of
specificationNumber = Specification #

fieldType     = Field type
returnType    = Return type
name          = Name
argumentTypes = Argument types

commentsTip = \
  Optionally add a comment for this option in the configuration file.
accessTip = \
  <html>Optionally place constraints on the access modifiers of this element.<br>\
  E.g. only match public elements.</html>
requiredTip = \
  The access modifier has to be set.
notTip = \
  The access modifier must not be set.
dontCareTip = \
  The access modifier is irrelevant.
annotationTip = \
  <html>Optionally require the given annotation to be present on this element.<br>\
  E.g. only match elements that have an annotation <code>myPackage.MyAnnotation</code>.<br>\
  <i>This is an advanced option.</i></html>
classTip = \
  The name of the class or interface.
extendsImplementsAnnotationTip = \
  <html>Optionally require the given annotation to be present on the<br>\
  extended or implemented class or interface.<br>\
  E.g. only match classes that extend a class that has an annotation<br>\
  <code>myPackage.MyAnnotation</code>.<br>\
  <i>This is an advanced option.</i></html>
extendsImplementsClassTip = \
  <html>Optionally require the class to implement or extend the given class or interface.<br>\
  E.g. only match classes that implement an interface <code>myPackage.MyInterface</code>.</html>
classMembersTip = \
  <html>Optionally keep fields and methods as entry points in the matching class or classes.<br>\
  E.g. keep all public '<code>get*</code>' methods as entry points.</html>

fieldTypeTip     = The field type.
returnTypeTip    = The method return type, if any.
nameTip          = The name.
argumentTypesTip = The method argument types, if any.

classNameTip = \
  <html>The class name, e.g. <code>myPackage.MyClass</code><br>\
  Possible wildcards:\
  <ul>\
  <li><code>?<code> for any single character, except the package separator.\
  <li><code>*<code> for any number of any characters, except the package separator.\
  <li><code>**<code> for any number of any characters.\
  </ul></html>
classNamesTip = \
  <html>A regular expression to further constrain the class names,<br>\
  e.g. <code>myPackage1.MyClass,myPackage2.**</code><br>\
  Possible wildcards:\
  <ul>\
  <li><code>?<code> for any single character, except the package separator.\
  <li><code>*<code> for any number of any characters, except the package separator.\
  <li><code>**<code> for any number of any characters.\
  </ul></html>
typeTip = \
  <html>The type, e.g. <code>int</code>, or <code>java.lang.String[]</code><br>\
  Possible wildcards:\
  <ul>\
  <li><code>%<code> for any primitive type.\
  <li><code>?<code> for any single character, except the package separator.\
  <li><code>*<code> for any number of any characters, except the package separator.\
  <li><code>**<code> for any number of any characters.\
  <li><code>***<code> (or empty) for any type.\
  </ul></html>
fieldNameTip = \
  <html>The field name, e.g. <code>myField</code><br>\
  Possible wildcards:\
  <ul>\
  <li><code>?<code> for any single character.\
  <li><code>*<code> for any number of any characters.\
  </ul></html>
methodNameTip = \
  <html>The method name, e.g. <code>myMethod</code><br>\
  Possible wildcards:\
  <ul>\
  <li><code>?<code> for any single character.\
  <li><code>*<code> for any number of any characters.\
  </ul></html>
argumentTypes2Tip = \
  <html>The comma-separated list of argument types,<br>\
  e.g. <code>java.lang.String[],int,boolean</code><br>\
  Possible wildcards:\
  <ul>\
  <li><code>%<code> for any primitive type.\
  <li><code>?<code> for any single character, except the package separator.\
  <li><code>*<code> for any number of any characters, except the package separator.\
  <li><code>**<code> for any number of any characters.\
  <li><code>***<code> for any type.\
  <li><code>...<code> for any number of any arguments.\
  </ul></html>

#
# File selection titles.
#
selectConfigurationFile         = Select a configuration file...
saveConfigurationFile           = Save configuration...
selectUsageFile                 = Select a usage output file...
selectPrintMappingFile          = Select an output mapping file...
selectApplyMappingFile          = Select an input mapping file...
selectObfuscationDictionaryFile = Select an obfuscation dictionary...
selectSeedsFile                 = Select a seeds output file...
selectDumpFile                  = Select a class dump file...
selectStackTraceFile            = Select a stack trace file...

cantOpenConfigurationFile  = Can''t open the configuration file [{0}]
cantParseConfigurationFile = Can''t parse the configuration file [{0}]
cantSaveConfigurationFile  = Can''t save the configuration file [{0}]
cantOpenStackTraceFile     = Can''t open the stack trace file [{0}]

jarWarEarZipExtensions = *.jar, *.war, *.ear, *.zip (archives and directories)
proExtension           = *.pro (ProGuard configurations)

addJars     = Add one or more jars or directories...
chooseJars  = Choose different jars or directories...
enterFilter = Optionally filter the file names contained in the selected entries.

filters       = Filters
nameFilter    = File name filter
jarNameFilter = Jar name filter
warNameFilter = War name filter
earNameFilter = Ear name filter
zipNameFilter = Zip name filter

outputFileTip = The optional output file.
inputFileTip  = The input file.

nameFilterTip    = A filter on plain class file names and resource file names.
jarNameFilterTip = A filter on jar file names.
warNameFilterTip = A filter on war file names.
earNameFilterTip = A filter on ear file names.
zipNameFilterTip = A filter on zip file names.

#
# Simple button texts.
#
previous = Previous
next     = Next
browse   = Browse...
advanced = Advanced options
basic    = Basic options
ok       = Ok
cancel   = Cancel

add       = Add...
addInput  = Add input...
addOutput = Add output...
edit      = Edit...
filter    = Filter...
remove    = Remove
moveUp    = Move up
moveDown  = Move down

moveToLibraries = Move to libraries
moveToProgram   = Move to program

addField  = Add field...
addMethod = Add method...

loadConfiguration = Load configuration...
viewConfiguration = View configuration
saveConfiguration = Save configuration...
loadStackTrace    = Load stack trace...
process           = Process!
reTrace           = ReTrace!

advancedTip  = Toggle between showing basic options and advanced options.

addInputTip  = Add an input jar, war, ear, zip, or directory.
addOutputTip = Add an output jar, war, ear, zip, or directory.
addTip       = Add an entry.
editTip      = Edit the selected entries.
filterTip    = Put filters on the contents of the selected entries.
removeTip    = Remove the selected entries.
moveUpTip    = Move the selected entries up in the list.
moveDownTip  = Move the selected entries down in the list.

moveToLibrariesTip = Move to selected entries to the libraries.
moveToProgramTip   = Move to selected entries to the program.

addFieldTip  = Add a field to the specification.
addMethodTip = Add a method to the specification.

loadConfigurationTip = Optionally load an initial configuration.
viewConfigurationTip = View the current configuration.
saveConfigurationTip = Save the current configuration.
loadStackTraceTip    = Load a stack trace from a file.
processTip           = Start processing, based on the current configuration.
reTraceTip           = De-obfuscate the given stack trace.

#
# Progress messages and error messages.
#
warning         = Warning
outOfMemory     = Out of memory
outOfMemoryInfo = \n\
  You should run the ProGuard GUI with a larger java heap size, \
  with a command like\
  \n\n\t\
  java -Xms128m -Xmx192m -jar proguardgui.jar {0}\
  \n\n\
  or you can try running ProGuard from the command line. \
  with a command like\
  \n\n\t\
  java -jar proguard.jar @{0}
sampleConfigurationFileName = configuration.pro
errorProcessing = Error during processing
errorReTracing  = Error during retracing
