Mark shell as done Set N i = N i + 1 In addition, the different angular momentum shells are typically highly coupled, but optimizing all exponents at once is impractical. At the simplest level, a suitable approach is therefore to cyclically optimize the shells separately until they stop changing, although this can be very expensive. To formalize this, and to allow for novel algorithms, these procedures are encapsulated in a 'Strategy'. As an example, the Strategy for optimizing an even-tempered basis to a given accuracy is outlined in Algorithm 1. Other strategies currently available include the default, which optimizes each angular momentum shell in turn, and one for taking an existing basis and systematically removing exponents and reoptimizing until a certain maximum allowed error is reached.