added changes to complete base module