## the classes mentioned in this file are allowed/whitelisted to be loaded by the KindletClassLoader.
## Commented out classes or missing classes/packages will not be considered as whitelised and hence not allowed.

## All framework classes may not be considered as whitelisted here.

## These are the public Kindlet API and UI components which are available for public consumption.
## package private classes defined in Kindlet project should not be whitelisted for general consumption.
com.amazon.kindle.kindlet.Kindlet
com.amazon.kindle.kindlet.KindletContext
com.amazon.kindle.kindlet.AbstractKindlet
com.amazon.kindle.kindlet.device.Device
com.amazon.kindle.kindlet.device.DeviceCapabilities
com.amazon.kindle.kindlet.device.Device$SupportLevel
com.amazon.kindle.kindlet.device.DeviceFactory
com.amazon.kindle.kindlet.event.KindleKeyCodes
com.amazon.kindle.kindlet.event.KindleSimulatedKeyEvent
com.amazon.kindle.kindlet.input.keyboard.OnscreenKeyboardManager
com.amazon.kindle.kindlet.input.keyboard.OnscreenKeyboardListener
com.amazon.kindle.kindlet.input.keyboard.OnscreenKeyboardAdapter
com.amazon.kindle.kindlet.input.keyboard.OnscreenKeyboardEvent
com.amazon.kindle.kindlet.net.Connectivity
com.amazon.kindle.kindlet.net.ConnectivityHandler
com.amazon.kindle.kindlet.net.ConnectivityStateException
com.amazon.kindle.kindlet.net.NetworkDisabledException
com.amazon.kindle.kindlet.net.CancelledConnectivityRequestException
com.amazon.kindle.kindlet.net.KindleAuthenticator
com.amazon.kindle.kindlet.net.NetworkDisabledDetails
com.amazon.kindle.kindlet.net.NetworkDisabledReason
com.amazon.kindle.kindlet.ui.KBox
com.amazon.kindle.kindlet.ui.KBox$Filler
com.amazon.kindle.kindlet.ui.KBoxLayout
com.amazon.kindle.kindlet.ui.KButton
com.amazon.kindle.kindlet.ui.KComponent
com.amazon.kindle.kindlet.ui.KImage
com.amazon.kindle.kindlet.ui.KImage$Alignment
com.amazon.kindle.kindlet.ui.KindleOrientation
com.amazon.kindle.kindlet.ui.KLabel
com.amazon.kindle.kindlet.ui.KLabelMultiline
com.amazon.kindle.kindlet.ui.KMenu
com.amazon.kindle.kindlet.ui.KMenuEvent
com.amazon.kindle.kindlet.ui.KMenuItem
com.amazon.kindle.kindlet.ui.KMenuListener
com.amazon.kindle.kindlet.ui.KOptionPane
com.amazon.kindle.kindlet.ui.KOptionPane$MessageDialogListener
com.amazon.kindle.kindlet.ui.KOptionPane$ConfirmDialogListener
com.amazon.kindle.kindlet.ui.KOptionPane$InputDialogListener
com.amazon.kindle.kindlet.ui.KPagedContainer
com.amazon.kindle.kindlet.ui.KPages
com.amazon.kindle.kindlet.ui.KPanel
com.amazon.kindle.kindlet.ui.KPasswordField
com.amazon.kindle.kindlet.ui.KProgress
com.amazon.kindle.kindlet.ui.KRepaintManager
com.amazon.kindle.kindlet.ui.KTextArea
com.amazon.kindle.kindlet.ui.KTextComponent
com.amazon.kindle.kindlet.ui.KTextField
com.amazon.kindle.kindlet.ui.KTextOptionEvent
com.amazon.kindle.kindlet.ui.KTextOptionFontMenu
com.amazon.kindle.kindlet.ui.KTextOptionListMenu
com.amazon.kindle.kindlet.ui.KTextOptionMenuSelectable
com.amazon.kindle.kindlet.ui.KTextOptionMenu
com.amazon.kindle.kindlet.ui.KTextOptionMenuItem
com.amazon.kindle.kindlet.ui.KTextOptionOrientationMenu
com.amazon.kindle.kindlet.ui.KTextOptionPane
com.amazon.kindle.kindlet.ui.KindletUIResources
com.amazon.kindle.kindlet.ui.KindletUIResources$KFontStyle
com.amazon.kindle.kindlet.ui.KindletUIResources$KColorName
com.amazon.kindle.kindlet.ui.KindletUIResources$KFontFamilyName
com.amazon.kindle.kindlet.ui.OrientationController
com.amazon.kindle.kindlet.ui.border.KBorder
com.amazon.kindle.kindlet.ui.border.KAbstractBorder
com.amazon.kindle.kindlet.ui.border.KEmptyBorder
com.amazon.kindle.kindlet.ui.border.KLineBorder
com.amazon.kindle.kindlet.media.AudioAdapter
com.amazon.kindle.kindlet.media.AudioState
com.amazon.kindle.kindlet.media.AudioStateChange
com.amazon.kindle.kindlet.media.AudioManager
com.amazon.kindle.kindlet.media.Audio
com.amazon.kindle.kindlet.media.AudioException
com.amazon.kindle.kindlet.media.AudioEvent
com.amazon.kindle.kindlet.media.AudioErrorEvent
com.amazon.kindle.kindlet.media.AudioListener
com.amazon.kindle.kindlet.media.MediaSource
## Developers should not be able to get acccess/load the AppContextBridge class (this is abstract anyway) although they 
## can always work with their appcontext and EventQueue.
#com.amazon.kindle.kindlet.ui.helper.AppContextBridge
## This is just used internally by the UI components as the resource bundle. 
##Unfortunately resource bundle needs to be private to get loaded successfully.
#com.amazon.kindle.kindlet.ui.resources.SettingsResources

