better support for modularization