added module core functionality