## Whitelisting the helpers will prevent them from getting obfuscated; which we do not want as these will
## not be used externally by any of the applications. 
#com.amazon.kindle.kindlet.ui.helper.KMenuHelper
#com.amazon.kindle.kindlet.ui.helper.KOptionPaneHelper
#com.amazon.kindle.kindlet.ui.helper.ImageUtilHelper
com.amazon.kindle.kindlet.ui.image.ImageUtil
com.amazon.kindle.kindlet.ui.pages.ComponentProvider
com.amazon.kindle.kindlet.ui.pages.DefaultComponentProvider
com.amazon.kindle.kindlet.ui.pages.LocationIterator
com.amazon.kindle.kindlet.ui.pages.LocationIterators
com.amazon.kindle.kindlet.ui.pages.PageModel
com.amazon.kindle.kindlet.ui.pages.PageModels
com.amazon.kindle.kindlet.ui.pages.PageModels$ListPageModel
com.amazon.kindle.kindlet.ui.pages.PageProvider
com.amazon.kindle.kindlet.ui.pages.PageProviders
com.amazon.kindle.kindlet.security.SecureStorage
com.amazon.kindle.kindlet.security.CorruptSecureStorageException
com.amazon.kindle.kindlet.subscription.Subscription
com.amazon.kindle.kindlet.ui.Focus2DTraversable
com.amazon.kindle.kindlet.ui.Focus2DTraversalPolicy
com.amazon.kindle.kindlet.ui.FocusTraversalOrthogonalMode
com.amazon.kindle.kindlet.ui.FocusTraversalEdgePolicy
com.amazon.kindle.kindlet.ui.AbstractFocus2DTraversalPolicy
com.amazon.kindle.kindlet.ui.LayoutFocus2DTraversalPolicy
com.amazon.kindle.kindlet.ui.LogicalFocus2DTraversalPolicy
com.amazon.kindle.kindlet.util.Store
com.amazon.kindle.kindlet.util.Timer
com.amazon.kindle.kindlet.util.TimerTask
com.amazon.kindle.kindlet.util.TimeoutException

## PBP Basis profile list of classes.
java.awt.ActiveEvent
java.awt.Adjustable
java.awt.AlphaComposite
java.awt.AWTError
java.awt.AWTEvent
java.awt.AWTEventMulticaster
java.awt.AWTException
java.awt.AWTKeyStroke
java.awt.AWTPermission
java.awt.BasicStroke
java.awt.BorderLayout
java.awt.CardLayout
java.awt.Color
java.awt.color.ColorSpace
java.awt.Component
java.awt.Composite
java.awt.Container
java.awt.ContainerOrderFocusTraversalPolicy
java.awt.Cursor
java.awt.DefaultFocusTraversalPolicy
java.awt.Dimension 
java.awt.EventQueue
java.awt.FlowLayout
java.awt.FocusTraversalPolicy
java.awt.Font
java.awt.Font$1
java.awt.FontMetrics
java.awt.font.TextAttribute
java.awt.font.TextHitInfo
java.awt.Frame
java.awt.Graphics
java.awt.Graphics2D
java.awt.GraphicsConfiguration
java.awt.GraphicsDevice
java.awt.GraphicsEnvironment
java.awt.GridBagConstraints
java.awt.GridBagLayout
java.awt.GridBagLayoutInfo
java.awt.GridLayout
java.awt.HeadlessException
java.awt.IllegalComponentStateException
java.awt.Image
java.awt.Insets
java.awt.ItemSelectable
java.awt.KeyboardFocusManager
java.awt.KeyEventDispatcher
java.awt.KeyEventPostProcessor
java.awt.LayoutManager
java.awt.LayoutManager2
java.awt.MediaTracker
java.awt.Point
java.awt.Polygon
java.awt.Rectangle
java.awt.Shape
java.awt.Stroke
java.awt.SystemColor
java.awt.Toolkit
java.awt.Transparency
java.awt.Window
java.awt.event.ActionEvent
java.awt.event.ActionListener
java.awt.event.AdjustmentEvent
java.awt.event.AdjustmentListener
java.awt.event.AWTEventListener
java.awt.event.AWTEventListenerProxy
java.awt.event.ComponentAdapter
java.awt.event.ComponentEvent
java.awt.event.ComponentListener
java.awt.event.ContainerAdapter
java.awt.event.ContainerEvent
java.awt.event.ContainerListener
java.awt.event.FocusAdapter
java.awt.event.FocusEvent
java.awt.event.FocusListener
java.awt.event.InputEvent
java.awt.event.InputMethodEvent
java.awt.event.InputMethodListener
java.awt.event.InvocationEvent
java.awt.event.ItemEvent
java.awt.event.ItemListener
java.awt.event.KeyAdapter
java.awt.event.KeyEvent
java.awt.event.KeyListener
java.awt.event.MouseAdapter
java.awt.event.MouseEvent
java.awt.event.MouseListener
java.awt.event.MouseMotionAdapter
java.awt.event.MouseMotionListener
java.awt.event.MouseWheelEvent
java.awt.event.MouseWheelListener
java.awt.event.PaintEvent
java.awt.event.TextEvent
java.awt.event.TextListener
java.awt.event.WindowAdapter
java.awt.event.WindowEvent
java.awt.event.WindowFocusListener
java.awt.event.WindowListener
java.awt.image.AreaAveragingScaleFilter
java.awt.image.BufferedImage
java.awt.ImageCapabilities
java.awt.image.ColorModel
java.awt.image.CropImageFilter
java.awt.image.DataBuffer
java.awt.image.DirectColorModel
java.awt.image.FilteredImageSource
java.awt.image.ImageConsumer
java.awt.image.ImageFilter
java.awt.image.ImageObserver
java.awt.image.ImageProducer
java.awt.image.IndexColorModel
java.awt.image.MemoryImageSource
java.awt.image.PixelGrabber
java.awt.image.RasterFormatException
java.awt.image.ReplicateScaleFilter
java.awt.image.RGBImageFilter
java.awt.image.VolatileImage
java.awt.im.InputContext
java.awt.im.InputMethodHighlight
java.awt.im.InputMethodRequests
java.awt.im.InputSubset
java.beans.Beans
java.beans.PropertyChangeEvent
java.beans.PropertyChangeListener
java.beans.PropertyChangeSupport
java.beans.PropertyVetoException
java.beans.VetoableChangeListener
java.beans.VetoableChangeSupport
java.beans.Visibility
java.io.BufferedInputStream
java.io.BufferedOutputStream
java.io.BufferedReader
java.io.BufferedWriter
java.io.ByteArrayInputStream
java.io.ByteArrayOutputStream
java.io.CharArrayReader
java.io.CharArrayWriter
java.io.CharConversionException
java.io.DataInput
java.io.DataInputStream
java.io.DataOutput
java.io.DataOutputStream
java.io.EOFException
java.io.Externalizable
java.io.File
java.io.FileDescriptor
java.io.FileFilter
java.io.FileInputStream
java.io.FilenameFilter
java.io.FileNotFoundException
java.io.FileOutputStream
java.io.FilePermission
java.io.FileReader
java.io.FileWriter
java.io.FilterInputStream
java.io.FilterOutputStream
java.io.FilterReader
java.io.FilterWriter
java.io.InputStream
java.io.InputStreamReader
java.io.InterruptedIOException
java.io.InvalidClassException
java.io.InvalidObjectException
java.io.IOException
java.io.LineNumberReader
java.io.NotActiveException
java.io.NotSerializableException
java.io.ObjectInput
java.io.ObjectInputStream
java.io.ObjectInputStream$GetField
java.io.ObjectInputValidation
java.io.ObjectOutput
java.io.ObjectOutputStream
java.io.ObjectOutputStream$PutField
java.io.ObjectStreamClass
java.io.ObjectStreamConstants
java.io.ObjectStreamException
java.io.ObjectStreamField
java.io.OptionalDataException
java.io.OutputStream
java.io.OutputStreamWriter
java.io.PipedInputStream
java.io.PipedOutputStream
java.io.PipedReader
java.io.PipedWriter
java.io.PrintStream
java.io.PrintWriter
java.io.PushbackInputStream
java.io.PushbackReader
java.io.RandomAccessFile
java.io.Reader
java.io.SequenceInputStream
java.io.Serializable
java.io.SerializablePermission
java.io.StreamCorruptedException
java.io.StreamTokenizer
java.io.StringReader
java.io.StringWriter
java.io.SyncFailedException
java.io.UnsupportedEncodingException
java.io.UTFDataFormatException
java.io.WriteAbortedException
java.io.Writer
java.lang.AbstractMethodError
java.lang.ArithmeticException
java.lang.ArrayIndexOutOfBoundsException
java.lang.ArrayStoreException
java.lang.AssertionError
java.lang.Boolean
java.lang.Byte
java.lang.Character
java.lang.Character$Subset
java.lang.Character$UnicodeBlock
java.lang.CharSequence
java.lang.Class
java.lang.ClassCastException
java.lang.ClassCircularityError
java.lang.ClassFormatError
java.lang.ClassLoader
java.lang.ClassNotFoundException
java.lang.Cloneable
java.lang.CloneNotSupportedException
java.lang.Comparable

