bits of a user module, more available on request