The general approach for the Hodgkin-Huxley style ionic channels is to use the INCLUDE capabilities of NMODL to eliminate redundancy in the code. The top level mod files for the HH style channels are: cal.mod, can.mod, car.mod, cat.mod, hsoma.mod, hdend.mod, kaprox.mod, kadist.mod, kd.mod, kk.mod, km.mod, naf.mod and nax.mod. The mod file itself defines only the NEURON block. All HH style channels include the file 'var_funcs.inc' which provide the core formulation of the kinetics. Each of the HH mod files also includes either inact_gate_states.inc, or, noinact_gate_states.inc which provide the appropriate PARAMETER, STATE and DERIVATIVE block and the rates procedure (appropriate for whether or not there is an inactivation variable.) Finally, each of the mod files will include one of the files: inact_ca_currs.inc inact_k_currs.inc inact_na_currs.inc noinact_k_currs.inc noinact_ca_currs.inc noinact_nak_currs.inc these define the ASSIGNED, INITIAL and BREAKPOINT blocks appropriate for the ion(s) and whether or not there is inactivation. (Note that at present there are no files 'noinact_na_currs' and 'inact_nak_currs' because in the present model such currents do not exist.) The mod files for kc, kahp, and cadifus are standard, with all blocks declared in a single file.