CDL functions in separate module, with tests.