  Composite pulse sequences, which produce arbitrary pre-defined rotations of a
two-state system at an angle $\theta$ on the Bloch sphere, are presented. The
composite sequences can contain arbitrarily many pulses and can compensate
experimental errors in the pulse amplitude and duration to any desired order. A
special attention is devoted to two classes of $\pi/2$ sequences --- symmetric
and asymmetric --- the phases of which are given by simple formulas in terms of
rational multiples of $\pi$ for any number of constituent pulses. This allows
one to construct arbitrarily accurate $\pi/2$ composite rotations. These
$\pi/2$ composite sequences are used to construct three classes of arbitrarily
long composite $\theta$ sequences by pairing two $\pi/2$ composite sequences,
one of which is shifted by a phase $\pi-\theta$ with respect to the other one.
