register modules improved