## We do not want anyone loading the Compiler class as we do not allow java-to-native code compilation or anything to muck around with JIT.
#java.lang.Compiler
java.lang.Double
java.lang.Error
java.lang.Exception
java.lang.ExceptionInInitializerError
java.lang.Float
java.lang.IllegalAccessError
java.lang.IllegalAccessException
java.lang.IllegalArgumentException
java.lang.IllegalMonitorStateException
java.lang.IllegalStateException
java.lang.IllegalThreadStateException
java.lang.IncompatibleClassChangeError
java.lang.IndexOutOfBoundsException
java.lang.InheritableThreadLocal
java.lang.InstantiationError
java.lang.InstantiationException
java.lang.Integer
java.lang.InternalError
java.lang.InterruptedException
java.lang.LinkageError
java.lang.Long
java.lang.Math
java.lang.NegativeArraySizeException
java.lang.NoClassDefFoundError
java.lang.NoSuchFieldError
java.lang.NoSuchFieldException
java.lang.NoSuchMethodError
java.lang.NoSuchMethodException
java.lang.NullPointerException
java.lang.Number
java.lang.NumberFormatException
java.lang.Object
java.lang.OutOfMemoryError
java.lang.Package
java.lang.Process
java.lang.Runnable
java.lang.Runtime
java.lang.RuntimeException
java.lang.RuntimePermission
java.lang.SecurityException
java.lang.SecurityManager
java.lang.Short
java.lang.StackOverflowError
java.lang.StackTraceElement
java.lang.StrictMath
java.lang.String
java.lang.StringBuffer
java.lang.StringIndexOutOfBoundsException
java.lang.System
java.lang.Thread
java.lang.ThreadDeath
java.lang.ThreadGroup
java.lang.ThreadLocal
java.lang.Throwable
java.lang.UnknownError
java.lang.UnsatisfiedLinkError
java.lang.UnsupportedClassVersionError
java.lang.UnsupportedOperationException
java.lang.VerifyError
java.lang.VirtualMachineError
java.lang.Void
java.lang.reflect.AccessibleObject
java.lang.reflect.Array
java.lang.reflect.Constructor
java.lang.reflect.Field
java.lang.reflect.InvocationHandler
java.lang.reflect.InvocationTargetException
java.lang.reflect.Member
java.lang.reflect.Method
java.lang.reflect.Modifier
java.lang.reflect.Proxy
java.lang.reflect.ReflectPermission
java.lang.reflect.UndeclaredThrowableException
java.lang.ref.PhantomReference
java.lang.ref.Reference
java.lang.ref.ReferenceQueue
java.lang.ref.SoftReference
java.lang.ref.WeakReference
java.math.BigDecimal
java.math.BigInteger
java.net.Authenticator
java.net.BindException
java.net.ConnectException
java.net.ContentHandler
java.net.ContentHandlerFactory
java.net.DatagramPacket
#This class should not be accessible, as it contains a potential security risk.
#Particularly, the createImpl() is suspected to be a security risk.
#java.net.DatagramSocket
java.net.DatagramSocketImpl
java.net.DatagramSocketImplFactory
java.net.FileNameMap
java.net.HttpURLConnection
java.net.Inet4Address
java.net.Inet6Address
java.net.InetAddress
java.net.InetSocketAddress
java.net.JarURLConnection
java.net.MalformedURLException
java.net.MulticastSocket
java.net.NetPermission
#java.net.NetworkInterface
java.net.NoRouteToHostException
java.net.PasswordAuthentication
java.net.PortUnreachableException
java.net.ProtocolException
java.net.ServerSocket
java.net.Socket
java.net.SocketAddress
java.net.SocketException
java.net.SocketImpl
java.net.SocketImplFactory
java.net.SocketOptions
java.net.SocketPermission
java.net.SocketTimeoutException
java.net.UnknownHostException
java.net.UnknownServiceException
java.net.URI
java.net.URISyntaxException
java.net.URL
## We don't want Kindlets to use their custom class loader.
#java.net.URLClassLoader
java.net.URLConnection
java.net.URLDecoder
java.net.URLEncoder
java.net.URLStreamHandler
java.net.URLStreamHandlerFactory
java.rmi.AccessException
java.rmi.AlreadyBoundException
java.rmi.NotBoundException
java.rmi.registry.Registry
java.rmi.Remote
java.rmi.RemoteException
java.rmi.UnexpectedException
java.security.AccessControlContext
java.security.AccessControlException
java.security.AccessController
java.security.acl.Acl
java.security.acl.AclEntry
java.security.acl.AclNotFoundException
java.security.acl.Group
java.security.acl.LastOwnerException
java.security.acl.NotOwnerException
java.security.acl.Owner
java.security.acl.Permission
java.security.AlgorithmParameterGenerator
java.security.AlgorithmParameterGeneratorSpi
java.security.AlgorithmParameters
java.security.AlgorithmParametersSpi
java.security.AllPermission
java.security.BasicPermission
java.security.cert.Certificate
java.security.cert.Certificate$CertificateRep
java.security.cert.CertificateEncodingException
java.security.cert.CertificateException
java.security.cert.CertificateExpiredException
java.security.cert.CertificateFactory
java.security.cert.CertificateFactorySpi
java.security.cert.CertificateNotYetValidException
java.security.cert.CertificateParsingException
java.security.cert.CertPath
java.security.cert.CertPath$CertPathRep
java.security.cert.CRL
java.security.cert.CRLException
java.security.Certificate
java.security.cert.X509Certificate
java.security.cert.X509CRL
java.security.cert.X509CRLEntry
java.security.cert.X509Extension
java.security.CodeSource
java.security.DigestException
java.security.DigestInputStream
java.security.DigestOutputStream
java.security.DomainCombiner
java.security.GeneralSecurityException
java.security.Guard
java.security.GuardedObject
java.security.Identity
java.security.IdentityScope
java.security.InvalidAlgorithmParameterException
java.security.InvalidKeyException
java.security.InvalidParameterException
java.security.Key
java.security.KeyException
java.security.KeyFactory
java.security.KeyFactorySpi
java.security.KeyManagementException
java.security.KeyPair
java.security.KeyPairGenerator
java.security.KeyPairGeneratorSpi
java.security.KeyStore
java.security.KeyStoreException
java.security.KeyStoreSpi
java.security.MessageDigest
java.security.MessageDigestSpi
java.security.NoSuchAlgorithmException
java.security.NoSuchProviderException
java.security.Permission
java.security.PermissionCollection
java.security.Permissions
java.security.Policy
java.security.Principal
java.security.PrivateKey
java.security.PrivilegedAction
java.security.PrivilegedActionException
java.security.PrivilegedExceptionAction
java.security.ProtectionDomain
java.security.Provider
java.security.ProviderException
java.security.PublicKey
java.security.SecureClassLoader
java.security.SecureRandom
java.security.SecureRandomSpi
java.security.Security
java.security.SecurityPermission
java.security.Signature
java.security.SignatureException
java.security.SignatureSpi
java.security.SignedObject
java.security.Signer
java.security.UnrecoverableKeyException
java.security.UnresolvedPermission
java.security.interfaces.DSAKey
java.security.interfaces.DSAKeyPairGenerator
java.security.interfaces.DSAParams
java.security.interfaces.DSAPrivateKey
java.security.interfaces.DSAPublicKey
java.security.interfaces.RSAKey
java.security.interfaces.RSAPrivateCrtKey
java.security.interfaces.RSAPrivateKey
java.security.interfaces.RSAPublicKey
java.security.spec.AlgorithmParameterSpec
java.security.spec.DSAParameterSpec
java.security.spec.DSAPrivateKeySpec
java.security.spec.DSAPublicKeySpec
java.security.spec.EncodedKeySpec
java.security.spec.InvalidKeySpecException
java.security.spec.InvalidParameterSpecException
java.security.spec.KeySpec
java.security.spec.PKCS8EncodedKeySpec
java.security.spec.PSSParameterSpec
java.security.spec.RSAKeyGenParameterSpec
java.security.spec.RSAPrivateCrtKeySpec
java.security.spec.RSAPrivateKeySpec
java.security.spec.RSAPublicKeySpec
java.security.spec.X509EncodedKeySpec
java.text.Annotation
java.text.AttributedCharacterIterator
java.text.AttributedCharacterIterator$Attribute
java.text.AttributedString
java.text.BreakIterator
java.text.CharacterIterator
java.text.ChoiceFormat
java.text.CollationElementIterator
java.text.CollationKey
java.text.Collator
java.text.DateFormat
java.text.DateFormat$Field
java.text.DateFormatSymbols
java.text.DecimalFormat
java.text.DecimalFormatSymbols
java.text.FieldPosition
java.text.Format
java.text.Format$Field
java.text.MessageFormat
java.text.MessageFormat$Field
java.text.NumberFormat
java.text.NumberFormat$Field
java.text.ParseException
java.text.ParsePosition
java.text.RuleBasedCollator
java.text.SimpleDateFormat
java.text.StringCharacterIterator
java.util.AbstractCollection
java.util.AbstractList
java.util.AbstractMap
java.util.AbstractSequentialList
java.util.AbstractSet
java.util.ArrayList
java.util.Arrays
java.util.Arrays$ArrayList
java.util.BitSet
java.util.Calendar
java.util.Collection
java.util.Collections
java.util.Collections$CopiesList
java.util.Collections$EmptyList
java.util.Collections$EmptyMap
java.util.Collections$EmptySet
java.util.Collections$ReverseComparator
java.util.Collections$SingletonList
java.util.Collections$SingletonMap
java.util.Collections$SingletonMap$ImmutableEntry
java.util.Collections$SingletonSet
java.util.Collections$SynchronizedCollection
java.util.Collections$SynchronizedList
java.util.Collections$SynchronizedMap
java.util.Collections$SynchronizedRandomAccessList
java.util.Collections$SynchronizedSet
java.util.Collections$SynchronizedSortedMap
java.util.Collections$SynchronizedSortedSet
java.util.Collections$UnmodifiableCollection
java.util.Collections$UnmodifiableList
java.util.Collections$UnmodifiableMap
java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet
java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntry
java.util.Collections$UnmodifiableRandomAccessList
java.util.Collections$UnmodifiableSet
java.util.Collections$UnmodifiableSortedMap
java.util.Collections$UnmodifiableSortedSet
java.util.Comparator
java.util.ConcurrentModificationException
java.util.Currency
java.util.Date
java.util.Dictionary
java.util.EmptyStackException
java.util.Enumeration
java.util.EventListener
java.util.EventListenerProxy
java.util.EventObject
java.util.GregorianCalendar
java.util.HashMap
java.util.HashSet
java.util.Hashtable
java.util.IdentityHashMap
java.util.Iterator
java.util.LinkedHashMap
java.util.LinkedHashSet
java.util.LinkedList
java.util.List
java.util.ListIterator
java.util.ListResourceBundle
java.util.Locale
java.util.Map
java.util.Map$Entry
java.util.MissingResourceException
java.util.NoSuchElementException
java.util.Observable
java.util.Observer
java.util.Properties
java.util.PropertyPermission
java.util.PropertyResourceBundle
java.util.Random
java.util.RandomAccess
java.util.ResourceBundle
java.util.Set
java.util.SimpleTimeZone
java.util.SortedMap
java.util.SortedSet
java.util.Stack
java.util.StringTokenizer
# Timer is not safe for use in a Java sandbox - it can't be shutdown, developers should use the Kindlet timers
#java.util.Timer
#java.util.TimerTask
java.util.TimeZone
java.util.TooManyListenersException
java.util.TreeMap
java.util.TreeMap$SubMap
java.util.TreeSet
java.util.Vector
java.util.WeakHashMap
java.util.jar.Attributes
java.util.jar.Attributes$Name
java.util.jar.JarEntry
java.util.jar.JarException
java.util.jar.JarFile
java.util.jar.JarInputStream
java.util.jar.JarOutputStream
java.util.jar.Manifest
java.util.zip.Adler32
java.util.zip.CheckedInputStream
java.util.zip.CheckedOutputStream
java.util.zip.Checksum
java.util.zip.CRC32
java.util.zip.DataFormatException
java.util.zip.Deflater
java.util.zip.DeflaterOutputStream
java.util.zip.GZIPInputStream
java.util.zip.GZIPOutputStream
java.util.zip.Inflater
java.util.zip.InflaterInputStream
java.util.zip.ZipEntry
java.util.zip.ZipException
java.util.zip.ZipFile
java.util.zip.ZipInputStream
java.util.zip.ZipOutputStream

