| ReportMill | This class is used as a helper object by RMDocument to generate a report. | 
| RMArchiver | This class handles RM's legacy unarchival. | 
| RMArrayUtils | A collection of array utility methods. | 
| RMAWTUtils | This class has a bunch of convenience utility methods from drawing lines, RMRects, buttons, etc. | 
| RMCodec | This class has utility methods to code and decode into various different formats: hex, ASCII85, base 64. | 
| RMCodecLZW | This class decodes LZW encoded bytes. | 
| RMData | This class is like a StringBuffer for bytes instead of chars. | 
| RMDataReader | This class helps read encoded basic data types, from a raw byte stream. | 
| RMDateFormat | This is just a SimpleDateFormat subclass to support RM archiving and legacy formats. | 
| RMDocument | The RMDocument class represents a ReportMill document and is also an RMShape subclass, so it can be a real part of
 the document/shape hierarchy. | 
| RMExtras | This file is just meant to hold various utility methods that customers have asked for. | 
| RMGroup | This class is a smart List subclass used to hold objects from an original list broken down by grouping keys. | 
| RMGroup.Running | This RMGroup subclass/inner-class represents a subset of a group up to the given endGroup. | 
| RMGrouper | This class simply manages a list of groupings and has some nice convenience methods. | 
| RMGrouping | This object represents an individual grouping with attributes like key, sorts, topN sort, etc. | 
| RMKey | This class provides an optimized convenience for getting named values from arbitrary objects. | 
| RMKeyChain | This class provides the powerful RMKeyChain.valueForKeyChain() functiionality. | 
| RMKeyChainFuncs | This class holds all of RM's built-in key chain functions. | 
| RMListUtils | Utility methods for use with Java.util.List. | 
| RMMapUtils | Utility methods for use with Java.util.Map. | 
| RMMath | Utility methods for common math operations. | 
| RMNumberFormat | This subclass extends DecimalFormat to implement ReportMill's RMFormat interface and to support the extended features
 "Negative in Red" and "Null String". | 
| RMObject | This class forms the basis of many objects to add global functionality, like archiving. | 
| RMPoint | This class extends Point2D.Float to add a few convenience methods. | 
| RMRange | This class represents a simple integer range (from start to end). | 
| RMRect | This class extends Rectanlge2D to add some convenient rect methods. | 
| RMSize | This class represents a simple geometric size (width, height). | 
| RMSort | This class provides a basic description for comparison and sorting with a simple key and order (ascending or
 descending). | 
| RMTableOfContents | This Hashtable subclass provides page number information for table rows in a generated report for the purpose of
 generating a table of contents. | 
| RMTableOfContents.RowGroup | An inner class to assist flattening. | 
| RMUndoer | RMUndoer - this object manages undo by keeping copies of changed objects. | 
| RMUndoer.RMUndoEvent | This class reprents a distinct "undoable event". | 
| RMUtils | This class provides a bunch of utility methods for common problems. | 
| RMXMLWriter | This is just a stub class so that developers can reach XML dataset archival from it's old location
 in this package. | 
| StringUtils | This class is a collection of convenient static String utils. |