  The SO(32) heterotic string can be obtained from the type IIB string by
gauging a discrete symmetry that acts as $(-1)^{F_L}$ on the perturbative
string states and reverses the parity of the D-string. Consistency requires the
presence of 32 NS 9-branes -- the S-duals of D9-branes -- which give SO(32)
Chan-Paton factors to open D-strings. At finite string coupling, there are
SO(32) charges tethered to the heterotic string world-sheet by open D-strings.
At zero-coupling, the D-string tension becomes infinite and the SO(32) charges
are pulled onto the world-sheet, and give the usual SO(32) world-sheet currents
of the heterotic string.