## We do not want anyone loading the Connector class to have a factory for creating new Connections.
## We blacklist the rest of the javax.microedition.* classes since they are not very useful once we
## have blocked Connector and we want to spare developers the time to realize this.
#javax.microedition.io.CommConnection
#javax.microedition.io.Connection
#javax.microedition.io.ConnectionNotFoundException
#javax.microedition.io.Connector
#javax.microedition.io.ContentConnection
#javax.microedition.io.Datagram
#javax.microedition.io.DatagramConnection
#javax.microedition.io.HttpConnection
#javax.microedition.io.HttpsConnection
#javax.microedition.io.InputConnection
#javax.microedition.io.OutputConnection
#javax.microedition.io.SecureConnection
#javax.microedition.io.SecurityInfo
#javax.microedition.io.ServerSocketConnection
#javax.microedition.io.SocketConnection
#javax.microedition.io.StreamConnection
#javax.microedition.io.StreamConnectionNotifier
#javax.microedition.io.UDPDatagramConnection
#javax.microedition.pki.Certificate
#javax.microedition.pki.CertificateException
#javax.microedition.xlet.ixc.IxcPermission
#javax.microedition.xlet.ixc.IxcRegistry
#javax.microedition.xlet.ixc.StubException
#javax.microedition.xlet.UnavailableContainerException
#javax.microedition.xlet.Xlet
#javax.microedition.xlet.XletContext
#javax.microedition.xlet.XletStateChangeException

