minor changes to functionals - not working too well at the minute