added basemodule class