The runtime library is split into two parts: the interface cluster and the implementation cluster. The following image shows the classes of the interface cluster: