For example, the higher-level application frameworks in the CommonPoint system are designed for customization (usually but not exclusively by subclassing) and therefore fall toward the framework side of the continuum shown in Figure 17. In contrast, lower-level parts of the system, such as Data Structures and Collections, tend to be used by most programmers as libraries and therefore fall toward the library side of the continuum (though system programmers and other specialists may customize them). Mid-level frameworks such as those provided by the Graphics system tend to be subclassed and customized by developers for subsequent use as libraries elsewhere in the same program.