# java.math.RoundingMode is a JavaSE class which appears during serialization/deserilization in the Simulator.
# Since the class does not exist in the PBP, this has no effect on the device code
# This is added to fix the AppRunner issue KDKT-1198
java.math.RoundingMode

javax.security.auth.x500.X500Principal

## Class used by jvmti for heap profiling.  This will not exist on the classpath
#  for production devices so having it present simply means a ClassNotFound exception will
#  be thrown.
com.sun.demo.jvmti.hprof.Tracker

# needed for object deserialization of Calendar instances.
sun.util.BuddhistCalendar
sun.util.calendar.ZoneInfo
sun.util.calendar.CalendarDate
sun.util.calendar.CalendarSystem
sun.util.calendar.Gregorian
sun.util.calendar.ZoneInfoFile


# needed to instantiate Calendar objects with non-default TimeZone and Locale
sun.text.resources.LocaleData

## Public API for JSON-Simple
org.json.simple.ItemList
org.json.simple.JSONArray
org.json.simple.JSONAware
org.json.simple.JSONObject
org.json.simple.JSONStreamAware
org.json.simple.JSONValue
org.json.simple.parser.ContainerFactory
org.json.simple.parser.ContentHandler
org.json.simple.parser.JSONParser
org.json.simple.parser.ParseException
org.json.simple.parser.Yylex
org.json.simple.parser.Yytoken

## Java Cryptography Extension
#  This is needed for the standard AWS signing algorithm
javax.crypto.interfaces.DHKey
javax.crypto.interfaces.DHPublicKey
javax.crypto.interfaces.DHPrivateKey
javax.crypto.interfaces.PBEKey
javax.crypto.SecretKey
javax.crypto.spec.RC2ParameterSpec
javax.crypto.spec.RC5ParameterSpec
javax.crypto.spec.PBEParameterSpec
javax.crypto.spec.IvParameterSpec
javax.crypto.spec.DESKeySpec
javax.crypto.spec.DESedeKeySpec
javax.crypto.spec.DHGenParameterSpec
javax.crypto.spec.DHParameterSpec
javax.crypto.spec.DHPrivateKeySpec
javax.crypto.spec.DHPublicKeySpec
javax.crypto.spec.PBEKeySpec
javax.crypto.spec.SecretKeySpec
javax.crypto.Cipher
javax.crypto.CipherSpi
javax.crypto.ExemptionMechanism
javax.crypto.CipherInputStream
javax.crypto.CipherOutputStream
javax.crypto.KeyAgreement
javax.crypto.KeyAgreementSpi
javax.crypto.KeyGenerator
javax.crypto.KeyGeneratorSpi
javax.crypto.Mac
javax.crypto.MacSpi
javax.crypto.ShortBufferException
javax.crypto.SecretKeyFactory
javax.crypto.SecretKeyFactorySpi
javax.crypto.NullCipherSpi
javax.crypto.EncryptedPrivateKeyInfo
javax.crypto.ExemptionMechanismSpi
javax.crypto.ExemptionMechanismException
javax.crypto.SealedObject
javax.crypto.NullCipher
javax.crypto.BadPaddingException
javax.crypto.IllegalBlockSizeException
javax.crypto.NoSuchPaddingException

