Refactor share base module