updated base source code