## Whitelisting JSSE components for use with Https

## The documentation are not enough to really whitelist these classes as we do not know if
## these respect the Socket permissions or not. So best is to not whitelist these until we have a use case.
#javax.net.ServerSocketFactory
#javax.net.DefaultServerSocketFactory
#javax.net.SocketFactory
#javax.net.DefaultSocketFactory
#javax.net.ssl.SSLSocket
#javax.net.ssl.SSLServerSocket
#javax.net.ssl.SSLServerSocketFactory
#javax.net.ssl.DefaultSSLSocketFactory
#javax.net.ssl.DefaultSSLServerSocketFactory

## HandshakeCompletedListener requires a socket and provides a  getSocket.  We need to investigate more if these respect permissions before whitelisting it.
#javax.net.ssl.HandshakeCompletedListener

javax.net.ssl.SSLSocketFactory
javax.net.ssl.SSLPermission 
javax.net.ssl.HandshakeCompletedEvent 
javax.net.ssl.SSLSession 
javax.net.ssl.SSLSessionContext 
javax.net.ssl.SSLPeerUnverifiedException 
javax.net.ssl.SSLException 
javax.net.ssl.SSLProtocolException
javax.net.ssl.HostnameVerifier
javax.net.ssl.HttpsURLConnection
javax.net.ssl.KeyManager
javax.net.ssl.SSLSessionBindingEvent 
javax.net.ssl.KeyManagerFactory
javax.net.ssl.KeyManagerFactorySpi
javax.net.ssl.ManagerFactoryParameters
javax.net.ssl.SSLSessionBindingListener
javax.net.ssl.SSLContext
javax.net.ssl.SSLContextSpi
javax.net.ssl.TrustManager 
javax.net.ssl.TrustManagerFactory
javax.net.ssl.TrustManagerFactorySpi
javax.net.ssl.SSLHandshakeException
javax.net.ssl.X509KeyManager
javax.net.ssl.SSLKeyException
javax.net.ssl.X509TrustManager

# whitelist event queue exception handler. This class is loaded using our
# KindletClassLoader by EventDispatchThread#handleException in the cvm when
# exceptions are thrown from the event queue.
com.amazon.ebook.framework.impl.device.event.EventDispatchThreadExceptionHandler

