generalise to work with fdc == 1