# whitelisting backport concurrent classes
edu.emory.mathcs.backport.java.util.AbstractCollection
edu.emory.mathcs.backport.java.util.AbstractList
edu.emory.mathcs.backport.java.util.AbstractMap$1$1
edu.emory.mathcs.backport.java.util.AbstractMap$1
edu.emory.mathcs.backport.java.util.AbstractMap$SimpleEntry
edu.emory.mathcs.backport.java.util.AbstractMap$SimpleImmutableEntry
edu.emory.mathcs.backport.java.util.AbstractMap
edu.emory.mathcs.backport.java.util.AbstractQueue
edu.emory.mathcs.backport.java.util.AbstractSequentialList
edu.emory.mathcs.backport.java.util.AbstractSet
edu.emory.mathcs.backport.java.util.ArrayDeque$1
edu.emory.mathcs.backport.java.util.ArrayDeque$DeqIterator
edu.emory.mathcs.backport.java.util.ArrayDeque$DescendingIterator
edu.emory.mathcs.backport.java.util.ArrayDeque
edu.emory.mathcs.backport.java.util.Arrays
edu.emory.mathcs.backport.java.util.Collections$AsLifoQueue
edu.emory.mathcs.backport.java.util.Collections$CheckedCollection$Itr
edu.emory.mathcs.backport.java.util.Collections$CheckedCollection
edu.emory.mathcs.backport.java.util.Collections$CheckedList$ListItr
edu.emory.mathcs.backport.java.util.Collections$CheckedList
edu.emory.mathcs.backport.java.util.Collections$CheckedMap$EntrySetView$1
edu.emory.mathcs.backport.java.util.Collections$CheckedMap$EntrySetView
edu.emory.mathcs.backport.java.util.Collections$CheckedMap$EntryView
edu.emory.mathcs.backport.java.util.Collections$CheckedMap
edu.emory.mathcs.backport.java.util.Collections$CheckedSet
edu.emory.mathcs.backport.java.util.Collections$CheckedSortedMap
edu.emory.mathcs.backport.java.util.Collections$CheckedSortedSet
edu.emory.mathcs.backport.java.util.Collections$ReverseComparator
edu.emory.mathcs.backport.java.util.Collections$SetFromMap
edu.emory.mathcs.backport.java.util.Collections
edu.emory.mathcs.backport.java.util.Deque
edu.emory.mathcs.backport.java.util.LinkedList$DescItr
edu.emory.mathcs.backport.java.util.LinkedList$Entry
edu.emory.mathcs.backport.java.util.LinkedList$Itr
edu.emory.mathcs.backport.java.util.LinkedList
edu.emory.mathcs.backport.java.util.NavigableMap
edu.emory.mathcs.backport.java.util.NavigableSet
edu.emory.mathcs.backport.java.util.PriorityQueue$Itr
edu.emory.mathcs.backport.java.util.PriorityQueue
edu.emory.mathcs.backport.java.util.Queue
edu.emory.mathcs.backport.java.util.TreeMap$AscendingKeySet
edu.emory.mathcs.backport.java.util.TreeMap$AscendingSubMap
edu.emory.mathcs.backport.java.util.TreeMap$BaseEntryIterator
edu.emory.mathcs.backport.java.util.TreeMap$DescendingEntryIterator
edu.emory.mathcs.backport.java.util.TreeMap$DescendingEntrySet
edu.emory.mathcs.backport.java.util.TreeMap$DescendingKeyIterator
edu.emory.mathcs.backport.java.util.TreeMap$DescendingKeySet
edu.emory.mathcs.backport.java.util.TreeMap$DescendingSubMap
edu.emory.mathcs.backport.java.util.TreeMap$DescendingValueIterator
edu.emory.mathcs.backport.java.util.TreeMap$Entry
edu.emory.mathcs.backport.java.util.TreeMap$EntryIterator
edu.emory.mathcs.backport.java.util.TreeMap$EntrySet
edu.emory.mathcs.backport.java.util.TreeMap$IOIterator
edu.emory.mathcs.backport.java.util.TreeMap$IteratorIOException
edu.emory.mathcs.backport.java.util.TreeMap$IteratorNoClassException
edu.emory.mathcs.backport.java.util.TreeMap$KeyIterator
edu.emory.mathcs.backport.java.util.TreeMap$KeySet
edu.emory.mathcs.backport.java.util.TreeMap$NavigableSubMap$SubEntryIterator
edu.emory.mathcs.backport.java.util.TreeMap$NavigableSubMap$SubEntrySet
edu.emory.mathcs.backport.java.util.TreeMap$NavigableSubMap$SubKeyIterator
edu.emory.mathcs.backport.java.util.TreeMap$NavigableSubMap$SubKeySet
edu.emory.mathcs.backport.java.util.TreeMap$NavigableSubMap
edu.emory.mathcs.backport.java.util.TreeMap$SubMap
edu.emory.mathcs.backport.java.util.TreeMap$ValueIterator
edu.emory.mathcs.backport.java.util.TreeMap$ValueSet
edu.emory.mathcs.backport.java.util.TreeMap
edu.emory.mathcs.backport.java.util.TreeSet$IOIterator
edu.emory.mathcs.backport.java.util.TreeSet$MapIterator
edu.emory.mathcs.backport.java.util.TreeSet
edu.emory.mathcs.backport.java.util.concurrent.AbstractExecutorService
edu.emory.mathcs.backport.java.util.concurrent.ArrayBlockingQueue$Itr
edu.emory.mathcs.backport.java.util.concurrent.ArrayBlockingQueue
edu.emory.mathcs.backport.java.util.concurrent.BlockingDeque
edu.emory.mathcs.backport.java.util.concurrent.BlockingQueue
edu.emory.mathcs.backport.java.util.concurrent.BrokenBarrierException
edu.emory.mathcs.backport.java.util.concurrent.Callable
edu.emory.mathcs.backport.java.util.concurrent.CancellationException
edu.emory.mathcs.backport.java.util.concurrent.CompletionService
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap$EntryIterator
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap$EntrySet
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap$HashEntry
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap$HashIterator
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap$KeyIterator
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap$KeySet
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap$Segment
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap$ValueIterator
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap$Values
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap$WriteThroughEntry
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentLinkedQueue$1
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentLinkedQueue$Itr
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentLinkedQueue$Node
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentLinkedQueue$SerializableLock
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentLinkedQueue
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentMap
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentNavigableMap
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$ComparableUsingComparator
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$EntryIterator
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$EntrySet
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$HeadIndex
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$Index
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$Iter
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$KeyIterator
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$KeySet
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$Node
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$SubMap$SubMapEntryIterator
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$SubMap$SubMapIter
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$SubMap$SubMapKeyIterator
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$SubMap$SubMapValueIterator
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$SubMap
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$ValueIterator
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap$Values
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListMap
edu.emory.mathcs.backport.java.util.concurrent.ConcurrentSkipListSet
edu.emory.mathcs.backport.java.util.concurrent.CopyOnWriteArrayList$COWIterator
edu.emory.mathcs.backport.java.util.concurrent.CopyOnWriteArrayList$COWSubIterator
edu.emory.mathcs.backport.java.util.concurrent.CopyOnWriteArrayList$COWSubList
edu.emory.mathcs.backport.java.util.concurrent.CopyOnWriteArrayList
edu.emory.mathcs.backport.java.util.concurrent.CopyOnWriteArraySet
edu.emory.mathcs.backport.java.util.concurrent.CountDownLatch
edu.emory.mathcs.backport.java.util.concurrent.CyclicBarrier$1
edu.emory.mathcs.backport.java.util.concurrent.CyclicBarrier$Generation
edu.emory.mathcs.backport.java.util.concurrent.CyclicBarrier
edu.emory.mathcs.backport.java.util.concurrent.DelayQueue$Itr
edu.emory.mathcs.backport.java.util.concurrent.DelayQueue
edu.emory.mathcs.backport.java.util.concurrent.Delayed
edu.emory.mathcs.backport.java.util.concurrent.Exchanger
edu.emory.mathcs.backport.java.util.concurrent.ExecutionException
edu.emory.mathcs.backport.java.util.concurrent.Executor
edu.emory.mathcs.backport.java.util.concurrent.ExecutorCompletionService$QueueingFuture
edu.emory.mathcs.backport.java.util.concurrent.ExecutorCompletionService
edu.emory.mathcs.backport.java.util.concurrent.ExecutorService
edu.emory.mathcs.backport.java.util.concurrent.Executors$1
edu.emory.mathcs.backport.java.util.concurrent.Executors$2
edu.emory.mathcs.backport.java.util.concurrent.Executors$DefaultThreadFactory
edu.emory.mathcs.backport.java.util.concurrent.Executors$DelegatedExecutorService
edu.emory.mathcs.backport.java.util.concurrent.Executors$DelegatedScheduledExecutorService
edu.emory.mathcs.backport.java.util.concurrent.Executors$FinalizableDelegatedExecutorService
edu.emory.mathcs.backport.java.util.concurrent.Executors$PrivilegedCallable$1
edu.emory.mathcs.backport.java.util.concurrent.Executors$PrivilegedCallable
edu.emory.mathcs.backport.java.util.concurrent.Executors$PrivilegedCallableUsingCurrentClassLoader$1
edu.emory.mathcs.backport.java.util.concurrent.Executors$PrivilegedCallableUsingCurrentClassLoader
edu.emory.mathcs.backport.java.util.concurrent.Executors$PrivilegedThreadFactory$1$1
edu.emory.mathcs.backport.java.util.concurrent.Executors$PrivilegedThreadFactory$1
edu.emory.mathcs.backport.java.util.concurrent.Executors$PrivilegedThreadFactory
edu.emory.mathcs.backport.java.util.concurrent.Executors$RunnableAdapter
edu.emory.mathcs.backport.java.util.concurrent.Executors
edu.emory.mathcs.backport.java.util.concurrent.Future
edu.emory.mathcs.backport.java.util.concurrent.FutureTask
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingDeque$1
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingDeque$AbstractItr
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingDeque$DescendingItr
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingDeque$Itr
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingDeque$Node
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingDeque
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue$1
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue$Itr
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue$Node
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue$SerializableLock
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue
edu.emory.mathcs.backport.java.util.concurrent.PriorityBlockingQueue$Itr
edu.emory.mathcs.backport.java.util.concurrent.PriorityBlockingQueue
edu.emory.mathcs.backport.java.util.concurrent.RejectedExecutionException
edu.emory.mathcs.backport.java.util.concurrent.RejectedExecutionHandler
edu.emory.mathcs.backport.java.util.concurrent.RunnableFuture
edu.emory.mathcs.backport.java.util.concurrent.RunnableScheduledFuture
edu.emory.mathcs.backport.java.util.concurrent.ScheduledExecutorService
edu.emory.mathcs.backport.java.util.concurrent.ScheduledFuture
edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue$Itr
edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue
edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask
edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor
edu.emory.mathcs.backport.java.util.concurrent.Semaphore$FairSync$Node
edu.emory.mathcs.backport.java.util.concurrent.Semaphore$FairSync
edu.emory.mathcs.backport.java.util.concurrent.Semaphore$NonfairSync
edu.emory.mathcs.backport.java.util.concurrent.Semaphore$Sync
edu.emory.mathcs.backport.java.util.concurrent.Semaphore
edu.emory.mathcs.backport.java.util.concurrent.SynchronousQueue$EmptyIterator
edu.emory.mathcs.backport.java.util.concurrent.SynchronousQueue$FifoWaitQueue
edu.emory.mathcs.backport.java.util.concurrent.SynchronousQueue$LifoWaitQueue
edu.emory.mathcs.backport.java.util.concurrent.SynchronousQueue$Node
edu.emory.mathcs.backport.java.util.concurrent.SynchronousQueue$WaitQueue
edu.emory.mathcs.backport.java.util.concurrent.SynchronousQueue
edu.emory.mathcs.backport.java.util.concurrent.ThreadFactory
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$AbortPolicy
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$CallerRunsPolicy
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$DiscardOldestPolicy
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$DiscardPolicy
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor
edu.emory.mathcs.backport.java.util.concurrent.TimeUnit$1
edu.emory.mathcs.backport.java.util.concurrent.TimeUnit$2
edu.emory.mathcs.backport.java.util.concurrent.TimeUnit$3
edu.emory.mathcs.backport.java.util.concurrent.TimeUnit$4
edu.emory.mathcs.backport.java.util.concurrent.TimeUnit$5
edu.emory.mathcs.backport.java.util.concurrent.TimeUnit$6
edu.emory.mathcs.backport.java.util.concurrent.TimeUnit$7
edu.emory.mathcs.backport.java.util.concurrent.TimeUnit
edu.emory.mathcs.backport.java.util.concurrent.TimeoutException
edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicBoolean
edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicInteger
edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicIntegerArray
edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicLong
edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicLongArray
edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicMarkableReference$ReferenceBooleanPair
edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicMarkableReference
edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicReference
edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicReferenceArray
edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicStampedReference$ReferenceIntegerPair
edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicStampedReference
edu.emory.mathcs.backport.java.util.concurrent.helpers.FIFOWaitQueue
edu.emory.mathcs.backport.java.util.concurrent.helpers.NanoTimer
edu.emory.mathcs.backport.java.util.concurrent.helpers.ThreadHelpers$1
edu.emory.mathcs.backport.java.util.concurrent.helpers.ThreadHelpers$UncaughtExceptionHandler
edu.emory.mathcs.backport.java.util.concurrent.helpers.ThreadHelpers
edu.emory.mathcs.backport.java.util.concurrent.helpers.Utils$1
edu.emory.mathcs.backport.java.util.concurrent.helpers.Utils$MillisProvider
edu.emory.mathcs.backport.java.util.concurrent.helpers.Utils$SunPerfProvider$1
edu.emory.mathcs.backport.java.util.concurrent.helpers.Utils$SunPerfProvider
edu.emory.mathcs.backport.java.util.concurrent.helpers.Utils
edu.emory.mathcs.backport.java.util.concurrent.helpers.WaitQueue$QueuedSync
edu.emory.mathcs.backport.java.util.concurrent.helpers.WaitQueue$WaitNode
edu.emory.mathcs.backport.java.util.concurrent.helpers.WaitQueue
edu.emory.mathcs.backport.java.util.concurrent.locks.CondVar$ExclusiveLock
edu.emory.mathcs.backport.java.util.concurrent.locks.CondVar
edu.emory.mathcs.backport.java.util.concurrent.locks.Condition
edu.emory.mathcs.backport.java.util.concurrent.locks.FIFOCondVar$1
edu.emory.mathcs.backport.java.util.concurrent.locks.FIFOCondVar
edu.emory.mathcs.backport.java.util.concurrent.locks.Lock
edu.emory.mathcs.backport.java.util.concurrent.locks.ReadWriteLock
edu.emory.mathcs.backport.java.util.concurrent.locks.ReentrantLock$FairSync
edu.emory.mathcs.backport.java.util.concurrent.locks.ReentrantLock$NonfairSync
edu.emory.mathcs.backport.java.util.concurrent.locks.ReentrantLock$Sync
edu.emory.mathcs.backport.java.util.concurrent.locks.ReentrantLock
edu.emory.mathcs.backport.java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync
edu.emory.mathcs.backport.java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock
edu.emory.mathcs.backport.java.util.concurrent.locks.ReentrantReadWriteLock$Sync
edu.emory.mathcs.backport.java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock
edu.emory.mathcs.backport.java.util.concurrent.locks.ReentrantReadWriteLock
